91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Python?sklearn怎么對文本數據進行特征化提取

發布時間:2023-04-25 10:08:09 來源:億速云 閱讀:112 作者:iii 欄目:開發技術

這篇文章主要介紹了Python sklearn怎么對文本數據進行特征化提取的相關知識,內容詳細易懂,操作簡單快捷,具有一定借鑒價值,相信大家閱讀完這篇Python sklearn怎么對文本數據進行特征化提取文章都會有所收獲,下面我們一起來看看吧。

文本特征提取

作用:對文本數據進行特征化

(句子、短語、單詞、字母)一般選用單詞作為特征值

方法一:CountVectorizer

sklearn.feature_extraction.text.CountVectorizer(stop_words=[])

返回詞頻矩陣(統計每個樣本特征詞出現的個數)

CountVectorizer.fit_transform(X)

X:文本或者包含文本字符串的可迭代對象

返回值:返回sparse矩陣

CountVectorizer.inverse_transform(X)

X:array數組或者sparse矩陣

返回值:轉換之前的數據格式

CountVectorizer.get_feature_names()

返回值:單詞列表

代碼展示:

from sklearn.feature_extraction.text import CountVectorizer
def count_demo():
    #文本特征抽取
    data=["life is short, i like like python","life is too long,i dislike python"]
    #1、實例化一個轉換器類
    transfer=CountVectorizer()
    #2、調用fit_transform()
    result=transfer.fit_transform(data)
    print("result:\n",result.toarray())
    print("特征名字:\n", transfer.get_feature_names())
    return None

方法二:TfidfVectorizer

關鍵詞:在某一個類別的文章中,出現的次數很多,但是在其他類別的文章中出現的次數很少稱為關鍵詞

Tf-idf文本特征提取

①TF-IDF的主要思想是:如果某個詞或短語在一篇文章中出現的概率高,并且在其他文章中很少出現,則認為此詞或者短語具有很好的類別區分能力,適合用來分類。

②TF-IDF作用:用以評估一字詞對于一個文件集或一個語料庫中的其中一份文件的重要程度。

公式

①詞頻(term frequency,tf)指的是某一個給定的詞語在該文件中出現的頻率

②逆向文檔頻率(inverse document frequency,idf)是一個詞語普遍重要性的度量。某一特定詞語的idf,可以由總文件數目除以包含該詞語之文件數目,再將得到的商取以10為底的對數得到

tfidf = tf * idf

輸出的結果可以理解為重要程度

API

sklearn.feature_extraction.text.TfidfVectorizer(stop_words=None,...)

返回詞的權重矩陣

TfidfVectorizer.fit_transform(X)

X:文本或者包含文本字符串的可迭代對象

返回值:返回sparse矩陣

TfidfVectorizer.inverse_transform(X)

X:array數組或者sparse矩陣

返回值:轉換之前數據格式

TfidfVectorizer.get_feature_names()

返回值:單詞列表

中文分詞+特征提取

from sklearn.feature_extraction.text import TfidfVectorizer
import jieba
def cut_word(text):
    #中文分詞
    #jieba.cut(text)返回的是生成器對象,用list強轉成列表
    word=list(jieba.cut(text))
    #轉成字符串
    words=" ".join(word)
    return words
def tfidf_demo():
    data = ["今天很殘酷,明天更殘酷,后天會很美好,但絕大多數人都死在明天晚上,卻見不到后天的太陽,所以我們干什么都要堅持",
            "注重自己的名聲,努力工作、與人為善、遵守諾言,這樣對你們的事業非常有幫助",
            "服務是全世界最貴的產品,所以最佳的服務就是不要服務,最好的服務就是不需要服務"]
    data_new = []
    # 將中文文本進行分詞
    for sentence in data:
        data_new.append(cut_word(sentence))
    # 1、實例化一個轉換器類
    transfer = TfidfVectorizer()
    # 2、調用fit_transform()
    result = transfer.fit_transform(data_new)  # 得到詞頻矩陣 是一個sparse矩陣
    print("result:\n", result.toarray())  # 將sparse矩陣轉化為二維數組
    print("特征名字:\n", transfer.get_feature_names())
    return None

關于“Python sklearn怎么對文本數據進行特征化提取”這篇文章的內容就介紹到這里,感謝各位的閱讀!相信大家對“Python sklearn怎么對文本數據進行特征化提取”知識都有一定的了解,大家如果還想學習更多知識,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

竹北市| 和静县| 惠东县| 黔江区| 长治市| 曲周县| 深州市| 五原县| 定西市| 甘洛县| 渑池县| 逊克县| 青河县| 阳山县| 阿合奇县| 巫山县| 宝坻区| 始兴县| 航空| 咸丰县| 龙州县| 贵南县| 博客| 长子县| 赤城县| 广灵县| 方正县| 友谊县| 东乌| 张掖市| 荔波县| 镇雄县| 防城港市| 禹州市| 东港市| 读书| 独山县| 玉山县| 尼勒克县| 祁门县| 嵩明县|