在这个神经网络中应该使用哪些类型的输入?

我有一个系统,用户可以发送许多聊天消息,其中许多是问题,例如如何注册账号?我该怎么做?X在哪里?

为了解决这个问题,我有兴趣创建一个FAQbot,它可以接收聊天消息,然后决定是否发送一条有帮助的消息,解释如何做某事。例如,当用户输入如何注册账号?时,机器人应该回复类似你可以通过...注册的内容。如果用户输入如何注册?我无法注册账号!请问有人能告诉我如何注册吗?或其他类似的问题,机器人都应该这样回复。机器人将有一组固定的答案,针对我们预期用户会有的各种问题,因此我计划训练神经网络,对于不需要回复的消息输出0,或者输出对应特定回复消息的ID号

我想我会记录所有聊天消息,逐一分类它们,判断哪些消息或无需消息是适当的回复,然后将这些数据输入神经网络。我还将创建工具来纠正不当的回复或缺乏回复的情况。

我使用C#,可能会使用如Accord.NET这样的库,尽管我不是在询问具体的实现方法。我的问题是如何将聊天消息字符串转换为神经网络的有效输入。我想象它会告诉网络使用了哪些单词和标点符号,单词的顺序,以及哪些单词跟随哪些其他单词。然而,具体的实现方法让我困惑。


回答:

首先 – 你的任务似乎是某种自然文本分类(每个常见问题代表一个类别)。

另外 – 也许可以使用TF-IDF向量?另一种方法是将输入表示为词向量矩阵(来自word2vec或类似工具),但在这种情况下,人工神经网络将会有很多参数 – 因此似乎你无法正确地训练它。

p.s. 另外 – 你可能更喜欢使用api.ai,或者基于Watson nlc的机器人?

Related Posts

L1-L2正则化的不同系数

我想对网络的权重同时应用L1和L2正则化。然而,我找不…

使用scikit-learn的无监督方法将列表分类成不同组别,有没有办法?

我有一系列实例,每个实例都有一份列表,代表它所遵循的不…

f1_score metric in lightgbm

我想使用自定义指标f1_score来训练一个lgb模型…

通过相关系数矩阵进行特征选择

我在测试不同的算法时,如逻辑回归、高斯朴素贝叶斯、随机…

可以将机器学习库用于流式输入和输出吗?

已关闭。此问题需要更加聚焦。目前不接受回答。 想要改进…

在TensorFlow中,queue.dequeue_up_to()方法的用途是什么?

我对这个方法感到非常困惑,特别是当我发现这个令人费解的…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注