最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python深度學(xué)習(xí)之FastText實(shí)現(xiàn)文本分類詳解

 更新時(shí)間:2022年09月21日 10:45:25   作者:小魚干兒?  
FastText是一種典型的深度學(xué)習(xí)詞向量的表示方法,它非常簡(jiǎn)單通過(guò)Embedding層將單詞映射到稠密空間,然后將句子中所有的單詞在Embedding空間中進(jìn)行平均,進(jìn)而完成分類操作

FastText是一個(gè)三層的神經(jīng)網(wǎng)絡(luò),輸入層、隱含層和輸出層。

FastText的優(yōu)點(diǎn):

使用淺層的神經(jīng)網(wǎng)絡(luò)實(shí)現(xiàn)了word2vec以及文本分類功能,效果與深層網(wǎng)絡(luò)差不多,節(jié)約資源,且有百倍的速度提升

深度學(xué)習(xí)和機(jī)器學(xué)習(xí)的區(qū)別:

與傳統(tǒng)機(jī)器學(xué)習(xí)不同,深度學(xué)習(xí)既提供特征提取功能,也可以完成分類的功能。機(jī)器學(xué)習(xí)需要再根據(jù)提取到的特征再進(jìn)行分類。

安裝FastText

使用pip安裝

pip install fasttext

因?yàn)镕astText依賴C++的環(huán)境,安裝的時(shí)候可能會(huì)報(bào)錯(cuò),有的是C++ 11

有的是C++14看報(bào)錯(cuò)里面缺少那個(gè)版本的C++環(huán)境就安裝那個(gè)版本的環(huán)境就可以了

使用FastText進(jìn)行文本分類的一般步驟

數(shù)據(jù)格式的要求:

__label__標(biāo)簽 文本內(nèi)容  或  文本內(nèi)容 __label__標(biāo)簽
__label__標(biāo)簽\t文本內(nèi)容  或  文本內(nèi)容\t__label__標(biāo)簽
文本內(nèi)容和標(biāo)簽之間用\t或空格都可以
目前這幾種形式都支持

數(shù)據(jù)預(yù)處理:

將原數(shù)據(jù)處理為數(shù)據(jù)要求的格式,分詞以后詞于詞之間用空格連接

這個(gè)根據(jù)自己數(shù)據(jù)的情況自己進(jìn)行處理

訓(xùn)練模型

import fasttext
model = fasttext.train_supervised('train.csv', lr=1.0, wordNgrams=2, verbose=2, minCount=1, epoch=25, loss="hs")     # 訓(xùn)練模型
# train.csv 文件路徑,也可以是txt文件,里面的參數(shù)根據(jù)需要調(diào)
"""
  訓(xùn)練一個(gè)監(jiān)督模型, 返回一個(gè)模型對(duì)象
  input:           訓(xùn)練數(shù)據(jù)文件路徑
  lr:              學(xué)習(xí)率
  dim:             向量維度
  ws:              cbow模型時(shí)使用
  epoch:           次數(shù)
  minCount:        詞頻閾值, 小于該值在初始化時(shí)會(huì)過(guò)濾掉
  minCountLabel:   類別閾值,類別小于該值初始化時(shí)會(huì)過(guò)濾掉
  minn:            構(gòu)造subword時(shí)最小char個(gè)數(shù)
  maxn:            構(gòu)造subword時(shí)最大char個(gè)數(shù)
  neg:             負(fù)采樣
  wordNgrams:      n-gram個(gè)數(shù)
  loss:            損失函數(shù)類型, softmax, ns: 負(fù)采樣, hs: 分層softmax
  bucket:          詞擴(kuò)充大小, [A, B]: A語(yǔ)料中包含的詞向量, B不在語(yǔ)料中的詞向量
  thread:          線程個(gè)數(shù), 每個(gè)線程處理輸入數(shù)據(jù)的一段, 0號(hào)線程負(fù)責(zé)loss輸出
  lrUpdateRate:    學(xué)習(xí)率更新
  t:               負(fù)采樣閾值
  label:           類別前綴
  verbose:         ??
  pretrainedVectors: 預(yù)訓(xùn)練的詞向量文件路徑, 如果word出現(xiàn)在文件夾中初始化不再隨機(jī)
  model object
  """

預(yù)測(cè)數(shù)據(jù)

使用predict預(yù)測(cè)數(shù)據(jù),預(yù)測(cè)一段文本屬于的類別

model.predict(x)  # x文本內(nèi)容 返回的數(shù)據(jù)格式(('__label__4',), array([0.99441689]))
# 可能性最大的標(biāo)簽和準(zhǔn)確率

使用test驗(yàn)證模型的準(zhǔn)確率,傳入的是一個(gè)文件,文件的格式和訓(xùn)練集一樣

返回一個(gè)元組(樣本數(shù),精確率,找回率)

模型的保存

model.save_model("model_cooking.bin") # 文件路徑

模型讀取

fasttext.load_model("model_cooking.bin") # 讀取模型

模型的優(yōu)化

直接使用默認(rèn)參數(shù)去訓(xùn)練模型一般都得不到特別好的結(jié)果,可以通過(guò)一些手段來(lái)優(yōu)化模型。第一種可以采取的手段是去掉語(yǔ)料庫(kù)當(dāng)中的停止詞,對(duì)于英文的語(yǔ)料庫(kù)來(lái)說(shuō),還可以把所有的大寫字母都轉(zhuǎn)化成小寫字母。另一種可以采取的手段是調(diào)整超參數(shù),比如說(shuō)修改學(xué)習(xí)速率、修改epoch等,大家可以參照著fastTest的文檔去進(jìn)行相應(yīng)的調(diào)整,fastText的文檔中介紹了一種更加方便的自動(dòng)調(diào)參方法,只要我們同時(shí)提供訓(xùn)練集和測(cè)試集就可以了,帶來(lái)的精確度提升還是非常顯著的:

