问答系统
问答系统,简称QA,是自然语言处理领域的一类经典问题。
问答系统的模式基本上分为两类:
1. 由输入的问题在n个候选答案中选取一个最佳的答案。
2. 由输入的问题在已有的问题中选取一个语义最相似的问题,将该已有问题的答案作为最终的答案返回。
第一种问答系统类似与京东客服的自动回答系统,很多使用过京东客服或是淘宝客服的同学会知道,当你问关商品或是关于售后以及物流的一些问题时,系统会自动回答你的问题,但是回答的这些信息都是提前放在答案库里的,所以会在答案库里的候选答案中选一个跟你的提问最匹配的答案作为回答。
第二种类型的问答系统类似与百度知道,知乎这一类问答社区的形式。在数据库中,已经得到解答的问题是有答案的,而系统需要做的就是将用户输入的问题跟这些已经有答案的问题进行语义相似度计算,返回语义最相似的问题的答案作为回答。
语义相似度
语义相似度,如同字面意思一样,就是形容两句话的语义是否相似,是不是表达着同样的意思。
在上面所介绍的两类分类问题中,都需要用到语义相似度的计算。第一类需要计算问题与n个候选答案之间的语义相似度,第二类需要计算问题与n个候选问题之间的语义相似度。
目前有许多方法可以用来计算语义相似度,例如余弦相似度(Cosine Similarity)、欧几里得距离(Euclidean Distance)、指数(exponential)、曼哈顿距离(Manhattan Distance)。今天我们要介绍的也是目前