当前位置:首页 > 物联网 > 智能应用
[导读]近年来,随着人工智能的发展,专门针对人工智能的法规也应运而生,例如制药行业的良好机器学习实践 (GMLP) 和金融行业的模型风险管理 (MRM),以及其他涉及数据隐私的广泛法规,如欧盟的 GDPR 和加州的 CCPA。同样,内部合规团队在验证基于模型预测的决策时可能也希望解释模型的行为。例如,承保人希望了解为什么特定的贷款申请被 ML 模型标记为可疑。

人工智能的未来在于使人类和机器能够共同解决复杂问题。组织正在尝试通过将人工智能/机器学习技术与人工审核相结合来提高流程效率和透明度。

近年来,随着人工智能的发展,专门针对人工智能的法规也应运而生,例如制药行业的良好机器学习实践 (GMLP) 和金融行业的模型风险管理 (MRM),以及其他涉及数据隐私的广泛法规,如欧盟的 GDPR 和加州的 CCPA。同样,内部合规团队在验证基于模型预测的决策时可能也希望解释模型的行为。例如,承保人希望了解为什么特定的贷款申请被 ML 模型标记为可疑。

概述

什么是可解释性?

在机器学习环境中,可解释性是指尝试追溯哪些因素对机器学习模型做出特定预测有影响。如下图所示,较简单的模型更易于解释,但与深度学习和基于 Transformer 的模型等复杂模型相比,其准确率通常较低,因为后者可以理解数据中的非线性关系,并且准确率通常较高。

宽泛地来说,有两种类型的解释:

· 全局解释: 在整体模型层面进行解释,以了解哪些特征对输出贡献最大?例如,在金融环境中,用例是构建 ML 模型来识别最有可能违约的客户,而做出该决定的一些最有影响力的特征是客户的信用评分、信用卡总数、循环余额等。

· 局部解释:这可以让你放大特定数据点并观察模型在该邻域中的行为。例如,对于电影评论用例的情绪分类,评论中的某些词可能对结果产生比其他词更大的影响。“我从来没有看过这么糟糕的电影。 ”

什么是变压器模型?

Transformer 模型是一种神经网络,它跟踪顺序输入中的关系(例如句子中的单词),以学习上下文和后续含义。Transformer 模型使用一组不断发展的数学方法(称为注意力或自我注意力)来查找一系列等距数据元素之间的细微关系。有关更多信息,请参阅Google 的出版物。

积分梯度

积分梯度 (IG) 是论文《深度网络的公理归因》中介绍的一种可解释 AI技术。本文尝试为每个输入特征分配一个归因值。这说明输入对最终预测的贡献有多大。

IG 是一种局部方法,由于其广泛适用于任何可微分模型(例如文本、图像、结构化数据)、易于实施、相对于替代方法的计算效率高以及理论依据,它是一种流行的可解释性技术。积分梯度表示沿从给定基线到输入的路径对输入的梯度的积分。积分可以用黎曼和或高斯勒让德求积规则来近似。形式上,它可以描述如下:

沿输入 X 的第 i 维积分梯度。Alpha 是缩放系数。这些方程式是从 原始论文中复制而来的。

该方法的基石是两个基本公理,即敏感性和实现不变性。更多信息可以在原始论文中找到。

用例

现在让我们实际看看如何使用Captum包应用积分梯度法。我们将使用HuggingFace的 transformers 库在SQUAD数据集上微调问答BERT(来自 Transformers 的双向编码器表示)模型,请查看笔记本以了解详细的演练。

脚步

· 加载标记器和预先训练的 BERT 模型,在本例中,bert-base-uncased

· 接下来是计算与BertEmbeddings层相关的属性。为此,定义基线/参考并将基线和输入数字化。

ython

1

def construct_whole_bert_embeddings(input_ids, ref_input_ids, \

2

token_type_ids=None, ref_token_type_ids=None, \

3

position_ids=None, ref_position_ids=None):

Python

1

input_embeddings = model.bert.embeddings(input_ids, token_type_ids=token_type_ids, position_ids=position_ids)

Python

1

ref_input_embeddings = model.bert.embeddings(ref_input_ids, token_type_ids=ref_token_type_ids, position_ids=ref_position_ids)

Python

1

return input_embeddings, ref_input_embeddings

· 现在,让我们将问答对定义为 BERT 模型的输入

问题 =“什么对我们来说是重要的?”

text = “对我们来说,包容、赋权和支持各种各样的人非常重要。”

· 为问答对生成相应的基线/参考

