我想创建一个用于问答的聊天机器人。我有一套问题和答案。我已经有一个机器人只使用nltk和关键字识别,但它有其局限性。我想用机器学习来获得更好的聊天机器人。 我知道scikit-learn是ML最好的Python库,但我不知道如何使用它。他们网站上的所有例子都是关于数据可视化而不是实际使用。例如,this示例是"非常接近"我的意思是我们有一个数据集,想要分类。
我想要的是知道如何创建我自己的模型,就像我们可以在许多ML示例中找到的虹膜,但是使用我的Q& A套装。例如,我可以有一个表引用问题的类别,它的长度,关键字的数量,哪些等,但我不知道这样做。然后,我不确定使用哪种算法(我想到了KNN),但更重要的是如何训练模型,然后将其用于用户输入的问题。
谢谢你们。
答案 0 :(得分:2)
要创建聊天机器人而不是ML,您可以使用深度学习
创建聊天机器人的方法之一是使用Tensorflow序列对模型进行排序。
为此,您需要一个包含超过100000对问题和数据集的数据集。训练数据基本上是来往于数据。
你基本上训练你的网络给Ans。
原始的seq-2-seq模型用于将英语翻译成法语
Original seq-2-seq Tensorflow
这不是一个基于统治的聊天机器人。聊天机器人有两种类型:
1)基于统治的
2)没有统治的
现代聊天机器人介于两者之间。
有关制作自己的聊天机器人的完整步骤:
请遵循以下步骤:
在您的cmd中输入:
#This will download the retrain script Which will retrain inception_v3
git clone --recursive https://github.com/daniel-kukiela/nmt-chatbot
cd nmt-chatbot
#This will install all the requirements like tensorFlow etc.
pip install -r requirements.txt
#This will start training your model based on your data set
python train.py
注意:训练您的数据集需要数小时的处理时间
git存储库附带了自己的.to和.from文件。更改数据集放置您自己的数据集
如果您想制作聊天机器人,可以参考此链接:
Video Link
告诉它是否有效:)