fasttext訓練模型程式碼
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# author ChenYongSheng
# date 20201222
import pandas as pd
import jieba
'''資料預處理'''
df = pd.read_csv('data/8qi/xx.csv', header=0)
stopwords = [line.strip() for line in open('data/all/stopwords.txt', encoding='utf-8').readlines()]
def remove_stopwords(text_cut, stopwords):
result = []
for word in text_cut:
if word not in stopwords:
result.append(word)
return result
lines = []
test_lines = []
for data in df.itertuples():
# print(data)
label = '__label__' + str(data.label)
text = str(data.text)
text_cut = jieba.lcut(text)
text_remove_stop = remove_stopwords(text_cut, stopwords)
words = ''
for word in text_remove_stop:
words = word + ' ' + words
body = label + ' , ' + words.rstrip(' ')
if data.Index % 10 == 0:
test_lines.append(body)
else:
lines.append(body)
with open('data/8qi/train.txt', 'w', encoding='utf-8') as f:
for line in lines:
f.write(line + '\n')
f.close()
with open('data/8qi/test.txt', 'w', encoding='utf-8') as f:
for line in test_lines:
f.write(line + '\n')
f.close()
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# author ChenYongSheng
# date 20201222
import fasttext
'''模型訓練'''
trainDataFile = 'data/8qi/train.txt'
model = fasttext.train_supervised(trainDataFile, lr=0.1, dim=100, epoch=30, word_ngrams=2, loss='softmax')
model.save_model("model/fasttext_model.bin")
testDataFile = 'data/8qi/test.txt'
model = fasttext.load_model('model/fasttext_model.bin')
result = model.test(testDataFile)
print('測試集上資料量', result[0])
print('測試集上準確率', result[1])
print('測試集上召回率', result[2])
必須是這樣的資料格式:__label__分類名(空格)(逗號)(空格)(切詞)
__label__安靜程度 , 吵不吵 房子 那套 肯德基
__label__安靜程度 , 吵
__label__安靜程度 , 位置 吵 臥室
如果報錯ValueError: data/7期/train.txt cannot be opened for training!
即是資料檔案路徑包含中文名,改成英文或拼音
相關文章
- PyTorch 模型訓練實⽤教程(程式碼訓練步驟講解)PyTorch模型
- 利用Python訓練手勢模型程式碼Python模型
- BERT預訓練模型的演進過程!(附程式碼)模型
- [原始碼分析] Facebook如何訓練超大模型--- (5)原始碼大模型
- [原始碼分析] Facebook如何訓練超大模型---(4)原始碼大模型
- [原始碼分析] Facebook如何訓練超大模型 --- (3)原始碼大模型
- [原始碼分析] Facebook如何訓練超大模型 --- (2)原始碼大模型
- [原始碼分析] Facebook如何訓練超大模型---(1)原始碼大模型
- XLNet預訓練模型,看這篇就夠了!(程式碼實現)模型
- 監控大模型訓練大模型
- PyTorch預訓練Bert模型PyTorch模型
- 自訓練 + 預訓練 = 更好的自然語言理解模型模型
- 大模型如何提升訓練效率大模型
- 預訓練模型 & Fine-tuning模型
- 【AI】Pytorch_預訓練模型AIPyTorch模型
- 使用Bert預訓練模型文字分類(內附原始碼)模型文字分類原始碼
- 【預訓練語言模型】 使用Transformers庫進行BERT預訓練模型ORM
- [原始碼解析] 模型並行分散式訓練 Megatron (3) ---模型並行實現原始碼模型並行分散式
- 訓練PaddleOCR文字方向分類模型模型
- 6-3使用GPU訓練模型GPU模型
- AI打遊戲-肆(模型訓練)AI遊戲模型
- Yolov8訓練識別模型YOLO模型
- 隱私計算 FATE - 模型訓練模型
- 海南話語音識別模型——模型訓練(一)模型
- MxNet預訓練模型到Pytorch模型的轉換模型PyTorch
- 一行程式碼自動調參,支援模型壓縮指定大小,Facebook升級FastText行程模型AST
- LUSE: 無監督資料預訓練短文字編碼模型模型
- [原始碼解析] 模型並行分散式訓練Megatron (5) --Pipedream Flush原始碼模型並行分散式
- 明確了:文字資料中加點程式碼,訓練出的大模型更強、更通用大模型
- 【預訓練語言模型】使用Transformers庫進行GPT2預訓練模型ORMGPT
- 訓練一個目標檢測模型模型
- 阿里巴巴稀疏模型訓練引擎-DeepRec阿里模型
- 隱私計算FATE-模型訓練模型
- YOLOv5模型訓練及檢測YOLO模型
- TensorFlow2.0教程-使用keras訓練模型Keras模型
- 訓練模型的儲存與載入模型
- TorchVision 預訓練模型進行推斷模型
- DeepLab 使用 Cityscapes 資料集訓練模型模型