問答系統

問答系統（Question Answering System，QA System），是應用自然語言處理與資訊檢索技術回答自然語言提問的電腦系統。問答系統外部的行為上來看，其與目前主流資訊檢索技術有兩點不同：首先是查詢方式為完整而口語化的問句，再來則是其回傳的為高精準度網頁結果或明確的答案字串。以Ask Jeeves為例，使用者不需要思考該使用甚麼樣的問法才能夠得到理想的答案，只需要用口語化的方式直接提問如「請問誰是美國總統？」即可。而系統在瞭解使用者問句後，會非常清楚地回答「川普是美國總統」。面對這種系統，使用者不需要費心去一一檢視搜尋引擎回傳的網頁，對於資訊檢索的效率與資訊的普及都有很大幫助。從系統內部來看，問答系統使用了大量有別於傳統資訊檢索系統自然語言處理技術，如自然語言剖析（Natural Language Parsing）、問題分類（Question Classification）、專名辨識（Named Entity Recognition）等等。少數系統甚至會使用複雜的邏輯推理機制，來區隔出需要推理機制才能夠區隔出來的答案。在系統所使用的資料上，除了傳統資訊檢索會使用到的資料外（如字典），問答系統還會使用本體論等語義資料，或者利用網頁來增加資料的豐富性。

IBM的華生系統是問答系統的一個著名範例。該系統在2011年於Jeopardy節目中，與人類同場較勁，並獲得最後的勝利。近幾年快速發展的大型語言模型因具備理解與使用自然語言的能力，因此經常用於現代問答系統中。

## 前言

早在1961年，Green 就發展了第一個問答系統，用來回答單季美國職棒大聯盟相關比賽問題。該系統執行於IBM 7090平台，以今日的觀點來看，其硬體資源相當貧乏，但由於問答的範圍狹小，系統正確率尚能達到令人滿意的地步。近年來，網際網路成長快速，在資訊、流量、使用人數、以及應用領域上都有驚人的發展。截至2004年為止，Google已經索引了超過八十億個網頁資料；MSN BETA、Yahoo也分別有四十億與二十億個網頁資料。整個網際網路總索引量則高達一百一十五億個網頁。此趨勢帶動了問答系統的研究風潮。報導指出，從2000年到2005年，網路人口成長了1.7倍，在前十名的語言中，中文人口成長率為284.8%，高達一億兩千萬，遠遠超過英文人口的成長率。

## 問答系統的分類

從知識領域來看，問答系統可大致分為兩類：

- 封閉領域問答（Closed-domain question answering）：用於回答特定領域的問題，如醫藥或特定公司等。由於問題領域受限，系統有比較大的發揮空間，可以導入如專屬本體論等知識，或將答案來源全部轉換成結構性資料，來有效提升系統的表現。
- 開放領域問答（Open-domain question answering）：用回答不限範圍的問題。由於問題領域極廣，系統中所有知識與元件都必須儘量做到與領域不相關。

問答系統有許多可能的答案來源，包括但不限於：

- 資料庫：資料庫是最常見的結構化資料儲存媒介。雖然透過操控SQL語言便能夠有效率地存取資料，但有些系統試圖提供更直覺的自然語言查詢介面，希望能進一步降低學習門檻。1970年代的LUNAR系統算是早期成功的案例，其正確答題率可以達到百分之七十，可回答月球隕石相關資料。微軟的English Query則是近期的一個商業產品。English Query在剖析完英文問句後，會根據底層資料庫結構，自動產生出相對應的SQL查詢。
- 常問問題（Frequently Asked Questions, FAQs）：常問問題是公司或者長期經營領域中常見的重要資源。一份FAQ資料包含了一個問句以及相對應的答案描述。FAQ問答系統的主要責任在比對使用者問句與現有FAQ問句的相似度，此與其他問答系統著重在答案語料中擷取答案的作法不同。
- 新聞：今日新聞媒體都已經數位化了，每日累積所產生的新聞資訊量是相當可觀的，加上新聞的內容廣泛豐富，因此適合用於開放領域問答系統的答案來源。
- 網頁：利用搜尋引擎回傳的結果網頁，從中擷取答案。主要挑戰在於如何處理網路多異質性的資料，以及高雜訊網頁過濾等問題。
- 知識圖譜：知識圖譜是將知識以「實體-關係-實體」三元組為基礎進行表達與儲存的知識儲存方式。許多搜尋引擎會使用知識圖譜改善搜尋結果，如Google的Google知識圖譜。
- 非文本資料：近年由於多模態大語言模型的發展，問答系統的知識來源不再限於純文本，也可以使用表格、圖片等資料進行回答。

按照技術來分類，可以大致分為：

- 規則式系統（Rule-based systems）
- 機器學習模型（Machine learning models）
- 深度學習模型（Deep learning models）

近年來，基於大型語言模型的問答系統取得了極大的成功。一種與之相關的問答系統技術是檢索增強生成（Retrieval-augmented generation, RAG)。檢索增強生成技術利用「先檢索，後生成」的流程，可以改善大型語言模型回應的品質，減少幻覺的產生。

