FastText文本分类以及生成词向量
- 1、安裝
- 2、文本分類
- 3、生成詞向量
FasttextFasttext是FacebookFacebook開源的文本分類工具。最近工作上用到了這個包,感覺又快又好用,在這里簡單的做一下記錄,這里使用的PythonPython的相關接口
1、安裝
在linux下安裝比較方便,直接使用pip進行安裝
pip install fasttext2、文本分類
對于文本分類只要將數據準備好,就可以了
classifier = fasttext.supervised('data.train.txt', 'model', label_prefix='__label__')這里需要注意的是,訓練的數據文件中類別的前綴默認是”__label__”,如果需要修改的話,可以在上面的參數中進行相關的修改。 
 訓練數據的相關格式
類別和句子之間用tabtab鍵分開,句子可以是按照詞分割開的,也可以是按照字分割開的 
 產生的模型文件會被保存成model.binmodel.bin,預測之前需要先加載相關模型 
 我們可以用于預測文件的準確率和召回率
其中text.txt里面每行村放是的測試的句子,具體的格式與訓練集合一致 
 使用模型進行相關的預測
輸出的時候還可以預測的前n個值
labels = classifier.predict(texts, k=3) print labels# Or with the probability labels = classifier.predict_proba(texts, k=3) print labels3、生成詞向量
生成詞向量的時候,我用的是skipgram,這時候數據需要進行處理一下,轉換成下面的格式,由于我訓練的是基于字的詞向量,所以我是按照每個字切分的
姚 明 喜 歡 打 籃 球 __label__1 model = fasttext.skipgram("cnews.all.train.txt", "model",dim = 50)這其中還有一些其他的配置參數可以選擇,具體的參數可以查看參考文獻。 
 訓練完成之后,會產生模型文件bin和詞向量文件vec,詞向量文件里面第一行是字典的長度和維度,下面是具體的詞向量
參考文獻 
 [1] : https://pypi.org/project/fasttext/
總結
以上是生活随笔為你收集整理的FastText文本分类以及生成词向量的全部內容,希望文章能夠幫你解決所遇到的問題。
 
                            
                        - 上一篇: UEditor定制工具栏图标
- 下一篇: My Sixth-First - 解数独
