生成式學習的兩種策略: 各個擊破還是一次到位

更新於 發佈於 閱讀時間約 8 分鐘

這文章其實也是李宏毅老師 2023 年機器學習課程的個人一些學習整理,李老師上課的內容&口吻很精彩,很建議大家直接看李老師的課程影片: 完整的所有課程在這裏


在經過前面幾篇,ChatGPT 的原理關鍵技術以及史上快速的機器學習基本原理介紹之後,我們逐漸前往生成式學習的領域核心了,不知道大家有沒有越來越清楚這波所謂的人工技術的內部原理了呢?

希望是有的,廢話不多說,我們繼續來跟大家分享這次生成式學習的常見生成策略,一樣很精彩哦。

生成的最小單位: 理解內容組成的基礎

raw-image

無論我們想要生成的是文句、影像還是語音,我們需要首先理解這些內容的基本組成元素。對於文句來說,最小的單位是 token。在中文中,每個字就是一個 token;然而,對於英文,由於其詞彙多樣性(無法窮舉),我們通常將其進一步拆解為更小的部分,稱為 word piece。例如,"unbreakable" 可以被拆分為 "un"、"break"、"able"。而對於影像,其最小單位則是像素,對於語音,則是取樣頻率。例如,在16k取樣頻率下,每秒我們將獲得16,000個取樣點。

生成策略之一: 各個擊破的逐步生成

raw-image

生成式學習的一種常見策略是 Autoregressive model,也就是我們所謂的"各個擊破"。在這種模式下,生成過程是一步步進行的。假設我們詢問機器學習是什麼,文字生成會依序生成每個字元,如"機"、"器"、"學"、"習"、"是"…,並在最後加上一個"[END]"符號來表示生成的結束。在生成影像的時候,機器則是依據提示"一直在奔跑的狗",逐一生成每個像素。

生成策略之二: 一次到位的全面生成

raw-image

另一種生成策略是 Non-autoregressive (NAR) model,也就是"一次到位"。在這種模式下,所有的生成元素都是同時產生。然而,這種方法需要解決如何控制輸出長度的問題。一種常見的解決方案是固定輸出的長度,並在輸出的結束加上"[END]",如此你就可以知道這符號之後的內容是可以丟棄的。另一種解決方案則是首先輸出一個表示輸出長度的信息,例如100,然後生成程序就可以知道這次需要生成的長度。

raw-image

兩種生成策略的對比: 品質與速度的平衡

在"各個擊破"與"一次到位"兩種策略中,後者的生成速度通常會更快。然而,這樣的速度優勢可能會帶來品質的下降。例如,如果我們試圖回答"請問李宏毅老師的職業是什麼"這個問題,答案可能是"演員"或"老師"。然而,由於"一次到位"的策略需要一次就將第一個字以及第二個字的可能答案選擇出來,所以可能會回答出類似"老員"或"演師"這種答案,所以這種方法的回答質量通常不如"各個擊破"的策略。

raw-image

了解 NAR 模型速度之快: 內在運作原理的探討

在理解為什麼非自回歸(Non-Autoregressive,NAR)模型通常比自回歸(Autoregressive,AR)模型速度快之前,我們需要了解兩者的運作方式。

想像一下你在建立一個句子,AR模型就像是你一個字一個字地寫出這個句子,每寫一個字,你都要看看前面已經寫下的字,然後根據前面的字來決定下一個字應該是什麼。這就像是當你寫一篇文章時,你需要根據前文來決定後續的內容。這樣的過程雖然可以創造出合理且通順的句子,但每次生成下一個字元都需要等待前面的字元生成完畢,這種依賴前一步的特性使得整個生成過程無法並行,只能串行進行,所以速度相對較慢。

相對的,NAR模型則是一種一次性生成所有字元的方法。這就像是你同時揮動手中的魔法棒,讓所有的字都立即出現在紙上。因為這種模型的生成不依賴於先前生成的字元,所有的字元都可以同時並行生成,所以整體生成速度會比AR模型快。然而,這種同時生成所有字元的方法可能會導致生成的句子在語義上的連貫性不如AR模型。

