chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

【AI周報(bào)20230317】 OpenAI公布GPT-4、國(guó)內(nèi)存在哪些算力瓶頸

RTThread物聯(lián)網(wǎng)操作系統(tǒng) ? 來(lái)源:未知 ? 2023-03-21 14:35 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

嵌入式 AI

AI 簡(jiǎn)報(bào) 20230317 期

1. AI服務(wù)器市場(chǎng)規(guī)模持續(xù)增加,國(guó)內(nèi)存在哪些算力瓶頸?

原文:

https://mp.weixin.qq.com/s/v04vZCBxNzfCUDTy_8iSoA

近年來(lái),在全球數(shù)字化、智能化的浪潮下,智能手機(jī)、自動(dòng)駕駛、數(shù)據(jù)中心、圖像識(shí)別等應(yīng)用推動(dòng) AI服務(wù)器市場(chǎng)迅速成長(zhǎng)。根據(jù) IDC 數(shù)據(jù),2021 年全球 AI 服務(wù)器市場(chǎng)規(guī)模已達(dá)到 145 億美元,并預(yù)計(jì) 2025 年將超過(guò) 260 億美元。

近段時(shí)間ChatGPT概念的火熱,更是對(duì)算力基礎(chǔ)設(shè)施的需求起到了帶動(dòng)作用。寧暢副總裁兼CTO趙雷此前在接受媒體采訪的時(shí)候表示,ChatGP的訓(xùn)練和部署,都需要大量智能計(jì)算數(shù)據(jù)存儲(chǔ)以及傳輸資源,計(jì)算機(jī)基礎(chǔ)設(shè)施、算力等上游技術(shù)將因此受益。

ChatGPT有著多達(dá)1750億個(gè)模型參數(shù)。在算力方面,GPT-3.5在訓(xùn)練階段消耗的總算力約3640PF-days。在應(yīng)用時(shí),ChatGPT仍然需要大算力的服務(wù)器支持。ChatGPT的持續(xù)爆火也為AIGC帶來(lái)全新增量,行業(yè)對(duì)AI模型訓(xùn)練所需要的算力支持提出了更高要求。

寧暢是一家集研發(fā)、生產(chǎn)、部署、運(yùn)維一體的服務(wù)器廠商,及IT系統(tǒng)解決方案提供商。該公司早早就開(kāi)始著重發(fā)力于人工智能服務(wù)器和液冷服務(wù)器。趙雷表示,公司目前在用的、在研的人工智能和液冷服務(wù)器,包括明年還將推出的浸沒(méi)液冷服務(wù)器,剛好跟上算力高速增長(zhǎng)的市場(chǎng)需求。公司隨時(shí)準(zhǔn)備著為客戶提供合適的高算力產(chǎn)品和解決方案。

在人工智能服務(wù)器方面,寧暢已經(jīng)推出多款產(chǎn)品,包括X620 G50、X660 G45、X640 G40、X620 G40。X620 G50適用于機(jī)器學(xué)習(xí)、AI推理、云計(jì)算、高性能計(jì)算等場(chǎng)景;660 G45是專(zhuān)門(mén)為深度學(xué)習(xí)訓(xùn)練開(kāi)發(fā)的高性能計(jì)算平臺(tái);X640 G40是兼?zhèn)溆?xùn)練與推理功能的全能型GPU服務(wù)器;X620 G40性能提升的同時(shí)支持PCIe 4.0高速總線技術(shù),完美支持NVIDIA各類(lèi)最新型GPU加速服務(wù),是最為理想的AI推理平臺(tái)。

在液冷服務(wù)器方面,寧暢推出了三款冷板式液冷服務(wù)器,包括產(chǎn)品B5000 G4 LP、X660 G45 LP、R620 G40 LP,范圍覆蓋了高密度、通用機(jī)架以及人工智能服務(wù)器產(chǎn)品,可滿足科學(xué)計(jì)算、AI訓(xùn)練、云計(jì)算等眾多IT應(yīng)用場(chǎng)景,可滿足用戶不同需求。

作為服務(wù)器廠商需要給下游互聯(lián)網(wǎng)客戶提供怎樣的產(chǎn)品和服務(wù)呢?對(duì)于服務(wù)器廠商來(lái)說(shuō),不只是要提供服務(wù)器硬件或者基礎(chǔ)設(shè)施,還要有對(duì)應(yīng)的服務(wù)能力。

從服務(wù)層面來(lái)看,在用戶現(xiàn)場(chǎng)會(huì)關(guān)注什么呢,比如說(shuō)核心業(yè)務(wù),會(huì)關(guān)注業(yè)務(wù)的在線率,不管服務(wù)器壞不壞,整個(gè)業(yè)務(wù)的運(yùn)行是要有彈性的、靈活的,不會(huì)給客戶造成影響的。就以百度、微信這些業(yè)務(wù)為例,大家?guī)缀醪粫?huì)看到微信不能用了,或者百度搜索不反饋結(jié)果了。

趙雷表示,對(duì)于服務(wù)器廠商來(lái)說(shuō),要做的是在服務(wù)層面能夠快速響應(yīng),不管是采用現(xiàn)場(chǎng)備件模式,機(jī)房備機(jī)模式,還是駐場(chǎng)人員巡檢的模式,都需要做到24小時(shí)的快速響應(yīng)。這是純粹的服務(wù)方面,也就是說(shuō),在互聯(lián)網(wǎng)搭建業(yè)務(wù)連續(xù)性良好的基礎(chǔ)上,服務(wù)器廠商能夠?qū)⒐收虾涂焖?a target="_blank">維修的能力做到極致,有效地支撐客戶的前端應(yīng)用。

從產(chǎn)品層面來(lái)看,對(duì)于每個(gè)硬件子系統(tǒng)在設(shè)計(jì)研發(fā)過(guò)程中,都需要從易維修和低故障角度去思考如何將產(chǎn)品做得更好。寧暢在這方面做了很多工作:首先,現(xiàn)在冷卻方式是影響故障率比較重要的因素,因?yàn)闇囟忍吖收下示蜁?huì)高,寧暢的精密風(fēng)冷和液冷的方式,能夠有效地降低芯片和對(duì)應(yīng)組件的故障率。

其次,其精密六維減震模式,能夠有效提升硬盤(pán)的性能,降低故障率;接著是,采用DAE的散熱器,從散熱的維度有效降低光模塊的故障率。同時(shí)CPU、GPU的液冷可以有效降低CPU、GPU的故障率;通過(guò)內(nèi)存的漏斗,內(nèi)存的故障篩選或者在線隔離技術(shù),有效地降低內(nèi)存的故障率;另外還在板卡走線、機(jī)箱結(jié)構(gòu)方面進(jìn)行了優(yōu)化設(shè)計(jì)。

此外還有整機(jī)BMC易管理特性,趙雷認(rèn)為,任何東西不可能不壞,有毛病是不可避免的,壞了以后,如何快速通知客戶或者維護(hù)人員維修時(shí)關(guān)鍵。BMC有一個(gè)完善的通知機(jī)制,郵件自動(dòng)通知、SMP遠(yuǎn)程告警、IPMI告警等。寧暢按照互聯(lián)網(wǎng)客戶的需求定制,將其融入整個(gè)機(jī)房的運(yùn)維系統(tǒng),出現(xiàn)故障以后可以第一時(shí)間通知去維修。

雖然目前國(guó)內(nèi)有不少優(yōu)秀的服務(wù)器、云廠商等,不過(guò)整體來(lái)看,國(guó)內(nèi)的算力仍然存在瓶頸,比如,總體算力不夠,算力的分布不平均。部分客戶算力過(guò)剩,部分客戶算力不足?;蛘逜時(shí)間算力過(guò)剩,B時(shí)間算力不足,這是算力協(xié)調(diào)的問(wèn)題。

短期來(lái)看這個(gè)問(wèn)題要靠云技術(shù)解決,長(zhǎng)期來(lái)看是要提供過(guò)剩的算力。也就是說(shuō),需要云技術(shù)去平衡協(xié)調(diào)算力不均勻的問(wèn)題,還需要提供算力、算力效率等。