model = fasttext.train_supervised(input='train.csv', autotuneValidationFile='test.csv', autotuneDuration=600) 
"""
autotuneValidationFile='test.csv',   測(cè)試集數(shù)據(jù)集
autotuneDuration=600                 時(shí)間限制,單位為秒,默認(rèn)為5分鐘
"""
# 如果想查看對(duì)應(yīng)的參數(shù),可以使用
對(duì)象.屬性的方式進(jìn)行查看

舉例:

使用FastText進(jìn)行文本分類的基本操作就是這些內(nèi)容,關(guān)于深層次的學(xué)習(xí)大家可以參考

傳送門

到此這篇關(guān)于Python深度學(xué)習(xí)之FastText實(shí)現(xiàn)文本分類詳解的文章就介紹到這了,更多相關(guān)Python FastText內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Python通過(guò)調(diào)用mysql存儲(chǔ)過(guò)程實(shí)現(xiàn)更新數(shù)據(jù)功能示例

    Python通過(guò)調(diào)用mysql存儲(chǔ)過(guò)程實(shí)現(xiàn)更新數(shù)據(jù)功能示例

    這篇文章主要介紹了Python通過(guò)調(diào)用mysql存儲(chǔ)過(guò)程實(shí)現(xiàn)更新數(shù)據(jù)功能,結(jié)合實(shí)例形式分析了Python調(diào)用mysql存儲(chǔ)過(guò)程實(shí)現(xiàn)更新數(shù)據(jù)的具體步驟與相關(guān)操作技巧,需要的朋友可以參考下
    2018-04-04
  • python深度總結(jié)線性回歸

    python深度總結(jié)線性回歸

    這篇文章主要介紹了python的深度總結(jié)之線性回歸,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-09-09
  • 數(shù)據(jù)清洗之如何用一行Python代碼去掉文本中的各種符號(hào)

    數(shù)據(jù)清洗之如何用一行Python代碼去掉文本中的各種符號(hào)

    我們?cè)谔幚砦谋镜臅r(shí)候往往需要對(duì)標(biāo)點(diǎn)符號(hào)進(jìn)行處理,下面這篇文章主要給大家介紹了關(guān)于數(shù)據(jù)清洗之如何用一行Python代碼去掉文本中的各種符號(hào)的相關(guān)資料,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-11-11
  • Python urllib.request對(duì)象案例解析

    Python urllib.request對(duì)象案例解析

    這篇文章主要介紹了Python urllib.request對(duì)象案例解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-05-05
  • Python pyecharts模塊安裝與入門教程

    Python pyecharts模塊安裝與入門教程

    Echarts 是一個(gè)由百度開(kāi)源的數(shù)據(jù)可視化,憑借著良好的交互性,精巧的圖表設(shè)計(jì),得到了眾多開(kāi)發(fā)者的認(rèn)可,這篇文章主要介紹了Python pyecharts數(shù)據(jù)可視化模塊安裝與入門教程,需要的朋友可以參考下
    2022-09-09
  • python讀取Excel表格文件的方法

    python讀取Excel表格文件的方法

    這篇文章主要介紹了python讀取Excel表格文件的方法,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2019-09-09
  • python實(shí)現(xiàn)雙向鏈表原理

    python實(shí)現(xiàn)雙向鏈表原理

    這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)雙向鏈表原理,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-05-05
  • python ftp 按目錄結(jié)構(gòu)上傳下載的實(shí)現(xiàn)代碼

    python ftp 按目錄結(jié)構(gòu)上傳下載的實(shí)現(xiàn)代碼

    這篇文章主要介紹了python ftp 按目錄結(jié)構(gòu)上傳下載的實(shí)現(xiàn)代碼,需要的朋友可以參考下
    2018-09-09
  • 提高M(jìn)atplotlib繪圖清晰度的幾種方法

    提高M(jìn)atplotlib繪圖清晰度的幾種方法

    使用python中的matplotlib.pyplot繪圖的時(shí)候,如果將圖片顯示出來(lái),或者另存為圖片,常常會(huì)出現(xiàn)清晰度不夠的問(wèn)題,當(dāng)然這種問(wèn)題是對(duì)于png或者jpg這種格式的圖片而言的,所以本文給大家介紹了提高M(jìn)atplotlib繪圖清晰度的幾種方法,需要的朋友可以參考下
    2024-01-01
  • pandas條件組合篩選和按范圍篩選的示例代碼

    pandas條件組合篩選和按范圍篩選的示例代碼

    這篇文章主要介紹了pandas條件組合篩選和按范圍篩選的示例代碼,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-08-08

最新評(píng)論

聂荣县| 襄城县| 东山县| 舒兰市| 什邡市| 万荣县| 永康市| 汾西县| 锡林浩特市| 高密市| 鄂伦春自治旗| 德江县| 虎林市| 曲沃县| 黄陵县| SHOW| 洛南县| 正蓝旗| 凤冈县| 平泉县| 石首市| 承德市| 比如县| 奈曼旗| 南华县| 木兰县| 封开县| 新昌县| 黔西县| 思南县| 玉门市| 开封市| 天峨县| 莆田市| 尤溪县| 河东区| 鄯善县| 于都县| 瑞昌市| 电白县| 永年县|