所以,就好像你在賽跑,AR模型像是按照既定路線一步步跑完全程,而NAR模型就像是用傳送門直接到達終點,因此NAR模型的速度通常會比AR模型快。

策略融合的可能: 品質與速度的兩全其美

那麼,有沒有可能融合"各個擊破"和"一次到位"兩種策略,既能保證生成的品質,又能保證生成的速度呢?答案是肯定的。Diffusion Model 正是這樣一種方法,它將"一次到位"的策略改為"N次到位"。這種方法不僅能保證令人驚訝的生成品質,同時也能提供快速的生成效率。

以下則是語音以及影像生成領域將這兩種策略融合使用的簡單說明:

語音生成的策略融合

raw-image

語音生成技術需要將文本轉換為語音。在這個過程中,我們可以選擇使用"各個擊破"或"一次到位"兩種策略。然而,我們也可以結合兩種策略,以充分利用兩者的優勢。以下是一種如何結合這兩種策略的方法,我們將以一種輕鬆理解的方式進行說明。

首先,讓我們把語音想像成一串珠子,每一顆珠子都代表語音中的一個取樣點。在"各個擊破"的階段,我們會像串珠一樣,一個取樣點接一個取樣點地生成語音。比方說,我們可以每秒生成100個取樣點,這就像是我們在每秒鐘內將100顆珠子串到一條線上。這個過程能確保語音的流暢性,因為每一個取樣點都依賴於前一個取樣點。

然後,在"一次到位"的階段,我們會將這100個取樣點(或者說,這100顆珠子)視為一個整體,並同時對其進行調整。這就像是我們在將100顆珠子串成一條線之後,立即對這條線上的所有珠子進行顏色或形狀的調整。這樣的過程可以大幅提高生成速度,因為所有的取樣點都是同時被調整的。

因此,透過結合"各個擊破"與"一次到位"的策略,我們可以在保持語音的流暢性的同時,也提高語音的生成速度。這就像是我們在串珠時,既能確保每一顆珠子都被細心串到線上,又能立即對所有的珠子進行調整,使得整條珠子線看起來更完美。

Diffusion Model的策略融合

raw-image

當我們討論影像生成時,我們可以將其視為從一幅模糊的畫開始,逐步添加更多細節,直到我們得到一幅清晰、細膩的畫作。Diffusion Model 就是如此來結合"各個擊破"和"一次到位"兩種策略的優勢。

Diffusion Model的工作方式有點像我們在實際生活中創作一幅畫。首先,我們可能會在畫布上畫出一個大概的草圖,這個草圖代表我們的想法和目標。然後,我們會逐步添加細節,填充顏色,進行修飾,直到最後完成一幅清晰的畫作。在這個過程中,我們並不是一次就完成所有的細節,而是分階段逐步添加。

Diffusion Model就是透過這種方式來生成影像。它首先創建一個模糊的影像,然後透過一系列的步驟來添加細節。這就像我們先畫出一個大概的草圖,然後逐步填充顏色和細節。每一個步驟都是一次"到位",因為在每個步驟中,模型都會同時更新所有的像素。

然而,這一次的"到位"並不是將影像立即變成最終的清晰影像,而是逐步添加細節。這就像我們在畫畫時,每一步都在補充草圖的細節,但不會一次就畫出最終的畫面。因此,Diffusion Model可以被視為是"各個擊破"和"一次到位"兩種策略的結合。

透過這種方式,Diffusion Model可以在保留"各個擊破"策略帶來的細節度和質量的同時,利用"一次到位"策略提高生成速度。這就像是我們在畫畫時,既能確保每一步都有細節的添加,又能快速完成整幅畫作。


我們這篇文章內的圖表都是由李宏毅老師的課程投影片中選錄截取出來的,原始投影片可參考李老師課程首頁內連接: Machine Learning 2023 Spring

很感謝李宏毅老師同意使用。

