今天聊聊fasttext做文本分类任务:fasttext训练速度能够匹配传统机器学习,训练速度为什么快?底层采用霍夫曼树(最优二叉树),其底层原理就是词的频次越高离根结点就越近,便于更快找到.采用负采样:只有一个正样本和随机几个负样本用作模型训练,大大节省了训练时间,同时还缓解了过拟合的问题.ngram特征:解决了未登录词的问题,让模型更好感知词内部构词语义规律.准确度能够追赶bert大模型,fasttext是在训练速度和准确度之间寻求平衡.工作过程是输入一个句子,返回的是这个句子属于哪个类别.其基本架构包含输入层:这一层就是对输入的文档做词向量化的过程,也包含了N-gram特征.隐藏层:对输入的数据求和平均.输出层:输出的是文档对应的label标签(这是在输入文档前需要对每个句子添加__label__标签,根据实际情况,对同一个句子可以添加多个标签,其格式为__label__标签名1__标签名2__空格,句子)常见的分类种类:二分类:输出的是该样本为正的概率(两个分类结果,底层默认sigmoid激活函数).单标签多分类:输出的是一个样本在多个标签上的概率,概率和为1(softmanx激活函数).多标签多分类:输出的是一个样本分别对多个分类标签上为正的概率(sigmoidj激活函数,但是有多个分类结果,设定阈值和k).fasttext做文本分类任务相关api:设置并训练模型:model = fasttext.train_supervise人的("文件路径",各种参数).模型测试:model.test("测试文件路径").模型预测:model.predict(text = "文本").模型保存:model.save_model("路径.bin").模型加载:fasttext.load_model("路径.bin")
相关推荐
前端小蜗1 天前
搞了个 vibecoding 时防摸鱼沉迷的提醒,震到手环上ZzT1 天前
瑞幸 skill 引发的一些思考道友可好1 天前
AI 测试全绿,代码却是错的美团技术团队1 天前
从月球漫步到赛博都市,WBench 测出了世界模型的边界Li#1 天前
AI编写操作使用说明书需要用到的工具和能力Geoffwo1 天前
Windows 本地电脑部署 RAGFlow2601_959982211 天前
边缘计算正在成为数字化时代的新基础设施wzg19690226wzg1 天前
rust 学习 泛型techdashen1 天前
Rust 基础设施团队 2025 Q4 回顾与 2026 Q1 计划红宝村村长1 天前
torch.autograd.Function.apply()