簡體   English   中英

塊狀泰米爾語

[英]Chunking for Tamil language

我想對泰米爾語(這是印度語)使用NLTK塊。 但是,它說它不支持Unicode,因為它對正則表達式使用了“ pre”模塊。

尚未解決的問題

如果我們將re模塊用於正則表達式,則Python的正則表達式引擎在處理非常大的文本時會生成“超出最大遞歸深度”錯誤,即使對於不需要任何遞歸的正則表達式也是如此。 因此,我們改為使用pre模塊。 但是請注意, pre不包括Unicode支持,因此該模塊不適用於unicode字符串。

有什么建議可以解決嗎?

您可以對泰米爾語使用LTRCShallow Parser

您可以在此處查看在線演示。

塊是特定於語言的,因此無論如何您都需要為泰米爾語訓練一個。 當然,如果您對現有的解決方案感到滿意(我不知道是否有解決方案,例如,現在刪除的答案中的鏈接是否有用),您可以在此處停止閱讀。 如果不是,您可以訓練自己的語言,但是您需要一個語料庫,該語料庫帶有您要識別的數據塊:也許您正在使用NP數據塊(通常情況下),但是也許還有其他事情。

一旦有了帶注釋的語料庫,請仔細閱讀NLTK書的第6章和第7章,尤其是第7.3節“開發和評估分塊器”。 盡管第7章從nltk的regexp分塊器開始,請繼續閱讀,您將看到如何構建不依賴於nltk的基於regexp的分塊引擎的“序列分類器”。 第6章對此至關重要,因此請不要跳過)。

這不是一件容易的事:您需要了解分類器方法,將各個部分放在一起,可能將您的語料庫轉換為IOB格式 ,最后選擇能夠給您令人滿意的性能的功能。 但這非常簡單,可以對具有注釋語料庫的任何語言或分塊任務執行。 唯一的開放式部分是考慮上下文線索,您可以將其轉換為功能以幫助分類器正確決策,並進行實驗直到找到合適的組合。 (從正面看,它比純正則表達式解決方案要強大得多,即使對於ascii文本也是如此)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM