import pandas as pd
from sklearn.metrics import f1_score
train_df = pd.read_csv(’…/input/train_set.csv’, sep=’\t’, nrows=15000)
train_df[‘label_ft’] = ‘label’ + train_df[‘label’].astype(str)
train_df[[‘text’,‘label_ft’]].iloc[:-5000].to_csv(‘train.csv’, index=None, header=None, sep=’\t’)
读取文件
import fasttext# 调用第三方库
model = fasttext.train_supervised(‘train.csv’, lr=1.0, wordNgrams=2, verbose=2, minCount=1, epoch=25, loss=“hs”)#构建模型
val_pred = [model.predict(x)[0][0].split(’__’)[-1] for x in train_df.iloc[-5000:][‘text’]] # 训练模型
print(f1_score(train_df[‘label’].values[-5000:].astype(str), val_pred, average=‘macro’))
“”"
训练一个监督模型, 返回一个模型对象
@param input: 训练数据文件路径
@param lr: 学习率
@param dim: 向量维度
@param ws: cbow模型时使用
@param epoch: 次数
@param minCount: 词频阈