再比如算力成本高的問(wèn)題,雖然目前每單位算力單價(jià)下降了,但是過(guò)去幾年服務(wù)器的平均售價(jià)一直上漲。趙雷認(rèn)為,可能算力類(lèi)型單一,不太能夠有效地支撐高速增長(zhǎng)的模式,可能要有各種各樣不同類(lèi)型的算力。比如ChatGPT,是不是可以做針對(duì)GPT模型專(zhuān)門(mén)的ASIC。算力的應(yīng)用類(lèi)型越窄,它的效率就會(huì)越高,越通用,效率就越低。

整體而言,過(guò)去幾年在全球數(shù)字化、智能化浪潮下,市場(chǎng)對(duì)算力的需求不斷增加。ChatGP的出現(xiàn)更是讓行業(yè)對(duì)算力提出了新的要求。國(guó)內(nèi)服務(wù)器廠商在對(duì)人工智能行業(yè)提供算力支持方面已經(jīng)有所準(zhǔn)備。不過(guò)從目前的情況來(lái)看,國(guó)內(nèi)在算力方面仍然存在一些瓶頸,比如算力分布不均勻,成本高等問(wèn)題。后續(xù)還需業(yè)界共同去探討解決。

2. PyTorch 2.0正式版發(fā)布!一行代碼提速2倍,100%向后兼容

原文:

https://mp.weixin.qq.com/s/wC0Oixd3hSnH75DsPDTC-g

去年12月,PyTorch基金會(huì)在PyTorch Conference 2022上發(fā)布了PyTorch 2.0的第一個(gè)預(yù)覽版本。

跟先前1.0版本相比,2.0有了顛覆式的變化。在PyTorch 2.0中,最大的改進(jìn)是torch.compile。

新的編譯器比以前PyTorch 1.0中默認(rèn)的「eager mode」所提供的即時(shí)生成代碼的速度快得多,讓PyTorch性能進(jìn)一步提升。

116f9206-c7b2-11ed-bfe3-dac502259ad0.png

除了2.0之外,還發(fā)布了一系列PyTorch域庫(kù)的beta更新,包括那些在樹(shù)中的庫(kù),以及包括 TorchAudio、TorchVision和TorchText在內(nèi)的獨(dú)立庫(kù)。TorchX的更新也同時(shí)發(fā)布,可以提供社區(qū)支持模式。

-torch.compile是PyTorch 2.0的主要API,它包裝并返回編譯后的模型,torch.compile是一個(gè)完全附加(和可選)的特性,因此2.0版本是100%向后兼容的。

-作為torch.compile的基礎(chǔ)技術(shù),帶有Nvidia和AMD GPU的TorchInductor將依賴(lài)OpenAI Triton深度學(xué)習(xí)編譯器來(lái)生成高性能代碼,并隱藏低級(jí)硬件細(xì)節(jié)。OpenAI Triton生成的內(nèi)核實(shí)現(xiàn)的性能,與手寫(xiě)內(nèi)核和cublas等專(zhuān)門(mén)的cuda庫(kù)相當(dāng)。

-Accelerated Transformers引入了對(duì)訓(xùn)練和推理的高性能支持,使用自定義內(nèi)核架構(gòu)實(shí)現(xiàn)縮放點(diǎn)積注意力 (SPDA)。API與torch.compile () 集成,模型開(kāi)發(fā)人員也可以通過(guò)調(diào)用新的scaled_dot_product_attention () 運(yùn)算符,直接使用縮放的點(diǎn)積注意力內(nèi)核。

-Metal Performance Shaders (MPS) 后端在Mac平臺(tái)上提供GPU加速的PyTorch訓(xùn)練,并增加了對(duì)前60個(gè)最常用操作的支持,覆蓋了300多個(gè)操作符。

-Amazon AWS優(yōu)化了基于AWS Graviton3的C7g實(shí)例上的PyTorch CPU推理。與之前的版本相比,PyTorch 2.0提高了Graviton的推理性能,包括對(duì)Resnet50和Bert的改進(jìn)。

-跨TensorParallel、DTensor、2D parallel、TorchDynamo、AOTAutograd、PrimTorch和TorchInductor的新原型功能和技術(shù)。

3. OpenAI公布GPT-4:可在考試中超過(guò)90%的人類(lèi)

原文:

https://mp.weixin.qq.com/s/YYZNYOUItGW18xAWk7In8Q

當(dāng)?shù)貢r(shí)間周二(3月14日),人工智能研究公司OpenAI公布了其大型語(yǔ)言模型的最新版本——GPT-4.該公司表示,GPT-4在許多專(zhuān)業(yè)測(cè)試中表現(xiàn)出超過(guò)絕大多數(shù)人類(lèi)的水平。

OpenAI表示,我們已經(jīng)創(chuàng)建了GPT-4,這是OpenAI在深度學(xué)習(xí)規(guī)模化方面的最新里程碑。GPT-4是一個(gè)大型的多模型模型(接受圖像和文本輸入、輸出文本),雖然在許多現(xiàn)實(shí)場(chǎng)景中不如人類(lèi)聰明,但在各種專(zhuān)業(yè)和學(xué)術(shù)基準(zhǔn)測(cè)試中表現(xiàn)出人類(lèi)水平的性能。

11ac1d48-c7b2-11ed-bfe3-dac502259ad0.png

看起來(lái),現(xiàn)在的 GPT 已經(jīng)不會(huì)在計(jì)算上胡言亂語(yǔ)了:

11c3cf24-c7b2-11ed-bfe3-dac502259ad0.png

還是個(gè)物理題:

11d62aa2-c7b2-11ed-bfe3-dac502259ad0.png

GPT-4 看懂了法語(yǔ)題目,并完整解答:

11e50b80-c7b2-11ed-bfe3-dac502259ad0.png

GPT-4 可以理解一張照片里「有什么不對(duì)勁的地方」:

11f1c2c6-c7b2-11ed-bfe3-dac502259ad0.png

OpenAI于2020年發(fā)布了GPT(生成型預(yù)訓(xùn)練變換模型)-3(生成型預(yù)訓(xùn)練變換模型),并將其與GPT-3.5分別用于創(chuàng)建Dall-E和聊天機(jī)器人ChatGPT,這兩款產(chǎn)品極大地吸引了公眾的關(guān)注,并刺激其他科技公司更積極地追求人工智能(AI)。OpenAI周二表示,在內(nèi)部評(píng)估中,相較于GPT-3.5,GPT-4產(chǎn)生正確回應(yīng)的可能性要高出40%。而且GPT-4是多模態(tài)的,同時(shí)支持文本和圖像輸入功能。

120ca988-c7b2-11ed-bfe3-dac502259ad0.png

OpenAI稱(chēng),GPT-4比以前的版本“更大”,這意味著其已經(jīng)在更多的數(shù)據(jù)上進(jìn)行了訓(xùn)練,并且在模型文件中有更多的權(quán)重,這使得它的運(yùn)行成本更高。

據(jù)OpenAI介紹,在某些情況下,GPT-4比之前的GPT-3.5版本有了巨大改進(jìn),新模型將產(chǎn)生更少的錯(cuò)誤答案,更少地偏離談話軌道,更少地談?wù)摻稍掝},甚至在許多標(biāo)準(zhǔn)化測(cè)試中比人類(lèi)表現(xiàn)得更好。

例如,GPT-4在模擬律師資格考試的成績(jī)?cè)诳忌信琶?0%左右,在SAT閱讀考試中排名前7%左右,在SAT數(shù)學(xué)考試中排名前11%左右。

OpenAI表示,雖然兩個(gè)版本在日常對(duì)話中看起來(lái)很相似,但當(dāng)任務(wù)復(fù)雜到一定程度時(shí),差異就表現(xiàn)出來(lái)了,GPT-4更可靠、更有創(chuàng)造力,能夠處理更微妙的指令。

不過(guò),OpenAI也警告稱(chēng),GPT-4還不完美,在許多情況下,它的能力不如人類(lèi)。該公司表示:“GPT-4仍有許多已知的局限性,我們正在努力解決,比如社會(huì)偏見(jiàn)、幻覺(jué)和對(duì)抗性提示。

OpenAI透露,摩根士丹利正在使用GPT-4來(lái)組織數(shù)據(jù),而電子支付公司Stripe正在測(cè)試GPT-4是否有助于打擊欺詐。其他客戶還包括語(yǔ)言學(xué)習(xí)公司Duolingo、Khan Academy和冰島政府。

