跳转到内容

学习笔记:《生成式AI导论2024》 李宏毅

💻

真的很易懂很好听,学起来就赢了90%的人了

课程地址:https://www.youtube.com/watch?v=AVIKFXLCPY8

课程目录:

  1. 第0講:課程說明 (17:15 有芙莉蓮雷) (2024年2月24日)
  2. 第1講:生成式AI是什麼?(2024年2月24日)
  3. 第2講:今日的生成式人工智慧厲害在哪裡?從「工具」變為「工具人」(2024年3月3日)
  4. 第3講:訓練不了人工智慧?你可以訓練你自己 (上) — 神奇咒語與提供更多資訊 (2024年3月3日)
  5. 第4講:訓練不了人工智慧?你可以訓練你自己 (中) — 拆解問題與使用工具(2024年3月10日)
  6. 待更新……

第0讲:课程说明

  1. 知道:
    • 有能力自己开发
    • 何时需要自己开发
    • 何时可以用现成的人工智能
  2. 目标:了解生成式AI背后的原理更多可能性,作为你魔术师的开始
    1. 体验用生成式AI打造应用
    2. 体验训练自己的生成式AI模型
    3. 负面体验
      1. 花时间:大模型是以周为单位来训练
      2. 结果不可以控制:养花养小动物
  3. 影响模型能力的指标很多,但是常规会看参数的量级来评估,量级指数级增长,FOMO,这就是朱啸虎的立场来源
    1. 2019年GPT2.0 15b参数
    2. 2024年GPT3.5 70b参数

第1讲:生成式AI是什么

  1. 定义
    1. Artificial Intelligence, AI-人工智慧(目标)-让机器展现智慧
    2. Generative AI 生成式人工智能-机器产生复杂有结构的物件

    有结构✅

    复杂✅

    有限的选项中做选择❌

    AI和AGI的关系

    1. Machine Learning 机器学习~机器自动从资料中找一个公式

    机器学习

    Deep Learning 深度学习-一种机器学习技能

    类神经网络-非常大量参数的函数

    AI/AGI/ML/DL的关系

  2. ChatGPT也就是个公式,AI画图也是个公式

Transformer是类神经网络的一种

G/P/T

AI画图也是公式

  1. ChatGPT就是文字接龙

语言模型-答案有限,把复杂的问题变成分类问题

生成策略-Autoregressive Generation 回归

关系

第2讲:生成式AI厉害在哪里,从「工具」变为「工具人」

  1. GPT4大升级,贵有贵的道理
  1. 不要问ChatGPT能做什么,要问你想要ChatGPT帮你做什么

对比了下,kimi没法生成图片,告诉了我可以借助其他工具

但是智谱清言甚至写了python代码,帮我生成了文字云!

智谱清言

Kimi

  1. 我可以做什么
    1. 改不了模型,改变自己,用好模型-更清楚的指令/提供额外资讯
    2. 训练自己的模型,调整开源模型参数-注意,可能衍生很多问题

第3讲:训练你自己-神奇咒语

  1. 讲清楚的能力(模型有一般人的知识和理解能力,但是不了解你的事情),而不是特定格式的prompt
  2. 神奇的模型咒语,提升准确率https://arxiv.org/abs/2312.16171
    1. CoT(Chain of Thought模型思考)Take a deep breath, Let's think step-by-step深呼吸,一步步来
      1. 但是这个不是对所有模型试用(更新的3.5,正确率提升有限)
      1. 帮助看图,解数学题
      2. 解释自己的答案后再提供解决方案,解决方案更优
    2. 情绪勒索:这件事真的对我很重要This is very important to my career
    3. 更多的有用咒语
      1. 直接明确的要求:要做什么 ,不要干什么“”可能听不懂
      2. 对模型有礼貌没有用,请xx,谢谢xx
      3. 保证你的答案客观没有偏见。避免刻板印象
      4. 做得好给你小费做不好给你处罚
  3. 用AI来找神奇咒语
    1. 增强式学习
    2. 让大模型自己思考
  4. 提供context
    1. 前提-互联网人的mac和化妆师的mac
    2. 资讯-把文档/新闻丢给gpt
  5. 提供范例
    1. 错误的范例,也会正确的表达“错误”

    2.0 好好读

    1.0

  6. 没有模型被训练,所以会“失忆”

