人机协作机器学习产品案例解析
在实际应用中,许多工作都涉及从非结构化数据中构建结构化数据,如营销人员分析消费者对产品的情感、医疗人员从电子病历中提取重要信息等。以下将详细介绍两个具体案例,包括问题陈述、假设、设计实现以及潜在扩展。
案例2:收集食品安全事件数据
- 问题陈述 :食品安全专业人员希望收集食品中检测到病原体或异物的事件数据,具体需求包括维护欧盟所有记录的食品安全事件的完整记录、追踪不同食品安全事件是否来自同一来源,以及在可能存在未检测或未报告的食品安全事件时向特定国家发出警告。
-
假设
- 报告仅使用英文。
- 预训练语言模型将有所帮助。
- 食品安全专家具备提取信息所需的领域专业知识。
- 食品安全专家已经在工作中执行此任务。
-
重要考虑因素
- 自主性 :食品安全专家不希望机器学习集成减慢其工作流程。
- 透明度 :食品安全专家应能够了解剩余报告数量。
- 一致性和紧凑性 :食品安全专家不应需要滚动、使用鼠标或在屏幕上丢失元素跟踪。
- 趋势跟踪能力 :分析师对各国趋势感兴趣,因此希望跟踪提取的信息如何显示各国之间的移动趋势。
-
设计与实现
- 主动学习 :使用置信度比率来衡量不确定性,该不确定性分数将作为阈值,决定是否显示模型的自动完成建议。
- 注释 :如果模型没有预测,界面将使用当前报告中所有匹配文本字符串的自动完成建议。
- 机器学习模型 :使用基于DistillBERT预训练模型的一个机器学习模型,并定期进行再训练。
- 架构图
graph LR
classDef process fill:#E5F6FF,stroke:#73A6FF,stroke-width:2px;
A(未标记数据):::process --> B(Transfer learning: Use DistillBERT pretrained model):::process
B --> C(Annotation: Food safety expert annotates information):::process
C --> D(Training data: Train model on extracted data):::process
D --> E(Train model: Model predicts sequences):::process
E --> F(Deployed model: Trained model uses ratio of confidence for assisted annotation):::process
F --> G(Deployed model: Predict sequences):::process
G --> H(Extracted information):::process
I(Stream of reports):::process --> C
-
潜在扩展
| 扩展类型 | 扩展方法 | 说明 |
| ---- | ---- | ---- |
| 注释界面 | 预测注释 | 当模型对预测有信心时,用预测值预填充字段,但可能导致专家接受错误预测而产生更多错误。 |
| 注释界面 | 裁决 | 创建一个单独的界面,让专家快速裁决对模型有高价值的示例,作为可选的额外策略。 |
| 注释质量控制 | 内部注释者一致性 | 给注释者在不同时间分配相同任务,以测量一致性。 |
| 注释质量控制 | 错误预测 | 构建模型预测专家最可能出错的位置,并标记这些位置,提醒专家注意或分配给更多人处理。 |
| 机器学习架构 | 合成负例 | 让专家对现有上下文进行最小编辑以创建负例,避免模型错误学习上下文。 |
| 机器学习架构 | 中间任务训练 | 创建一个单独的文档标记模型来预测“相关”和“不相关”,并将其用作主模型的表示。 |
| 主动学习 | 基于不确定性重新排序 | 将最不确定的项目排在前面,可能更快地改进机器学习模型,但最初可能会让专家感觉速度变慢。 |
| 主动学习 | 其他不确定性指标 | 测试置信度比率是否是此数据的最佳不确定性采样算法。 |
案例3:图像中识别自行车
- 问题陈述 :交通研究人员希望估计特定街道上使用自行车的人数,具体需求包括收集人们在街道上骑自行车的频率信息、从数千个摄像头捕获此信息且预算有限,以及使自行车识别模型尽可能准确。
-
假设
- 图像可以从任何角度拍摄。
- 现有数据集(如ImageNet、Open Images和MS COCO)可能有用,但可能无法覆盖所有可能的拍摄角度和设置。
- 模型的准确性是最重要的结果。
-
重要考虑因素
- 自主性 :交通研究人员不关心注释过程中的自主性,只希望尽快构建最准确和健壮的模型。
- 透明度 :实时监控系统的准确性是最重要的指标。
- 多样性 :交通研究人员希望模型在不同光照条件、角度和距离下都能同样有效工作。
-
设计与实现
- 机器学习模型 :使用基于ImageNet和COCO数据集的两个预训练模型。
- 主动学习 :使用最小置信度进行不确定性采样,并寻找基于模型的异常值。
- 注释 :允许注释者快速对每个图像进行二元选择,以优化速度。
- 架构图
graph LR
classDef process fill:#E5F6FF,stroke:#73A6FF,stroke-width:2px;
A(未标记数据池):::process --> B(Transfer learning: Use COCO pretrained model):::process
A --> C(Transfer learning: Use ImageNet pretrained model):::process
B --> D(Annotation: Humans label items individually and batched):::process
C --> D
D --> E(Training data: Labeled items become the training data):::process
E --> F(Train model: Use training data to create machine learning model):::process
F --> G(Deploy model: Trained model is deployed to predict labels on raw data):::process
G --> H(Deployed model: Predict labels):::process
I(Active learning: Least confidence, model-based outliers, data augmentation):::process --> A
-
潜在扩展
| 扩展类型 | 扩展方法 | 说明 |
| ---- | ---- | ---- |
| 注释界面 | 批量注释 | 允许批量注释界面,如包含10张左右图像的界面,让注释者选择有自行车的图像,可能比滚动界面更快。 |
| 注释界面 | 边界框注释 | 对于模型无法正确预测自行车的图像,注释者可以注释自行车,这些图像可作为裁剪训练数据示例。 |
| 注释质量控制 | 引出主观判断 | 对于一些边缘情况,如独轮车、自行车框架和电动自行车,使用贝叶斯真相血清等方法找到少数但有效的解释。 |
| 注释质量控制 | 合成数据 | 将自行车复制粘贴到一些图像中,提高上下文多样性,帮助模型关注自行车而非背景。 |
| 机器学习架构 | 目标检测 | 自动裁剪和/或缩放图像中预测有自行车的部分,提高注释过程的速度和准确性。 |
| 机器学习架构 | 连续/连续任务 | 模型可以进行连续或连续任务,预测自行车的确切数量,但注释速度会变慢,质量控制更难实现。 |
| 主动学习 | 集成采样 | 维护多个模型,跟踪所有模型的预测不确定性,采样平均不确定性最高和/或预测变化最大的项目。 |
| 主动学习 | 代表性采样 | 使用代表性采样找到与Open Images最相似的图像,因为这些图像更容易出现错误。 |
综上所述,在设计人机协作机器学习产品时,应从解决的问题出发,综合考虑各种因素,包括用户需求、模型准确性、数据多样性等。通过合理的设计和实现,并根据实际情况进行潜在扩展,可以构建出高效、准确的机器学习系统。
人机协作机器学习产品案例解析
构建人机协作机器学习产品的进一步思考
在前面介绍了收集食品安全事件数据和图像中识别自行车这两个人机协作机器学习产品案例后,我们可以进一步探讨构建这类产品的一些要点和注意事项。
产品设计的起点
在定义人机协作机器学习应用的产品时,从要解决的问题出发并逆向推导是一个非常有效的方法。这样可以帮助我们从技术设计、界面设计到注释指南等各个方面进行全面的规划。例如,在食品安全事件数据收集案例中,明确了食品专家的具体需求,如维护完整记录、追踪事件来源和发出警告等,这些需求就成为了整个系统设计的核心依据。
不同案例的特点与共性
-
特点
- 数据类型不同 :食品安全事件数据收集主要处理的是文本数据,而自行车识别案例处理的是图像数据。不同的数据类型决定了在模型选择、特征提取和注释方法等方面会有很大的差异。例如,文本数据可能更依赖于语言模型,而图像数据则需要使用计算机视觉相关的模型。
- 用户需求不同 :食品安全专家更关注工作流程的效率和信息的准确性,而交通研究人员则更注重模型的准确性和实时监控。这就要求在设计系统时,要充分考虑用户的不同需求,提供相应的功能和界面。
-
共性
- 都需要人机协作 :无论是文本数据的注释还是图像数据的标记,都离不开人类专家的参与。人类的专业知识和判断力可以帮助模型更好地学习和提高准确性。
- 都可以进行潜在扩展 :两个案例都提供了多种潜在的扩展方法,这些扩展方法可以根据实际情况进行选择和实施,以进一步提高系统的性能和效率。
机器学习基础回顾
在人机协作机器学习中,了解一些基本的机器学习知识是非常重要的。以下是一些关键的知识点:
模型预测的解释
几乎所有的监督机器学习模型都会给出两个主要信息:预测标签和与每个预测标签相关的数值。例如,一个简单的目标检测模型可能会给出如下预测:
{
"Object": {
"Label": "Cyclist",
"Scores": {
// 这里应该有具体的分数信息,但原示例未给出完整
}
}
}
通过这些信息,我们可以了解模型对不同对象的预测结果和置信度。
准确性的计算
计算模型的准确性可以通过多种指标,如召回率、精确率、F分数、ROC曲线下面积(AUC)和机会调整准确性等。这些指标可以帮助我们从不同的角度评估模型的性能。例如,召回率衡量的是模型正确预测出正例的比例,而精确率则衡量的是模型预测为正例的样本中实际为正例的比例。
软max及其局限性
软max是一种常用的激活函数,用于将模型的输出转换为概率分布。然而,它也有一些局限性,例如在处理不平衡数据时可能会导致模型偏向于多数类。在实际应用中,我们需要了解这些局限性,并根据具体情况选择合适的方法来解决。
总结与展望
通过以上案例和相关知识的介绍,我们可以看到人机协作机器学习在不同领域都有广泛的应用前景。在实际构建这类产品时,我们需要充分考虑用户的需求、数据的特点和模型的性能,合理选择设计和实现方案,并根据实际情况进行潜在扩展。同时,不断回顾和掌握机器学习的基础知识,有助于我们更好地理解和优化这些系统。
未来,随着技术的不断发展,人机协作机器学习产品可能会在更多领域得到应用,并且会不断涌现出更加高效和智能的方法和技术。我们可以期待这些产品在提高工作效率、提升决策质量等方面发挥更大的作用。
以下是一个总结人机协作机器学习产品构建要点的表格:
| 要点 | 说明 |
| ---- | ---- |
| 问题导向 | 从要解决的问题出发进行产品设计 |
| 考虑用户需求 | 充分考虑用户的工作流程、需求和关注点 |
| 选择合适模型 | 根据数据类型和任务特点选择合适的机器学习模型 |
| 人机协作 | 合理安排人类专家参与数据注释和模型优化 |
| 潜在扩展 | 根据实际情况选择和实施潜在的扩展方法 |
| 掌握基础知识 | 了解模型预测解释、准确性计算和软max等基础知识 |
通过遵循这些要点,我们可以构建出更加高效、准确和实用的人机协作机器学习产品。
graph LR
classDef process fill:#E5F6FF,stroke:#73A6FF,stroke-width:2px;
A(问题定义):::process --> B(数据收集与准备):::process
B --> C(模型选择与训练):::process
C --> D(人机协作注释):::process
D --> E(系统评估与优化):::process
E --> F(潜在扩展):::process
F --> G(持续改进):::process
这个流程图展示了构建人机协作机器学习产品的一般流程,从问题定义开始,经过数据处理、模型训练、人机协作注释等步骤,最终通过评估和扩展实现持续改进。
超级会员免费看
729

被折叠的 条评论
为什么被折叠?



