一区二区三区日韩精品-日韩经典一区二区三区-五月激情综合丁香婷婷-欧美精品中文字幕专区

分享

LLM 全景圖 (The Landscape of LLM)

 520jefferson 2023-07-26 發(fā)布于北京

圖片

MLNLP社區(qū)是國內(nèi)外知名的機器學習與自然語言處理社區(qū),受眾覆蓋國內(nèi)外NLP碩博生、高校老師以及企業(yè)研究人員。
社區(qū)的愿景是促進國內(nèi)外自然語言處理,機器學習學術界、產(chǎn)業(yè)界和廣大愛好者之間的交流和進步,特別是初學者同學們的進步。
轉(zhuǎn)載自 | 安迪的寫作間

前言:最近 LLM 大火,相關領域熟人都想往這個方向靠,好幾個朋友咨詢了這塊,也有幫做模擬面試。最近有個哥們讓我推薦對這個領域整體快速了解的資料。于是我就花了些時間整理資料,希望可以俯瞰當前 LLM 領域,能夠給個整體的印象,如若對某個細分板塊感興趣,讀者也可以找更深入的資料。

本文假設讀者有一定相關領域的知識,至少是機器學習,深度學習,或者數(shù)據(jù)科學的經(jīng)驗。

圖片

Overview 概觀

  • 首先 Andrej 的 State of GPT 是必看的:對整個 LLM 的全景講的很清晰,不虧是我輩 CS231n 的好老師,高屋建瓴

  • W&B 關于 LLM 的 Tutorial 干貨不少:Current Best Practices for Training LLMs from Scratch

  • 兩篇比較好的綜述:

    • An Overview on Language Models: Recent Developments and Outlook:偏訓練技巧

    • Harnessing the Power of LLMs in Practice: A Survey on ChatGPT and Beyond:偏應用

前沿模型觀摩

  • GPT4 Technical Report:GPT4技術報告

    • Spark of AGI[視頻]:對 GPT4 的詳細測評

  • PALM2 Technical Report:PALM2技術報告

大概看看現(xiàn)在最好能做到什么程度,雖然細節(jié)干貨少。

接著按不同模塊分別推薦些我能想到的比較重要入門論文和資料,精力有限,肯定是掛一漏萬,歡迎指正完善。

預訓練

整體

預訓練可先看一些經(jīng)典基座模型訓練流程:

  • GPT3 論文:不用多說

  • LLAMA:經(jīng)歷各種檢驗最靠譜英文模型,很多訓練細節(jié)值得參考

  • BloombergGPT:雖是金融領域模型,但各種思想都類似,很踏實,特別給訓領域模型借鑒

  • Transformer Math 101:很干的一篇關于訓練中各種計算的博客,扎實

  • [可選] 谷歌系的:PaLM,F(xiàn)lan-PaLM:一個預訓練,一個指令微調(diào),大公司還是挺多insight可學習

  • [可選] BLOOM,BLOOMZ:可以大概看看,比較糙,特別是和大公司幾篇對比

數(shù)據(jù)相關

  • W&B 關于預訓練數(shù)據(jù)處理較全面博客:Processing Data for Large Language Models

  • 實際數(shù)據(jù)集參考,會有各種細節(jié):

    • ROOTS:BigScience 開源數(shù)據(jù)集

    • The RefinedWeb Dataset:最近模型 Falcon 的數(shù)據(jù)集

    • [可選] RedPajama:號稱復刻 LLAMA,沒有報告,更多都在源代碼里面,可以簡單看看有時間看代碼

    • [可選] The Stack:代碼領域的數(shù)據(jù)集,感興趣也值得一看

  • 近期一些關于數(shù)據(jù)推薦論文:

    • Scaling Data-Constrained Language Models

    • A Pretrainer's Guide to Training Data: Measuring the Effects of Data Age, Domain Coverage, Quality, & Toxicity

訓練相關

  • Megatron-DeepSpeed:現(xiàn)在基本都基于這套框架訓,有必要瀏覽下原論文

  • DeepSpeed 相關:ZeRO優(yōu)化器必看,可能看視頻會更好理解些

  • 混合精度及其他相關訓練技巧:

    • Performance and Scalability:How To Fit a Bigger Model and Train It Faster Hugging face相關博客

    • 更多關于混合精度的討論,Nvidia 相關文檔,看2和3就行,關于 BF16 的討論(結(jié)論能上BF16就上)

  • lilian寫的關于大規(guī)模分布式訓練相關的綜述:How to Train Really Large Models on Many GPUs?

