【IUI 2020】人在回路机器学习——Human-in-the-Loop AI in Government: A Case Study

文章目录

  • 摘要
  • 1 引言
  • 2 背景
  • 3 设计与实施
    • 3.1 收据扫描
    • 3.2 图像处理
    • 3.3 光学字符识别(OCR)
    • 3.4 自然语言处理
    • 3.5 机器学习分类
  • 用户接口
  • 总结
  • 主要参考文献

摘要

  文章展示了一种人机交互遇见人工智能的新应用,并讨论了从研究到生产的漫长过程中需要解决的问题。与学术界和工业界一直在自动化前沿不同,政府是该领域的新的参与者,但是是一个重要的参与者。我们建立大规模系统,为政策决策者采集信息。以家庭预算调查为例,我们演示了政府机构如何使用人在回路机器学习自动生成官方统计数据。目的是节省时间和资源重复,机器擅长劳动密集型任务,让人类关注需要自由性和智慧的增值任务。一个主要的挑战是人类因素。习惯于手工任务的用户,如何适应AI的复杂性?如何设计用户接口提供给他们一个好的用户体验?我们如何衡量成功?事实上,走向生产的一个关键步骤是确保资金,这需要以涉众能够理解的方式展示潜在的成功。我们强调从实际的商业角度制定问题的重要性,希望能够弥合沟通鸿沟,帮助研究界接触到更多潜在用户,帮助解决更多新奇的现实问题。

1 引言

  不是每个自动化问题都需要“人在回路”,但是需要高精度的应用肯定需要。生成官方统计数据是处理时间和精度至关重要的另一个案例。为了演示政府机构如何应用HuIL(“人在回路”,Human-in-the-Loop)替代原先的系统,文章为家庭预算调查(Household Budget Survey, HBS)提出了一种自动化管道。目的是开发出能够被任何政府机构推广和使用的方法。文章的组织结构如下:

  • 背景:描述了典型HBS数据收集过程,强调了现代化需求。讨论了机构系统如何能够被自动化管道替代及哪些领域能够做出改进。提出了衡量成功的指标。
  • 设计与实施:描述了管道中每个模块的实现,在不可能自动化的情景中,我们在人与机器之间的任务划分中探索HuIL策略,并设计了它们的交互。重点在机器将任务移交给人类的任务上,反之亦然。
  • 用户接口:使业务流程现代化不仅仅是改变软件,人类因素是关键的挑战。如何提供良好的用户体验以赢得用户信赖?人机交互研究通常为普通用户设计面向公众的应用,他们是否经过了面向任务的系统训练?
  • 结论和未来工作:规划下一步计划,并强调了超越技术考虑之外的其他挑战。

2 背景

  家庭预算调查手机家庭收入和开支模式的数据,这为计算国内生产总值提供了重要信息。通常情况下,手工处理一个日志需要花费4-5个小时,并且需要一个庞大的编码团队来完成任务。人们可以清楚地看到用自动化取代人工操作的潜力,但这提出了一个重要的问题:如何衡量成功?
  机器学习领域,有很多评价指标如准确度、精确度、召回率等。然而,从业务角度来看,这些数值不是那么有意义。例如,对于投资更换旧系统的企业来说,潜在收益通常是根据效率节省、生产成本、处理时间、数据质量来衡量的,在官方统计的背景下,是受访者负担。通常需要关于找到这些变量之间的权衡。因此,本文中将使用两组质量度量,并将解释如何在当前环境中将模型性能分数转换为业务性能。

3 设计与实施

  观察编码团队的任务,设计了一个高级的自动化管道如图1。
【IUI 2020】人在回路机器学习——Human-in-the-Loop AI in Government: A Case Study_第1张图片

  • 扫描:购物收据可通过办公室平板扫描仪或手机APP扫描;
  • 图片处理:收据被扫描分割并应用图像增强;
  • OCR光学字符识别:OCR通常并不完美,影响分类错误字符和缩写必须要解决;
  • 机器学习分类:使用不同的特征提取方法和机器学习模型,使它们组合在一起以提高性能。当自动化失败时,使用人在回路的主动学习作为解决方案;