留言
avatar-img
留言分享你的想法!
avatar-img
Ted Chen的沙龍
18會員
19內容數
Ted Chen的沙龍的其他內容
2023/08/04
本篇文章深入探討了如何評估模糊訊息在對話系統開發中的它的品質驗證方式,並且使用了類似Rubic評分準則的方法來評估回覆訊息。也介紹了專家回覆與實際回覆比較的評估方式。文章最終目的希望能讓讀者具備開發自己的對話機器人的知識。
Thumbnail
2023/08/04
本篇文章深入探討了如何評估模糊訊息在對話系統開發中的它的品質驗證方式,並且使用了類似Rubic評分準則的方法來評估回覆訊息。也介紹了專家回覆與實際回覆比較的評估方式。文章最終目的希望能讓讀者具備開發自己的對話機器人的知識。
Thumbnail
2023/07/28
此文針對對話系統的持續開發和改進過程進行詳細解說,尤其在提示訊息的設計與驗證方面。以大賣場的銷售助理為例,我們設計了提示訊息,進行多次測試與調整,確保回應結果符合預期。透過建立測試集和評估函式,我們實現了批次驗證,確保所有測試項目的有效性。
Thumbnail
2023/07/28
此文針對對話系統的持續開發和改進過程進行詳細解說,尤其在提示訊息的設計與驗證方面。以大賣場的銷售助理為例,我們設計了提示訊息,進行多次測試與調整,確保回應結果符合預期。透過建立測試集和評估函式,我們實現了批次驗證,確保所有測試項目的有效性。
Thumbnail
2023/07/21
本篇文章探討如何整合大型語言模型與外部程式與資源來生成回應訊息。我們使用OpenAI的Moderation API來確認內容的合適性,並使用新的提示來評估是否真正解答了使用者的疑問。整體流程的匯整讓我們一覽全貌。我們將在下一篇文章中分享更多有關回應訊息評估的細節。
Thumbnail
2023/07/21
本篇文章探討如何整合大型語言模型與外部程式與資源來生成回應訊息。我們使用OpenAI的Moderation API來確認內容的合適性,並使用新的提示來評估是否真正解答了使用者的疑問。整體流程的匯整讓我們一覽全貌。我們將在下一篇文章中分享更多有關回應訊息評估的細節。
Thumbnail
看更多
你可能也想看
Thumbnail
TOMICA第一波推出吉伊卡哇聯名小車車的時候馬上就被搶購一空,一直很扼腕當時沒有趕緊入手。前陣子閒來無事逛蝦皮,突然發現幾家商場都又開始重新上架,價格也都回到正常水準,估計是官方又再補了一批貨,想都沒想就立刻下單! 同文也跟大家分享近期蝦皮購物紀錄、好用推薦、蝦皮分潤計畫的聯盟行銷!
Thumbnail
TOMICA第一波推出吉伊卡哇聯名小車車的時候馬上就被搶購一空,一直很扼腕當時沒有趕緊入手。前陣子閒來無事逛蝦皮,突然發現幾家商場都又開始重新上架,價格也都回到正常水準,估計是官方又再補了一批貨,想都沒想就立刻下單! 同文也跟大家分享近期蝦皮購物紀錄、好用推薦、蝦皮分潤計畫的聯盟行銷!
Thumbnail
每年4月、5月都是最多稅要繳的月份,當然大部份的人都是有機會繳到「綜合所得稅」,只是相當相當多人還不知道,原來繳給政府的稅!可以透過一些有活動的銀行信用卡或電子支付來繳,從繳費中賺一點點小確幸!就是賺個1%~2%大家也是很開心的,因為你們把沒回饋變成有回饋,就是用卡的最高境界 所得稅線上申報
Thumbnail
每年4月、5月都是最多稅要繳的月份,當然大部份的人都是有機會繳到「綜合所得稅」,只是相當相當多人還不知道,原來繳給政府的稅!可以透過一些有活動的銀行信用卡或電子支付來繳,從繳費中賺一點點小確幸!就是賺個1%~2%大家也是很開心的,因為你們把沒回饋變成有回饋,就是用卡的最高境界 所得稅線上申報
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 回顧 AI說書 - 從0開始 - 129 中說,Bidirectional Encoder Representations from Transformers (BER
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 回顧 AI說書 - 從0開始 - 129 中說,Bidirectional Encoder Representations from Transformers (BER
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 Vaswani 等人 2017 年解決了設計 Transformer 時最困難的 NLP 問題之一,對於我們人機智慧設計師來說,機器翻譯的人類基準似乎遙不可及,然而,這
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 Vaswani 等人 2017 年解決了設計 Transformer 時最困難的 NLP 問題之一,對於我們人機智慧設計師來說,機器翻譯的人類基準似乎遙不可及,然而,這
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 從 AI說書 - 從0開始 - 82 到 AI說書 - 從0開始 - 85 的說明,有一個很重要的結論:最適合您的模型不一定是排行榜上最好的模型,您需要學習 NLP 評
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 從 AI說書 - 從0開始 - 82 到 AI說書 - 從0開始 - 85 的說明,有一個很重要的結論:最適合您的模型不一定是排行榜上最好的模型,您需要學習 NLP 評
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 Transformer 可以透過繼承預訓練模型 (Pretrained Model) 來微調 (Fine-Tune) 以執行下游任務。 Pretrained Mo
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 Transformer 可以透過繼承預訓練模型 (Pretrained Model) 來微調 (Fine-Tune) 以執行下游任務。 Pretrained Mo
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 Transformers for Natural Language Processing and Computer Vision, 2024 這本書中講 Trainin
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 Transformers for Natural Language Processing and Computer Vision, 2024 這本書中講 Trainin
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 目前我們已經完成: Single-Head Attention 數學說明:AI說書 - 從0開始 - 52 Multi-Head Attention 數學說明:AI
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 目前我們已經完成: Single-Head Attention 數學說明:AI說書 - 從0開始 - 52 Multi-Head Attention 數學說明:AI
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 我們在AI說書 - 從0開始 - 42中,見識了 Tokenizer 做的事情了,以下來羅列幾個要點: 它將原始文字轉成小寫 有可能將原始文字再進行切割 通常 T
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 我們在AI說書 - 從0開始 - 42中,見識了 Tokenizer 做的事情了,以下來羅列幾個要點: 它將原始文字轉成小寫 有可能將原始文字再進行切割 通常 T
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 Transformer 中的 Attention 機制是 'Word-to-Word' 操作,抑或是 'Token-to-Token' 操作,白話來講就是:「對於句子中
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 Transformer 中的 Attention 機制是 'Word-to-Word' 操作,抑或是 'Token-to-Token' 操作,白話來講就是:「對於句子中
Thumbnail
Stability AI在圖片/影片/聲音生成領域貢獻了不少心力,近期提出了更加高效率的對抗生成蒸餾方法,只需進行一步計算,便能打敗LCM需要4步計算的結果,來看看具體是如何做到的。
Thumbnail
Stability AI在圖片/影片/聲音生成領域貢獻了不少心力,近期提出了更加高效率的對抗生成蒸餾方法,只需進行一步計算,便能打敗LCM需要4步計算的結果,來看看具體是如何做到的。
Thumbnail
本文介紹了生成式學習中的兩種策略:「各個擊破」和「一次到位」。這兩種策略在生成速度和品質之間達到平衡。為了提高速度,可以採用"N次到位"的Diffusion Model策略。在語音和影像生成中,可以結合這兩種策略以充分利用優勢。融合策略可以同時確保品質和速度,展現人工智慧的潛力。
Thumbnail
本文介紹了生成式學習中的兩種策略:「各個擊破」和「一次到位」。這兩種策略在生成速度和品質之間達到平衡。為了提高速度,可以採用"N次到位"的Diffusion Model策略。在語音和影像生成中,可以結合這兩種策略以充分利用優勢。融合策略可以同時確保品質和速度,展現人工智慧的潛力。
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News