ChatGPT火了,我們請小紅書技術人和NLP專家聊聊原理和潛力
在微軟、百度、阿里、騰訊、小米紛紛宣布入局之后,ChatGPT 再次被送上科技頭條。
互聯網公司們的爭相表態,讓大家似乎看到了 ChatGPT 落地應用的曙光。相比去年底,關于 ChatGPT 的討論,也從技術本身更加聚焦到商業化前景以及對互聯網行業應用生態的改變上。
作為擁有2億月活用戶的生活社區,小紅書擁有圖文短視頻兼具的社區內容生態,包括上億級別的圖片、長短文本/視頻筆記、用戶查詢和評論數據,提供了跨越多個模態的海量數據集,為自然語言處理和AI輔助內容生成,提供了非常豐富的場景。
我們也不禁好奇:ChatGPT+小紅書能產生什么化學反應?ChatGPT 未來的應用場景中小紅書能有技術占據一席之地嗎?這個科技界和資本市場同時看好的新技術,到底能在互聯網領域攪動多大的水花?
其實,在去年年末,【REDtech 來了】第六期直播中,我們就曾邀請 NLP 專家、UCSB 助理教授李磊與小紅書技術部負責人凱奇、以及小紅書多媒體智能算法負責人宇塵,專門聊過 ChatGPT 的技術難點和應用前景。在有限的時間里,三位嘉賓討論了 ChatGPT 的能力短板、訓練方法,以及帶給未來研究與應用的啟發和影響。
短短一個半小時的直播顯得意猶未盡,所以我們重新整理了一份直播中的精彩對答,并且又去問了一些小紅書技術團隊負責人,補充了一些大家關心的議題。關于小紅書+ChatGPT 會誕生哪些新機會也藏在這份問答實錄中哦。
Q:在和 ChatGPT 的互動中,你印象最深的一個的回答是什么?
凱奇(小紅書技術部負責人):我曾經問過它一個關于足球規則的問題,如果足球運動員用手把球打進門算不算得分,它的回答是算,但又補充說明這是不合規則的。ChatGPT 的回答有時候正確,有時候也會自相矛盾。
李磊(加州大學圣芭芭拉分校助理教授):首先 ChatGPT 給出的回應和之前的 GPT-3 很不一樣,它給的回應都很長且大部分都是圍繞我們給的主題來生成的。并且,對于不會或者不太有把握的問題,它通常會回答“我不知道”、“我沒有這個信息”,而不是隨便胡說八道,這一點對于用戶也比較友好。
我也問它世界杯的問題,比如誰會贏,它回答我“沒有這個信息”,“但是如果你想知道往屆信息可以繼續詢問”。
宇塵(小紅書多媒體智能算法負責人):有一個ChatGPT 扮演 Linux Terminal 的例子:告訴 ChatGPT 大概的機器配置,然后在此基礎上讓它執行一些指令,結果發現,ChatGPT 能夠記住很長的操作歷史,前后邏輯關系非常一致(比如你往一個文件里面寫入幾行字符,之后讓它顯示這個文件里面到底被寫入了哪些字符,它都能顯示出來)。
DeepMind 研究者 Jonas Degrave 讓 ChatGPT 扮演 Linux Terminal 的例子。
圖源:https://www.engraved.blog/building-a-virtual-machine-inside/
這讓我們不禁懷疑 ChatGPT 是不是自己在后臺開了一個 terminal 欺騙用戶?于是我們進行了一些測試,看能不能判斷它是開了一個terminal還是真的在理解這里面的命令。
我們給它寫了一個復雜度特別高的指令,設定了兩重 for 循環,每一個 for 循環都有 10 億次,如果 ChatGPT 真的開了一個 terminal,它就會卡一段時間。結果出乎意料:ChatGPT 很快就跳過了這個過程,顯示出了這個命令之后的下一個結果,讓人感覺它確實大概理解了整個 demo 的邏輯,它是有一定的“思考”能力的。包括你的語法有一點小錯誤,它也可以識別你真正想要什么,并告訴你正確答案,這個讓我印象非常深刻。
Q:最近 ChatGPT 浪潮非常高,關于 ChatGPT 你最關注的問題是什么呢?
特圖(小紅書信息流廣告模型工程師):非技術方面我最關心的是政策,AI 的能力是雙刃劍,換臉技術就已經證明過一次了,NLP 感覺更難監管,這次 ChatGPT 的政策風向其實對未來 AI 蠻關鍵的。技術層面我還挺感興趣就是 ChatGPT 距離通過圖靈測試還差哪些了。
Q:ChatGPT 目前有哪些短板 ?這些問題是大語言模型還是訓練技術模型的問題,可能通過什么方式克服?
宇塵:ChatGPT 確實有非常強的變化和改善,當然還是會遇到很多問題,比如偶爾還是會“一本正經地胡說八道”。它對于自己訓練過程和記憶中的“事實”很堅持,即使你告訴它這樣不對,它還是會堅持自己的答案。有一個例子是問 ChatGPT 某個數字 x 是否為質數,它一直認為這是質數,你用交互的方式告訴它 x 可以拆解為 a 和 b 相乘,再次詢問時它依然會認為 x 是質數,所以它的內部邏輯還是有一定的問題。
另外一個維度是如何將 ChatGPT 實際應用到更多場景里。大模型的訓練和使用成本都很高,小規模的數據很難有好的表現,當它的訓練樣本、模型參數量、計算量上升到一個大模型預支網上,才能有比較驚艷的能力,所以可能離運用比較遠。但它讓大家看到了一些新的突破和可能性,某種程度上給了大家解決困難達到下一階段的動力,這是很重要的。
李磊:ChatGPT 在一些特定任務(比如翻譯)上可能并沒有達到 SOTA。雖然 ChatGPT 的 API 還沒有放出來,我們無法得知它在一些 benchmark 上的能力。但我的學生在測試 GPT-3 的過程中發現,雖然 GPT-3 能夠出色地完成翻譯任務,但它比現在單獨訓練的雙語模型還是要差一些(BLEU 分數差 5 到 10 個點),因此我推測 ChatGPT 在某些 benchmark 上并不見得會達到 SOTA,甚至可能和 SOTA 還有一些距離。
Q:關于ChatGPT的強大能力,有兩種假設,一種認為ChatGPT 這種很強的能力本身就是內置在大模型當中的,只是我們之前沒有恰當地釋放它;另一種認為大模型的內置能力其實沒有那么強,需要我們借助人類力量對它做出一些調整。你們怎么看?
宇塵:我自己比較傾向認為 ChatGPT 大部分的能力已經內嵌在大模型里面。訓練和微調大模型所需的數據量存在著幾個數量級的差異,在 GPT-3 及其之后的模型所用到的“預訓練+提示(Prompting)”范式中,這種數據量的差異就更明顯了。一方面我覺得信息本來就在大模型里面,另一方面,這個大模型本身是不是還潛藏著更多神奇的能力,現在還沒有被發揮出來。
開個玩笑,如果和人的進化對應——之前我們經常說現在的深度學習模型對于數據的利用效率很低,作為人來說,人用很少的范例就可以有效學會很多知識,但是對于模型來說比較難,但考慮到人類生命從誕生的那一天起不斷進化到現在,經歷了非常多的基因延續,像是 “pre-training”的過程。某個人出生之后,在這個真實環境里面結出小樣本,做 “fine-tune”。假設有類似這樣一個邏輯,有一個很強的大模型,不同的人基于不同的應用在自己的場景里面拿很小的樣本 fine-tune 它,或者僅僅通過一些 Prompting 的設計讓它有一些更好的表現。假設這條路是通的,我覺得 ChatGPT 未來的應用空間會非常廣,這是我的想法。
李磊:我也認為 ChatGPT 大部分的能力已經內嵌在大模型里面。在ChatGPT之前,GPT-3它的論文已經展現了很強的能力,叫做 “in-context learning”,或者叫 “few shot demostration”。這個 “few shot” 和以往 “few shot” 的能力不太一樣,GPT-3 的 “few shot” 是在 test time 給你幾個示例,不需去更新模型參數。GPT-3 展現的能力說明這個模型本身有這個能力,但是不一定能夠激發出來,我們需要把少量標注樣本放在輸入文本的上下文中即可誘導模型輸出答案。這讓我們感到非常欣喜,ChatGPT 比 GPT-3 更進一步,它可以根據整個對話的歷史記錄給出答復,這更讓人驚喜。
傳統 fine-tune 方法與 GPT-3 的 in-context learning 方法對比。
Q:ChatGPT 的強大還依賴于 RLHF(人類反饋強化學習)的訓練方法,你怎么看RLHF這個訓練方法以及對于大模型本身的能力?
李磊:在之前做機器翻譯研究的時候,我們通常會用 BLEU score(一種快速、便宜且語言獨立的自動機器翻譯評價方法,與人類判斷有很強的相關性)來指導模型。BLEU score 不是 human feedback,但我們可以通過大量的計算很容易地拿到這些樣例,另外,BLEU score 和 human feedback 之間有比較強的相關性,我們大致可以認為 BLEU score 就是 human feedback。在當時的情況下,由于模型比較弱,我們用一個度量標準去指導一個翻譯模型,可以達到5—10%的可觀提升,但是在 transformer 出來之后,尤其是模型、數據越來越大之后,我們就發現額外的度量標準反而并不見得能夠帶來很大的提升。
因此我們從中得到的經驗是,借助反饋來訓練 GPT-3 這種超大模型理論上不會得到太大提升,但是,ChatGPT 的驚艷效果卻推翻了這一經驗。
LLM(大語言模型)的能力邊界在哪里,它能做到或者已經做到了抽象思考、邏輯思考嗎?
秋哥(商業部技術基礎 NLP 建設負責人):我個人淺薄的認知,大語言模型的能力邊界還是在現存數據包含的知識范圍吧,類似于記憶力天才能做到的上限,而且這個邊界也不太可能真正達到,畢竟算力和訓練數據也不是無限的。
真正的抽象思考其實也是不能做到的,比較表面的推理還行,那些看上去很高深或者專業的回答其實大部分是包含在訓練數據里面的,或者見過類似的。真正意義上的邏輯思考單純靠大語言模型就更加不可能了,舉個最簡單的例子,比如加減法大語言模型就解決得很不好,強如 ChatGPT 也只是能處理(記?。?00以內或者10以內的簡單運算,復雜一點的運算基本上就是靠猜了。
特圖:我感覺這個問題的關鍵可能在于如何理解“思考”,贊成“中文屋”實驗的人會覺得這不是思考,贊成“圖靈測試”的人會覺得這是思考。
你認為 ChatGPT 能否取代 Google、百度等傳統搜索引擎呢?
李磊:ChatGPT 技術確實非常驚艷,效果可能也非常好,但是我們能否基于技術做出一個廣大用戶接受的產品,并且商業上能夠成功,這是帶著問號的。這樣一個新技術一定有很大的潛力,但它能否取代谷歌或者搜集引擎很難說。尤其 ChatGPT 在一些接近問答的問題上,確實比搜索引擎處理得更好一點,但是用戶在搜索的時候,有多少 query 是這一類問題呢,這類問題是大家最重要的需求嗎?不一定。
如果基于 ChatGPT 做下一代產品,我們要看 ChatGPT 的能力長處在哪里,圍繞長處來做而不一定是瞄準現有的產品,取代現有產品未必是 ChatGPT 擅長的地方。
宇塵:傳統廠商做搜索引擎已經非常多年了,如果幾十年以后出現新的搜索形態,這是有可能的,但短期內想要替代現有搜索引擎不太現實。按照我的理解, ChatGPT 還有很多問題至少沒有在當前版本里展現出來,比如與用戶個性化相關的功能,比如它不能實現互聯網資源的實時訪問,比如還會產生一些錯誤的信息等。尤其是它如果產生誤導性信息,將對整個生態造成很大的影響。我記得 ChatGPT 剛出來的時候,很多人拿著 ChatGPT 的回答到各種社交論壇上回答別人提的問題,造成了一些小的混亂。
我們基于 ChatGPT 里有意思的技術點,去持續改進現在搜索鏈路里(尤其是和 NLP 理解相關)的各環節,讓它們做得更好,這個非常有希望。
另外一個維度是,現在 ChatGPT 的能力發揮在文本上,未來是否可以比較好地泛化,復制到多模態的場景中。搜索引擎很多時候也是多模態的形式,比如小紅書的搜索會有很多圖文和視頻的結果,希望未來 ChatGPT 能夠在不同的場景都能取得進展。
Q:ChatGPT 取得的重要突破對整個研究領域會有什么重要的啟發?對未來的研究有什么影響?
李磊:對于學校來說要做這方面研究其實還是挺困難的,但它有兩個點是我們可以更多去探索的。
一個是我剛才提到的 in-context learning 的能力,以往我們不管是做 NLP 模型還是 CV 模型,都并沒有去看到底能夠通過什么樣的方式把這個模型的潛力挖掘出來。比如我們訓練一個機器翻譯模型,可能就是中英機器翻譯,不會再去想如果給這個模型一些提示,它是不是能夠生成一個更好的翻譯。但是 GPT-3、ChatGPT 給了我們新的思路,比如我們是不是可以把以往所有的模型都改成這種 in-context learning、few shot demostration,加一些 prompt 提示,不管這個提示是文本、圖片還是其他,在輸入提示的情況下,我們是否可以把預訓練模型的能力完全發揮出來,這是非常值得研究的。
第二個值得研究的就是 human feedback,低成本、高效地獲取大量的 feedback 信號很難的。如果每一個“input”、“output”都讓人去寫,那我們不可能拿到很多結果。為什么谷歌能夠不斷進步,有一個原因就是它獲取 human feedback 非常容易,用戶輸入一個 query 后得到一個結果,它可以看你有沒有點進這個結果中,這就給了它一個 feedback,所以其實用戶在使用過程中幫助谷歌不斷提升了它的系統效果。
我們回到 ChatGPT 和 GPT-3 ,現在的形式如果我們想得到足夠多的 hunman feedback 其實還是很困難的。因為用戶給了一個 “input”,系統給出 “output” 后用戶還沒有很好地給出 feedback,一定要去問用戶兩個回答你認為哪一個好哪一個壞,當然 ChatGPT 通過這種方式獲取了一些 feedback,比完全人工去寫代價要小,但是仍然很難像谷歌那樣獲取到所有用戶,整個 web 規模的 feedback。未來我們要想想如何低成本地獲取用戶 feedback 信號,使得這種信號能夠幫助我們做各種模型。這是兩個我覺得重要的點。
圖源:https://twitter.com/yizhongwyz/status/1605382356054859777
宇塵:我們團隊主要在做智能創作,最近除了 ChatGPT,跨模態的內容生成也是非常熱的一個方向。大家寫一段文字,就能生成很驚艷的圖片甚至小視頻,你也可以把圖片通過一些文字的描述快速遷移到另一種風格,我覺得這個方向在未來創作里面可能也會有很多非常有意思的應用。但這個方向還是存在很多問題,它的可控性和人的想象有時候偏差較大,時不時會出現一些 bad case。整體上,隨著 ChatGPT 的發展和一些論文的介紹,我覺得如果我們在跨模態生成的文本建模里做到非常極致,可能對于文本和視覺內容相關性的提升會有相當大的幫助,這是一個啟發,后面會重點研究一下。
ChatGPT 直觀展示了 NLP 大模型相比小模型在復雜多輪對話、不同 query 的泛化性、思維鏈 (Chain of Thought) 等各個場景的大幅提升,且相關能力目前在小模型上是不具備。
NLP 大模型的這些相關能力或許也可以在跨模態生成中進行嘗試和驗證,目前跨模態模型在模型規模上相比 GPT-3/ChatGPT 還有顯著的差距,且在跨模態場景中也有很多工作展示了隨著 NLP 分支表達能力的提升,會對視覺生成結果的精細程度有很大幫助。目前生成的結果在挑選的情況下往往能看到很不錯的驚艷結果,但生成可控性還有很大空間,這部分可能可以參考 ChatGPT 的很多思路來進行嘗試,比如更大的模型,基于優質數據的微調,強化學習等等。
還有就是剛剛李磊老師提到的 hunman feedback,現在跨模態生成中基本是一次性給用戶創作完畢,對于用戶發布的內容、點贊的信息等,我們是不是也可以人工標注一些數據,看看他們會更喜歡哪些內容,他們的 feedback 是什么,也把強化學習的思維引入進來,可能對這個鏈路也會有一些幫助。這里面很多技術看起來有一點共通,但現在不確定它從文本領域遷移到跨模態領域是否會有同樣的作用,這一點有待驗證。在跨模態生成領域的模型尺度范圍和自然語言的大模型還是有一些差距的,但是我覺得值得一試。
ChatGPT 的能力優勢在小型化之后是否還保持,以及如何看 LLM 未來的小型化空間?
李磊:以往的經驗,確實可以把大模型小型化,可以在特定任務上做小型化。通常你可以把這個模型降一到兩個數量級,是能夠在特定任務上做得還不錯的,但是要說完全保持原有能力,并且它的模型大小還要小一到兩個數量級,這個目前沒有看到非常確實的證據,但是我覺得這是未來重要的研究方向。
ChatGPT 的能力未來在 AIGC 領域可以有哪些應用場景和發揮空間?ChatGPT 有可能在小紅書內部用到嗎?
宇塵:直接使用 ChatGPT 在小紅書的場景可能非常難,尤其它現在沒有一個公開的 API 可以調用,而且如果要上傳很多信息,在小紅書的場景里面也沒有辦法直接使用。就像剛剛我們討論的,它這里面涉及到的技術想法,很多可以在我們的工作里面,在各個不同的子任務里面去借鑒。
如果泛指這種類似的對話模型,自然語言模型或者 AIGC 的能力,場景還是很多的。比如智能客服,比如剛剛李老師說的機器翻譯的進一步提升,包括在搜索里面關于 query 理解維度能力的提升。
ChatGPT 并不僅僅只有 ChatGPT,其實它是一整個系列的工作,這個系列的工作在 NLP 的各種不同的子任務都有非常顯著的提升,泛泛地講,幾乎所有 NLP 相關的任務都是會有關的,至于哪一這個模型能夠輕量化到被大規模的工程化應用,大家可以拭目以待。
我自己對于AIGC一直非常感興趣,相關的 AI 能力雖然不是在所有場景都表現特別好,但至少在一些特定的場景下有那么一點點靈性的,尤其你看和 AI 作畫相關的,就是把一種模態轉化成另外一種模態的場景,以繪畫來講,它的能力可能沒有那么完美,但是超過了99%人的繪畫能力。
除了文本和視覺之外,包括語音、音樂,任何兩個模態的遷移和轉換都是這個行業研究的重要方向。小紅書整體承載了各種不同模態的內容,這些模態如果可以在創作模態大幅度下降,讓用戶記錄和表達自己生活的時候,能夠更加低成本、更加便捷,這是一個非常有意思的方向。
此外,ChatGPT 所展示的大規模 NLP 預訓練模型,以及在少量特定語料上通過監督學習和強化學習微調后的模型展示出了非常強的能力,再結合上多模態的能力可以在非常多的場景下進行應用嘗試。比如電商等場景的智能客服,比如搜索下對用戶 query、對用戶筆記更精確的理解,比如智能創作場景下對用戶素材進行智能配樂、文案生成、跨模態的轉換和生成創作。在各個場景中應用的深度和廣度也會隨著模型大小的壓縮、模型精度的持續提升而且持續增強和擴展。
如果把ChatGPT的能力接入小紅書,對于小紅書的多模態內容生態會帶來什么新的突破?ChatGPT+小紅書=?
秋哥:突破不好說,但風險可能得先預防起來。因為 ChatGPT 寫軟文的能力是非常強的,有很多做跨境電商的人已經在用 ChatGPT 去生成商品賣點、投放詞等去搞 SEO 了。如果等多模態 ChatGPT 出來了,說不定沖擊會更大。所以我覺得反 ChatGPT 的能力反而是小紅書最緊急的。
雖然現在很多內容為主的公司都在蹭 ChatGPT 的熱度,看上去很相關,但在我看來,我們小紅書可能需要先避免 ChatGPT + 小紅書 = ChatGPT 這種局面出現,再去探索怎么讓 ChatGPT + 小紅書 = 小紅書 plus。
ChatGPT的能力可能會對安全技術帶來什么樣的影響?
本安(應用安全工程師):就我個人使用的感受來說,目前ChatGPT在非開放性的安全風險分析上還是有不錯的表現的,比如發送一段可能有漏洞的代碼讓它去審計,或者一個條件充分的環境下評估風險。
但它也有弊端,ChatGPT 作為一個語言模型,具備學習能力,但似乎無法很好地判斷接收到知識的準確性,有時候會返回錯誤的信息,所以如果安全人員沒有良好的技術基礎,很容易被錯誤的回答誤導。比如風險評估的層面,或者解決方案這些答案開放性比較高的問題,錯誤率相對會高一些,代碼審計這種錯誤率相對低,但仍然有錯誤的時候。ChatGPT可以作為一個功能強大的參考知識庫,但需要安全人員具備判斷回答準確性的基礎能力。