3.1 收据扫描

  对于数据捕捉,至少有两种可能的情景:

  • 情景1:收集回答者的纸质收据,并在我们的办公室用平板扫描仪扫描。
  • 情景2:作者开发了一个手机应用程序,允许受访者捕捉收据的图像,并直接上传到政府机构的云存储。

  两种方案的优缺点评估如表2:
【IUI 2020】人在回路机器学习——Human-in-the-Loop AI in Government: A Case Study_第2张图片
  由于上述考虑,首选方案是风险更小的情景1。因为从研究角度更好的方案并不总是从商业角度更好的选择。

3.2 图像处理

  典型的,一个好的OCR,x的字符高度大约需要20像素。大多收据的文本大小为10pt,一个300dpi的分辨率大约产生20像素。因此,用于收据扫描的OCR通常设置为300dpi
图像处理模块是用Python实现的。收据是从原始扫描中裁剪出来的。通过应用阈值算法、形态学变换、去噪、平滑边缘等方法来提高图像质量。处理一张收据的时间约在6-10秒。由于我们控制了扫描过程中的许多参数,图像增强通常不是必要的,除非用例的质量很低(褪色,有折痕)。

3.3 光学字符识别(OCR)

  OCR是定位图像中的文本并将其提取为可编辑格式的过程。早期的OCR算法依赖于模式识别和基于规则的特征检测来识别字符。最近的算法引入了最先进的数据科学技术,例如长短期记忆(LSTM)等循环神经网络。LSTM模型在各种字体、类型(正常、粗体、斜体等)和图像质量的字符图像上进行训练。由于特殊字符,同样也因为LSTM模型学习不同语言的特征序列,因此这些模型是语言依赖的。
  本文使用了最初由谷歌开发的开源Tesseract软件包,用于训练LSTM网络的数据包括大量由相机产生的降级图像。如果LSTM在特定的字符序列上失败,它可以退回到它的遗留识别器来做出决定。对于给定的文档,Tesseract输出文本块及其边界框的坐标。
  格式良好的文件知道文本的位置足以抽取想要的信息,因此,几十年来,政府机构一直在使用OCR处理调查表格。然而,对于目前处理各种收据的应用程序来说,仅知道文本位置不足以定位有用的信息。图3是一张加拿大超市的收据,图4展示了有效信息如何被抽取并格式化到python的dataframe中。在macbook pro上,OCR需要约4秒,数据解析需要2-3秒。而人工处理通常需要5-10分钟,条形码是最难转录的。
【IUI 2020】人在回路机器学习——Human-in-the-Loop AI in Government: A Case Study_第3张图片
【IUI 2020】人在回路机器学习——Human-in-the-Loop AI in Government: A Case Study_第4张图片
  为了解析并抽取有用的信息,我们使用模糊匹配和正则表达式。模糊匹配主要用于匹配商店名称,价格、条形码和日期使用正则抽取。为了衡量OCR的准确性,计算手工描述和OCR输出之间的Levenshtein距离。由于文本解析可能会错误地删除相关行或忽略删除不相关行,我们还计算每个收据的额外和缺失行数,作为衡量OCR正确性的一种手段。
使用字典识别商店,但是没有一个字典能够穷尽所有店名,因为新店总在开张。在人在回路系统中,机器将标记这些商店为“Unkown”来提示人类去更新字典。即使有人工干预来纠正OCR错误,与人工输入相同数量的信息相比,也可以预测在效率节约和处理速度方面的潜在收益。另一方面,人在回路确保数据质量维持在期望的水平上。

3.4 自然语言处理

  有些情况下,即使是最好的OCR引擎也会失败。例如,在Costco,检查购物车并划掉收据是一种常见的做法。笔触导致一些字符很难识别,从而拼错单词。自然语言处理提供了很多检查拼写和错误纠正的算法。在这个应用程序中,由于收据描述包含许多特定于商店的缩写,我们将Tesseract默认的英语字典替换为根据购买商品描述的历史记录构建的用户定义字典。我们目前的NLP自动校正无法很好的实现期望的数据质量,因此我们让人工介入进来纠正错误。

