Node_FastText
带监督的文本分类算法FastText
安装
npm install node_fasttext
使用
const fastText = ;const FastText = ; const options = "input" : "./train.txt" "output" : "./model" "loss" : "softmax" "dim" : 200 "bucket" : 2000000 FastText
API
模型训练 FastText.train( type , options )
详细配置参数查看官方 配置文档
/*** loadModel* @param String type 模型类型 [supervised | cbow | skipgram]* @param Object options 配置参数* @return Promise 返回模型信息*/ FastText
测试分类 FastText.test( testFile , k )
必须先加载 supervised 模型,详细请查看官方 文档
/*** nn* @param String testFile 待测试分类的文件* @param Number k 精度和查全率,默认值为 1* @return Promise*/ FastText
压缩模型 FastText.quantize( options )
必须先训练模型,output 文件名必须与原模型名相同, 详细请查看官方 配置文档
/*** quantize* @param Object options 配置参数* @return Promise 返回模型信息*/FastText
加载模型 FastText.loadModel( file )
/*** loadModel* @param String file 模型文件路径* @return Promise 返回模型信息*/ FastText
文本分类 FastText.predict( text , k )
模型必须是 supervised,详细请查看官方 文档
/*** predict* @param String text 文本内容* @param Number k 按相似度降序排列,返回 n 个分类,默认值为 1* @return Promise*/ FastText
相似词查询 FastText.nn( word , k )
模型必须是 cbow 或 skipgram,详细请查看官方 文档
/*** nn* @param String word 词* @param Number k 按相似度降序排列,返回 n 个相似的词,默认值为 1* @return Promise*/ FastText
计算两个词语的语义距离 FastText.similarity( what , with )
模型必须是 cbow 或 skipgram
/*** similarity* @param String what 一个词* @param String with 另一个词* @return Promise 余弦距离*/ FastText
词语类比查询 FastText.analogies( words , k )
模型必须是 cbow 或 skipgram,详细请查看官方 文档
/*** analogies* @param Array words 词语,必须为3个词语* @param Number k 按相似度降序排列,语义距离最近 n 个相似的词,默认值为 1* @return Promise */ FastText
获取向量 FastText.getVector( text )
/*** getVector* @param String text 词语或句子* @return Promise */ FastText