fasttext模型 训练THUCNews
# _*_coding:utf-8 _*_
import fasttext
import jieba
from sklearn import metrics
import random
def read_file(filename):
i=0;
sentences =[]
out = open('data/cnews/fast_test.txt','a+')
with open(filename) as ft:
for line in ft:
label, content = line.strip().split('\t')
segs = jieba.cut(content)
segs = filter(lambda x:len(x)>1,segs)
sentences.append("__label__"+str(label)+"\t"+" ".join(segs))
random.shuffle(sentences)
for sentence in sentences:
out.write(sentence+"\n")
out.close()
read_file('data/cnews/cnews.train.txt')
classifier = fasttext.supervised('data/cnews/fast_train.txt','new_fasttext.model')
classifier = fasttext.load_model('new_fasttext.model.bin')
categories = ['体育', '财经','房产','家居','教育', '科技', '时尚', '时政', '游戏', '娱乐']
read_file('data/cnews/cnews.test.txt')
result = classifier.test('data/cnews/fast_test.txt')
print("准确率为:%f"%result.precision)
print("召回率为: %f"%result.recall)
with open('data/cnews/cnews.test.txt') as fw:
contents,labels = [],[]
for line in fw:
label ,content = line.strip().split('\t')
segs = jieba.cut(content)
segs = filter(lambda x:len(x)>1,segs)
contents.append(" ".join(segs))
labels.append('__label__'+label)
label_predict = [e[0] for e in classifier.predict(contents)]
print("Precision,Recall and F1-Score....")
print(metrics.classification_report(labels,label_predict,target_names=categories))
关于fasttext的使用一些疑问:fasttext.supervised的参数label_prefix 一直提示我这个参数使用有问题... 然而,搜素了半天,我也没搞明白这个参数哪里有问题
还有一点需要注意的地方:fasttext的识别标签统一需要在标签前面加上"__label__"
后续会更新fastext的原理
fasttext模型 训练THUCNews的更多相关文章
- [Kaggle] dogs-vs-cats之模型训练
上一步建立好模型之后,现在就可以训练模型了. 主要代码如下: import sys #将当期路径加入系统path中 sys.path.append("E:\\CODE\\Anaconda\\ ...
- A TensorBoard plugin for visualizing arbitrary tensors in a video as your network trains.Beholder是一个TensorBoard插件,用于在模型训练时查看视频帧。
Beholder is a TensorBoard plugin for viewing frames of a video while your model trains. It comes wit ...
- AI佳作解读系列(一)——深度学习模型训练痛点及解决方法
1 模型训练基本步骤 进入了AI领域,学习了手写字识别等几个demo后,就会发现深度学习模型训练是十分关键和有挑战性的.选定了网络结构后,深度学习训练过程基本大同小异,一般分为如下几个步骤 定义算法公 ...
- VGG19模型训练+读取
目录 VGG-19模型简单介绍 VGG-19模型文件介绍 分析模型文件 mean值查看 Weight和Bias查看 读取代码 读取模型 训练代码 参考资料 VGG-19的介绍和训练这里不做说明,网上资 ...
- 机器学习使用sklearn进行模型训练、预测和评价
cross_val_score(model_name, x_samples, y_labels, cv=k) 作用:验证某个模型在某个训练集上的稳定性,输出k个预测精度. K折交叉验证(k-fold) ...
- 谷歌大规模机器学习:模型训练、特征工程和算法选择 (32PPT下载)
本文转自:http://mp.weixin.qq.com/s/Xe3g2OSkE3BpIC2wdt5J-A 谷歌大规模机器学习:模型训练.特征工程和算法选择 (32PPT下载) 2017-01-26 ...
- facenet模型训练
做下记录,脚本如下: 对比 python3 src/compare.py ../models/-/ ../faces/pyimgs/dashenlin/ytwRkvSdG1000058.png ../ ...
- 人脸检测及识别python实现系列(3)——为模型训练准备人脸数据
人脸检测及识别python实现系列(3)——为模型训练准备人脸数据 机器学习最本质的地方就是基于海量数据统计的学习,说白了,机器学习其实就是在模拟人类儿童的学习行为.举一个简单的例子,成年人并没有主动 ...
- 【机器学习PAI实践十】深度学习Caffe框架实现图像分类的模型训练
背景 我们在之前的文章中介绍过如何通过PAI内置的TensorFlow框架实验基于Cifar10的图像分类,文章链接:https://yq.aliyun.com/articles/72841.使用Te ...
- kaldi基于GMM的单音素模型 训练部分
目录 1. gmm-init-mono 模型初始化 2. compile-train-graghs 训练图初始化 3. align-equal-compiled 特征文件均匀分割 4. gmm-acc ...
随机推荐
- DEFAULT CURRENT_TIMESTAMP
alter table t_user_channel_info change update_dttm update_dttm timestamp NOT NULL DEFAULT CURRENT_TI ...
- table固定宽度与自动宽度
table-layout:auto(创建的table默认是此布局模式): 对table和td.th指定的宽度无效,浏览器会计算所有单元格的内容宽度才能得出一列宽度 如果想对单元格的内容自动折行需使用w ...
- <转> Android LayoutInflater详解
在实际开发中LayoutInflater这个类还是非常有用的,它的作用类似于findViewById().不同点是LayoutInflater是用来找res/layout/下的xml布局文件,并且实例 ...
- c# 方法的隐藏
- [ansible-playbook]4 持续集成环境之分布式部署利器 ansible playbook学习
3 ansible-play讲的中太少了,今天稍微深入学习一点 预计阅读时间:15分钟 一: 安装部署 参考 http://getansible.com/begin/an_zhuang_ansile ...
- Python_逻辑运算符
1.逻辑运算符
- Linux系统硬链接和软链接说明 - 运维笔记
在linux系统中有种文件是链接文件,可以用来解决文件的共享使用.链接的方式可以分为两种,一种是硬链接(Hard Link),另一种是软链接或者也称为符号链接(Symbolic Link).先来查看下 ...
- SpringBoot下,@WebFilter配置获取日志
CREATE TABLE [dbo].[SWEBSERVICELOG]( [WLG_ID] [varchar](100) NOT NULL, [WLG_SESSIONID] [varchar](100 ...
- python中实现一个简单的进度条
import time def progress(n,a): m = int(n / a * 100) x = int(n / a * 10) time.sleep(0.2) #只是为了让进度条明显 ...
- P2341 [HAOI2006]受欢迎的牛[SCC缩点]
题目描述 每头奶牛都梦想成为牛棚里的明星.被所有奶牛喜欢的奶牛就是一头明星奶牛.所有奶 牛都是自恋狂,每头奶牛总是喜欢自己的.奶牛之间的"喜欢"是可以传递的--如果A喜 欢B,B喜 ...