近年來Windows Live Messenger相當流行,市面上因而出現許多建構在Windows Live Messenger上的問答機器人,然而其功能大多為資訊查詢和商品宣傳等,鮮少有應用在教學上的機器人。本論文介紹我們所開發的問答機器人,JT-Bot。JT-Bot也是建構在Windows Live Messenger上的問答機器人,主要是模擬扮演Java課程的助教角色。JT-Bot擁有的功能包含:提供基本對話、分享笑話、下載投影片和提供SCJP模擬測驗等功能。 為了提高JT-Bot的問答準確率及知識豐富性,在語意的解析上,我們混合採用兩種技術:一種是常見的「向量餘弦相似度」比對,另一種是基於本體論的「人工智能標記語言AIML」搜尋。在基本對話的處理,我們將使用者的問句與基本語料庫中的所有問句計算向量餘弦相似度,選擇最高相似度者,回應其相對應答句。至於Java程式語言相關知識的處理,我們則以AIML的樹狀結構進行分類表示之。當使用者問及Java相關知識時,我們則使用其問句中的關鍵字,在我們事先建立的AIML樹狀結構中進行搜尋,回應搜尋分類結果所對應的答句。 我們的系統JT-Bot讓課外輔助教學無時無刻進行著,並且具備玩樂性質,藉以提高學生學習興趣。也可節省教師或助教在教學上所花費的力氣和時間,提升教學成效。根據我們的實驗,目前JT-Bot系統的問答準確率約七成,尚有改進空間。除此之外,使其能自動學習知識也是未來進一步發展的方向。
Due to the popularity of Windows Live Messenger, many answering bots based on Windows Live Messenger were developed for different purposes. However, most answering bots are developed for product promotion or act as information providers. Few of them are used for e-learning. In this thesis, we introduce the development of our answering bot : JT-Bot. JT-Bot, a bot acts as the role of teaching assistant for Java course, is also developed based on Windows Live Messenger. It provides various functions, such as basic conversations, sharing jokes, slides download, simulated SCJP test, and etc. To improve the answering accuracy and enriching the knowledge base of JT-Bot, we adopt two techniques to analyze the semantics of the conversation, the vector cosine similarity comparison and the ontology based AIML searching. For the basic conversation, we compute the vector cosine similarity for each question sentence in our conversation database to the input question sentence, and then the answer with respect to the question with maximum similarity is responded. Besides, we use the tree structure of AIML to represent the knowledge of Java language. When the input question is about Java language, the keywords of this question are used to search the desired classification according to the AIML-based tree structure, and then the build-in answer of the class is responded. JT-Bot has two major advantages: JT-Bot makes e-learing out of class anytime and anywhere, with playfulness, which would enhance the learning motivation of the students. Moreover, JT-Bot can help teachers and TA reducing their teaching load and increasing the teaching performance. Based on our experiments, JT-Bot’s answering accuracy is about 70%. Our future work is to increase the answering accuracy of JT-Bot and to make it having the ability of auto-learning.