這個賽道的目標是設立基於知識圖譜的主動聊天任務。知識驅動對話-官網位址
對話目標g,其中g=START->TOPIC_A->TOPIC_B;表示機器從冷啟動狀態主動聊到話題A,然後聊到話題B。意味著在該任務中,由機器主動的引導對話;在該任務中,具體的話題包括電影和娛樂人物主體。
相關知識資訊M,其中M=f1,f2,...,fn. 包括三類,分別是:話題A的知識訊息,話題B的知識訊息,話題A和話題B的關聯資訊。在該任務中,具體的相關知識資訊包括電影票房,導演和評價等,以SPO形式表示。也就是(Subject, Predicate, Object),即(實體一,謂詞,實體二)。
當前對話序列H=u1,u2,...u(t-1)
機器回覆ut.
自動評估指標和人工評估指標結合。自動評估指標考慮三個層面的測量,分別是字級別(F1-score),字級別(BLEU)和回復多樣性(DISTINCT)。關於回復多樣性,還是基於詞的計算,不過考察的是生成詞的另一個向度。在參考2中作者這樣寫道:
distinct-1 and distinct-2 are respectively the number of distinct unigrams and bigrams divided by total number of generated words
參考PyTorch官方提供的tutorial(見參考4),從seq2seq的角度解決問題的方法是,將多輪對話拆分成平行句。例如,針對目前對話序列H=u1,u2,...u(t-1),可以拆分成t-2組樣本,分別為:u1->u2;u2->u3;...;u (t-2)->u(t-1);但是,這樣的劃分方式有明顯的問題是:句子之間的平滑。這應該是個問題,但是還沒有深入思考過。
目前,重建了PyTorch官方的Chatbot的Tutorial程式碼,將各個模組解耦出來,順帶發現了一個Bug。在此基礎上,準備實作一個baseline,程式碼位址
實現想法上,主要參考論文《A Knowledge-Grounded Neural Conversation Model》,包括兩個主要部分:
第一:如何將知識圖譜的資訊嵌入模型中;
第二: memory機制的實作;
補充:
IJCAI16的文章《Neural Generative Question Answering》的3.2節提出了兩種方式用於輸入和KG的交互:
第一: Bilinear Model
第二: CNN-based Matching Model
參考:
0.www2018,《DKN: Deep Knowledge-Aware Network for News Recommendation》
1.第六屆全國社會媒體處理大會-SMP2017中文人機對話技術評測(ECDT)
包含兩個任務:使用者意圖領域分類和特定域任務型人機對話線上評測
2.《A Diversity-Promoting Objective Function for Neural Conversation Models》
3.《A Persona-Based Neural Conversation Model》
4.chatbot tutorial with pytorch
5.2018JDDC的對話比賽亞軍方案
6.機器如何猜你所想?阿里小蜜預測平台解密
7.拆開阿里小蜜的內核,看智慧人機互動的實作邏輯
8.一文揭秘!自底向上建構知識圖譜全過程
9.為電商而生的知識圖譜,如何感應使用者需求?
10.健康知識圖譜,阿里工程師如何實現?