3.5 机器学习分类

  目的在于自动将购买物品的类别分到对应的个人消费用途分类,这可以通过监督机器学习实现。生产一个带标签的数据集来训练模型是人类最消耗资源的任务之一。生成一个有标签的数据集来训练模型是人类最消耗资源的人物之一。本文使用了一个389,432个条目的数据集,这些条目都是由经验丰富的HBS编码员标记。该数据涵盖了2017年、2018年和2019年的同一时期,以考虑季节性影响。这是一个多分类问题。COICOP(个人消费用途分类)包含约375类食品。这是一个概率过程,模型识别物品的类别,其置信度分数可用于接受或拒绝。从数据的性质来看,有可能存在类别不平衡的风险,而这在多分类任务中可能被放大。该模型可能在占主导地位的类上表现良好,但在训练集中代表不足的类上表现糟糕,因此仅使用准确性作为性能度量可能会产生误导。本研究使用加权指标(准确性、精密度、f分、回忆率)来捕捉更真实情况,同时作者定义了一个定制的性能指标,与业务角度更加贴合。如下图所示
【IUI 2020】人在回路机器学习——Human-in-the-Loop AI in Government: A Case Study_第5张图片

  • 定义定制的性能指标:假设以8:2划分数据集,文章使用分层采样来应对类别不平衡的问题。因为事先有基本答案,因此可以识别正确分类和错误分类。绘制模型置信度的直方图如图5。给定置信度的切断,称其为阈值=x%。
    • 接受:具有高置信度、大于等于阈值的物品;
    • 拒绝:置信度小于阈值的物品;

  一旦知道了临界值,落在阈值左侧的物品要么被发送给人类编码员,要么在字典中查找。
  作者使用了通过scikit-learn Python包实现的三种特征抽取方法:Countvectorizer(CV), 词级和字符级的Term Frequency-Inverse Document Frequency(TF-IDF-w, TF-IDF-c),以及流行的监督奇迹学习模型如偶素贝叶斯、逻辑回归、随机森林等。也测试了先进的词嵌入方法Embeddings from Language Models (ELMo)和FastText。FastText被作为监督模型和迁移学习的预训练模型。
  在所有测试模型中,公认的LR和RF模型表现最好。使用逻辑回归的FastText嵌入仅产生接近68%的准确性。ELMo词嵌入显示了有希望的初步结果,但计算成本较高。一般来说,最先进的模型似乎更需要数据,所以在等待收集更多数据的同时,我们专注于在较小的数据集上表现更好的传统模型。为了平衡每个模型各自的弱点,作者使用集成学习架构,该架构应用软投票概念,根据平均预测概率选择最可能的预测
最佳模型的拟合结果如表3所示,样例模型的特征绘制如图6。
【IUI 2020】人在回路机器学习——Human-in-the-Loop AI in Government: A Case Study_第6张图片
表4显示了各种ML分类器在错误阈值范围内的业务性能指标。
【IUI 2020】人在回路机器学习——Human-in-the-Loop AI in Government: A Case Study_第7张图片
  正如预期的那样,自动化的百分比随错误阈值的增加而单调增加。最大的自动化率在错误率为5%时达到,自动化率为71%。使用LR或RF与Countvectorise特征提取结合的方式。
  然而收据中的信息有时过于简洁,从而导致无法细致的分到具体类别,如鲜奶是简略的,但具体类别是全脂牛奶、脱脂牛奶还是半脱脂牛奶。对于这一类情况,预计它们的TF-IDF得分非常低,因此模型应该做出低置信度的预测。如果阈值正确设置,它们的置信度会小于阈值,从而被标记和发送给人类做进一步的判断,流程如图7所示。