OpenAI合作伙伴微軟周二表示,新版必應(yīng)搜索引擎將使用GPT-4。

4. 物理學(xué)家狂喜的AI工具開(kāi)源了!靠實(shí)驗(yàn)數(shù)據(jù)直接發(fā)現(xiàn)物理公式,筆記本就能跑

原文:

https://mp.weixin.qq.com/s/0eGiiWdKUyQcg54azY5evg

一個(gè)讓物理學(xué)家狂喜的AI工具,在GitHub上開(kāi)源了!它名叫Φ-SO ,能直接從數(shù)據(jù)中找到隱藏的規(guī)律,而且一步到位,直接給出對(duì)應(yīng)公式。

122bf5c2-c7b2-11ed-bfe3-dac502259ad0.png

整個(gè)過(guò)程也不需要?jiǎng)佑贸悖?strong style="font-size:inherit;color:inherit;line-height:inherit;">一臺(tái)筆記本大概4個(gè)小時(shí)就能搞定愛(ài)因斯坦的質(zhì)能方程。

1247453e-c7b2-11ed-bfe3-dac502259ad0.png

這項(xiàng)成果來(lái)自德國(guó)斯特拉斯堡大學(xué)與澳大利亞聯(lián)邦科學(xué)與工業(yè)研究組織Data61部門(mén),據(jù)論文一作透露,研究用了1.5年時(shí)間,受到學(xué)術(shù)界廣泛關(guān)注。代碼一經(jīng)開(kāi)源,漲星也是飛快。

124f9bee-c7b2-11ed-bfe3-dac502259ad0.png

除了物理學(xué)者直呼Amazing之外,還有其他學(xué)科研究者趕來(lái)探討,能不能把同款方法遷移到他們的領(lǐng)域。

強(qiáng)化學(xué)習(xí)+物理?xiàng)l件約束

Φ-SO背后的技術(shù)被叫做“深度符號(hào)回歸”,使用循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN)+強(qiáng)化學(xué)習(xí)實(shí)現(xiàn)。

首先將前一個(gè)符號(hào)和上下文信息輸入給RNN,預(yù)測(cè)出后一個(gè)符號(hào)的概率分布,重復(fù)此步驟,可以生成出大量表達(dá)式。

125b809e-c7b2-11ed-bfe3-dac502259ad0.png

同時(shí)將物理?xiàng)l件作為先驗(yàn)知識(shí)納入學(xué)習(xí)過(guò)程中,避免AI搞出沒(méi)有實(shí)際含義的公式,可以大大減少搜索空間。

再引入強(qiáng)化學(xué)習(xí),讓AI學(xué)會(huì)生成與原始數(shù)據(jù)擬合最好的公式。

與強(qiáng)化學(xué)習(xí)用來(lái)下棋、操控機(jī)器人等不同,在符號(hào)回歸任務(wù)上只需要關(guān)心如何找到最佳的那個(gè)公式,而不關(guān)心神經(jīng)網(wǎng)絡(luò)的平均表現(xiàn)。

于是強(qiáng)化學(xué)習(xí)的規(guī)則被設(shè)計(jì)成,只對(duì)找出前5%的候選公式做獎(jiǎng)勵(lì),找出另外95%也不做懲罰,鼓勵(lì)模型充分探索搜索空間。

研究團(tuán)隊(duì)用阻尼諧振子解析表達(dá)式、愛(ài)因斯坦能量公式,牛頓的萬(wàn)有引力公式等經(jīng)典公式來(lái)做實(shí)驗(yàn)。

Φ-SO都能100%的從數(shù)據(jù)中還原這些公式,并且以上方法缺一不可。研究團(tuán)隊(duì)在最后表示,雖然算法本身還有一定改進(jìn)空間,不過(guò)他們的首要任務(wù)已經(jīng)改成用新工具去發(fā)現(xiàn)未知的物理規(guī)律去了。

讀到這,小編有一個(gè)不成熟的想法….

5. 擴(kuò)散模型大殺器 ControlNet 解析

原文:

https://mp.weixin.qq.com/s/_7su0EX-eBbeyV0V8o3cLg

標(biāo)題:Adding Conditional Control to Text-to-Image Diffusion Models

作者:Lvmin Zhang, Maneesh Agrawala

原文鏈接:

https://arxiv.org/pdf/2302.05543.pdf

代碼鏈接:

https://github.com/lllyasviel/ControlNet

大型文本到圖像模型的存在讓人們意識(shí)到人工智能的巨大潛力,這些模型可以通過(guò)用戶輸入簡(jiǎn)短的描述性提示來(lái)生成視覺(jué)上吸引人的圖像。然而,對(duì)于一些長(zhǎng)期存在、具有明確問(wèn)題表述的任務(wù)(例如圖像處理),我們可能會(huì)有一些問(wèn)題需要回答。這些問(wèn)題包括:這種基于提示的控制是否滿足我們的需求?在特定任務(wù)中,這些大型模型能否應(yīng)用于促進(jìn)這些特定任務(wù)?我們應(yīng)該建立什么樣的框架來(lái)處理廣泛的問(wèn)題條件和用戶控制?在特定任務(wù)中,大型模型能否保留從數(shù)十億張圖片中獲得的優(yōu)勢(shì)和能力?為了回答這些問(wèn)題,作者們調(diào)查了各種圖像處理應(yīng)用,并得出了三個(gè)發(fā)現(xiàn)。第一個(gè)發(fā)現(xiàn)是,在特定任務(wù)領(lǐng)域中可用的數(shù)據(jù)規(guī)模并不總是與通用圖像-文本領(lǐng)域中相同。第二個(gè)發(fā)現(xiàn)是,對(duì)于一些特定任務(wù),需要更加精細(xì)的控制和指導(dǎo),而不僅僅是簡(jiǎn)單的提示。第三個(gè)發(fā)現(xiàn)是,在特定任務(wù)中,大型模型可能會(huì)面臨過(guò)擬合和泛化能力不足等問(wèn)題。為了解決這些問(wèn)題,作者們提出了一種名為ControlNet的框架,該框架可以根據(jù)用戶提供的提示和控制來(lái)生成高質(zhì)量的圖像,并且可以在特定任務(wù)中進(jìn)行微調(diào)以提高性能。

