智能问答API中文文档

1、NER实体抽取

实体抽取模块的目的是根据词典识别出自然语言问句中的实体。其步骤包括:

1、引入NER模块:
import tfkbqa.NER as NER
2、加载词典:
#加载用户自定义词典(输入所在文件夹即可,api会自动扫描文件夹下的所有词典)
NER.load_dict("E://NLP//test_api//dict//userdict")
#加载同义词词典(输入所在文件夹即可,api会自动扫描文件夹下的所有词典)
NER.load_synonym_dict("E://NLP//test_api//dict//sysnonym_dict")
#加载关键词映射词典(输入所在文件夹即可,api会自动扫描文件夹下的所有词典)
NER.load_key_value_dict('E://NLP//tfkbqa//dict//key_dict')
3、定义实体词性:

应与自定义词典中的词性保持一致。

POS=['mmmm','mmd','mmw']
POS_KEY=['month','day','year']
4、获取实体与其词性:
#获取抽取出的实体与其词性
print(NER.get_entity("你好呀tfkg",POS))
[('tfkg', 'mmmm')]
#获取将词性替换实体后的抽象语句(其中还包括同义词替换)
print(NER.get_abstract_str("hello呀tfkg"))
hello呀mmmm
4、关键词抽取与映射转换
print(NER.get_key_value('近三月你好呀tfkg',POS_KEY))
[('month', 3)]

2、向量化

1、引入向量化VEC_term_freq模块
import VEC_term_freq
2、加载问句语义库(计算词频文档)
VEC_term_freq.load_questions_dict('E://NLP//tf_kg//questions_0107.txt')
3、问句向量化
feature=VEC_term_freq.vectorized_str('今天天气怎么样')
print(feature)
[[1 0 0 1 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 1
  0 0 0 0 0 0 1 0 0 0 1 0 0 0 0 0 0]]

3、关系抽取

1、引入关系抽取Classify模块
import Classify
2、加载预测模型
Classify.load_model('E://NLP//tf_kg//forest_0107')
3、关系抽取
print(Classify.predict(feature))

4、自动训练

1、一键训练随机森林模型:
Network.autoTrain('E://NLP//tf_kg//questions_0107.txt')

autoautoTrain方法参数:
1、path:问句文档地址
2、test_size:默认为0.1,代表测试集的大小。

问题集合格式:
classes questions
0 今天天气怎么样
0 今天多少度
0 今天是晴天吗

2、保存模型文件:
Network.save_model('E://NLP//tfkbqa//forest')
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值