Try   HackMD

摘要生成任務&QA配對任務

運行

主要有三個程式abstract.pyqa.py與mapping.py,分別負責各群的摘要抽取、群的QA個案配對與個別問題單的配對運算。

function說明

abstract.py

generate_from(): 輸入格式轉換,取問題單摘要與回復的部分內容進行後續運算

create_c_TF_IDF(): 建立TF_IDF索引

deduplicate()、deduplicate()、concatenate_loop(): 執行關鍵詞合併及去重複,將較短之關鍵詞依照前後之重複字短合併為短語。

qa.py

class Net: 預訓練語言模型的初始化,及計算平均向量

class QADataset: QA個案輸入

class ClusterDataset: 各群問題單輸入,並計算每群中心點

class SimilarityModel: 對每一群問題單的中心點,計算最相似的QA個案,使用Euclidean distance

mapping.py

該程式功能較簡單,僅是將問題單按照群id匹配至問題單分群QA結果,取出問題單所對應的QA配對。將其單獨分為一個程式是為了方便少數問題單的匹配過程。

abstract.py輸入參數

input

  • type=str
  • default="inputs/clustering_train_result.csv"
  • help="path to clustering train result csv file"
  • 說明:訓練資料每一個問題單的分群結果csv檔案

output

  • type=str
  • default="output/abstract.csv"
  • help="path to abstract result csv file"
  • 說明:輸出資料(摘要)路徑

model

  • type=str
  • default="hfl/chinese-roberta-wwm-ext"
  • help="path to BERT model(chinese) folder"
  • 說明:中文BERT模型路徑

tokenizer_tool

  • type=str
  • default="ckip"
  • help="tokenizer tool: jieba or ckip"
  • 說明:分詞工具,選擇jieba或ckip

qa.py輸入參數

qa_pth

  • type=str
  • default="inputs/QA個案清單.csv"
  • help="path to QA case csv file"
  • 說明:QA個案清單,csv格式

cluster_train_pth

  • type=str
  • default="inputs/clustering_train_result.csv"
  • help="path to clustering train result csv file"
  • 說明:訓練資料每一個問題單的分群結果csv檔案

model

  • type=str
  • default="hfl/chinese-roberta-wwm-ext"
  • help="path to BERT model(chinese folder"
  • 說明:中文BERT模型路徑

abstract_pth

  • type=str
  • default="output/abstract.csv"
  • help="path to abstract result csv file"
  • 說明:run_abstract.py產生的摘要結果

output

  • type=str
  • default="output/abstract-QA.csv"
  • help="path to output abstract QA csv file"
  • 說明:輸出的摘要-QA檔案

qa.py輸入參數

clustering_pred 問題單對應至分群對應表的输出
qa_tag 經過多標籤預測的QA個案列表(對QA個案貼標籤的輸出檔案)
abstract_qa 生成問題單分群對應QA個案表的輸出檔案
output 問題單對應至QA個案輸出檔案

輸出說明

abstract-QA.csv 此檔案為各群所匹配的關鍵詞、抽取式摘要、關鍵詞組合摘要等內容。部分群無對應的關鍵詞與摘要,是因為程式中設置最低抽取關鍵詞門檻的群中包含至少5筆資料。若群內資料數量小於5筆,則認為此時抽取關鍵詞較無代表性,不進行處理。另有少數群,資料數量大於5筆,但仍無法抽取得合適關鍵詞,這部分多是因為群內資料混雜,較無一致性特徵。

abstract-QA.csv欄位

  • 功能1:此群所對應的功能標籤
  • 群ID:群ID編號
  • QA:此群所對應的QA個案
  • 關鍵詞:抽取所得關鍵詞列表
  • 抽取式摘要:較有代表性之問題描述片段
  • 關鍵詞組合摘要:重新篩選排列後的關鍵詞組合
  • pred_QA.csv
  • 此檔案為輸入之問題單所匹配的群ID、多標籤分類結果與對應之QA個案。

output.csv欄位

  • 摘要:原始資料
  • 細節:原始資料
  • 回覆:原始資料
  • predicted_labels:多標籤分類結果
  • 群ID:此問題單所對應的群ID
  • QA:此問題單所在群所對應的QA個案