我正在處理用戶在數據庫中添加一些文本的項目,同時保存還會將標記添加到他/她的條目中,以便其他人可以使用這些標記進行搜索。分別使用NLP和Ontology自動標記和分類文本
例:
文字:「下一個F1比賽是在西班牙」
標籤:「一級方程式」,「種族」,西班牙」
如果任何用戶將這些標籤搜索但我想要搜索「體育」或「汽車運動」或「歐洲」的用戶也應該得到這個條目,雖然這些標籤沒有明確地標記到條目中,但是因爲「一級方程式」是一種類型的「賽車運動」,這是一種「體育」和「西班牙」的類型在「歐洲」。
在我提交表格的那一刻,用戶在一個文本框中寫下他們的文本,然後將他們的標籤寫入下面的第二個文本框中,並提交。
這些標籤稍後會由管理員手動分類。因此,在上述情況下,管理員將手動將「西班牙」作爲「歐洲」的子元素。 (MS SQL Server層次結構列)
我認爲這可以通過使用一些Ontologies軟件來實現。 dotNetRdf,OWL ......但我不確定。我幾天前纔開始瞭解這個世界的這個方面,我不確定這些可以幫助我。這是解決方案,還是我正在考慮完全錯誤的東西?任何建議,以實現上述?
此外,在進行分類之前,我想自動從文本中選取標籤並將其作爲標籤填充到較低的文本框中。
爲此,我想我將不得不使用一些NLP服務?任何想法,哪一個使用,或任何其他建議?
感謝您的@loopasam。是本體/分類/ NLP這個世界的初學者。你的教程網站肯定會有所幫助。我會詳細介紹它。但是我想我在這裏有點困惑......比如像你上面提到的那樣,Motor_Sport將會成爲Formula_1的一個子類。誰將首先根據Formula_1對Motor_Sports進行分類。這是否會自動發生?或者有些必須手動完成? – 2013-04-30 10:42:30
「Motor_Sport」斷言是「Formula_1」的超類,是手動完成的。這是做到這一點的唯一方法,這是你如何指定你的領域知識。然後,一旦建立了本體,您可以按照我的答案中的指示查詢它。這樣做的好處在於,您只需對信息進行一次整理,然後在其餘時間利用它。一些本體已經存在,所以我建議你在構建你自己的域之前就開始對你正在尋找的域進行搜索。如果你找到適合你的人,你可以用它來解決你的問題。 – loopasam 2013-04-30 10:54:26