我们正在尝试创建一个智能聊天机器人来为客户服务。我们有一个客户服务问题和答案的语料库,每个对话都有一个标记的意图。我们正在探索使用深度学习来训练我们的模型,但我们遇到了几个问题:
1-如何在文本数据上进行特征工程来训练模型。具体地说,如何将语言转换为向量?
2-如何使用非单词特征,作为意图识别深度学习分类器的输入?你如何容纳客户产品名称?3-如何为文本输入的深度学习选择神经网络体系结构?4-我们如何处理数据不足的情况?使用贝叶斯技术?
发布于 2017-07-10 18:06:46
酷..。不错的开始!!.
在你跳到实现之前,我建议你一定要学习一些基础知识。
不管怎样,这是你问题的答案。!!
特征工程:顾名思义,你的数据中有一些东西可能会降低模型的准确性。就像小写和大写字符、数字、特殊字符混合在一起的单词一样,行以一些特殊字符结尾。等等,在特征工程之后提供了更多的准确性!!但是,这是必需的,这完全取决于您拥有的数据类型!
语言向量:任何类型的语言,最后都是文本(这里是你的例子)。我们可以给出单词或字符的向量表示。这种矢量表示可以通过一个热矢量或使用预先构建的方法(如word2vec或glove )来获得。
一个热门向量:-假设您的训练数据集中有100个单词。然后为每个单词创建k维向量。其中k是总字数。按字符位置对单词进行排序。并且根据第三个排序的顺序创建向量,保持它们的索引位置为1,其余为0。
ex: [1 0 0 0 0 ....] - word1
[0 1 0 0 0 ....] - word2
[0 0 0 0 0 ...1] - word100非单词功能:遵循与word相同的规则-功能客户端产品名称:-创建一个热向量,因为它们通常不会在文本中使用。它们在现实生活中没有意义。
如何选择NN :-这取决于你想要实现的目标。NN可以有多种用途。
数据不足:-这又取决于你的数据。!!如果您的数据有更常见的模式,并且在未来的数据中也会出现这些模式!!那么仍然可以使用NN。否则我不推荐使用NN。
祝你好运!
发布于 2019-08-22 15:52:54
Achyuta nanda sahoo对先前答案的一些补充。(根据你的问题编号)
https://github.com/facebookresearch/fastText/blob/master/docs/pretrained-vectors.md
开始
https://github.com/guillaumegenthial/tf_ner
https://github.com/sachinbiradar9/Question-Answer-Selection
最好的
https://stackoverflow.com/questions/42225539
复制相似问题