開源方言分詞轉換軟體Chinese dialect convert誕生了

來源:互聯網
上載者:User

        隨著《軒轅劍》的熱播,裡面的男主角陳靖仇以“偶像劇方言王子”的稱號紅遍全國,他那標準的陝西漢中方言戳中了觀眾的笑點,方言逐漸被人們接受,並以各種表現形式展現在藝術的舞台上,為大家帶來歡樂。同時,全國各地也正在加大建立有聲資料庫保護地方方言的進度。

       教育部副部長、國家語委主任李衛紅介紹,中國語言資源有聲資料庫將全面科學地描寫、展示中國少數民族語言和漢語方言的面貌,保護民族語言文化遺產。該庫的最大的特點是“有聲”,將實地採集真實語音並建立真實語音及其轉寫文本的語料庫。

   "語言資源有聲資料庫將記錄21世紀中國人說話的樣子,在50年、100年後讓子子孫孫聽到。”國家語委副主任、教育部語信司司長李宇明說。

       那麼既然我們能夠大力開發中文翻譯為英文的軟體,又為何不為保護國家文化遺產開發一款普通話轉方言的分詞翻譯軟體呢。Chinese dialect convert是一款基於方言分詞翻譯的軟體,軟體實現的核心就是基於方言分詞庫的最大粒度分詞器。下面我將詳細介紹Chinese dialect convert 軟體各部分結構和實現。

   

                                         圖1 軟體整體流程介紹

方言分詞器

   方言分詞器是基於IK analyzer實現的,同時也對其做了相應的修改。方言分詞器是採用基於詞庫的中文最大分詞技術,進行詞語切分。詞庫儲存採用與IK相同結構,即數組加雜湊表。句子進行詞元切分採用正向最大粒度切分,取基於方言詞庫的最大匹配詞為詞元,當然在不同語境下切分的粒度應該是不定的,但是為了簡單起見,這裡一律按最大匹配分詞處理。

ConfigurationDialect 類:主要負責各種方言分詞器的執行個體化,以及單例模式詞典的初始化啟動。

LanDictionary 類 :方言詞典的載入,以及擴充詞典的載入。

ShanXiSegmenter類:實現了陝西方言分詞,主要基於陝西方言詞典進行正向最大切分

ShanXiSegmenter類:實現了四川方言分詞,主要基於四川方言詞典進行正向最大切分

          

                                                                                              圖2 詞典儲存結構
          

      詞典中存放著可以進行方言分詞轉換的普通話詞元,儲存結構中當數組中元素大於3時採用雜湊表儲存。

IK分詞器

   保留IK分詞器已有結構和類。

IKanalyzerSeg 類:提供IK分詞的介面,未匹配詞使用IK進行分詞。這裡IK分詞器如何進行中文分詞不作介紹。

資料庫設計

由於方言種類繁多,如果所有都存放在記憶體中顯然是不可能的,將可以進行方言分詞轉換的普通話詞庫存放於記憶體中,用於句子的中文分詞,但將該普通話詞語對應的方言,以及用於相似性匹配的md5值,和關鍵字存放於資料庫之中,在翻譯過程中需要查詢資料庫中每種方言對應的表來獲得結果。(字元集為utf8格式)

                                  

                                                                                 圖3 資料庫方言表結構

結果收集器

        結果收集器主要就是對資料庫查詢介面的一個封裝,直接提供對外統一介面,只需要輸入對應的普通話句子或者詞元,就能獲得方言翻譯結果,以及未匹配詞語的相似詞優先順序隊列,可以選取每個在資料庫中存在的相似詞補充基於詞庫翻譯的局限性。

如:詞庫中只有“媽媽”一詞,但是使用者輸入句子是母親或者娘,其實是一個概念,但是詞庫未全部收錄這些詞,就需要進行相似詞搜尋,首先根據知網詞庫獲得"媽媽"一詞的概念,對前三個概念分別進行md5值提取併合並,然後利用合并的md5值模糊查詢資料庫,目的在於獲得含有相同概念的詞元,並計算查詢詞與這些具有相同概念的相似詞之間的相似性,並對每個未翻譯普通話詞元建立其對應的相似詞優先順序隊列。

                     

                                                                   

                                                                          圖4結果收集器整理流程

重要輔助類

原始檔案提取類:ExtractFile類,根據提供的方言和普通話對應檔案,建立資料庫。

主要功能:1 提取方言及其對應普通話 2 提取普通話關鍵詞 3 查詢知網概念集,提取該普通話對應的前3個概念集,若不滿則提取所有概念集,並對每個概念集進行md5值提取,合并這幾個md5值,用於後面的相似詞模糊查詢

原始檔案格式:最好為  方言-普通話 

資料庫連接輔助類ConnectionHelper類,提供資料庫驅動載入,串連建立的輔助工作

資料庫採用的是mysql-5.5.20-win32版本,採用jdbc串連資料

    由於能力有限,處於摸索階段,這款開源的中文方言分詞軟體設計和實現上面還有很多可以改進,同時我想隨著詞庫的擴充,以及普通話轉方言語義研究的深入,合理的將普通話轉換為對應的方言語句還是有可能的。我也希望作為一款開源的軟體,大家能夠互相交流,共同完善這款方言轉換軟體,使它的結構更加合理,翻譯更加準確,詞庫更加完備,為國家文化遺產的保留共用我們ITer的一份力量。

在此感謝IK analyzer的作者,以及基於知網語義相似性的計算作者,和北航的一位同學實現的詞語相似性計算的開來源程式庫,我才能結合他們的程式和思想來初步實現自己對於方言轉換器這款軟體的設計和實現。

附錄:

該軟體sourceforge地址: https://sourceforge.net/projects/chinese-dialect/

該軟體 oschina地址: http://www.oschina.net/p/chinese-dialect/edit

我的郵件地址 : handsomestone@gmail.com

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.