在数字化时代,企业纷纷将聊天机器人融入日常运营,以提升和个性化用户体验。作为一名数据科学专业人士,总是对这些聊天机器人的构建过程充满好奇。Rasa就是这样一个开源框架,可以用来构建自己的聊天机器人。因此,很高兴邀请到Rasa的数据科学家兼开发者关系负责人Justina Petraitytė参加DataHack Radio播客节目!

  • Justina的背景和首次接触NLP的经历
  • 数据科学在视频游戏行业的应用
  • Rasa是什么以及它的工作原理
  • 最新的NLP突破和未来趋势等
  • SoundCloud
  • iTunes
  • Google Podcasts

“本质上是一名数据科学家。”——Justina Petraitytė

这句话基本上概括了Justina迄今为止在数据科学和NLP领域的职业生涯。她在立陶宛(她的祖国)完成了计量经济学学士学位。这四年的学习让她初步了解了数据分析、时间序列预测和数据科学的核心组成部分。

Justina的职业生涯很早就接触到了数据世界(早在她的本科时期)。她在一家英国视频游戏公司担任高级数据分析师之前,曾在数字银行和金融科技行业实习。如果认为这听起来像是一个梦寐以求的工作——并不孤单!

“在视频游戏公司工作就像实现了数据科学家的梦想,因为有一个非常、非常有趣的数据集可以工作。”

她在那里从事了广泛的机器学习和数据分析相关项目。想象一下,作为一名数据科学家,会如何处理视频游戏数据。现在,再次检查一下Justina所做的工作:

  • 根据玩家的行为档案进行聚类
  • 构建有毒语言分类器
  • 设计推荐引擎等

相信这与想象的有很多重叠。说实话,机器学习的深远影响和应用从未停止让感到惊讶。

这就是Justina与对话式AI(聊天机器人)的旅程开始的地方。她参与了一个项目,构建了一个机器人来自动化她过去为公司不同部门角色制作的分析报告(部署在Slack上)。因此,她提高了机器学习的知识,并使她的公司更加数据驱动。非常鼓舞人心!

正如可能已经拼凑出来的,这就是Justina遇到Rasa的地方。她开始更深入地研究Rasa,编写教程,参加聚会,并不断努力提高她已经蓬勃发展的技能。

这就是她最终在Rasa本身担任当前角色的原因。注意所有这些新兴的NLP人士。

数据科学和NLP在游戏领域的迷人特性

Justina在她的AI游戏角色中处理了一些具有挑战性的方面。都很好奇想了解更多:

  • 玩家留存:通过查看游戏中的各种指标来弄清楚如何保持用户参与。这包括预测用户何时会回到游戏中。一个非常有趣的项目!
  • 根据玩家的行为档案进行聚类:玩家如何玩游戏?他们在不同情况下做出什么决定?这有助于游戏公司改进游戏。例如,哪些玩家更喜欢1对1游戏?哪些人选择多人游戏?等等
  • 识别有毒评论:游戏玩家会理解为什么某些评论和词汇需要从评论中编辑或删除。这就是NLP方面发挥作用的地方(笑话、讽刺、情感等)

对于那些好奇的人来说——Justina主要使用监督机器学习技术来构建她的模型。

Rasa简介

正如上面看到的,Justina从开源开始使用Rasa,因为她正在寻找一个开始她的聊天机器人学习的工具。她很快就被Rasa提供的惊人灵活性以及非常支持用户的社区所吸引。

"最初怀疑Rasa是否能像Google DialogFlow或wit.ai那样工作,但当尝试它时,它确实像这些工具一样好,甚至更好!"

这里有一个有趣的注释——

  • 可以使用Rasa构建区域性语言的聊天机器人。
  • 它不仅仅限于英语,就像大多数聊天机器人平台一样。一个非常受欢迎的功能!

大多数方法使用预训练的向量来构建聊天机器人。因此,仅使用这些词嵌入的限制将聊天机器人的语言限制为英语。Rasa通过使用自己的模型(称为TensorFlow嵌入模型)来应对这些挑战。

有一些直观的教程,可以使用它们开始自己的Rasa之旅:

  • 学习如何使用Rasa在几分钟内构建和部署聊天机器人
  • 用Python构建一个FAQ聊天机器人——信息搜索的未来

跟上机器学习NLP的最新趋势和发展

Justina作为Rasa开发者关系的负责人,意味着她需要掌握机器学习的最新发展。当然,这也扩展到了NLP领域。

"个人规则是总是学习新东西。无论是新技术,还是提高编程技能。"

可以看到为什么Justina是如此成功的数据科学家。不断学习新事物和提高自己是必须拥有的主要品质。结合无尽的知识追求?有完美的组合!

Rasa的团队也遵循同样的方法。他们定期举行会议,讨论NLP(以及整个领域)的最新发展,他们处理的事情就像首先优先考虑哪些功能等。

可能没有想到的聊天机器人的有趣应用

聊天机器人现在无处不在。世界各地的企业都在严重依赖这些对话式AI代理,将它们推向今天的数字时代。相信大多数人一定在日常生活中遇到过这些聊天机器人:

  • 订餐时
  • 通过客户支持解决查询
  • 解决财务/保险查询等

但是还有其他一些聊天机器人的应用可能已经逃过注意。Justina提供了两个很好的例子:

  • 医疗保健:开发者使用Rasa将需要治疗的人与可以帮助他们的治疗师匹配
  • 教育:开发者正在使用Rasa为小学生构建一个系统,帮助他们更好地完成任务。这个系统还允许父母跟踪孩子的绩效
  • 游戏:是的,视频游戏!而不是每次遇到故障时都提出一个新的工单,游戏开发者的目标是在游戏本身内使用聊天机器人助手解决问题
"总的来说,人们对AI助手是什么以及它应该能够做什么的看法正在改变。"

Justina认为,目前构建聊天机器人的方法相当有限。可以设计一个聊天机器人,使用一组规则使其以自然和礼貌的方式进行对话。但是有扩大范围的空间。本质上,没有“智能”方面在起作用。

让机器理解句子的上下文是棘手的。但开始用像Google的BERT、OpenAI的GPT-2和Transformer-XL这样的突破来打破这个障碍。

  • 记住之前的对话
  • 理解情况的上下文
  • 弄清楚用户喜欢什么
  • 然后制定回复