<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          【NLP】如何清理文本數(shù)據(jù)

          共 2552字,需瀏覽 6分鐘

           ·

          2021-12-24 09:14

          作者 | Matt Przybyla? ?編譯 | VK? ?來源 | Towards Data Science

          目錄

          1. 介紹

          2. 清除文本數(shù)據(jù)

          3. 總結(jié)

          4. 參考引用

          介紹

          數(shù)據(jù)在大多數(shù)情況下都是雜亂無章、雜亂無章、難以處理的,這一點(diǎn)也不足為奇。

          當(dāng)你從教育實(shí)踐中學(xué)習(xí)數(shù)據(jù)科學(xué)時,你將看到大多數(shù)數(shù)據(jù)都是從多個來源、多個查詢中獲得的,這可能會導(dǎo)致一些不干凈的數(shù)據(jù)。

          在某些或大多數(shù)情況下,你必須提供最終用于訓(xùn)練模型的數(shù)據(jù)集。有一些文章關(guān)注數(shù)字?jǐn)?shù)據(jù),但我希望本文的重點(diǎn)主要是文本數(shù)據(jù),這與自然語言處理是一致的。

          話雖如此,這里有一個簡單的方法來清理Python中的文本數(shù)據(jù),以及它何時有用。我將使用來自TMBDF5000電影數(shù)據(jù)集[2]的流行數(shù)據(jù)集。

          清除文本數(shù)據(jù)

          刪除停用詞

          另一種解釋“停用詞”的方法是刪除不必要的文本。

          但是,需要注意的是,當(dāng)你使用常用的停用詞庫時,你可能正在刪除你實(shí)際上想要保留的單詞。

          這就是為什么你應(yīng)該首先考慮你想要刪除的單詞列表。停用詞的常見例子有“the”、“of”等。你想要刪除這些單詞的原因是你想要保留這些單詞、短語、句子等的主題。

          例如“ there was the time where they went to the store in July for the holiday party’”。如果你刪除了停用詞和一些不必要的詞,你就會得到 time, July, holiday, party 。

          話雖如此,讓我們看看如何從電影標(biāo)題中刪除一些停用詞:

          import?pandas?as?pd

          import?nltk.corpus
          nltk.download(‘stopwords’)
          from?nltk.corpus?import?stopwords

          df?=?pd.read_csv('...path/tmdb_5000_movies.csv')

          stop_words?=?stopwords.words('english')
          df['clean_title']?=?df['title'].apply(lambda?x:?'?'.join([word?for?word?in?x.split()?if?word?not?in?(stop_words)]))

          在上面的代碼中,我們導(dǎo)入必要的庫,然后將數(shù)據(jù)讀入數(shù)據(jù)框。

          從這里,我們刪除“title”列文本中的停用詞,它們將在“ clean_title ”列中顯示各自的效果。

          輸出是我們在下面看到的。在第1行、第3行和第8行中,刪除了stopwords,你可以通過before和after并排看到這一點(diǎn)。

          除了nltk中的停用詞庫外,你還可以“手動”添加其他停用詞。為了實(shí)現(xiàn)這個功能,你可以簡單地添加一個字符串列表來添加停用詞。

          例如,如果我們想刪除文本“3”,因?yàn)樗诒纠胁皇且粋€數(shù)字,我們可以將其添加到列表中,以及單詞“At”和字母“v”。其工作原理如下所示:

          stop_words?=?stopwords.words(‘english’)?+?[‘At’,?‘v’,?‘3’]

          #?應(yīng)用與上面相同的代碼,但分配一個新列來查看差異

          df['clean_title_v2']?=?df['title'].apply(lambda?x:?'?'.join([word?for?word?in?x.split()?if?word?not?in?(stop_words)]))

          在下面的屏幕截圖中,你可以看到lambda函數(shù)如何刪除添加的字符串列表中的值。

          現(xiàn)在我們已經(jīng)展示了一種清理文本數(shù)據(jù)的方法,讓我們討論一下這個過程對數(shù)據(jù)科學(xué)家有用的可能應(yīng)用:

          • 刪除不必要的單詞以便可以執(zhí)行詞干分析

          • 與上面類似,你可以使用詞形還原

          • 只保留必要的單詞可以讓你更容易地標(biāo)記數(shù)據(jù)中的詞類,例如,如果你只標(biāo)記形容詞,并在數(shù)據(jù)中使用該文本作為模型,那么像“ beautiful ”、“ amazing ”、“ loud ”就可以用來預(yù)測電影評論的目標(biāo)變量。一個模型將能夠更容易地從形容詞中識別情感,從而辨別電影評論是好是壞,或者電影需要改進(jìn)什么

          • 根據(jù)更新文本的主要詞語創(chuàng)建摘要儀表板,例如,去掉“蜘蛛俠1”、“蜘蛛俠2”和“蜘蛛俠3”中的數(shù)字,將允許對所有蜘蛛俠電影進(jìn)行分析

          • 更容易進(jìn)行主題建模

          • 少量文本,以便你的建模可以更快、更便宜地進(jìn)行訓(xùn)練和預(yù)測

          • 可以用來刪除錯誤的文本,你可以自動刪除通常被語音錯誤解釋的單詞。

          當(dāng)然,有更多的理由刪除停用詞,并清理文本數(shù)據(jù)。同樣重要的是要記住,有一些新興的算法可以很好地處理文本數(shù)據(jù),比如CatBoost。

          總結(jié)

          如你所見,清理數(shù)據(jù)的一部分可以為進(jìn)一步清理和處理數(shù)據(jù)奠定基礎(chǔ)。最終會使模型更加健壯和準(zhǔn)確。

          總而言之,以下是如何從文本數(shù)據(jù)中刪除停用詞:

          *?導(dǎo)入庫

          *?導(dǎo)入數(shù)據(jù)集

          *?刪除停用詞

          *?添加單獨(dú)的停用詞

          更新:由于單詞的大小寫是大寫的,所以沒有按應(yīng)該的方式刪除它,因此請確保在清理之前將所有文本都小寫。

          感謝閱讀!

          參考引用

          [1] Photo by JESHOOTS.COM on Unsplash, (2019)

          [2] Kaggle, TMBDF 5000 Movie Dataset, (2021 — accessed)

          [3] Photo by Marylou Fortier on Unsplash, (2020)

          [4] M.Przybyla, cleaning text example, (2021)

          [5] M.Przybyla, cleaning text example plus adding individual stop words, (2021)

          往期精彩回顧




          站qq群955171419,加入微信群請掃碼:
          瀏覽 46
          點(diǎn)贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報
          評論
          圖片
          表情
          推薦
          點(diǎn)贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  五月婷婷丁香在线观看视频麻豆 | 操屄综合网 | 国内精品视频在线观看免费 | 日韩动态图 | 久久久久9999 |