文本檢索模式的學習過程與應用



|*—*|模式構造(算法一:產生各種包含問題與答案的模式,
主要是用後綴樹進行模式學習)


第一步: 用問題+答案搜索
第二步:處理搜索出來的1000條數據文本
第三步:用正則表達式保留包含了問題和答案的句子
第四步:把包含問題和答案的sentences傳給後綴樹執行
(找到這些句子中重複最多的最長子串 如:mozart (1957-2001))
第五步:把包含問題和答案的phrases傳給後綴樹執行
(再從上步結果中找出包含問題和答案的串 如:mozart (1957 )
第六步:用<NAME>代替問題的詞,用<ANSWER>代替答案的詞


用不同人名重複算法一將會得到各個人的生日集合


|*—*|模式精度確定(算法二:計算模式精度,剔除低精度模式)


第一步: 只用問題搜索(問題選擇很重要,用同一問題的不同表達形式,避免受到重複文本的影響而影響到精度)
第二步:同算法一
第三步:用正則表達式只保留包含了問題的句子
第四步:a.用算法一得到的模式測試這些句子,會出現兩種情況:
(1)<ANSWER>可能匹配任何字符
(2)<ANSWER>匹配正確答案
如:i) Mozart was born in <ANY_WORD>
ii) Mozart was born in 1756
b.用公式計算每個模式的精度
P = Ca / Co
Ca:表示用該模式匹配的正確的條數
Co:表示用該模式匹配的代替了答案的任何詞的條數
第五步:保留匹配數量多的模式(比如大於5的)


|*—*|利用模式表發現答案(答案數據集是來自TREC-10的)
第一步:用問題搜索
第二步:已有的機器判斷問題類別以及問題的term
第三步:在已有的答案數據集中搜索
第四步:清理數據(去除標籤,空白符等)
第五步:用正則標籤替換問題的term
(“<NAME>”, in the case of BIRTHYEAR).)
第六步:通過模式表中的模式選擇匹配標籤<ANSWER>的詞作爲答案
如:<NAME> ( <ANSWER> -
<ANSWER> <NAME> was born
...
第七步:按模式精度排序上步搜的答案,去重返回top5答案。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章