## 問題類型

問答系統接受的是自然語言問句，為了有效控制研究變因，多會訂定可接受的問題類型來限制研究範圍。最基本的類型為「仿真陳述問答」（Factoid Question Answering），此類系統根據答案語料所述資訊，取出一小段字串作為答案。由於答案的正確與否是根據答案語料的內容來決定，在現實生活中不一定為真，故稱為仿真陳述問答。有些系統把問答範圍進一步縮小，限定在人、地、組織等明確的專有名詞上。若此類系統有能力回答如「請列舉美國歷屆總統」這種清單型的問句，則稱為「清單問答」（List Question Answering）；若能回答定義問題，則稱為「定義問答」（Definition Question Answering）；以此類推還能定義出其他類型的問題。除了這些與問句資訊內容有關的類型外，最近評鑑會議引進如「時間限制問題」（Temporally Restricted Questions）與「序列問題」（Series of Questions）等複雜的問題類型。時間限制型的問題會在問句中明確指出答案的時間範圍限制，比如說以「民國九十年時的國民黨主席是誰」這問句來說，系統必須有根據答案語料結構化資料，或上下文來推論正確答案的能力。序列問題則把問答系統未來的應用定位在互動式的系統上。經過來回多次問答的方式來滿足使用者的資訊需求。瞭解這些問題類型分類，有助於研究範圍界定，同時在分析比較上也比較有依據。

## 國際性評估會議

截至目前為止，世界主要語言都有問答系統發表在文獻上，甚至還有少數跨語言的案例。在過去問答系統的研究中，所有研究都是在各自的假設下進行，加上系統複雜度高，不同單位的研究成果很難拿來做客觀的評估與比較。除此之外，這類系統的評估是非常消耗人力的，事前的準備包含要產生足夠多且合適的問題題目，同時每一題可能出現的答案都必須以人工方式從比賽語料中挑選出來。以上所述對問答系統的研究發展非常不利。有鑑於此，由單一組織舉辦、多個研究單位共同參與的問答系統比賽應運而生。

英文問答系統早在1999年就開始由TREC (Text REtreival Conference)會議主辦進行這類型的比賽；日文的比賽於2003年由日本國立情報學研究所NII的NTCIR會議（NTCIR Workshop）所主辦；歐洲同樣於2003年由CLEF (Cross Language Evaluation Forum)會議主辦歐洲語言的比賽。根據2004年的報告，目前最佳英文問答系統的水準已經可以達到70%左右的正確率。也就是說，一百個自然語言問句中，有七十題可以直接回答精準而正確的答案。此最佳英文系統由Language Computer Corporation所發展，邏輯推理能力為其致勝關鍵。在日文系統方面，正確率稍微低了些，但也有51%。日本電信電話公司（NTT）是目前成績最好的團隊。歐洲方面，QA@CLEF在規模上相當大，參與比賽的語言高達九種，加上跨語言問答的項目，比賽內容最為豐富。其中法文、葡萄牙文等語言系統於2005年都已經可以達到六成多的正確率。相較於其他語言，中文雖然是世界上第二大語言，但中文問答系統比賽直到2005年才開始由日本NICIR會議所主辦，目前最佳的正確率為中研院的55%。

閱讀這些評鑑會議數據時必須注意評鑑方式間的差異。TREC會議主要的評鑑項目有「仿真陳述」、「列舉」、以及「定義」問題，各類型又有其特定的評鑑標準。而CLEF看似與TREC的「仿真陳述」類型相同，但最近特別強調「時間限制問題」，使得問題更有挑戰性。而NTCIR的2005年的日文題目則全為「序列問題」。就算題目類型相同，評鑑方式仍可能不同。TREC使用三位評鑑者來評估每一結果，而CLEF依照語言的不同，使用一或兩位來評鑑每一題。2005新引進的NTCIR中文問答則使用了兩位評鑑者。評鑑標準最大的差異在於是否有考慮「文章支持度」的問題，TREC、CLEF以及NTCIR的中文問答都會考慮答案所在的文章是否「支持」該答案為真，若證據不明確，就算答案字串正確，該題仍會被視為是錯誤的。早期NTCIR日文問答則沒有考慮文章支持度的問題。根據TREC的評鑑結果，有考慮跟沒考慮文章支持度的評鑑結果差距可達十幾的百分比之多。以上說明顯示了問答系統在評鑑與解讀上到處充滿陷阱。

## 線上問答系統

- 智慧型中文問答系統 (中研院)
- askEd! - a multilingual question answering system（English, Japanese, Chinese, and）
- Ask Jeeves

- Automatic question answering engine
- START Web-based Question Answering system at MIT
- University of Edinburgh QA system - Search Wikipedia
- OpenEphyra open source question answering system
- AnswerBus
- DFKI Experimental Open Domain Web QA system
- ASU-QA prototype Web-based QA system
- TellMe QA: A prototype QA system
- QUADRA: Question Answering Digital Research Assistant