第4讲:训练你自己-拆解问题与使用工具

  1. 拆解复杂的任务,你要先想清楚如何拆解
    1. 拆解任务:一步步思考
    1. 自我反省,能检查出来自己的错误,比如“幻觉”-文字接龙,而非真实记忆
      1. 答案是否正确
      2. 是否符合法律/道德
      3. 仍然是当年那个少年哈哈哈哈哈哈哈
    1. 每次答案都不同:文字接龙是概率答题,掷骰子给答案(没有资料库)
  2. 组合拳

    Tree of Thoughts (ToT)

    • Algorithm of Thoughts
    • Graph of Thoughts
  3. 使用工具

    搜索引擎(警惕“幻觉”)

    + RAG(给资料库/让它上网搜)

    写公式Program of Thought (PoT)

    还能自己执行-GPT4

    • 数学题
    • Python

    文字生图AI (DALL-E)

    留个作业

    prompt

    Plug-in

    上千个工具

    自己学习使用工具

    留个作业

  4. 记得,语言模型只会一件事,文字接龙

第5讲:训练不了人工智慧?你可以训练你自己 (下) — 讲語言彼此合作,把一个人活成一个团队

  1. 模型合作:让合适的模型做合适的事情(展示平台为你服务的不一定是同一个模型,后台自动调用不同的模型)
    1. 成本最优解:GPT-4厉害但是高昂,有其他便宜的模型能解决基本的问题
    2. 能力最大化:透过API呼叫不同的语言模型让模型彼此讨论,更能激发语言模型的能力,结果会越好
  2. 模型讨论:
    1. 模型之间怎么讨论?还没有最优解-研究中的问题
  3. 讨论的结果怎么判定

裁判模型判决

讨论太短,需要prompt强制引导

Prompt引导: 不需要完全按照对方的想法,你可以有不同的意见

  1. 模型扮演不同的角色,并优化团队,可以做专业分工

给不同的语言模型打绩效,淘汰低分模型

实际案例,可以在这里调用不同的模型

由AI组成的社群(看视频!)

第6讲:大型语言模型修练史 — 第一阶段: 自我学习,累计实力

  1. 找参数的挑战-对算力的挑战-深度学习/机器学习
    1. 「超参数(hyperparameter)」 设定 「最佳化(Optimization)」
    2. 训练失败后,要不断的换超参数再上一次!
    3. 训练成功,但是测试失败
      1. 增加训练资料的多样性
      2. 设定好的初始参数:让最终的参数尽量接近初始参数

    训练成果通过

    测试失败-overfitting

    看视频!

    找比较好的初始参数

  2. 需要多少文字才能够学会文字接龙-300b可能也学不会世界知识

正确的答案1-大气压水的沸点一百度

正确的答案2-低气压水的沸点五十度

  1. 自督导式学习

从网络自学习

资料清理-去除低效的资料

  1. GPT系列-GPT3对于prompt的格式要求很高,所以会留下格式重要的习惯
  1. 语言模型在网络上学了很多东西,但不知道使用方法,需要指导

第7讲:大型语言模型修炼史 — 第二阶段: 名师指点,发挥潜力 (兼讲对 ChatGPT 做逆向工程与 LLaMA 时代的开始)

  1. 资料标注-督导式学习

人类老师教导

需要标注AI、USER,得到最精准的回答

但是人力,贵且不够广泛

只学了“最”,答案都是“玉山”

  1. 预训练Pre-train
    1. 与使用第一阶段的参数作为初始参数-微调+Adapter

    微调

    Adapter-Lora 确保新参数和初始参数非常接近,只找少量的参数

    Adapter多种多样

    1. 预训练教会了模型复杂的规则,而且会举一反三(多语言的预训练后,自动学习不同语言的同样任务)
  2. 微调 Instruction Fine-tuning
    1. 一堆专才模型(翻译/语法修正)-BERT专才模型
    2. 一个通才模型
      1. Google:FLAN模型/FLAN-PaLM模型
      2. OpenAI:GPT-3
      3. LLaMA:只用了2w7k笔的资料,足够用
      4. LIMA:1k笔资料,43%的比例打败了GPT4
  3. 逆向工程-微调对资料的品质要求非常高,自己做不了,可以让ChatGPT帮忙想,但是质量也有限
  1. Pre-train参数,开源繁荣
    1. LLaMA开源-Stanford Alpaca/Vicuna