Tokenization

  • Huggingface 的 Tokenizers 的相關 Tutorial:看下面這幾節(jié)就行

    • Normalization and pre-tokenization

    • Byte-Pair Encoding tokenization

    • [感興趣看] WordPiece tokenization

    • [感興趣看] Unigram tokenization

    • Building a tokenizer, block by block

  • [可選]  SentencePiece 的 Readme,就是另一個訓練詞表的庫

SFT(Supervised FineTuning)/Instruction Tuning

就是搜集到指令數(shù)據(jù),然后直接 finetune 訓練,難點在于在于怎么收集到較好的SFT數(shù)據(jù)。

主要可分成下面幾種方法:

  • 人工標注寫

  • 基于模板

  • 基于開源共享數(shù)據(jù)

  • 網(wǎng)上相似數(shù)據(jù)爬取

  • OpenAI API接口通過 Prompt 工程構建

SFT 模型

  • 基于模板:

    • FLAN 模型:前 ChatGPT 時代,可以看看如何基于模板構建一些傳統(tǒng)指令數(shù)據(jù),還出了v2

  • 基于 OpenAI API 和開源共享數(shù)據(jù)(后 ChatGPT 時代):

    • Exploring the Impact of Instruction Data Scaling on Large Language Models

    • Towards Better Instruction Following Language Models for Chinese

    • 直接從 ChatGPT 和 GPT4 抓數(shù)據(jù)來訓SFT:Alpaca,Vicuna,GPT4ALL

    • 中文這塊:Belle 的兩篇論文也可以簡單看看,看怎么構建數(shù)據(jù)(比如Self-Instruct)

  • 基于網(wǎng)絡爬取數(shù)據(jù)及人工標注

    • LIMA: Less Is More for Alignment:怎么構建一個多樣化的SFT數(shù)據(jù)集

RLHF 部分

建議給 OpenAI 在這塊的努力都刷一遍,會有很清晰了解,各種細節(jié)。現(xiàn)在大多引 22 年 InstructGPT,但 OpenAI 這整套流程也都是一步步完善出來的。最早期在 GPT2 就探索用 Human Preference,中間如何嘗試、遇到什么問題、以及怎么解決都寫得挺清楚,甚至還專門寫了怎么培訓標注人員,當時 OpenAI 是真的挺 Open:

  • Fine-Tuning GPT-2 from Human Preference(Blog):做 SFT 來獲得人類偏好,但 SFT 數(shù)據(jù)都是模型采樣后人標出來的

  • Learning to summarize from human feedback(Blog):基本這套 SFT、Reward Model、RLHF 流程齊全了,用在 Summarization 任務,只標了 Pair-wise 的數(shù)據(jù),而不是后面的 Rank

  • Summarizing Books with Human Feedback(Blog):當摸清楚這套流程之后,OpenAI 開始對 RLHF 增大規(guī)模,也開始發(fā)現(xiàn)生成這塊的評估難,引入模型輔助的評估

  • WebGPT: Improving the Factual Accuracy of Language Models through Web Browsing[Blog]:OpenAI 想用強化來訓練模型瀏覽網(wǎng)絡,然后做檢索增強

  • InstructGPT:Training language models to follow instructions with human feedback[Blog]:最后才到 InstructGPT,羅馬不是一天建成,能看到 OpenAI 在 RLHF 上是積累了很長時間的,到 InstructGPT 可能是 API 用戶反饋有類似需求,當時沒引起太大反響,直到加入了對話數(shù)據(jù),并且給模型放出來給大家用,也就是 ChatGPT.

推理使用

解碼方法

  • 關于 Search 和 Sample,還有 Topp Topk 討論:獻丑了

Prompt Engineering

Zero-shot 和 Few-Shot 給 GPT3 那篇看完就差不多懂了,這里列些較經(jīng)典方法

  • Chain-of-Thought Prompting Elicits Reasoning in Large Language Models:思維鏈,開山之作,本質(zhì)上給LLM模型更多 token 來用來思考,增加結(jié)果準確性

  • Self-Consistency Improves Chain of Thought Reasoning in Language Models:思維鏈后續(xù),其實就是類似search算法給搜索空間擴大,比如beam從1改成多個,然后最后結(jié)果 ensemble 一下

  • Tree of Thoughts: Deliberate Problem Solving with Large Language Models:給鏈擴展成樹,進行檢索和集成,上面兩種都變成樹的某個特例

  • [可選] ChatGPT Prompt Engineering for Developers:吳教授 DeepLearning AI 關于 ChatGPT prompt 相關

