2009-11-08 18 views
6

例如...WordNet有「水平」嗎? (NLP)

雞是動物
捲餅是食品

WordNet允許你做「is-a」...這個hiearchy功能。

但是,我怎麼知道何時停止在樹上行駛?我想要一個LEVEL。
這是一致的。

例如,如果出現一堆單詞,我希望wordNet將它們全部分類,但是在某個級別上,所以它不會太高。將「捲餅」分類爲「東西」太寬泛,但「墨西哥包裝食品」過於具體。我想上升到這個階段,或者直到最後階段。

回答

12

WordNet是一個詞彙,而不是一個本體,所以'水平'並不適用。

SUMO,這是一個上層的本體,它涉及到WordNet,如果你想要一個有向格而不是網絡。

對於某些領域,SUMO的中級本體可能是你想要看的地方,但我不確定它有'墨西哥包裝食品',因爲它的大部分主題都是科學或工程。

共發現的層次是

beef burrito < burrito < dish/2 < victuals < food < substance < entity. 

實體是一個頂級的概念,所以如果你停止一下面物質,你會得到捲餅ISA食物。你可以根據它來計算一個級別,但它不一定和SUMO一樣一致,或者生成你自己的一組有用的中級概念來終止。 WordNet中沒有「墨西哥包裝食品」步驟。

+0

大部分SUMO的是科學或工程?它不包含食物,人,汽車,工作等每天的詞彙? – TIMEX 2009-11-08 11:07:16

+0

SUMO是一個上層本體。在頁面上列出的中級本體(您可以找到「東西」和「牛肉捲餅」之間的概念)不包括食物,但反映了爲項目提供資金的各種組織。對於人來說有一箇中級的本體論。還有一個產業(包括食品供應商)在內的行業(因此也包括就業機會),但如果你喜歡它,則不會提及捲餅。 – 2009-11-08 11:25:31

+0

謝謝,皮特。 f – TIMEX 2009-11-08 23:49:08

2

爲了獲得關卡,您需要預先定義每個關卡的內容。本體論通常將這些定義爲具體概念的直接IS_A兒童,但如果缺少這種情況,則需要自己開發一種方法。

下一步是優先考慮每個概念,以防止每個單詞僅顯示一個類別。優先級可以以多種方式完成,例如類別和單詞之間的IS_A關係的計數,或者每個類別的手動選擇的優先級。對於每個單詞,您可以選擇具有最高優先級的類別。例如,你可能希望肉是「食物」而不是化學物質。

你也可能想要選擇一些單詞,如果它們在路徑中則改變優先級。例如,如果你想要一些也是食物的化學物質,將被宣佈爲化學物質,但其他人應該仍然是食物。

5

(我只是提供信息的補充此處[請註明皮特Kirkham的,他先用參考SUMO這很可能回答亞歷克斯OP問的問題就來了]我開始在評論領域,但很快耗盡空間和佈局capabilites ...)

亞歷克斯SUMO的大部分是科學或工程?它不包含食物,人,汽車,工作等每天的詞彙?
Pete K製作SUMO是上部本體。中級本體(其中,你會發現「的事情」和「牛肉捲餅」之間的概念)的頁面上列出不包括食品,但反映了各種各樣的資助哪個項目的組織。對於人來說有一箇中級的本體論。還有一個用於工業(包括食品供應商)的行業(因此也包括工作),但如果你喜歡吃墨西哥捲餅,那麼也不會提到捲餅

我的兩分錢共發現的
100%(即3.0最新,以及舊版本)是映射相撲,而且可能只是亞歷克斯的需要。與SUMO相關的(或者說與MILO)的中層本體是有效的特定域,不這樣做,在這個時候,包括食品,但由於共發現確實(包括所有-Well,許多OF-這些日常的東西)你做不需要利用SUMO「下的」任何形式本體論,而是用相撲的共發現映射(可能除了共發現,這又是不是一個本體論,但其非正式和鬆散的「層次」也有所幫助。

但是,有些困難可能出現,從兩個區域(,然後一些;-)):

  • 的SUMO本體的「水平」未必是你必須記住您的特定應用的水平。例如,雖然「捲餅」帶來「食品」,在SUMO「」頂級實體帶來良好「」,其僅通過長鏈查找「動物」(具體:雞生蛋> Poultry-> Bird-> Warm_Blooded_Vertebrae-> Vertebrae->動物)。
  • WORDNET的覆蓋和元數據令人印象深刻,但關於中級概念,可以有點不一致。例如,「我們的」捲餅的上位詞是適當地「菜」,它提供了將其與大約140食品菜餚,其包括仿製藥如「湯」或「砂鍋」以及「雞馬倫戈」(但省略了說「雞Cacciatore酒店」)

在提出這些問題時,我的觀點並不是批評WordNet或SUMO及其相關本體,而只是簡單說明與構建本體相關的一些挑戰,尤其是在中級。

不管基於SUMO和WordNet的,溶液的一些可能的缺陷和lackings的務實使用這些框架的可能「適合票據」

+0

謝謝你的澄清。如果我的目標是掃描一份文件,看看這個人有什麼食物,工作,興趣愛好,興趣愛好......你會如何建議我去做這件事?是否最好找到「食物」的單詞列表和「愛好」和「運動」的單詞列表?做這件事最實用的方法是什麼? – TIMEX 2009-11-08 23:50:33

+0

@Alex:因爲你的目標相對較少,所以我會考慮開發你自己的詞典。您可以通過從SUMO Wordnet映射或類似來源中提取它們來「引導」它們。您可能還需要建立一個命名實體列表(例如藝術家,運動員,城市,特定場地等)。雖然構建這樣的列表並不便宜,但您會發現由此產生的縮小域允許在類似(或通常更好)的精確度和回調中進行更多的漸進式邏輯/啓發式。 – mjv 2009-11-11 01:55:49

0

WordNet中的上位詞樹用結束(的85%的時間) 「實體」一詞的單根同義詞。如果您使用的是WordNet的C庫,那麼您可以使用traceptrs_ds獲得Synset的祖先的一段時間遞歸結構,並且可以通過遞歸地跟隨nextssptrlst指針來獲得整個synset樹,直到您點擊null指針。