李宏毅机器学习笔记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)为减少白色的点。

相关推荐
风象南6 小时前
普通人用AI加持赚到的第一个100块
人工智能·后端
牛奶7 小时前
2026年大模型怎么选?前端人实用对比
前端·人工智能·ai编程
牛奶7 小时前
前端人为什么要学AI?
前端·人工智能·ai编程
哥布林学者9 小时前
高光谱成像(一)高光谱图像
机器学习·高光谱成像
罗西的思考10 小时前
AI Agent框架探秘:拆解 OpenHands(10)--- Runtime
人工智能·算法·机器学习
冬奇Lab10 小时前
OpenClaw 源码精读(2):Channel & Routing——一条消息如何找到它的 Agent?
人工智能·开源·源码阅读
冬奇Lab10 小时前
一天一个开源项目(第38篇):Claude Code Telegram - 用 Telegram 远程用 Claude Code,随时随地聊项目
人工智能·开源·资讯
格砸12 小时前
从入门到辞职|从ChatGPT到OpenClaw,跟上智能时代的进化
前端·人工智能·后端
可观测性用观测云12 小时前
可观测性 4.0:教系统如何思考
人工智能
sunny86512 小时前
Claude Code 跨会话上下文恢复:从 8 次纠正到 0 次的工程实践
人工智能·开源·github