與之相關(guān)的主要工作有HyperNetwork和Stable Diffusion。HyperNetwork是一種用于訓(xùn)練神經(jīng)網(wǎng)絡(luò)的方法,它可以通過(guò)一個(gè)小型的神經(jīng)網(wǎng)絡(luò)來(lái)影響一個(gè)更大的神經(jīng)網(wǎng)絡(luò)的權(quán)重。HyperNetwork已經(jīng)在圖像生成等領(lǐng)域取得了成功,并且已經(jīng)有多篇相關(guān)論文發(fā)表。另外,Stable Diffusion是一種用于圖像生成和編輯的技術(shù),它可以通過(guò)擴(kuò)散過(guò)程來(lái)生成高質(zhì)量、多樣化的圖像,并且可以通過(guò)附加小型神經(jīng)網(wǎng)絡(luò)來(lái)改變其藝術(shù)風(fēng)格。ControlNet和HyperNetwork之間的相似之處在于它們都可以影響神經(jīng)網(wǎng)絡(luò)的行為,從而實(shí)現(xiàn)特定任務(wù)的目標(biāo)。具體來(lái)說(shuō),HyperNetwork使用一個(gè)小型的神經(jīng)網(wǎng)絡(luò)來(lái)影響一個(gè)更大的神經(jīng)網(wǎng)絡(luò)的權(quán)重,從而改變其行為。而ControlNet則是將大型圖像擴(kuò)散模型中的權(quán)重克隆到一個(gè)“可訓(xùn)練副本”和一個(gè)“鎖定副本”中,其中鎖定副本保留了從數(shù)十億張圖像中學(xué)習(xí)到的網(wǎng)絡(luò)能力,而可訓(xùn)練副本則在特定數(shù)據(jù)集上進(jìn)行訓(xùn)練以學(xué)習(xí)條件控制。此外,它們?cè)谟绊懮窠?jīng)網(wǎng)絡(luò)行為方面的共同點(diǎn)是它們都使用了小型神經(jīng)網(wǎng)絡(luò)來(lái)對(duì)大型神經(jīng)網(wǎng)絡(luò)進(jìn)行控制。這種方法可以使得大型神經(jīng)網(wǎng)絡(luò)更加靈活和適應(yīng)性強(qiáng),并且可以根據(jù)不同任務(wù)和條件進(jìn)行調(diào)整和優(yōu)化。ControlNet與其他相關(guān)工作之間的優(yōu)勢(shì)主要體現(xiàn)在以下幾個(gè)方面:

  1. 控制方式不同:ControlNet通過(guò)控制神經(jīng)網(wǎng)絡(luò)中的輸入條件來(lái)影響其行為,而其他相關(guān)工作則可能采用不同的控制方式,例如直接修改權(quán)重或者使用外部約束等。

  2. 可解釋性更強(qiáng):ControlNet可以通過(guò)可視化輸入條件和輸出結(jié)果之間的關(guān)系來(lái)解釋其行為,從而更好地理解神經(jīng)網(wǎng)絡(luò)的內(nèi)部機(jī)制。這對(duì)于一些需要可解釋性的任務(wù)非常重要。

  3. 適應(yīng)性更強(qiáng):ControlNet可以根據(jù)不同任務(wù)和條件進(jìn)行調(diào)整和優(yōu)化,從而使得神經(jīng)網(wǎng)絡(luò)更加靈活和適應(yīng)性強(qiáng)。這對(duì)于一些復(fù)雜、多變的任務(wù)非常重要。

  4. 訓(xùn)練效果更好:ControlNet可以通過(guò)使用鎖定副本來(lái)保留從數(shù)十億張圖像中學(xué)習(xí)到的網(wǎng)絡(luò)能力,并將其與可訓(xùn)練副本進(jìn)行結(jié)合來(lái)進(jìn)行訓(xùn)練。這種方法可以使得訓(xùn)練效果更好,并且可以避免過(guò)擬合等問(wèn)題。

12914fb2-c7b2-11ed-bfe3-dac502259ad0.png

我們盡量少用公式進(jìn)行表達(dá),主要的技術(shù)細(xì)節(jié)和設(shè)定可以參考論文。ControlNet是一種神經(jīng)網(wǎng)絡(luò)架構(gòu),可以通過(guò)特定任務(wù)的條件來(lái)增強(qiáng)預(yù)訓(xùn)練的圖像擴(kuò)散模型。該方法包括幾個(gè)關(guān)鍵組件,包括預(yù)訓(xùn)練模型的“可訓(xùn)練副本”和“鎖定副本”,以及一組輸入條件,可以用來(lái)控制輸出。整個(gè)過(guò)程可以概括如下:

  1. 克隆預(yù)訓(xùn)練模型:ControlNet首先創(chuàng)建了預(yù)訓(xùn)練圖像擴(kuò)散模型的兩個(gè)副本,其中一個(gè)是“鎖定”的,不能被修改,而另一個(gè)是“可訓(xùn)練”的,可以在特定任務(wù)上進(jìn)行微調(diào)。ControlNet使用了一種稱(chēng)為“權(quán)重共享”的技術(shù),該技術(shù)可以將預(yù)訓(xùn)練模型的權(quán)重復(fù)制到兩個(gè)不同的神經(jīng)網(wǎng)絡(luò)中。這樣,在微調(diào)可訓(xùn)練副本時(shí),鎖定副本仍然保留著從預(yù)訓(xùn)練中學(xué)到的通用知識(shí),并且可以提供更好的初始狀態(tài)。需要注意的是,在克隆預(yù)訓(xùn)練模型之前,需要先選擇一個(gè)適合特定任務(wù)的預(yù)訓(xùn)練模型,并對(duì)其進(jìn)行必要的調(diào)整和優(yōu)化。這樣才能確??寺〕鰜?lái)的模型能夠更好地適應(yīng)特定任務(wù),并取得更好的效果。

  2. 定義輸入條件:ControlNet然后定義了一組輸入條件,可以用來(lái)控制模型的輸出。這些條件可能包括顏色方案、對(duì)象類(lèi)別或其他特定任務(wù)參數(shù)。該技術(shù)可以將輸入條件與預(yù)訓(xùn)練模型進(jìn)行連接,并將其作為額外的輸入信息傳遞給神經(jīng)網(wǎng)絡(luò)。這樣,在微調(diào)可訓(xùn)練副本時(shí),神經(jīng)網(wǎng)絡(luò)可以根據(jù)這些輸入條件來(lái)調(diào)整輸出結(jié)果,并更好地適應(yīng)特定任務(wù)。需要注意的是,在定義輸入條件之前,需要先確定哪些參數(shù)對(duì)于特定任務(wù)是最重要的,并選擇合適的方式來(lái)表示這些參數(shù)。例如,在圖像分類(lèi)任務(wù)中,可能需要考慮對(duì)象類(lèi)別、顏色和紋理等因素,并選擇合適的方式來(lái)表示它們。同時(shí),還需要確保這些輸入條件能夠被有效地傳遞給神經(jīng)網(wǎng)絡(luò),并且不會(huì)對(duì)模型性能產(chǎn)生負(fù)面影響。

  3. 訓(xùn)練可訓(xùn)練副本:ControlNet然后使用反向傳播和其他標(biāo)準(zhǔn)訓(xùn)練技術(shù),在特定數(shù)據(jù)集上對(duì)可訓(xùn)練副本進(jìn)行訓(xùn)練。很自然的就是一個(gè)標(biāo)準(zhǔn)的神經(jīng)網(wǎng)絡(luò)訓(xùn)練流程。訓(xùn)練可訓(xùn)練副本之前,需要先選擇一個(gè)適合特定任務(wù)的預(yù)訓(xùn)練模型,并將其克隆為可訓(xùn)練副本。同時(shí)還需要確定哪些輸入條件對(duì)于特定任務(wù)是最重要的,并將其與預(yù)訓(xùn)練模型進(jìn)行連接。

  4. 合并輸出:最后,ControlNet將兩個(gè)模型副本的輸出組合起來(lái),產(chǎn)生一個(gè)最終結(jié)果,既包含從預(yù)訓(xùn)練中學(xué)到的通用知識(shí),也包含從微調(diào)中學(xué)到的特定知識(shí)。

這種方法自然是要看可視化展示的:

總的來(lái)說(shuō),ControlNet是一種新穎的神經(jīng)網(wǎng)絡(luò)架構(gòu),可以通過(guò)微調(diào)預(yù)訓(xùn)練模型來(lái)適應(yīng)特定任務(wù),并在多個(gè)基準(zhǔn)數(shù)據(jù)集上取得了非常好的性能表現(xiàn)。該方法使用條件控制技術(shù)將輸入條件與預(yù)訓(xùn)練模型進(jìn)行連接,并將其作為額外的輸入信息傳遞給神經(jīng)網(wǎng)絡(luò),從而幫助神經(jīng)網(wǎng)絡(luò)更好地理解輸入條件,并取得更好的效果。同時(shí),ControlNet還探討了不同因素對(duì)其性能的影響,例如不同輸入條件、不同預(yù)訓(xùn)練模型和不同微調(diào)策略等。實(shí)驗(yàn)結(jié)果表明,在多個(gè)基準(zhǔn)數(shù)據(jù)集上,ControlNet都取得了非常好的性能表現(xiàn),并且在圖像分類(lèi)、圖像生成和圖像檢索等任務(wù)中也有廣泛應(yīng)用。因此,我們相信ControlNet是一種非常有前景和實(shí)用價(jià)值的神經(jīng)網(wǎng)絡(luò)架構(gòu),并且在未來(lái)會(huì)有更廣泛的應(yīng)用。

6. CVPR 2023|EMA-VFI: 基于幀間注意力提取運(yùn)動(dòng)和外觀信息的高效視頻插幀

https://mp.weixin.qq.com/s/w7xCUBedykOmI9Bq6lQ4Ow

論文鏈接

https://arxiv.org/abs/2303.00440

代碼鏈接

https://github.com/MCG-NJU/EMA-VFI

1. 研究動(dòng)機(jī)

