李宏毅机器学习笔记32

目录

摘要

Abstract

[1.explainable machine learning输入处理](#1.explainable machine learning输入处理)

人眼观察

probing

[2.global explanation](#2.global explanation)


摘要

本篇文章继续学习李宏毅老师2025春季机器学习课程,学习内容是explainable machine learning如何处理输入,以及简单了解explainable machine learning分类中的global explanation。

1.explainable machine learning输入处理

人眼观察

如何处理输入?最直观的办法就是用人眼去看,以语音为例子,将输入拿出来降到二维,并画在二维平面上。在下图示例(MFCC)中,每一个点代表一小段声音讯号,每一个颜色代表某一个speaker。实际上有很多句子是重复的,但是在图中是不会体现出来的,不同的人念同样的句子特征也差了很多。但是当我们把network拿出来看时结果就不同了,在第八层的输出中,每一条中叠加了很多颜色,就意味着多个人说了同样内容的某个句子。

probing

另一个技术叫做probing(探针),举例来说,假设想知道BERT到底学到了什么,我们可以训练一个探针,探针其实就是一个分类器,这个分类器是要根据一个向量决定一个词汇的词性,如果正确率高就说明embedding中有很多词性的资讯。但是我们需要小心分类器的强度,假设分类器的正确率很低,就无法保证embedding中有没有我们要的资讯。

2.global explanation

简单复习一下global explanation的概念,global explanation不针对特定的照片进行分析,而是根据我们训练好的模型去检查对这个network而言,一只猫长什么样子。举例来说,假设有一个convolutional neural network,它有很多的filter,把一张图片X作为输入convolutional layer会输出一个feature map,如果在feature map中(对应filter1)很多位置都有比较大的值,那么意味着图片X中有很多filter1负责侦测的特征。但我们想要知道,对于filter1对应的pattern是什么样,那么就需要机器去创造一张图片包含filter1对应的pattern。

那么我们如何寻找这样的图片?假设filter1对应的feature map中矩阵元素为a_ij,我们去找一张图片,通过convolutional layer后filter1对应的feature map里的矩阵元素a_ij的总合越大越好。可以用gradient ascent的方法寻找最大值。

在实际的例子中如下图所示,有12个filter对应的pattern。这个例子是数字辨识,对应的filter看出想要的特征是横竖斜线之类的。

假设我们不是看filter,而是看最终的输出,会有什么现象呢?假设我们找到一个图片让某一个类别的分数越高越好,依旧是数字辨识,最终输出只要0-9,我们选一个数字出来,希望找到的图片输出是1的分数越高越好。但结果是我们只能看到一堆杂讯。这种现象可以用adversarial attack解释,在图片上加一些根本看不到的杂讯就会让机器看到各式各样的物件。所以想通过看最终的输出观察对机器而言某个对象是什么样子,并不是这么容易的。

如果想要看最终的输出去观察对机器而言某个对象是什么样子?我们需要在上面的方法加上更多的限制。举例来说,已经知道数字可能长什么样,那么可以把想要的限制加到optimization的过程中。那么现在我们需要的就不只是让某一个类别的分数(y_i)越高越好,还需要一个用来衡量这个图片多像一个数字的分数R(X)也越高越好。下图的例子中R(X)为减少白色的点。

相关推荐
93_Ryan3 分钟前
企业级混合智能体核心引擎架构设计
人工智能·python
GISer_Jing5 分钟前
前端组件库——shadcn/ui:轻量、自由、可拥有,解锁前端组件库的AI时代未来
前端·人工智能·ui
码农三叔7 分钟前
破解自动驾驶感知决策难题:智能导航技术与实战指南
人工智能·机器学习·自动驾驶
Awu12278 分钟前
每天一个 Agent Skills:Context7 — 让 AI 永远写出最新的代码
人工智能·aigc·ai编程
C羊驼11 分钟前
C语言学习笔记(十):操作符
c语言·开发语言·经验分享·笔记·学习
鹭天11 分钟前
RAG学习笔记
笔记·学习
机器白学14 分钟前
OpenClaw使用前置准备:Ollama+OpenwebUI本地部署/API调用大模型
人工智能·大语言模型
Blurpath住宅代理16 分钟前
AI代理配置实战指南:构建高可用、低风险的网络出口层
人工智能·ai·自动化·静态ip·动态代理·住宅ip·住宅代理
心无旁骛~20 分钟前
【Claude Code开发】AI记账助手(miaozhang)微信小程序开发与部署完整指南
人工智能·微信小程序·notepad++
桜吹雪32 分钟前
在前端运行Qwen3.5原生多模态模型
前端·人工智能·机器学习