· 下一步是进行预测,一种选择是使用LayerIntegratedGradients和计算关于的属性BertEmbedding。LayerIntegratedGradients表示沿着从给定基线的层激活到输入的层激活的直线路径对层输入/输出的梯度的积分。

Python

1

start_scores, end_scores = predict(input_ids, \

2

token_type_ids=token_type_ids, \

3

position_ids=position_ids, \

4

attention_mask=attention_mask)

Python

1

print(‘Question: ‘, question)

2

print(‘Predicted Answer: ‘, ‘ ‘.join(all_tokens[torch.argmax(start_scores) : torch.argmax(end_scores)+1]))

Python

1

lig = LayerIntegratedGradients(squad_pos_forward_func, model.bert.embeddings)

· Output:

Question: What is important to us?

Predicted Answer: to include , em ##power and support humans of all kinds

· 使用辅助函数可视化输入序列中每个单词标记的属性

Python

# storing couple samples in an array for visualization purposes

Python

start_position_vis =

viz.VisualizationDataRecord(

attributions_start_sum,

torch.max(torch.softmax(start_scores[0], dim=0)),

torch.argmax(start_scores),

torch.argmax(start_scores),

str(ground_truth_start_ind),

attributions_start_sum.sum(),

all_tokens,

delta_start)

Python

print(‘\033[1m’, ‘Visualizations For Start Position’, ‘\033[0m’)

viz.visualize_text([start_position_vis])

Python

print(‘\033[1m’, ‘Visualizations For End Position’, ‘\033[0m’)

viz.visualize_text([end_position_vis])

从上面的结果可以看出,对于预测起始位置,我们的模型更侧重于问题方面。更具体地说,侧重于标记“什么”和“重要”。在文本方面,它也稍微侧重于标记序列“对我们来说”。

与此相反,对于预测结束位置,我们的模型更加侧重于文本方面,并且对最后的结束位置标记“种类”具有相对较高的归因。

结论

本文介绍了如何使用可解释的人工智能技术(如积分梯度)通过强调正面和负面的词语对模型结果的影响,使深度学习 NLP 模型变得可解释。


本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: 驱动电源

在工业自动化蓬勃发展的当下,工业电机作为核心动力设备,其驱动电源的性能直接关系到整个系统的稳定性和可靠性。其中,反电动势抑制与过流保护是驱动电源设计中至关重要的两个环节,集成化方案的设计成为提升电机驱动性能的关键。

关键字: 工业电机 驱动电源

LED 驱动电源作为 LED 照明系统的 “心脏”,其稳定性直接决定了整个照明设备的使用寿命。然而,在实际应用中,LED 驱动电源易损坏的问题却十分常见,不仅增加了维护成本,还影响了用户体验。要解决这一问题,需从设计、生...

关键字: 驱动电源 照明系统 散热

根据LED驱动电源的公式,电感内电流波动大小和电感值成反比,输出纹波和输出电容值成反比。所以加大电感值和输出电容值可以减小纹波。

关键字: LED 设计 驱动电源

电动汽车(EV)作为新能源汽车的重要代表,正逐渐成为全球汽车产业的重要发展方向。电动汽车的核心技术之一是电机驱动控制系统,而绝缘栅双极型晶体管(IGBT)作为电机驱动系统中的关键元件,其性能直接影响到电动汽车的动力性能和...

关键字: 电动汽车 新能源 驱动电源

在现代城市建设中,街道及停车场照明作为基础设施的重要组成部分,其质量和效率直接关系到城市的公共安全、居民生活质量和能源利用效率。随着科技的进步,高亮度白光发光二极管(LED)因其独特的优势逐渐取代传统光源,成为大功率区域...

关键字: 发光二极管 驱动电源 LED

LED通用照明设计工程师会遇到许多挑战,如功率密度、功率因数校正(PFC)、空间受限和可靠性等。

关键字: LED 驱动电源 功率因数校正

在LED照明技术日益普及的今天,LED驱动电源的电磁干扰(EMI)问题成为了一个不可忽视的挑战。电磁干扰不仅会影响LED灯具的正常工作,还可能对周围电子设备造成不利影响,甚至引发系统故障。因此,采取有效的硬件措施来解决L...

关键字: LED照明技术 电磁干扰 驱动电源

开关电源具有效率高的特性,而且开关电源的变压器体积比串联稳压型电源的要小得多,电源电路比较整洁,整机重量也有所下降,所以,现在的LED驱动电源

关键字: LED 驱动电源 开关电源

LED驱动电源是把电源供应转换为特定的电压电流以驱动LED发光的电压转换器,通常情况下:LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: LED 隧道灯 驱动电源
关闭