GPT-4o背后可能的語音技術(shù) 原創(chuàng)
如果我不說明這是一段GPT-4o調(diào)戲主持人的視頻,你是否會認為電話另一端是真人在對話?
GPT-4o在與人類的對話過程中,不僅能理解人的情緒,還能像人一樣說話。
總結(jié)來說,GPT-4o具有下列語音能力:
- 具有豐富的語音風格:語速快一點、語調(diào)柔和一點、或者用說唱的風格;
- 可以理解語音以外的信息:喘氣聲、嘆氣聲;
- 可以發(fā)出非語言聲音:笑聲;
- 可以進行自然而即時的互動,不需要喚醒詞。?
其實,早在GPT-4o以前,GPT3.5手機版就有語音功能,那么它和新版的GPT-4o有什么區(qū)別呢?李宏毅教授對GPT-4o背后的語音技術(shù)進行了分析,下面是對其分析內(nèi)容的總結(jié),后臺回復cam獲取pdf下載鏈接。
老版本的ChatGPT是先通過語音識別模型(whisper)將語音轉(zhuǎn)換成文本,然后將文本傳送給大模型(ChatGPT),最后通過語音合成模型(TTS)將大模型的輸出合成語音。
然而,文本作為語音的某種壓縮,在語音轉(zhuǎn)換為文本的過程中,情感信息往往無法被保留,導致后面生成的聲音顯得單調(diào)。
為了解決這個問題,有人在此基礎上加入了情感分析模塊,將情感信息以上下文的形式發(fā)給大模型和語音合成模塊。
雖然這在一定程度上解決了情感丟失問題,但情感分析、語音識別、語音合成這三個獨立的模塊,無疑增加了推理負擔,這也是為什么老版本會思考片刻才會做出回應的原因,“反應遲鈍”在多人對話中顯得很不自然。
而GPT-4o是一個端到端的語音模型。
文本語言模型輸入、輸出都是文本,處理文本時,先要將文本轉(zhuǎn)換成tokens,然后將token ids轉(zhuǎn)換成詞嵌入輸入到Transformer,最后將Transformer輸出的token ids解碼成token。
GPT-4o輸入、輸出都是語音,聲波是一種模擬信號,別說是大模型,就算是計算機也沒辦法直接處理模擬信號,所以很多音頻處理軟件需要先通過聲卡將模擬信號轉(zhuǎn)換成數(shù)字信號。
語音版語言模型也需要類似的編解碼器,它不僅要將連續(xù)的語音轉(zhuǎn)換成離散的tokens,還要將其壓縮到隱空間,但文字是人造的,語音是自然生成的,所以沒辦法像NLP那樣構(gòu)造一個詞表,這個過程需要神經(jīng)音頻編解碼模型模型來完成。
神經(jīng)音頻編解碼模型也并不是什么新玩意,最初用于音頻數(shù)據(jù)壓縮傳輸。下圖列出了神經(jīng)編解碼模型的重要時間節(jié)點。
編碼器負責將語音壓縮到離散的隱空間,解碼器負責將隱空間信息解壓縮成語音信號,這個隱空間類似于詞嵌入空間。
將語音信號編碼成離散的數(shù)字向量后就可以輸入到Transformer中了,其它的和大語言模型基本就一樣了。
下圖是基于神經(jīng)編解碼模型的大語言模型,也就是說GPT-4o很可能就是這個樣子的。神經(jīng)編解碼模型是和語言模型一起訓練的,而在老版本中,語言模型和三個獨立模塊都是單獨訓練的。
和基于文本的大模型一樣,基于語音的大模型也需要經(jīng)過預訓練和微調(diào)過程。
但鑒于文本資料要比語音資料豐富,所以可能會用文本語言模型的參數(shù)去初始化語音版語言模型。
本文轉(zhuǎn)載自公眾號人工智能大講堂
