Python 中的詞形還原 | 新手指南

Python 中的詞形還原 | 新手指南

在本教程中,我們將討論Python中的詞形還原,這是一種用於將單詞的不同元素組合在一起的方法。詞形還原還旨在減少詞的變形,並專注於提供詞的詞根或基本形式,這就是詞引理的意思。

目錄

詞形還原與詞乾化

詞形還原類似於詞幹提取,它也可以減少單詞的變形。唯一的區別是詞形還原使用基於字典的單詞作為結果。

另一方面,詞幹提取只會從變形詞中刪除詞綴,這可能會導致不存在的詞。

例如,如果我們對單詞studies使用詞幹提取,它會將單詞studi作為輸出,因為它旨在從單詞studies中刪除後綴es

另一方面,如果使用詞形還原,則將給出單詞研究,因為它側重於提供單詞的基本形式。

使用詞形還原時要考慮的事項

  • 它使用基於字典的單詞。術語引理表示單詞的詞根或基本形式,詞形還原旨在提供單詞的基本形式,而不是僅僅去除單詞的詞形變化。
  • 它完全取決於詞性來找到一個基本詞。如果不指定詞性),詞形還原可能效果不佳,您可能得不到想要的結果。
  • 它比詞幹提取慢,但功能更強大。由於詞形還原不遵循對單詞執行的算法以及提供詞性的需要,因此它被認為比詞幹提取慢。但是,它在某種程度上更強大,因為它使用基於字典的詞來獲取結果。 
  • 它在尋找詞根方面具有更高的準確性。由於詞形還原使用基於字典的詞來排列變形詞的結果,因此您將有更高的機會獲得準確的輸出。

Python 中詞形還原的準備階段

在我們繼續實施詞形還原之前,讓我們首先從textblob導入Word庫。

Python 中的詞形還原 |  新手指南

之後,我們將創建一個單詞對象。 

Python 中的詞形還原 |  新手指南

為了創建一個單詞對象,我們創建了一個名為w的變量。然後我們存儲了包含單詞對象的單詞庫,即octopi,即章魚一詞的複數形式。 請注意,在使用 Word 庫傳遞元素時,用單引號將該元素括起來很重要。

讓我們初始化變量w以查看它是否包含我們剛剛創建的單詞對象。

Python 中的詞形還原 |  新手指南

執行w變量後,我們得到了單詞對象octopi作為結果。

在 Python 中實現詞形還原

接下來,我們將使用.lemmatize函數來實現詞形還原。 

Python 中的詞形還原 |  新手指南

在此步驟中,我們使用了保存單詞對象octopi的w變量,並利用.lemmatize函數應用詞形還原。結果,我們得到了octopus這個詞,它是octopi這個詞的詞根或基本形式。

之後,讓我們嘗試對單詞better應用詞形還原

Python 中的詞形還原 |  新手指南

在前面的示例中,我們將 word 對像從octopi更新為better然後我們用.lemmatize函數對它進行詞形還原。因此,我們得到的結果與我們使用的單詞對象相同。

在使用 .lemmatize 函數時,您可以通過傳入詞性來改變其詞形還原的方式。例如,讓我們嘗試將a傳遞給 .lemmatize 函數,它代表詞性中的形容詞。 

Python 中的詞形還原 |  新手指南

將詞性添加到 .lemmatize 函數後,我們能夠得到好的基本詞作為結果。

讓我們再次將 word 對象更改為running。我們還將傳遞給 .lemmatize 函數的詞性更改為代表動詞的v 。

Python 中的詞形還原 |  新手指南

進行更改並初始化 .lemmatize 函數後,我們得到了 running 作為結果運行的單詞的詞根。大多數詞形還原器無法執行我們剛剛使用 .lemmatize 函數執行的方法。

但是,在 Python 中執行某些類型的文本分析以獲取單詞的基本形式時,.lemmatize 函數是一個非常有用的工具。


如何在 LuckyTemplates 中使用 Python 腳本
如何在 Python 中加載樣本數據集
Python 用戶定義函數 | 概述

結論

簡而言之,我們能夠理解詞形還原在Python中的用法及其工作原理。我們也討論了詞乾化詞乾化的相似點和不同點。我們還能夠使用Word庫以及如何使用.lemmatize函數創建一個 word 對象。

此外,我們還學習瞭如何在 .lemmatize 函數中應用不同的詞性。在日常文本分析任務中實施詞形還原將極大地幫助您減少搜索特定詞的基本詞的時間和精力。

一切順利,

蓋林


在 Power Automate 中執行直到循環控制

在 Power Automate 中執行直到循環控制

了解有關 Do Until 循環控制如何在 Power Automate 流中工作的基礎過程,並熟悉所需的變量。

使用 Deneb 為 LuckyTemplates 製作自定義視覺對象

使用 Deneb 為 LuckyTemplates 製作自定義視覺對象

受限於 LuckyTemplates 中提供的標準視覺效果?學習使用 Deneb 和 Vega-Lite 為 LuckyTemplates 創建自定義視覺對象,提升您的數據可視化能力。

在 Power Automate Desktop 中將日期添加到文件名

在 Power Automate Desktop 中將日期添加到文件名

在此博客中,您將了解如何使用 Power Automate Desktop 自動將日期添加到文件名的開頭或結尾。

Power Query:如何快速添加註釋

Power Query:如何快速添加註釋

找出幾種不同的方法在 Power Query 中添加註釋,這對於不喜歡記筆記的人非常有幫助。

Power Apps – SharePoint 集成指南

Power Apps – SharePoint 集成指南

在此博客中,您將了解 MS Power Apps 界面的基礎知識並了解 Power Apps-SharePoint 集成的過程。

什麼是 Python 中的自我:真實世界的例子

什麼是 Python 中的自我:真實世界的例子

什麼是 Python 中的自我:真實世界的例子

如何在 R 中保存和加載 RDS 文件

如何在 R 中保存和加載 RDS 文件

您將學習如何在 R 中保存和加載 .rds 文件中的對象。本博客還將介紹如何將對像從 R 導入 LuckyTemplates。

回顧前 N 個工作日——DAX 編碼語言解決方案

回顧前 N 個工作日——DAX 編碼語言解決方案

在此 DAX 編碼語言教程中,了解如何使用 GENERATE 函數以及如何動態更改度量標題。

在 LuckyTemplates 中使用多線程動態視覺技術展示見解

在 LuckyTemplates 中使用多線程動態視覺技術展示見解

本教程將介紹如何使用多線程動態可視化技術從報告中的動態數據可視化中創建見解。

LuckyTemplates 篩選上下文簡介

LuckyTemplates 篩選上下文簡介

在本文中,我將貫穿過濾器上下文。篩選上下文是任何 LuckyTemplates 用戶最初應該了解的主要主題之一。