如果只是一个普通的聊天机器人之类的:
一个普通聊天机器人需要大量语言训练。有两种做法,(对于中文)传统的是对一段文字进行分词,然后进行主谓宾分析,接着通过数据库中有的句型模式进行匹配,取得匹配高的几个,查找对应回答句型并根据原有文本联想填词。
现代一般通过大规模语料训练,现成一个大的概率表,再得到回答映射概率表,最后自动完成聊天。对于小黄鸡之类的程序,是根据传统ALICE程序对句式学习的产物。
流程:
语料---分词(中科院ICTCLAS库)---语法分析/概率分析(聚类,N-gram)---句型模式匹配(模板匹配)/隐马可夫链,神经网络---概率分析(N-gram)/句型选用---句子生成