視頻插幀(Video Frame Interpolation, VFI)任務(wù)的目標(biāo)是給定連續(xù)的兩幀,生成這兩幀之間的固定時(shí)刻的幀或者任意時(shí)刻的幀。顧名思義,VFI最直接的用途就是用來(lái)提高幀率,經(jīng)常和視頻超分方法用來(lái)同時(shí)提升視頻的空間和時(shí)間上的分辨率。VFI和其他常見(jiàn)的視頻修復(fù)任務(wù)(如視頻超分、視頻去噪等)最大的不同就是VFI任務(wù)要生成原本不存在的幀,而其他視頻修復(fù)任務(wù)要修復(fù)一張?jiān)敬嬖诘膸?/strong>,這樣的不同也讓插幀任務(wù)的設(shè)計(jì)思路無(wú)法直接借鑒視頻復(fù)原方法的思路。

12aeccd6-c7b2-11ed-bfe3-dac502259ad0.png

為了生成兩幀之間的某一幀,從直覺(jué)上理解,VFI算法首先需要建模兩幀之間的運(yùn)動(dòng)關(guān)系,然后將兩幀中對(duì)應(yīng)區(qū)域的外觀信息依靠建立好的運(yùn)動(dòng)關(guān)系匯聚到要生成的幀上。因此,設(shè)計(jì)高效地提取兩幀之間的運(yùn)動(dòng)信息和外觀信息的方法對(duì)于一個(gè)好的VFI算法來(lái)說(shuō)是至關(guān)重要的。經(jīng)過(guò)充分調(diào)研,我們發(fā)現(xiàn)目前VFI算法提取這兩種信息的方式可以分為兩類(lèi),如圖1。

第一種范式(如圖1中的(a)),也是最常見(jiàn)的一類(lèi)設(shè)計(jì),直接將兩幀按通道拼在一起,經(jīng)過(guò)重復(fù)的網(wǎng)絡(luò)模塊提取出特征,這個(gè)特征既用來(lái)建模運(yùn)動(dòng)也用來(lái)表征外觀,我們?cè)诖藢⑦@樣的提取范式稱(chēng)為混合提?。╩ixed extraction)。盡管混合提取范式設(shè)計(jì)十分簡(jiǎn)潔,但因?yàn)橐[式地提取兩種信息,往往對(duì)特征提取模塊的設(shè)計(jì)和容量都有較高的要求。同時(shí),因?yàn)闆](méi)有顯示的運(yùn)動(dòng)信息,也無(wú)法直接得到任意時(shí)刻運(yùn)動(dòng)建模所需的運(yùn)動(dòng)信息,這種范式限制了任意時(shí)刻插幀的能力。

第二種范式(如圖1中的(b)),采用了串行提取兩種信息的思路,首先先提取每一幀的單獨(dú)的外觀信息,再利用兩者的外觀信息提取運(yùn)動(dòng)信息。這種提取范式需要針對(duì)每一種信息單獨(dú)設(shè)計(jì)提取模塊,往往會(huì)引入額外計(jì)算開(kāi)銷(xiāo),并且無(wú)法像混合提取范式一樣只需堆疊相同的模塊就可以提升性能。同時(shí),這樣得到的外觀特征沒(méi)有很好地進(jìn)行幀間信息的交互,而這種交互對(duì)于生成中間幀是至關(guān)重要的。

這里我們提出了疑問(wèn):是否存在能夠同時(shí)顯式地提取兩種信息,且設(shè)計(jì)簡(jiǎn)潔有效的范式呢?如圖1中的(c),我們希望設(shè)計(jì)一個(gè)模塊,能夠同時(shí)顯式地提取運(yùn)動(dòng)信息和兩幀之間交互過(guò)的外觀信息,并且可以像混合提取范式一樣只需通過(guò)控制模塊的個(gè)數(shù)和容量來(lái)控制性能。

2. 方法介紹

利用幀間注意力(Inter-Frame Attention, IFA)提取兩種特征

在本文中,我們提出利用幀間的注意力機(jī)制來(lái)同時(shí)提取運(yùn)動(dòng)信息和兩幀之間的交互過(guò)的外觀信息。具體來(lái)說(shuō),如圖2中的(a),對(duì)于當(dāng)前幀中的任何一個(gè)區(qū)域,我們將其作為注意力機(jī)制中的查詢(xún)(query),并將其在另一幀的空間上的相鄰的所有區(qū)域作為鍵和值(key&value)來(lái)推導(dǎo)出代表其當(dāng)前區(qū)域與另一幀相鄰區(qū)域的注意力圖。隨后,該注意力圖被用來(lái)匯總鄰居的外觀特征,并和當(dāng)前區(qū)域的外觀特征進(jìn)行聚合,從而得到同一個(gè)區(qū)域在兩幀不同位置的外觀信息的聚合特征(Inter-Frame Appearance Feature)。此外,注意力圖也被用來(lái)對(duì)另一幀的相鄰區(qū)域的位移進(jìn)行加權(quán),以獲得當(dāng)前區(qū)域從當(dāng)前幀到相鄰幀的近似運(yùn)動(dòng)向量(Motion Vector),并經(jīng)過(guò)一個(gè)線性層得到兩幀之間的運(yùn)動(dòng)特征。

這樣,通過(guò)一次注意力操作,我們通過(guò)注意力圖的復(fù)用同時(shí)獨(dú)立的提取出了兩種特征。值得注意的是,這樣得到的外觀特征沒(méi)有混淆位置信息,所以可以進(jìn)一步在此基礎(chǔ)上提取新的外觀信息和運(yùn)動(dòng)信息。遵循目前主流的結(jié)構(gòu)設(shè)計(jì)思路,我們將幀間注意力機(jī)制放在了Transformer的結(jié)構(gòu)中,如圖2中的(b)。這樣的設(shè)計(jì)讓我們只需要改變特征的通道數(shù)和Transformer block的個(gè)數(shù)就能控制提取的兩種特征的質(zhì)量和多樣性。(具體細(xì)節(jié)請(qǐng)參考原文)

12c6165c-c7b2-11ed-bfe3-dac502259ad0.png

3. 實(shí)驗(yàn)結(jié)果

關(guān)于固定插幀(生成兩幀之間的中間幀)的性能比較如圖5:

12d5fd06-c7b2-11ed-bfe3-dac502259ad0.png

關(guān)于任意時(shí)刻插幀的性能比較如圖6:

12e3f6b8-c7b2-11ed-bfe3-dac502259ad0.png

可以從結(jié)果看出來(lái)我們提出方法在兩個(gè)子任務(wù)的不同數(shù)據(jù)集上都有較大的性能提升。圖7是和之前SOTA方法VFIFormer的運(yùn)行速度和占用內(nèi)存的比較,我們的方法隨著輸入尺寸的增大,計(jì)算開(kāi)銷(xiāo)有了成倍的減少:

130aea2a-c7b2-11ed-bfe3-dac502259ad0.png

4. 局限&未來(lái)展望

雖然我們提出的方法已經(jīng)取得了不小的改進(jìn),但仍有一些局限性值得探索。首先,盡管混合CNN和Transformer的設(shè)計(jì)可以減輕計(jì)算開(kāi)銷(xiāo),但它也限制了在的高分辨率外觀特征下利用IFA進(jìn)行運(yùn)動(dòng)信息的提取。其次,我們的方法的輸入僅限于兩個(gè)連續(xù)的幀,這導(dǎo)致無(wú)法利用來(lái)自多個(gè)連續(xù)幀的信息。在未來(lái)的工作中,我們會(huì)嘗試在不引入過(guò)多計(jì)算開(kāi)銷(xiāo)的情況下將我們的方法擴(kuò)展到多幀的輸入。同時(shí),因?yàn)槲覀兲岢龅哪軌蛲瑫r(shí)提取運(yùn)動(dòng)和外觀信息的IFA模塊對(duì)于視頻的不同任務(wù)都是通用的,我們也將研究如何將幀間注意應(yīng)用于其他同樣需要這兩類(lèi)信息的領(lǐng)域,如動(dòng)作識(shí)別和動(dòng)作檢測(cè)。

7. 模型訓(xùn)練過(guò)程中,混合精度訓(xùn)練穩(wěn)定性解決方案

原文:

https://mp.weixin.qq.com/s/9qfyncdq_UfiKGM73ekthQ

