# 摘要生成任務&QA配對任務 ### 運行 主要有三個程式abstract.py、qa.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個案