反思以及其他高階應用

  • Reflexion: Language Agents with Verbal Reinforcement Learning:提出反思系統(tǒng),模型能對自己之前的結(jié)果進行反思,之后再做出修改

  • AutoGPT介紹:基于 GPT API 非常酷的應用,通過設計維護幾個GPT角色,還有Memory系統(tǒng),給AutoGPT一個目標和初始任務,就能讓它成為一個無情的做任務機器人,完成任務,創(chuàng)造新任務,排好優(yōu)先級,繼續(xù)做任務

  • [可選] Generative Agents: Interactive Simulacra of Human Behavior:寫 AutoGPT 的時候莫名讓我想起這篇,雖然是講用GPT做游戲任務的思考機器,但是本身里面就涉及到大量應用相關的設計

  • [可選] Large Language Models as Tool Makers:idea 也很酷,維護幾個GPT角色,讓一個做工具,一個使用工具解決問題,還有個判斷什么時候需要做新工具,也是系統(tǒng)的設計

其他

Tools (API 調(diào)用)

有些能力調(diào)外部接口會容易很多,包括最新信息獲取

  • Toolformer: Language Models Can Teach Themselves to Use Tools:占坑之作,方法較 naive

  • TaskMatrix.AI: Completing Tasks by Connecting Foundation Models with Millions of APIs:給 Tools 理念推到更大的框架

    • [可選]對這個領域興趣,還可以看Gorilla,HuggingGPT

  • 搜索增強LLM(雖然我認為檢索也只是一個工具):REPLUG: Retrieval-Augmented Black-Box Language Models

Code Related

  • CodeX:Evaluating Large Language Models Trained on Code:Code相關必讀,現(xiàn)在普遍認為Code對推理能力會有一定提升

Math Related

因為數(shù)學涉及到模型的推理能力,所以一般認為較重要

  • Training Verifiers to Solve Math Word Problems:讓模型解數(shù)學題,提出了 Verifier 的思路,就是對多條打分選最高。

[可選] GPT API相關應用

  • Building Systems with the ChatGPT API:吳教授關于 OpenAI API應用的課程

  • [可選] OpenAI CookBook:OpenAI 官方的 API 使用說明,里面很多特別實用的建議

[可選] 損失函數(shù)

  • Efficient Training of Language Models to Fill in the Middle:無損 FIM 損失,增加模型中間填充能力

  • UL2: Unifying Language Learning Paradigms:對T5的損失進行改進,兼容考慮了GPT單向生成損失,PALM2聲稱用的是它的變種

    本站是提供個人知識管理的網(wǎng)絡存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多

    欧美黑人巨大一区二区三区| 大香蕉再在线大香蕉再在线| 欧洲日韩精品一区二区三区| 日韩成人动画在线观看| 日韩一区二区三区有码| 日韩和欧美的一区二区三区| 视频在线观看色一区二区| 日本av在线不卡一区| 中文字幕一区久久综合| 国产传媒免费观看视频| 欧美精品中文字幕亚洲| 青青操日老女人的穴穴| 一区二区三区亚洲天堂| 久久福利视频这里有精品| 日本人妻精品有码字幕| 日韩性生活片免费观看| 欧美色婷婷综合狠狠爱| 日本欧美一区二区三区在线播| 99久热只有精品视频最新| 色狠狠一区二区三区香蕉蜜桃| 丰满人妻一二三区av| 日韩一本不卡在线观看| 国产又粗又硬又长又爽的剧情| 亚洲视频一级二级三级| 日韩精品中文在线观看| 亚洲专区一区中文字幕| 欧美日韩综合综合久久久| 黑人巨大精品欧美一区二区区 | 久久精品国产亚洲av久按摩| 久久精视频免费视频观看| 日本不卡一本二本三区| 国产精品成人一区二区在线| 中文字幕日韩欧美一区| 国产欧美日韩精品自拍| 大尺度激情福利视频在线观看| 亚洲一区二区欧美激情| 嫩草国产福利视频一区二区| 伊人天堂午夜精品草草网| 国产精品二区三区免费播放心| 一级片二级片欧美日韩| 黄色三级日本在线观看|