混合精度已經(jīng)成為訓(xùn)練大型深度學(xué)習(xí)模型的必要條件,但也帶來(lái)了許多挑戰(zhàn)。將模型參數(shù)和梯度轉(zhuǎn)換為較低精度數(shù)據(jù)類(lèi)型(如FP16)可以加快訓(xùn)練速度,但也會(huì)帶來(lái)數(shù)值穩(wěn)定性的問(wèn)題。使用進(jìn)行FP16 訓(xùn)練梯度更容易溢出或不足,導(dǎo)致優(yōu)化器計(jì)算不精確,以及產(chǎn)生累加器超出數(shù)據(jù)類(lèi)型范圍的等問(wèn)題。

1315ec04-c7b2-11ed-bfe3-dac502259ad0.png

在這篇文章中,我們將討論混合精確訓(xùn)練的數(shù)值穩(wěn)定性問(wèn)題。為了處理數(shù)值上的不穩(wěn)定性,大型訓(xùn)練工作經(jīng)常會(huì)被擱置數(shù)天,會(huì)導(dǎo)致項(xiàng)目的延期。所以我們可以引入Tensor Collection Hook來(lái)監(jiān)控訓(xùn)練期間的梯度條件,這樣可以更好地理解模型的內(nèi)部狀態(tài),更快地識(shí)別數(shù)值不穩(wěn)定性。在早期訓(xùn)練階段了解模型的內(nèi)部狀態(tài)可以判斷模型在后期訓(xùn)練中是否容易出現(xiàn)不穩(wěn)定是非常好的辦法,如果能夠在訓(xùn)練的頭幾個(gè)小時(shí)就能識(shí)別出梯度不穩(wěn)定性,可以幫助我們提升很大的效率。所以本文提供了一系列值得關(guān)注的警告,以及數(shù)值不穩(wěn)定性的補(bǔ)救措施。

混合精度訓(xùn)練

隨著深度學(xué)習(xí)繼續(xù)向更大的基礎(chǔ)模型發(fā)展。像GPT和T5這樣的大型語(yǔ)言模型現(xiàn)在主導(dǎo)著NLP,在CV中對(duì)比模型(如CLIP)的泛化效果優(yōu)于傳統(tǒng)的監(jiān)督模型。特別是CLIP的學(xué)習(xí)文本嵌入意味著它可以執(zhí)行超過(guò)過(guò)去CV模型能力的零樣本和少樣本推理,訓(xùn)練這些模型都是一個(gè)挑戰(zhàn)。

這些大型的模型通常涉及深度transformers網(wǎng)絡(luò),包括視覺(jué)和文本,并且包含數(shù)十億個(gè)參數(shù)。GPT3有1750億個(gè)參數(shù),CLIP則是在數(shù)百tb的圖像上進(jìn)行訓(xùn)練的。模型和數(shù)據(jù)的大小意味著模型需要在大型GPU集群上進(jìn)行數(shù)周甚至數(shù)月的訓(xùn)練。為了加速訓(xùn)練減少所需gpu的數(shù)量,模型通常以混合精度進(jìn)行訓(xùn)練。

混合精確訓(xùn)練將一些訓(xùn)練操作放在FP16中,而不是FP32。在FP16中進(jìn)行的操作需要更少的內(nèi)存,并且在現(xiàn)代gpu上可以比FP32的處理速度快8倍。盡管在FP16中訓(xùn)練的大多數(shù)模型精度較低,但由于過(guò)度的參數(shù)化它們沒(méi)有顯示出任何的性能下降。

隨著英偉達(dá)在Volta架構(gòu)中引入Tensor Cores,低精度浮點(diǎn)加速訓(xùn)練更加快速。因?yàn)樯疃葘W(xué)習(xí)模型有很多參數(shù),任何一個(gè)參數(shù)的確切值通常都不重要。通過(guò)用16位而不是32位來(lái)表示數(shù)字,可以一次性在Tensor Core寄存器中擬合更多參數(shù),增加每個(gè)操作的并行性。

131c5166-c7b2-11ed-bfe3-dac502259ad0.png

但FP16的訓(xùn)練是存在挑戰(zhàn)性的。因?yàn)镕P16不能表示絕對(duì)值大于65,504或小于5.96e-8的數(shù)字。深度學(xué)習(xí)框架例如如PyTorch帶有內(nèi)置工具來(lái)處理FP16的限制(梯度縮放和自動(dòng)混合精度)。但即使進(jìn)行了這些安全檢查,由于參數(shù)或梯度超出可用范圍而導(dǎo)致大型訓(xùn)練工作失敗的情況也很常見(jiàn)。深度學(xué)習(xí)的一些組件在FP32中發(fā)揮得很好,但是例如BN通常需要非常細(xì)粒度的調(diào)整,在FP16的限制下會(huì)導(dǎo)致數(shù)值不穩(wěn)定,或者不能產(chǎn)生足夠的精度使模型正確收斂。這意味著模型并不能盲目地轉(zhuǎn)換為FP16。

所以深度學(xué)習(xí)框架使用自動(dòng)混合精度(AMP),它通過(guò)一個(gè)預(yù)先定義的FP16訓(xùn)練安全操作列表。AMP只轉(zhuǎn)換模型中被認(rèn)為安全的部分,同時(shí)將需要更高精度的操作保留在FP32中。另外在混合精度訓(xùn)練中模型中通過(guò)給一些接近于零梯度(低于FP16的最小范圍)的損失乘以一定數(shù)值來(lái)獲得更大的梯度,然后在應(yīng)用優(yōu)化器更新模型權(quán)重時(shí)將按比例向下調(diào)整來(lái)解決梯度過(guò)小的問(wèn)題,這種方法被稱(chēng)為梯度縮放。

下面是PyTorch中一個(gè)典型的AMP訓(xùn)練循環(huán)示例。

132623c6-c7b2-11ed-bfe3-dac502259ad0.png

梯度縮放器scaler會(huì)將損失乘以一個(gè)可變的量。如果在梯度中觀察到nan,則將倍數(shù)降低一半,直到nan消失,然后在沒(méi)有出現(xiàn)nan的情況下,默認(rèn)每2000步逐漸增加倍數(shù)。這樣會(huì)保持梯度在FP16范圍內(nèi),同時(shí)也防止梯度變?yōu)榱恪?/p>

訓(xùn)練不穩(wěn)定的案例

盡管框架都盡了最大的努力,但PyTorch和TensorFlow中內(nèi)置的工具都不能阻止在FP16中出現(xiàn)的數(shù)值不穩(wěn)定情況。

在HuggingFace的T5實(shí)現(xiàn)中,即使在訓(xùn)練之后模型變體也會(huì)產(chǎn)生INF值。在非常深的T5模型中,注意力值會(huì)在層上累積,最終達(dá)到FP16范圍之外,這會(huì)導(dǎo)致值無(wú)窮大,比如在BN層中出現(xiàn)nan。他們是通過(guò)將INF值改為在FP16的最大值解決了這個(gè)問(wèn)題,并且發(fā)現(xiàn)這對(duì)推斷的影響可以忽略不計(jì)。

另一個(gè)常見(jiàn)問(wèn)題是ADAM優(yōu)化器的限制。作為一個(gè)小更新,ADAM使用梯度的第一和第二矩的移動(dòng)平均來(lái)適應(yīng)模型中每個(gè)參數(shù)的學(xué)習(xí)率。

132fdf9c-c7b2-11ed-bfe3-dac502259ad0.png

這里Beta1 和 Beta2 是每個(gè)時(shí)刻的移動(dòng)平均參數(shù),通常分別設(shè)置為 .9 和 .999。用 beta 參數(shù)除以步數(shù)的冪消除了更新中的初始偏差。在更新步驟中,向二階矩參數(shù)添加一個(gè)小的 epsilon 以避免被零除產(chǎn)生錯(cuò)誤。epsilon 的典型默認(rèn)值是 1e-8。但 FP16 的最小值為 5.96e-8。這意味著如果二階矩太小,更新將除以零。所以在 PyTorch 中為了訓(xùn)練不會(huì)發(fā)散,更新將跳過(guò)該步驟的更改。但問(wèn)題仍然存在尤其是在 Beta2=.999 的情況下,任何小于 5.96e-8 的梯度都可能會(huì)在較長(zhǎng)時(shí)間內(nèi)停止參數(shù)的權(quán)重更新,優(yōu)化器會(huì)進(jìn)入不穩(wěn)定狀態(tài)。

