当前位置:首页 > 物联网 > 智能应用
[导读]自然语言生成是从会话代理到内容生成的应用的核心。尽管取得了一些进展,但之前的系统往往是"黑匣子",使开发者和用户对其决策过程不确定。可解释的AI(XAI)通过使nlg模型更具可解释性和可控制性来弥补这一缺口。

自然语言生成是从会话代理到内容生成的应用的核心。尽管取得了一些进展,但之前的系统往往是"黑匣子",使开发者和用户对其决策过程不确定。可解释的AI(XAI)通过使nlg模型更具可解释性和可控制性来弥补这一缺口。

本文探讨了提高透明度的实用技术和工具。 Nlg系统 提供详细的代码片段和逐步的解释,指导开发人员理解和改进模型行为。主题包括注意力可视化、可控生成、特征属性和将解释整合到工作流中。本文通过对现实世界中的例子进行分析,为构建更多可解释性强的非线性网络系统提供了教育指导。

介绍

自然语言生成使机器能够产生连贯和适合上下文的文本,支持像聊天机器人、文档摘要和创造性的写作工具等应用。尽管像GTPT、BERT和T5这样强大的模型已经改变了NLU,但它们的不透明性给调试、问责和用户信任带来了挑战。

可解释的人工智能 (XAI)提供工具和技术来揭示这些模型是如何作出决策的,使其对开发者和最终用户来说是可访问和可靠的。无论您是在培训一个nlg模型,还是在对一个预先培训的系统进行微调,Xai方法都可以通过提供对某些输出的产生方式和产生原因的深入了解来提高您的工作流。

可解释的NLU技术

1.了解关注机制

变形器构成了大多数现代nlg模型的支柱,在生成文本时,它依靠注意机制来关注输入的相关部分。理解这些注意权重有助于解释为什么模型强调某些令牌而不是其他令牌。

示例:GPC-2中的可视化注意力

from transformers import GPT2Tokenizer, GPT2LMHeadModel

from bertviz import head_view

# Load GPT-2 model and tokenizer

model = GPT2LMHeadModel.from_pretrained("gpt2", output_attentions=True)

tokenizer = GPT2Tokenizer.from_pretrained("gpt2")

# Input text

text = "The role of explainability in AI is crucial for ethical decision-making."

# Tokenize input

inputs = tokenizer(text, return_tensors="pt")

# Generate attentions

outputs = model(**inputs)

attentions = outputs.attentions # List of attention weights from all layers

# Visualize attention

head_view(attentions, tokenizer, text)

解释

…bertviz 库提供了一个图形化接口,用于了解注意力是如何在输入令牌之间分布的。例如,如果模型生成一个摘要,您可以分析它认为最重要的单词。

2.可控制的文本生成

可控制性允许用户通过指定诸如音调、风格或结构等参数来引导模型的输出。像CTRL这样的模型和经过微调的GTPT版本都支持这个功能。

示例:引导带提示的文本生成

from transformers import AutoModelForCausalLM, AutoTokenizer

# Load GPT-Neo model

model_name = "EleutherAI/gpt-neo-2.7B"

model = AutoModelForCausalLM.from_pretrained(model_name)

tokenizer = AutoTokenizer.from_pretrained(model_name)

# Define a prompt for controlling output style

prompt = (

"Write an inspiring conclusion to an academic paper: \n"

"In conclusion, the field of Explainable AI has the potential to..."

)

# Tokenize and generate text

inputs = tokenizer(prompt, return_tensors="pt")

outputs = model.generate(inputs["input_ids"], max_length=100)

# Decode and display output

print(tokenizer.decode(outputs[0], skip_special_tokens=True))

解释

通过有效地构造提示,开发人员可以控制模型如何生成文本。在本例中,模型调整其输出以适应一个学术音调。

3.带沙普的特征归属

( 沙普利加法解释 )提供关于输入的哪些部分对生成的输出贡献最大的见解,帮助开发人员调试偏见或无关的问题。

示例:用于解释生成的文本的信息管理系统

import shap

from transformers import pipeline

# Load a text generation pipeline

generator = pipeline("text-generation", model="gpt2")

# Define SHAP explainer

explainer = shap.Explainer(generator)

# Input text

prompt = "Explainable AI improves trust in automated systems by"

# Generate explanations

shap_values = explainer([prompt])

# Visualize explanations

shap.text_plot(shap_values)

解释

Shap突出了影响生成文本的单词或短语,为分析模型焦点提供了一种方法。例如,您可能发现某些关键字不成比例地驱动特定音调或风格。

4.文本归属的综合梯度

综合梯度量化每个输入特征的贡献(例如:)通过集成从基线到输入的梯度。

示例:分类任务的综合梯度

from captum.attr import IntegratedGradients

from transformers import AutoTokenizer, AutoModelForSequenceClassification

import torch

# Load model and tokenizer

model_name = "textattack/bert-base-uncased-imdb"

model = AutoModelForSequenceClassification.from_pretrained(model_name)

tokenizer = AutoTokenizer.from_pretrained(model_name)

# Input text

text = "Explainable AI has transformed how developers interact with machine learning models."

