开发一个问诊相关问答机器人,大致思维逻辑为:
输入:病人的症状的一段描述(如:我今天有点头晕,浑身乏力,无食欲…)
输出:基于上述症状,你可能得的病为:(前面为固定回复格式)贫血症,糖尿病…
会引入聊天机器人,对于不是询问疾病相关的问题会对接机器人进行闲聊
模型架构:
整个模型分为在线部分和离线部分:
- 在线部分:
- 主逻辑服务、
- werobot微信公众号服务、
- 用户对话管理(保存聊天记录)
- 句子相关性服务(判断用户两次问题是否有关联,有关联需要结合上一个聊天信息进行回复)
- neo4j图数据库:保存疾病和疾病对应多个症状的图结构数据,用于智能机器人对用户回复提供数据支持
- 离线部分:将源数据进行处理,抽取疾病名(文件名)和对应症状实体的数据,以图的形式送入图数据库当中
- 两种数据源:结构化和非结构化
- 结构化:疾病名为文件名(如:发烧),文件内容为症状实体(打喷嚏,流鼻涕、头晕、乏力等),
- 非结构化:疾病名为文件名(如:发烧),文件内容为一段发烧相关症状的自然语言描述(如下:)
- 两种处理方式:
- 结构化:将已经为实体的症状数据送入审核模型中、去除那些表述不规范的症状数据去除(如“没食欲”表述成”没欲食“,那就要去除),之后再讲疾病-n个症状的数据送入数据
- 非结构化:自然语言文本中的症状实体抽取出来,比如上述例子中的“体温明显升高”,“浑身乏力”,“疲劳”等实体。再讲这些抽取的实体送入审核模型在送入数据库。
我能感觉到自己的体温明显升高,皮肤也变得灼热,好像整个人都在火炉里一样。这种感觉非常不舒服,让我无法集中注意力,也难以进行正常的活动。除了体温升高,我还会感到浑身无力,好像所有的力气都被抽走了一样。即使是简单的动作,比如走路或者抬手,也变得异常困难。
项目困难点:
项目设计就是,用户输入一段症状文本,然后抽取当中的症状信息,再通过图数据库中的疾病-症状的图数据进行查找匹配,ai医生返回用户可能症状描述的疾病名。
剥离聊天对话这个框架,这个项目核心就是NER命名实体识别,将文本进行实体提取,再进行关系连接,再应用于对话中。
如何将其应用金融领域并构建个项目场景,同时逻辑不需要多复杂,非金融从业者也能讲明白,别人也能听懂。