2015-06-09 39 views
2

我需要幫助來訓練數據集,然後可以使用pos tagger通過標記進行標記。 我的輸入文件是 - kon_set1.txt 包含Konkani(印度語言)中的文本。如何訓練包含NLTK中文本行的輸入文件Python

ताजो स्वास आनी चकचकीत दांत तुमचें व्यक्तीमत्व परजळायतात. 
दांत आशिल्ल्यान तुमचो आत्मविश्वासय वाडटा. 
आमच्या हड्ड्यां आनी दांतां मदीं बॅक्टेरिया आसतात. 
त्यो दांत बुरशे आनी स्वास घाणयारो करतात. 
हांगा दिल्ल्या कांय सोंप्या सुचोवण्यांच्या आदारान तुमी तुमचे दांत नितळ आनी स्वास ताजो दवरूंक शकतात. 

我想知道如何對這個數據集進行培訓。 以便我稍後可以使用訓練的數據使用POS標記進行標記。 感謝你。等待積極的迴應。

+1

爲了訓練POS標記器,您需要手動標註POS數據。當你只有原始文本時,你應該如何訓練標記器! – Riyaz

+0

@Riyaz,這不完全正確;已經有了無監督的PoS標記方法(請參閱下面的答案)。當然,問題是,如果結果符合應用的要求,那麼結果是否令人滿意。 – lenz

+0

@lenz NLP是我的麪包和黃油,我應該知道這一點!我假設Ashay想用NLTK中的監督學習方法來訓練一個模型。我想,NLTK沒有任何無監督的學習方法。 – Riyaz

回答

0

有兩種可能性:

  1. 您手動註釋文本的有詞性標籤(優選大)部分。然後你可以訓練一個標籤。這被稱爲監督式培訓。不過,您可能需要先修改標記集,因爲英文標記集可能不適用於Konkani。手動註釋是一項耗時的任務。

  2. 違背了@Riyaz的評論,它確實有可能做一些銷售點在無人監督的方式標記,即。沒有標籤數據(只是原始文本)。例如,請參閱this 2009 paper by Chris Biemann以瞭解英文文本的應用。然而,這將比監督式培訓的準確性要差得多。你需要很多文字。爲了獲得合理的結果,Biemann建議使用5000萬個令牌。

+0

@Ashay如果你有數據,那麼你可以從字面上使用任何分類器來訓練模型。 NLTK擁有HMM標籤器,主要用於NLP社區培訓POS標籤。您可以使用它來訓練Konkani數據的模型。 – Riyaz

0

Konkani不是這樣一個晦澀的語言。如果您的目標是培訓標記器,請找一個標記的語料庫作爲培訓材料。如果您的目標是標記您自己的文本,請執行相同操作或尋找預先訓練好的標記。谷歌搜索「Konkani培訓語料庫」提供了大量的點擊量。看看他們。

注意的術語:您列車一個惡搞。你標籤註釋一個語料庫(手工或工具)。

可能手@enotate你的語料庫,@倫茨建議,但我不會推薦它。標註足夠大小的語料庫以訓練標記器是一項巨大的任務。

我也勸你不要去嘗試設計出一種無監督的方法,因爲(a)這是一個開放的研究課題和(b)您在使用簡單的東西足夠多的麻煩。所以首先要做的是:找到一個標記語料庫。

0

非常感謝您的建議。 它使用tnT標記器爲我們解決問題。 我們定義了一個名爲konkani.pos的語料庫,並將其包含在印度語語料庫文件夾中。 現在我們能夠獲取訓練數據集中的數據行並通過KonkaniTest.text文件對其進行測試。

0

現在,發現在使用功能

x=FreqDist(train_data) 
and 
print(x) 

打印的標籤詞的出現, 的頻率幾個標記的單詞和後面...... 從而無法列出所有標記的話。 如何查看所有標記的單詞? 和len(x)給出了標記詞的數量。

+0

嗨Ashay,這是一個新問題。輸入它作爲一個新的問題,你會得到一些答案。 – alexis

相關問題