北京
项目六:R1业务助理
项目描述:使用Pytorch框架进行开发,基于Seq2Seq模型Fasttext实现的业务助理机器人,能够起到智能客服的效果,为客户进行业务问题的解答和指南,同时还可以进行闲聊。
项目模块:
负责对业务数据、手动构造模板填充的数据、爬取的问答对和词典数据进行收集和预处理
负责应用Embedding+GRU完成编码器,使用Embedding+GRU+Teacher forcing+log_softmax完成解码器
负责应用Fasttext模型进行文本分类和词向量的生成,对用户意图进行识别,使用Seq2Seq+Attention实现闲聊模型,使用TFIDF变种+孪生神经网络实现问答模型
负责使用pysparnn和BM25算法的机制来实现召回和排序,保证获取的速度的同时保证了准确率
负责在模型层应用bi-lstm模型,在特征层使用单字,词,词性属性多种特征获取更好的结果
负责项目优化点:
1.为了提高模型的准确度,避免在解码器中预测时一步错,步步错的结果,并且同时提高模型的收敛速度,在每个batch遍历time step的外层使用了teacher forcing机制
2.使用了Attention机制,使用Luong Attention的矩阵乘法General,dot点乘法,concat合并法。对比未使用Attention前,使用Attention优化后训练loss降低了6%
3.使用Beam Search束集搜索,设置Beam width=2每次保存的最大的两个概率,以达到约束搜索空间大小的目的,从而提高算法的效率。在项目中使用了python自带的heapq模块中数据结构堆来实现,准确度对比未使用前提升了13%
4.使用了梯度裁剪机制,clip_grad_norm_(),可以在反向传播时抑制过大的梯度,能够有效防止梯度爆炸
Wiujw4U202303201412