讓電腦學習詞語

, , , , , , at February 5th, 2007 by 小影

語言分析是其中一個人工智能的難題,直到最近都未能有讓人滿意的方案

想想我們是怎樣學習閱讀的。我們初學習閱讀的時候會每個字逐一地閱讀。慢慢我們對詞語的認識深了,閱讀的單位會變為一個個詞語。「一目十行」就是指速讀的人可以一眼就讀十行的文字,這種閱讀能力要求瞬間分析一段文字的結構和內容,只花時間去理解最重要的資料,再用這些資料去幫助理解沒有看清的文字。

這種能力正是現在的電腦所缺乏的。別說理解整篇文章,單是把詞句分解成可理解的單位的問題己經不簡單。沒錯己經有研究指出可以利用字典幫助分割文字,然而這仍不足夠。

一方面,語言不斷在變更,每天都有新詞誕生。通常我們有的字典都是經年累月編寫的,我們需要更齊全更新的字典。同時,我們學習文字並不是單獨地記憶的,見到一個詞語我們會聯想,我們懂得相關詞、同義詞、反義詞等關系。如果懂得利用上文下理和詞語的聯想,語言分析也許可以更有效。

這有關如何建做一本字典:齊全的、時常更新的、包含字詞間的關系、自由和免費… 這其實在網上己經有,就是維基 Wikipedia。每一頁的維基都是一個詞,有這個的定義、包括多層級的分類、有同義詞的定義、而每一頁的連結可視作相關度的提示…… 基於這個假設我寫了這個示範軟件:

Wiki Search (1)

Wiki Search (2)

使用 Java Web Start 開啟 (需要Java 5.0或以上) (注:這個軟件的資料由Wikipedia提供。軟件會以Apache License方式發佈,不過準備源碼需要一點時間…)

用家輸入想要查看的詞語,軟件就在維基找回有關的定義、相關字和分類。用家可以經這些相關詞和分類繼續瀏覽,查看相關的條目和分類。簡單的改良可以包括互動化圖像輸出caching按重要性排列相關字反向查看相關字和條目的關系、支援不同語言的維基、利用維基找不同語言的同義詞等等…

這只是一個Proof Of Concept。想像當我們有整個維基的資料在手,我們就可以用更多不同的角度查看這些資料。只要稍加調整,用同樣的方法我們可以由其他網站抽出文字的關系。由更高的角度看,也許可以做一個漫遊網路學習文字的機器?要怎樣做還要用多點時間去想。

相關文章

Post a Comment