附录:

当我写下这个标题之后,还没开始上课,小西就帮我写了一份学习笔记,有点无聊哈哈,但是方便一览全局

一、课程介绍

这是台湾大学李宏毅教授的生成式 AI 课程,主要介绍了生成式 AI 的基本概念、发展历程、技术架构和应用场景等内容。课程共分为 12 讲,每讲约 2 小时。

二、学习目标

通过学习本课程,掌握生成式 AI 的基本概念和常见技术,能够使用相关框架搭建简单的生成式模型,了解生成式 AI 的发展现状和未来趋势。

三、学习内容

  1. 什么是生成式 AI
    • 生成式 AI 的定义和分类
    • 生成式 AI 与判别式 AI 的区别
    • 生成式 AI 的应用领域
  2. 生成式模型
    • 生成式模型的基本结构和训练方法
    • 生成式模型的评估指标
    • 常见的生成式模型及其优缺点
  3. 生成式对话
    • 生成式对话的基本概念和应用场景
    • 生成式对话系统的架构和关键技术
    • 基于生成式模型的对话生成方法
  4. 预训练语言模型
    • 预训练语言模型的发展历程和关键技术
    • 预训练语言模型的优缺点
    • 预训练语言模型在生成式 AI 中的应用
  5. 生成式 AI 的挑战与展望
    • 生成式 AI 面临的挑战和解决方法
    • 生成式 AI 的未来发展趋势和研究方向

四、学习资源

  1. 教材:《生成式 AI 导论 2024》,李宏毅
  2. 参考书籍:《深度学习》,伊恩·古德费洛等
  3. 在线课程:李宏毅的生成式 AI 课程
  4. 开源项目:OpenAI GPT-3、字节跳动的云雀等

五、学习方法

  1. 观看课程视频,做好笔记
  2. 阅读参考书籍和相关论文,加深对概念的理解
  3. 完成课后作业和实验,巩固所学知识
  4. 参加讨论和交流,分享学习心得和经验

六、学习时间

本课程的学习时间为 12 周,每周学习约 8 小时。具体时间安排如下:

  • 第 1-2 周:学习生成式 AI 的基本概念和常见技术
  • 第 3-4 周:学习生成式模型的基本结构和训练方法
  • 第 5-6 周:学习生成式对话的基本概念和应用场景
  • 第 7-8 周:学习预训练语言模型的发展历程和关键技术
  • 第 9-10 周:学习生成式 AI 的挑战与展望
  • 第 11-12 周:复习和总结所学内容,完成课程作业和实验

七、学习评估

本课程的学习评估主要包括以下几个方面:

  1. 课程作业:每周完成一份课程作业,包括概念理解、代码实现和问题回答等。
  2. 实验报告:完成一个生成式对话系统的实验,提交实验报告。
  3. 考试:课程结束后进行一次考试,检验对生成式 AI 知识的掌握程度。

八、学习总结

通过本课程的学习,我对生成式 AI 有了更深入的了解和认识。我掌握了生成式 AI 的基本概念、常见技术和应用场景,能够使用相关框架搭建简单的生成式模型,了解了生成式 AI 的发展现状和未来趋势。同时,我也认识到生成式 AI 面临的挑战和解决方法,以及未来发展的研究方向。在学习过程中,我通过观看课程视频、阅读参考书籍和相关论文、完成课后作业和实验以及参加讨论和交流等方式,不断巩固和加深对所学知识的理解和掌握。最后,我通过课程作业、实验报告和考试等方式对自己的学习效果进行了评估和总结,发现自己在某些方面还存在不足,需要进一步加强学习和实践。