ADAM的優(yōu)點(diǎn)是通過(guò)使用這兩個(gè)矩,可以調(diào)整每個(gè)參數(shù)的學(xué)習(xí)率。對(duì)于較慢的學(xué)習(xí)參數(shù),可以加快學(xué)習(xí)速度,而對(duì)于快速學(xué)習(xí)參數(shù),可以減慢學(xué)習(xí)速度。但如果對(duì)多個(gè)步驟的梯度計(jì)算為零,即使是很小的正值也會(huì)導(dǎo)致模型在學(xué)習(xí)率有時(shí)間向下調(diào)整之前發(fā)散。

另外PyTorch目前還一個(gè)問(wèn)題,在使用混合精度時(shí)自動(dòng)將epsilon更改為1e-7,這可以幫助防止梯度移回正值時(shí)發(fā)散。但是這樣做會(huì)帶來(lái)一個(gè)新的問(wèn)題,當(dāng)我們知道梯度在相同的范圍內(nèi)時(shí),增加ε會(huì)降低了優(yōu)化器適應(yīng)學(xué)習(xí)率的能力。所以盲目的增加epsilon也不能解決由于零梯度而導(dǎo)致訓(xùn)練停滯的情況。

關(guān)于這一主題,還有非常多需要注意和學(xué)習(xí)的地方,感興趣的小伙伴可以點(diǎn)擊查看原文。

8. YOLOv7默默更新Anchor-Free,無(wú)痛再漲1.4個(gè)mAP!

原文:

https://mp.weixin.qq.com/s/z-lx-yYvI5kFKdLfbDoSOA

YOLOv7-u6分支的實(shí)現(xiàn)是基于Yolov5和Yolov6進(jìn)行的。并在此基礎(chǔ)上開(kāi)發(fā)了Anchor-Free方法。所有安裝、數(shù)據(jù)準(zhǔn)備和使用與Yolov5相同,大家可以酌情嘗試,如果電費(fèi)不要錢(qián),那就不要猶豫了?。?!

先看原始的YOLOv7的精度

1345762c-c7b2-11ed-bfe3-dac502259ad0.png

當(dāng)時(shí)原始版本就是無(wú)敵的存在,YOLOv7的base版本就有51.2的精度了?。?!

13509624-c7b2-11ed-bfe3-dac502259ad0.png

再看原作復(fù)現(xiàn)的Anchor-Free版本,相對(duì)于原始版本的51.2的精度,分別提升了1.1個(gè)點(diǎn)和1.4個(gè)點(diǎn)(使用了albumentation數(shù)據(jù)增強(qiáng)),可以看出還是很給力的結(jié)構(gòu)。

架構(gòu)改進(jìn)部分

其實(shí),關(guān)于復(fù)現(xiàn)的YOLOv7-u6(Anchor-Free),Backbone和Neck部分是沒(méi)有發(fā)生變化的,下面看一下Head部分的變化。

1、YOLOv7的Anchor-Base Head

通過(guò)下圖的YAML知道,YOLOv7的head使用了重參結(jié)構(gòu),并且也加入了隱藏知識(shí)Trick的加入。

135ccd68-c7b2-11ed-bfe3-dac502259ad0.png

2、YOLOv7的Anchor-Free Head

去除了RepConv卷積,使用了最為基本的Conv模塊,同時(shí)檢測(cè)頭換為了YOLOv6的Head形式,同時(shí)加入了IDetect的隱藏知識(shí)Implicit層思想。

136e2400-c7b2-11ed-bfe3-dac502259ad0.png

3、IV6Detect的實(shí)現(xiàn)如下

classIV6Detect(nn.Module):
dynamic=False#forcegridreconstruction
export=False#exportmode
shape=None
anchors=torch.empty(0)#init
strides=torch.empty(0)#init

def__init__(self,nc=80,ch=(),inplace=True):#detectionlayer
super().__init__()
self.nc=nc#numberofclasses
self.nl=len(ch)#numberofdetectionlayers
self.reg_max=16
self.no=nc+self.reg_max*4#numberofoutputsperanchor
self.inplace=inplace#useinplaceops(e.g.sliceassignment)
self.stride=torch.zeros(self.nl)#stridescomputedduringbuild

c2,c3=max(ch[0]//4,16),max(ch[0],self.no-4)#channels
self.cv2=nn.ModuleList(
nn.Sequential(Conv(x,c2,3),Conv(c2,c2,3),nn.Conv2d(c2,4*self.reg_max,1))forxinch)
self.cv3=nn.ModuleList(
nn.Sequential(Conv(x,c3,3),Conv(c3,c3,3),nn.Conv2d(c3,self.nc,1))forxinch)
#DFL層
self.dfl=DFL(self.reg_max)
#Implicit層
self.ia2=nn.ModuleList(ImplicitA(x)forxinch)
self.ia3=nn.ModuleList(ImplicitA(x)forxinch)
self.im2=nn.ModuleList(ImplicitM(4*self.reg_max)for_inch)
self.im3=nn.ModuleList(ImplicitM(self.nc)for_inch)

defforward(self,x):
shape=x[0].shape#BCHW
foriinrange(self.nl):
x[i]=torch.cat((self.im2[i](self.cv2[i](self.ia2[i](x[i]))),self.im3[i](self.cv3[i](self.ia3[i](x[i])))),1)
box,cls=torch.cat([xi.view(shape[0],self.no,-1)forxiinx],2).split((self.reg_max*4,self.nc),1)
ifself.training:
returnx,box,cls
elifself.dynamicorself.shape!=shape:
self.anchors,self.strides=(x.transpose(0,1)forxinmake_anchors(x,self.stride,0.5))
self.shape=shape

dbox=dist2bbox(self.dfl(box),self.anchors.unsqueeze(0),xywh=True,dim=1)*self.strides
y=torch.cat((dbox,cls.sigmoid()),1)
returnyifself.exportelse(y,(x,box,cls))

defbias_init(self):
m=self#self.model[-1]#Detect()module
fora,b,sinzip(m.cv2,m.cv3,m.stride):#from
a[-1].bias.data[:]=1.0#box
b[-1].bias.data[:m.nc]=math.log(5/m.nc/(640/s)**2)

關(guān)于損失函數(shù)與樣本匹配的穿搭

一句話吧,其實(shí)就是YOLOv8本來(lái)的樣子,也可能YOLOv8是原來(lái)YOLOv7-u6本來(lái)的樣子。使用了TaskAligned Assigner,BCE Loss、CIOU Loss以及DFL Loss。可以說(shuō)是標(biāo)準(zhǔn)搭配了?。?!關(guān)于損失函數(shù)與樣本匹配的穿搭

classComputeLoss:
def__init__(self,model,use_dfl=True):
device=next(model.parameters()).device#getmodeldevice
h=model.hyp#hyperparameters

#Definecriteria
#分類(lèi)損失
BCEcls=nn.BCEWithLogitsLoss(pos_weight=torch.tensor([h["cls_pw"]],device=device),reduction='none')

#Classlabelsmoothinghttps://arxiv.org/pdf/1902.04103.pdfeqn3
self.cp,self.cn=smooth_BCE(eps=h.get("label_smoothing",0.0))#positive,negativeBCEtargets

#Focalloss
g=h["fl_gamma"]#focallossgamma
ifg>0:
BCEcls=FocalLoss(BCEcls,g)

m=de_parallel(model).model[-1]#Detect()module
self.balance={3:[4.0,1.0,0.4]}.get(m.nl,[4.0,1.0,0.25,0.06,0.02])#P3-P7
self.BCEcls=BCEcls
self.hyp=h
self.stride=m.stride#modelstrides
self.nc=m.nc#numberofclasses
self.nl=m.nl#numberoflayers
self.device=device
#正負(fù)樣本匹配
self.assigner=TaskAlignedAssigner(topk=int(os.getenv('YOLOM',10)),
num_classes=self.nc,
alpha=float(os.getenv('YOLOA',0.5)),
beta=float(os.getenv('YOLOB',6.0)))
#回歸損失函數(shù)
self.bbox_loss=BboxLoss(m.reg_max-1,use_dfl=use_dfl).to(device)
self.proj=torch.arange(m.reg_max).float().to(device)#/120.0
self.use_dfl=use_dfl

———————End———————

你可以添加微信:rtthread2020 為好友,注明:公司+姓名,拉進(jìn)RT-Thread官方微信交流群!

你也可以把文章轉(zhuǎn)給學(xué)校老師等相關(guān)人員,讓RT-Thread可以惠及更多的開(kāi)發(fā)者


原文標(biāo)題:【AI周報(bào)20230317】 OpenAI公布GPT-4、國(guó)內(nèi)存在哪些算力瓶頸

文章出處:【微信公眾號(hào):RTThread物聯(lián)網(wǎng)操作系統(tǒng)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。


聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • RT-Thread
    +關(guān)注

    關(guān)注

    32

    文章

    1498

    瀏覽量

    43659

原文標(biāo)題:【AI周報(bào)20230317】 OpenAI公布GPT-4、國(guó)內(nèi)存在哪些算力瓶頸

文章出處:【微信號(hào):RTThread,微信公眾號(hào):RTThread物聯(lián)網(wǎng)操作系統(tǒng)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    什么是AI模組?

    未來(lái),騰視科技將繼續(xù)深耕AI模組領(lǐng)域,全力推動(dòng)AI邊緣計(jì)算行業(yè)的深度發(fā)展。隨著AI技術(shù)的不斷演進(jìn)和物聯(lián)網(wǎng)應(yīng)用的持續(xù)拓展,騰視科技的
    的頭像 發(fā)表于 09-19 15:26 ?943次閱讀
    什么是<b class='flag-5'>AI</b><b class='flag-5'>算</b><b class='flag-5'>力</b>模組?

    什么是AI模組?

    未來(lái),騰視科技將繼續(xù)深耕AI模組領(lǐng)域,全力推動(dòng)AI邊緣計(jì)算行業(yè)的深度發(fā)展。隨著AI技術(shù)的不斷演進(jìn)和物聯(lián)網(wǎng)應(yīng)用的持續(xù)拓展,騰視科技的
    的頭像 發(fā)表于 09-19 15:25 ?251次閱讀
    什么是<b class='flag-5'>AI</b><b class='flag-5'>算</b><b class='flag-5'>力</b>模組?

    OpenAI或在周五凌晨發(fā)布GPT-5 OpenAI以低價(jià)向美國(guó)政府提供ChatGPT

    外界一直在期待的OpenAI新一代大語(yǔ)言模型GPT-5或?qū)l(fā)布。據(jù)外媒的報(bào)道,GPT-5很可能在周五凌晨發(fā)布。這是OpenAI在2023年的3月份推出自然語(yǔ)言處理模型
    的頭像 發(fā)表于 08-07 14:13 ?5504次閱讀

    芯片的生態(tài)突圍與革命

    據(jù)的爆發(fā)式增長(zhǎng),大芯片已成為科技競(jìng)爭(zhēng)的核心領(lǐng)域之一。 ? 大芯片的核心應(yīng)用場(chǎng)景豐富多樣。在人工智能訓(xùn)練與推理方面,大模型(如 GPT
    的頭像 發(fā)表于 04-13 00:02 ?2365次閱讀

    DeepSeek推動(dòng)AI需求:800G光模塊的關(guān)鍵作用

    集群的部署過(guò)程中,帶寬瓶頸成為制約發(fā)揮的關(guān)鍵因素,而光模塊的速率躍升成為突破這一瓶頸的核心驅(qū)動(dòng)力。 光模塊速率躍升 隨著
    發(fā)表于 03-25 12:00

    OpenAI簡(jiǎn)化大模型選擇:薩姆·奧特曼制定路線圖

    前的技術(shù)環(huán)境下,大模型被廣泛應(yīng)用于各種聊天機(jī)器人中,其中OpenAI的ChatGPT就是一個(gè)典型的例子。然而,對(duì)于大多數(shù)用戶來(lái)說(shuō),選擇最適合自己需求的AI模型卻并非易事。OpenAI目前提供了多種模型供用戶選擇,其中包括能夠快速
    的頭像 發(fā)表于 02-18 09:12 ?644次閱讀

    OpenAI宣布GPT 4o升智計(jì)劃

    近日,全球領(lǐng)先的人工智能公司OpenAI迎來(lái)了一項(xiàng)重要宣布。OpenAI的首席執(zhí)行官Sam Altman正式揭曉了GPT 4o的升智計(jì)劃,這一消息立即引起了業(yè)界的廣泛關(guān)注。 據(jù)Sam
    的頭像 發(fā)表于 02-17 14:24 ?767次閱讀

    憶阻器存一體技術(shù)深度解析

    AI領(lǐng)域正在經(jīng)歷一場(chǎng)顛覆性的變革!DeepSeek,一款近期火爆全球的開(kāi)源AI大模型,正與GPT-4、Sora等模型一起,掀起一場(chǎng)前所未有的
    的頭像 發(fā)表于 02-13 17:32 ?1093次閱讀
    憶阻器存<b class='flag-5'>算</b>一體技術(shù)深度解析

    OpenAI即將發(fā)布GPT-4.5與GPT-5

    ,GPT-4.5將在未來(lái)幾周內(nèi)率先亮相,它將是OpenAI通用GPT-4模型的繼承者。這款新的算法在技術(shù)上進(jìn)行了諸多優(yōu)化和升級(jí),旨在為用戶提供更加精準(zhǔn)、高效的AI服務(wù)。 而在
    的頭像 發(fā)表于 02-13 13:43 ?884次閱讀

    OpenAI報(bào)告GPT-4o及4o-mini模型性能下降,正緊急調(diào)查

    近日,全球領(lǐng)先的AI研究機(jī)構(gòu)OpenAI發(fā)布了一份事故報(bào)告,引起了業(yè)界的廣泛關(guān)注。報(bào)告中指出,OpenAI目前正面臨GPT-4o和4o-mi
    的頭像 發(fā)表于 01-23 10:22 ?1017次閱讀

    如何在邊緣端獲得GPT4-V的能力:魔方+MiniCPM-V 2.6

    作者:魔方創(chuàng)始人/英特爾邊緣計(jì)算創(chuàng)新大使 劉 前面我們分享了《在魔方上本地部署Phi-4
    的頭像 發(fā)表于 01-20 13:40 ?955次閱讀
    如何在邊緣端獲得<b class='flag-5'>GPT4</b>-V的能力:<b class='flag-5'>算</b><b class='flag-5'>力</b>魔方+MiniCPM-V 2.6

    企業(yè)AI租賃是什么

    企業(yè)AI租賃是指企業(yè)通過(guò)互聯(lián)網(wǎng)向?qū)I(yè)的提供商租用所需的計(jì)算資源,以滿足其AI應(yīng)用的需求。
    的頭像 發(fā)表于 11-14 09:30 ?2742次閱讀

    AI時(shí)代的重要性及現(xiàn)狀:平衡發(fā)展與優(yōu)化配置的挑戰(zhàn)

    AI時(shí)代,扮演著至關(guān)重要的角色。如果說(shuō)數(shù)據(jù)是AI大模型的“燃料”,那么則是其強(qiáng)大的“動(dòng)
    的頭像 發(fā)表于 11-04 11:45 ?1685次閱讀

    Llama 3 與 GPT-4 比較

    隨著人工智能技術(shù)的飛速發(fā)展,我們見(jiàn)證了一代又一代的AI模型不斷突破界限,為各行各業(yè)帶來(lái)革命性的變化。在這場(chǎng)技術(shù)競(jìng)賽中,Llama 3和GPT-4作為兩個(gè)備受矚目的模型,它們代表了當(dāng)前AI領(lǐng)域的最前
    的頭像 發(fā)表于 10-27 14:17 ?1483次閱讀

    科大訊飛發(fā)布訊飛星火4.0 Turbo:七大能力超GPT-4 Turbo

    超過(guò)GPT-4 Turbo,數(shù)學(xué)能力和代碼能力更是超過(guò)了Open AI最新一代GPT模型GPT-4o。此外,其效率相對(duì)提升50%。
    的頭像 發(fā)表于 10-24 11:39 ?1340次閱讀