李宏毅机器学习笔记43

目录

摘要

[1.meta learning](#1.meta learning)


摘要

本篇文章继续学习李宏毅老师2025春季机器学习课程,学习内容是meta learning的基本概念和基本的训练过程

1.meta learning

meta learning就是学习如何学习,首先复习一下machine learning,machine learning就是要找一个function,例如影像辨识,输入一张图片,输出是"猫"。一共三个步骤,第一是定义一个function,function有一些位置的参数。

第二部是要定义一个loss function,它代表function的好坏。

第三步,就是要找参数,这些参数使得loss function的值越小越好,常用gradient descent。

学习这件事,本身也是一个function,称为learning algorithm,假设训练的是一个classifier,把训练资料作为输入,输入函数F,输出一个classifier。 那么如何用与机器学习相同三个步骤去找这个函数F,就是meta learning。

第一个步骤,在learning algorithm找到需要学习的东西(参数),称为,这些参数就是我们希望机器自己决定的东西。

第二步,就是要定义loss function,记作,L一般来自于训练资料,在meta learning中收集的是训练的任务,假设想要训练一个二元分类器,就要准备很多二元分类的任务。

有了任务之后,判断F好不好的依据是,把任务拿出来给F学习看看得到classifier f1,如果f1是好的就代表F是好的,L就低。

如何判断f1好不好?就把f1跑在测试资料上,将结果与正确答案比较得到l1,l1代表f1的表现如何。l1的计算方法与机器学习很像,输入测试资料到f1,得到输出,计算输出与正确答案的corss entropy,把corss entropy都加起来即为l1。l越小代表f越好,就意味着F越好。

meta learning有很多的任务,所以不会只看一个任务,假设第二个二元分类器以同样的方式计算为l2,那么L就是l1+l2,即为所有任务的l的总和。

第三步,找一个让L越小越好。如果是可以计算的,那么可以直接使用gradient descent的方法去寻找;如果是不可计算的,就用reinforce learning训练下去就能找到

整个meta learning的架构如下图,通过训练资料的任务得出了一个F,用测试资料的任务测试F是否能得出一个想要的classifier。

相关推荐
@小匠3 小时前
Read Frog:一款开源的 AI 驱动浏览器语言学习扩展
人工智能·学习
山间小僧4 小时前
「AI学习笔记」RNN
机器学习·aigc·ai编程
网教盟人才服务平台6 小时前
“方班预备班盾立方人才培养计划”正式启动!
大数据·人工智能
芯智工坊6 小时前
第15章 Mosquitto生产环境部署实践
人工智能·mqtt·开源
菜菜艾6 小时前
基于llama.cpp部署私有大模型
linux·运维·服务器·人工智能·ai·云计算·ai编程
TDengine (老段)6 小时前
TDengine IDMP 可视化 —— 分享
大数据·数据库·人工智能·时序数据库·tdengine·涛思数据·时序数据
小真zzz6 小时前
搜极星:第三方多平台中立GEO洞察专家全面解析
人工智能·搜索引擎·seo·geo·中立·第三方平台
GreenTea7 小时前
从 Claw-Code 看 AI 驱动的大型项目开发:2 人 + 10 个自治 Agent 如何产出 48K 行 Rust 代码
前端·人工智能·后端
火山引擎开发者社区7 小时前
秒级创建实例,火山引擎 Milvus Serverless 让 AI Agent 开发更快更省
人工智能