李宏毅机器学习笔记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。

相关推荐
草莓熊Lotso24 分钟前
Linux 文件描述符与重定向实战:从原理到 minishell 实现
android·linux·运维·服务器·数据库·c++·人工智能
Coder_Boy_1 小时前
技术发展的核心规律是「加法打底,减法优化,重构平衡」
人工智能·spring boot·spring·重构
会飞的老朱3 小时前
医药集团数智化转型,智能综合管理平台激活集团管理新效能
大数据·人工智能·oa协同办公
聆风吟º5 小时前
CANN runtime 实战指南:异构计算场景中运行时组件的部署、调优与扩展技巧
人工智能·神经网络·cann·异构计算
Codebee7 小时前
能力中心 (Agent SkillCenter):开启AI技能管理新时代
人工智能
聆风吟º8 小时前
CANN runtime 全链路拆解:AI 异构计算运行时的任务管理与功能适配技术路径
人工智能·深度学习·神经网络·cann
uesowys8 小时前
Apache Spark算法开发指导-One-vs-Rest classifier
人工智能·算法·spark
AI_56788 小时前
AWS EC2新手入门:6步带你从零启动实例
大数据·数据库·人工智能·机器学习·aws
User_芊芊君子8 小时前
CANN大模型推理加速引擎ascend-transformer-boost深度解析:毫秒级响应的Transformer优化方案
人工智能·深度学习·transformer
wdfk_prog8 小时前
[Linux]学习笔记系列 -- [drivers][input]input
linux·笔记·学习