眾所周知,人工智能技術(shù)正在改變著世界,并已經(jīng)成為真正的世紀(jì)機(jī)遇。作為一種科學(xué)思想,人工智能的起源至少可以追溯到700多年前。但是作為一項(xiàng)理論計(jì)算,人工智能概念的正式提出應(yīng)當(dāng)歸功于艾倫·麥席森·圖靈(Alan M. Turing)在1948年撰寫(xiě)但未發(fā)表的論文Intelligent Machinery以及在1950年發(fā)表的論文Computing Machinery and Intelligence。這兩篇論文點(diǎn)燃了科學(xué)家用機(jī)器模擬人類智能的夢(mèng)想,而通用智能則成為這一夢(mèng)想追求的最高目標(biāo)。在過(guò)去的70多年里,人工智能先后經(jīng)歷了狂熱寒冬復(fù)興,最終進(jìn)入了平穩(wěn)的發(fā)展階段。時(shí)至今日,人工智能的概念已經(jīng)深入人心。ChatGPT和元學(xué)習(xí)的異軍突起,更加堅(jiān)定了科學(xué)家追求通用智能的信念。
元學(xué)習(xí)的英文翻譯為Meta Learning,本質(zhì)是learning to learn,即學(xué)會(huì)學(xué)習(xí)。這是一種面向過(guò)程的新型高端機(jī)器學(xué)習(xí)算法,我們團(tuán)隊(duì)于2020年開(kāi)始嘗試這方面的研究和探索。作為新型高端算法,元學(xué)習(xí)的研究不僅涉及復(fù)雜模型推導(dǎo),而且涉及大規(guī)模編程。在相關(guān)課題研究中,團(tuán)隊(duì)的編程思維和代碼調(diào)試能力都經(jīng)歷了非常大的挑戰(zhàn),最終完成了一系列的算法創(chuàng)新。我們和學(xué)生一起探索、進(jìn)步。他們作為團(tuán)隊(duì)的生力軍,一直都是課題研究的中堅(jiān)力量,F(xiàn)在他們都已經(jīng)以優(yōu)異的成績(jī)畢業(yè),找到了理想的工作,投入了新的研究課題。新的學(xué)生又是從零開(kāi)始,團(tuán)隊(duì)急需引導(dǎo)他們形成元學(xué)習(xí)的編程思維。從編程平臺(tái)搭建到開(kāi)發(fā)環(huán)境配置,給學(xué)生們多一些勇氣和鼓勵(lì),他們最終也將完成對(duì)大規(guī)模代碼的理解與調(diào)試。
為了幫助更多的讀者,本書(shū)選擇以Chelsea Finn創(chuàng)立的模型無(wú)關(guān)元學(xué)習(xí)(MAML)算法程序?yàn)橹骶,為讀者設(shè)計(jì)了循序漸進(jìn)的閱讀體驗(yàn)。全書(shū)共5章,第1章的聯(lián)合訓(xùn)練問(wèn)題與第2章的任務(wù)構(gòu)建問(wèn)題是元學(xué)習(xí)研究的基本問(wèn)題,建模思路和算法思想通俗易懂,代碼注釋極為詳細(xì),確保讀者開(kāi)篇即可輕松入門(mén)。第3章的過(guò)程建模問(wèn)題與第4章的輸入輸出問(wèn)題代表了元學(xué)習(xí)研究的核心問(wèn)題,因?yàn)橐呀?jīng)有了前兩章的研究基礎(chǔ),讀者仍然可以在較短時(shí)間內(nèi)收獲進(jìn)步的喜悅。第5章解釋的應(yīng)用拓展問(wèn)題是元學(xué)習(xí)研究的根本問(wèn)題,元學(xué)習(xí)過(guò)程與人類的學(xué)習(xí)過(guò)程比較相似,在算法程序中體現(xiàn)了學(xué)前準(zhǔn)備、預(yù)習(xí)、快速學(xué)習(xí)等核心環(huán)節(jié)。
本書(shū)特色
(1) 內(nèi)容通俗易懂。本書(shū)貼近初學(xué)者的實(shí)際情況,完整復(fù)現(xiàn)了團(tuán)隊(duì)在元學(xué)習(xí)算法研究初期對(duì)代碼問(wèn)題和算法思想的理解。對(duì)人工智能感興趣但缺少專業(yè)指導(dǎo)的讀者,開(kāi)篇即可輕松入門(mén),能在較短時(shí)間內(nèi)收獲進(jìn)步的喜悅。
(2) 有趣,但不缺乏挑戰(zhàn)。元學(xué)習(xí)過(guò)程與人類的學(xué)習(xí)過(guò)程比較相似,是非常有趣的算法。本書(shū)從最初級(jí)的算法思想開(kāi)始,循序漸進(jìn)地幫助初學(xué)者全方位、系統(tǒng)理解元學(xué)習(xí)的有趣過(guò)程。同時(shí),也為讀者留出了部分思考空間,積極引導(dǎo)讀者嘗試探索,在挑戰(zhàn)中逐步超越自我。
(3) 既是放大鏡,又是加速器。本書(shū)為讀者提供了一枚放大鏡。透過(guò)本書(shū),讀者將有能力解釋模型無(wú)關(guān)元學(xué)習(xí)算法程序的所有細(xì)節(jié)。作為深度學(xué)習(xí)的拓展應(yīng)用,元學(xué)習(xí)算法的實(shí)現(xiàn)涉及一系列高級(jí)編程技巧。這些編程技巧是讀者成長(zhǎng)的加速器,可以在較短時(shí)間內(nèi)形成編程思維,提高編程效率。
致謝
首先對(duì)MAML算法創(chuàng)始人Chelsea Finn的免費(fèi)授權(quán)許可深表謝意!免費(fèi)授權(quán)許可包含在4.1.2節(jié)內(nèi),讀者也可在隨書(shū)贈(zèng)送的源代碼目錄中查看。LICENSE文件(授權(quán)許可)的源代碼目錄中還包含筆者對(duì)原創(chuàng)者Chelsea Finn的英文致謝視頻! 為表達(dá)對(duì)原創(chuàng)代碼的充分尊重,遵照原創(chuàng)者Chelsea Finn的要求,現(xiàn)將LICENSE文件中包含的免費(fèi)授權(quán)許可突出展示如下:
MIT License
Copyright (c) 2017 Chelsea Finn
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS",WITHOUT WARRANTY OF ANY KIND,EXPRESS OR IMPLIED,INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,DAMAGES OR OTHER LIABILITY,WHETHER IN AN ACTION OF CONTRACT,TORT OR OTHERWISE,ARISING FROM,OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
再次感謝原創(chuàng)者Chelsea Finn的無(wú)私分享。這一學(xué)術(shù)精神值得敬重,同時(shí)也需要延續(xù)。
筆者團(tuán)隊(duì)正在開(kāi)發(fā)新的元學(xué)習(xí)模型,完成后也將無(wú)償分享給讀者。
本書(shū)復(fù)現(xiàn)了團(tuán)隊(duì)在元學(xué)習(xí)算法研究初期對(duì)代碼問(wèn)題和算法思想的理解和部分可公開(kāi)的討論結(jié)果。這些結(jié)果得益于上海應(yīng)用技術(shù)大學(xué)、中國(guó)科學(xué)院、印度國(guó)家科學(xué)院提供的研究平臺(tái),在此鄭重感謝相關(guān)領(lǐng)導(dǎo)的大力支持。一部分研究生和優(yōu)秀本科生曾經(jīng)參與MAML算法程序的深入探討,對(duì)他們分享的研究心得表示感謝!
感謝家人,家人的理解和支持一直是我們前行的勇氣和動(dòng)力。
由于編者水平有限,書(shū)中不妥或疏漏之處在所難免,歡迎讀者批評(píng)指正。
編者
2024年12月
第1章聯(lián)合訓(xùn)練問(wèn)題
1.1問(wèn)題描述
1.1.1以任務(wù)為樣本
1.1.2面向?qū)W習(xí)過(guò)程
1.1.3快速適應(yīng)新任務(wù)
1.2建模思路
1.2.1局部最優(yōu)模型
1.2.2全局最優(yōu)模型
1.2.3模型前置代碼
1.3算法思想
1.3.1外層循環(huán)算法
1.3.2內(nèi)層循環(huán)算法
1.3.3權(quán)重更新代碼
1.4最優(yōu)化方法
1.4.1準(zhǔn)備優(yōu)化工具
1.4.2搭建優(yōu)化平臺(tái)
1.4.3最優(yōu)化科學(xué)計(jì)算包
1.5元優(yōu)化機(jī)制
1.5.1環(huán)境變量的配置
1.5.2環(huán)境變量的驗(yàn)證
1.5.3元優(yōu)化機(jī)制
第2章任務(wù)構(gòu)建問(wèn)題
2.1問(wèn)題描述
2.1.1小樣本單元
2.1.2有限監(jiān)督數(shù)據(jù)
2.1.3支撐集與查詢集
2.2建模思路
2.2.1任務(wù)分布模型
2.2.2監(jiān)督學(xué)習(xí)模型
2.2.3模型前置代碼
2.3算法思想
2.3.1單元?jiǎng)澐炙惴?/p>
2.3.2標(biāo)簽分配算法
2.3.3任務(wù)生成算法
2.4最優(yōu)化方法
2.4.1創(chuàng)建優(yōu)化環(huán)境
2.4.2更新優(yōu)化系統(tǒng)
2.4.3安裝編程內(nèi)核
2.5元優(yōu)化機(jī)制
2.5.1代碼編輯器
2.5.2元優(yōu)化程序
2.5.3元優(yōu)化機(jī)制
第3章過(guò)程建模問(wèn)題
3.1問(wèn)題描述
3.1.1基準(zhǔn)數(shù)據(jù)集
3.1.2圖像尺寸調(diào)整
3.1.3知識(shí)獲取過(guò)程
3.2建模思路
3.2.1圖像加載模型
3.2.2尺寸調(diào)整模型
3.2.3空間插值模型
3.3算法思想
3.3.1文件保存算法
3.3.2目錄創(chuàng)建算法
3.3.3文件讀取算法
3.4最優(yōu)化方法
3.4.1隨機(jī)抽樣過(guò)程
3.4.2樣本學(xué)習(xí)過(guò)程
3.4.3最優(yōu)化過(guò)程
3.5元優(yōu)化機(jī)制
3.5.1元優(yōu)化過(guò)程
3.5.2拓展優(yōu)化環(huán)境
3.5.3最大池化過(guò)程
第4章輸入輸出問(wèn)題
4.1問(wèn)題描述
4.1.1源代碼下載
4.1.2免費(fèi)授權(quán)許可
4.1.3代碼的組成部分
4.2建模思路
4.2.1系統(tǒng)架構(gòu)模型
4.2.2輸入輸出模型
4.2.3輸出評(píng)價(jià)模型
4.3算法思想
4.3.1輸入生成算法
4.3.2輸出生成算法
4.3.3運(yùn)行控制算法
4.4最優(yōu)化方法
4.4.1優(yōu)化庫(kù)包的導(dǎo)入
4.4.2生成器的初始化
4.4.3目錄的生成
4.5元優(yōu)化機(jī)制
4.5.1元優(yōu)化目錄
4.5.2元優(yōu)化的輸入
4.5.3元優(yōu)化的輸出
第5章應(yīng)用拓展問(wèn)題
5.1問(wèn)題描述
5.1.1前述問(wèn)題回顧
5.1.2元學(xué)習(xí)系統(tǒng)網(wǎng)絡(luò)
5.1.3MAML的定義
5.2建模思路
5.2.1系統(tǒng)模型拓展
5.2.2梯度模型拓展
5.2.3快速梯度下降
5.3算法思想
5.3.1輸入層的權(quán)值
5.3.2隱含層的權(quán)值
5.3.3網(wǎng)絡(luò)構(gòu)造算法
5.3.4從卷積層拓展
5.3.5從隱含層拓展
5.4最優(yōu)化方法
5.4.1學(xué)習(xí)日志的拓展
5.4.2日志讀取應(yīng)用
5.4.3優(yōu)化器的拓展
5.4.4優(yōu)化器的應(yīng)用
5.4.5顯示優(yōu)化過(guò)程
5.5元優(yōu)化機(jī)制
5.5.1虛擬環(huán)境的拓展
5.5.2模塊代碼的調(diào)試
5.5.3元任務(wù)的理解
5.5.4元訓(xùn)練的機(jī)制
5.5.5元測(cè)試的機(jī)制
后記