首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在C#中开发聊天机器人

如何在C#中开发聊天机器人
EN

Stack Overflow用户
提问于 2013-11-20 21:15:48
回答 1查看 3.6K关注 0票数 3

我正在为一个uni项目在C#中创建一个聊天机器人,目前我还不确定如何最好地实现它。我对OO编程和C#很陌生。

聊天机器人如何工作的基础是,它是为了学习,它与用户的互动越多。它通过解析所有用户输入的句子来实现这一点,并计算某个单词跟随每个单词的次数。

该程序从句子中获取一个随机单词,并使用单词图生成一个答复。

因此,例如,可以将下列引用分为:

我孤零零地漂泊着,像一朵漂浮在高高的矿坑和山丘上的云朵,突然我看见一群金色的水仙花

I:漫游(1)锯子(1)

漂泊:孤独(1)

孤独: as(1)

as: a(1)

a:云(1)人群(1)主机(1)

云:(1)

等等。

到目前为止,我的想法是使用一个followingWord类,它包含一个下面的单词,并计算在主单词之后的次数。

MainWord类保存单词和FollowingWord类型的列表,该列表包含以下单词及其计数。

代码语言:javascript
复制
class FollowingWord
{
string word; //the following word
int count;  //the amount of times word has followed the main word.
}

class MainWord
{
string word;        //the main word
List<FollowWord> following = new List<FollowWord>();    //a list of type FollowWord which holds all the following words and their counts.

}

我在这里走得对吗?因为我想不出其他方法来解决这个问题。

EN

回答 1

Stack Overflow用户

发布于 2017-11-22 11:53:16

我知道这个问题已经4岁了,你可能已经大学毕业了。

这个主题是自然语言处理,有一系列来自斯坦福的视频,其中有很多你所追求的理论。

NPL在线开放课程

我确实看过它们,有一种方法可以判断出一个词给出前一个单词的可能性。这就是在手机上打字时建议的单词的工作原理。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20107198

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档