【IUI 2020】人在回路机器学习——Human-in-the-Loop AI in Government: A Case Study_第8张图片
  一个罕见的产品或者新产品出现,机器的预测性能可能会不好。这种情况下,机器会给一个较低的置信度把它们标记出来,编码员进而手动对他们进行分类,分类结果被加进标签数据集用于模型的再训练。这是人在回路机器学习中的主动学习原则。当一个系统无法百分百的完成自动化时,允许人类参与到其中来保持更新。

用户接口

  虽然HCI文献中有很多很棒的UI示例,但大多数都是针对普通用户设计面向公众的应用程序。本研究中的接口设计是面向生产系统的,对于经过高度训练的调查编码员来说,约束条件应当是不同的,因此一般的用户体验(UX)最佳实践可能不适用。另一个区别在于接受程度。一个用户会在电影评分网站上可能是热情的,但员工对于人工智能技术是严肃的,他们害怕失业,所以会更挑剔。
  为了设计一个适合于目的的系统,我们相信第一步是了解用户并采用以人为本的设计方法。为此,我们访问了编码团队,观察他们的日常工作,了解当前的业务流程。我们就他们喜欢什么和不喜欢什么进行了采访,并指出了需要改进的地方,得到结果如下:

  1. 编码员不是技术通:他们习惯手工处理数据,而不太适应AI系统。使用者需要舒适感和低认知的负担,来维持熟悉感
  2. 他们经验丰富,在判断软件的可用性和亲和力方面非常迅速。UI将建立第一印象,隐藏复杂乏味的AI机制极为重要
  3. 当我们一起草拟新功能时,他们通常试图在遗留系统中复制功能,并总是以当前系统为基准来衡量新想法。
  4. 他们的工作任务非常重复
  5. 数据收集是一个连续过程。改变可能会导致服务中断,所以最好逐步调整
  6. 人们普遍对AI的引入具有担忧。人在循环中”可能是一种很好的传递信息的方法,即编码人员在新的工作流中扮演着积极的角色。

  针对上述问题,文章设计了如图8的UI。设计决策是与构建遗留系统的程序员和软件开发人员一致做出的,尽可能地再现原来界面的外观和感觉。
【IUI 2020】人在回路机器学习——Human-in-the-Loop AI in Government: A Case Study_第9张图片
然而,这种UI设计并不意味着要按原样实现。事实上,虽然短收据看起来可以接受,但对于超过30件商品的长收据就不一定了。如果屏幕看起来太忙,可能会导致混乱和沮丧。因此,我们的目的是在第二阶段重新设计UI,在屏幕上一次显示一个项目,如图9所示。控制可以通过键盘和鼠标访问,因此用户可以切换,从而防止重复性劳损。
【IUI 2020】人在回路机器学习——Human-in-the-Loop AI in Government: A Case Study_第10张图片

总结

  本文演示了政府机构如何用自动化取代其原始的手工流程。设计并实现端到端自动化管道,并讨论成功措施。为了避免重复工作,使用开源软件来利用公共知识,只有在找不到已知解决方案时才开发方法。文章使方法和代码公开可用,这样任何人都可以重用它们。
  虽然我们强烈主张将自动化作为一种节省效率和加快处理时间的手段,但我们也承认,在某些情况下,我们需要人工干预来维持数据质量。因此,我们提出了一个人在循环的解决方案,采用以人为中心的方法设计用户界面,使人机交互在过程的每一步都紧密交织在一起。
  在我们继续改进我们的方法的同时,我们还计划在后勤部门对更多的数据和在不同国家进行进一步的测试。主要目的是收集证据并进行成本效益分析,以支持投入生产的业务案例。这项工作将在建立能力的同时进行,以便将来用户能够操作和维护新系统。

主要参考文献

[1] Benedikt L, Joshi C, Nolan L, et al. Human-in-the-loop AI in government: a case study[C]//Proceedings of the 25th International Conference on Intelligent User Interfaces. 2020: 488-497.

你可能感兴趣的:(deep,learning,人在回路机器学习,machine,learning,人工智能,机器学习,python)