自然語言處理系統:Baseball

自然語言

前言

簡介

歷史

理論篇

知識表達

語法理論

語意理論

語用理論

方法篇

規則比對

機率統計

神經網路

應用篇

語料建構

全文檢索

自動分類

自動摘要

機器翻譯

問答系統

中文處理

程式篇

交談程式

英漢翻譯

維基語料

搜尋引擎

相關資源

語料辭典

程式工具

相關網站

相關文獻

網頁列表

統計資訊

最新修改

訊息

相關網站

參考文獻

最新修改

簡體版

English

  • BASEBALL [Green, Wolf, Chomsky, Laughery 1963] : 一個回答有關棒球比賽紀錄的系統

BASEBALL 包含一個有關美國棒球運動比賽紀錄的資料庫,並根據這個資料庫所記載的資料回答使用者的問題,其方法為格位填充法,由於問答內容限定在一個資料庫中,因此、使用的格位只要包含這些欄位即可。

以下是其資料庫的一些記錄,我們用這個表格來說明此系統的運作過程。

Place Month Day Game Winner/Score Loser/Score
Cleveland July 6 95 White Sox / 2 Indian / 0
Boston July 7 96 Red Sox /5 Yankees / 3
Detroit July 7 97 Tiger / 10 Athletics / 2
Boston July 15 98 Yankees/7 Red Sox/4

BASEBALL 系統提出一個稱為規格串列(Specification list) 的資料結構以便進行格位填充,下表是這個系統根據每個問題所建立的規格串列表:

Question Specification List
Where did the Red Sox play on July 7 ? Team = Red Sox Place = 7 Month = July Day = 7
What team won 10 games in July ? Team(wining) = ? Game(number_of)=10 Month = July

問題是要如何建立規格串列呢?其方法是採用字典查詢,並對每一個字訂定其語意。

以下是一些字及其語意的對應關係表

Word Semantic
Team Team = (blank)
Red Sox Team = Red Sox
Who Team = ?
Winning Adj : Winning
Boston Place = Boston Or Team = Red Sox
The No meaning
Did No meaning

以下是其主要流程,我們將以 How many games did the Yankee play in July ? 為例,解釋每一個步驟的動作:

  • 1. Question Read in : How many games did the Yankee play in July ?
  • 2. Dictionary Look-up
Word Semantic
How many Adj : Number_of = ?
games => game Game = (blank)
Did No meaning
The No meaning
Yankee Team = Yankee
Play No meaning
In No meaning
July Month = July
  • 3. Syntax (形成短語 phrase,以便建構出 modifier, 例如上述的 winning)

[How many games] did [the Yankees] play (in [July]) ?
[X] : 代表 noun phrase (Y) : 代表 adverbial phrase 或 prepositional phrase

  • 4. Content Analysis(根據字典的語意組合正確的規格串列, 例如上述的 Boston 到底是那個意義呢?)
Phrase Semantic
[How many games] Game(Number_of) = ?
Did No meaning
[the Yankees] Team = Yankee
Play No meaning
(in July) Month = July
  • 5. Retrieve records(從資料庫中取出記錄)
Place Month Day Game Winner/Score Loser/Score
Boston July 7 96 Red Sox /5 Yankees / 3
Boston July 15 98 Yankees/7 Red Sox/4
  • 6. Response (直接顯示擷取出的紀錄)

Game(Number_of) = ? => count(Game) = ?
回答: Two Games .

Facebook

Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-NonCommercial-ShareAlike 3.0 License