inputs = tokenizer(text, return_tensors="pt", truncation=True, padding=True)

# Compute Integrated Gradients

ig = IntegratedGradients(model)

attributions = ig.attribute(inputs['input_ids'], target=1)

# Visualize attributions

print("Integrated Gradients Attributions:", attributions)

解释

集成梯度在分类任务中特别有用,在这些任务中,您希望了解哪些单词会影响决策。这也可以扩展到标记属性的文本生成任务。

5.明智的注意力分析

有时候,了解变压器的各个层可以为模型的行为提供更深刻的见解。

例子:逐层提取注意力权重

import torch

from transformers import BertTokenizer, BertModel

# Load BERT model and tokenizer

tokenizer = BertTokenizer.from_pretrained("bert-base-uncased")

model = BertModel.from_pretrained("bert-base-uncased", output_attentions=True)

# Input sentence

text = "Natural Language Generation depends heavily on transformer architectures."

inputs = tokenizer(text, return_tensors="pt")

# Forward pass with attention

outputs = model(**inputs)

attention_weights = outputs.attentions # Attention weights for each layer

# Analyze specific layer

layer_3_attention = attention_weights[3].detach().numpy()

print("Attention weights from layer 3:", layer_3_attention)

解释

分层分析使开发人员能够跟踪关注是如何在网络中传播的。这对于调试或微调训练前的模型特别有用。

在工作流中整合可说明的非线性逻辑

调试模型输出

像Shap和注意力可视化这样的解释工具可以帮助识别一些问题,比如不相关的焦点或者对输入中的噪声的敏感性。

改进数据集质量

归因方法可以揭示对特定短语的偏向或过度依赖,指导数据集的扩充或管理。

建立用户信任

通过展示模型是如何得出它们的输出的,开发人员可以在终端用户之间建立信任,特别是在高风险的应用程序,如法律或医学文本生成中。

道德考虑

减缓偏斜

可解释性方法可以揭示生成内容中的偏见,促使开发人员通过改进培训数据集或公平性约束来解决这些问题。

防止误传

透明度确保用户了解国家联络组系统的局限性,减少错误解释或滥用的风险。

结论

可以解释的NLU弥合了强大的人工智能系统和用户信任之间的差距,使开发人员能够调试、优化和完善他们的模型具有更大的信心。通过将注意力可视化、可控制生成和特征归属等技术结合起来,我们可以创建不仅有效而且可解释和符合道德标准的非线性网络系统。随着这个领域的不断发展,解释性的整合将仍然是构建可靠的、以人为中心的人工智能的核心。

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

9月2日消息,不造车的华为或将催生出更大的独角兽公司,随着阿维塔和赛力斯的入局,华为引望愈发显得引人瞩目。

关键字: 阿维塔 塞力斯 华为

加利福尼亚州圣克拉拉县2024年8月30日 /美通社/ -- 数字化转型技术解决方案公司Trianz今天宣布,该公司与Amazon Web Services (AWS)签订了...

关键字: AWS AN BSP 数字化

伦敦2024年8月29日 /美通社/ -- 英国汽车技术公司SODA.Auto推出其旗舰产品SODA V,这是全球首款涵盖汽车工程师从创意到认证的所有需求的工具,可用于创建软件定义汽车。 SODA V工具的开发耗时1.5...

关键字: 汽车 人工智能 智能驱动 BSP

北京2024年8月28日 /美通社/ -- 越来越多用户希望企业业务能7×24不间断运行,同时企业却面临越来越多业务中断的风险,如企业系统复杂性的增加,频繁的功能更新和发布等。如何确保业务连续性,提升韧性,成...

关键字: 亚马逊 解密 控制平面 BSP

8月30日消息,据媒体报道,腾讯和网易近期正在缩减他们对日本游戏市场的投资。

关键字: 腾讯 编码器 CPU

8月28日消息,今天上午,2024中国国际大数据产业博览会开幕式在贵阳举行,华为董事、质量流程IT总裁陶景文发表了演讲。

关键字: 华为 12nm EDA 半导体

8月28日消息,在2024中国国际大数据产业博览会上,华为常务董事、华为云CEO张平安发表演讲称,数字世界的话语权最终是由生态的繁荣决定的。

关键字: 华为 12nm 手机 卫星通信

要点: 有效应对环境变化,经营业绩稳中有升 落实提质增效举措,毛利润率延续升势 战略布局成效显著,战新业务引领增长 以科技创新为引领,提升企业核心竞争力 坚持高质量发展策略,塑强核心竞争优势...

关键字: 通信 BSP 电信运营商 数字经济

北京2024年8月27日 /美通社/ -- 8月21日,由中央广播电视总台与中国电影电视技术学会联合牵头组建的NVI技术创新联盟在BIRTV2024超高清全产业链发展研讨会上宣布正式成立。 活动现场 NVI技术创新联...

关键字: VI 传输协议 音频 BSP

北京2024年8月27日 /美通社/ -- 在8月23日举办的2024年长三角生态绿色一体化发展示范区联合招商会上,软通动力信息技术(集团)股份有限公司(以下简称"软通动力")与长三角投资(上海)有限...

关键字: BSP 信息技术
关闭