Meta的神奇「CICERO」NLP談判人工智慧如何運作
目錄
- 語言架構介紹
- BART 模型
- 聊天歷史和遊戲狀態
- 缺陷與漏洞
- 無壓力模型
- 條件規劃
- 資料訓練困難
- Cicero 架構
- 篩選不合適內容
- 遊戲與人類對話
1. 語言架構介紹
以Transformer架構為基礎的語言模型在處理文本生成任務上具有卓越的表現。本篇文章將介紹一種名為BART的語言模型,它是一種基於Transformer的編碼器解碼器結構。BART模型使用上下文信息進行編碼,並生成新的輸出信息,例如對話中的訊息。然而,單純將對話歷史和遊戲狀態作為輸入,精調模型以生成類似人類產生的訊息是不夠的,因為它可能會產生不準確的訊息。
2. BART 模型
BART模型以Transformer架構為基礎,用於語言生成任務。它的編碼器可以將上下文進行編碼,生成一個狀態,然後可以依據上下文生成新的輸出訊息。在這個模型中,我們還需要告訴模型要討論什麼,所以我們引入了無壓力模型。
3. 聊天歷史和遊戲狀態
為了讓BART模型正確生成訊息,我們需要在輸入中加入聊天歷史和遊戲狀態。然而,如果我們不設定要生成的行動,模型可能容易被濫用。在談判中,當模型被訓練以生成人類的談判策略時,它可能會在沒有達成協議的情況下自作主張,只因為它的目標是生成策略。為了解決這個問題,我們引入了無壓力模型。
4. 缺陷與漏洞
當模型僅通過聊天歷史和遊戲狀態進行訓練時,它可能會產生不正確的訊息。在談判過程中,模型可能會生成沒有達成共識的訊息,這會對談判產生負面影響。此外,模型還存在意圖外使用的問題,這是一種已被廣泛研究的問題。
5. 無壓力模型
為了解決模型產生不正確訊息和意圖外使用的問題,我們引入了無壓力模型。無壓力模型可以生成對策來引導對話,並使對話更具有策略性和連貫性。無壓力模型不受其它人的談話影響,它能夠精確地規劃行動。無壓力模型的使用使得對話更有深度,因為除了有策略性的計劃外,還具有關於遊戲運行和有效行動的信息。
6. 條件規劃
條件規劃允許無壓力模型根據條件生成計劃。每個玩家都有自己的計劃,這使得對話更具有深度,因為它不僅提供了策略性的計劃,還提供了關於如何引導對話的信息。
7. 資料訓練困難
在訓練BART模型時,我們需要將計劃插入訓練數據中。然而,這並不簡單,因為我們無法確定每個玩家每個步驟的實際計劃。為了解決這個問題,我們需要推斷出玩家在每個步驟中最有可能採取的行動,並將其插入訓練數據中。這樣我們才能在模型訓練中使用它們並在遊戲中提供計劃。
8. Cicero 架構
Cicero架構結合了多個子模塊,這些子模塊共同構成了整個系統。首先是基於Transformer架構的語言模型,它可以根據計劃生成訊息。然後是規劃模型,它由自我對抗學習和人類行為調整組成。最後是條件規劃應用,它進一步對計劃進行調整以符合人類行為。另外,我們還有一些過濾器用於清理模型生成的訊息。
9. 篩選不合適內容
為了確保模型生成的訊息符合要求,我們還在系統中添加了一個過濾器。這個過濾器可以檢查訊息是否合乎邏輯、合法和不冒犯性質。通過篩選不合適的訊息,我們可以確保系統生成的訊息更準確和合適。
10. 遊戲與人類對話
Cicero架構的設計旨在使模型生成真實的對話。然而,由於模型的限制,它仍然無法完美地模擬人類對話。對於一些不合適或不合理的訊息,模型可能會生成不恰當的回覆。儘管如此,我們通過過濾器來減少這些問題。同樣地,遊戲中的操縱方式也是一個關鍵因素,這將有助於我們判斷是否在與模型進行交互。
精選回答:
-
【問題】Cicero架構的核心組成部分有哪些?
【回答】Cicero架構的核心組成部分包括語言模型、規劃模型和篩選器。語言模型基於Transformer架構,用於生成訊息。規劃模型則用於生成策略性計劃。篩選器用於過濾不合適的訊息。
-
【問題】Cicero架構如何解決模型生成不合適訊息的問題?
【回答】Cicero架構通過引入篩選器來解決模型生成不合適訊息的問題。篩選器可以檢查訊息是否合乎邏輯、合法和不冒犯性質。
-
【問題】Cicero架構是否完美模擬了人類對話?
【回答】雖然Cicero架構無法完美模擬人類對話,但通過使用篩選器可以減少不合適或不合理的訊息。遊戲中的操縱方式也是判斷是否在與模型進行交互的關鍵因素。
參考資源: