Synonyms: 中文近義詞工具包

2021-02-16 AINLP
Synonyms

Chinese Synonyms for Natural Language Processing and Understanding.
最好的中文近義詞庫。

最近需要做一個基於知識圖譜的檢索,但是因為知識圖譜中存儲的都是標準關鍵詞,所以需要對用戶的輸入進行標準關鍵詞的匹配。目前很缺乏質量好的中文近義詞庫,於是便考慮使用word2vec訓練一個高質量的同義詞庫將"非標準表述" 映射到 "標準表述",這就是Synonyms的起源。

在經典的信息檢索系統中,相似度的計算是基於匹配的,而且是Query經過分詞後與文檔庫的嚴格的匹配,這種就缺少了利用詞彙之間的「關係」。而word2vec使用大量數據,利用上下文信息進行訓練,將詞彙映射到低維空間,產生了這種「關係」,這種「關係」是基於距離的。有了這種「關係」,就可以進一步利用詞彙之間的距離進行檢索。所以,在算法層面上,檢索更是基於了「距離」而非「匹配」,基於「語義」而非「形式」。

下面我們來仔細聊聊Synonyms(https://github.com/huyingxi/Synonyms)。

首先需要語料,我們採用了開放的大規模中文語料——維基百科中文語料。

(1)下載維基百科中文語料。
(2)繁簡轉換。
(3)分詞。

具體操作訪問wikidata-corpus

使用gensim自帶的word2vec包進行詞向量的訓練。
(1)下載gensim。
(2)輸入分詞之後的維基語料進行詞向量訓練。
(3)測試訓練好的詞的近義詞。

具體操作訪問
wikidata-corpus
gensim.word2vec官方文檔

安裝

pip install -U synonyms

API接口synonyms.nearby

獲取近義詞列表及對應的分數

import synonyms
print("人臉: %s" % (synonyms.nearby("人臉"))) # 獲取近義詞
print("識別: %s" % (synonyms.nearby("識別")))
print("NOT_EXIST: %s" % (synonyms.nearby("NOT_EXIST")))

synonyms.nearby(WORD)返回一個list,list中包含兩項:[[nearby_words], [nearby_words_score]],nearby_words是WORD的近義詞們,也以list的方式存儲,並且按照距離的長度由近及遠排列,nearby_words_score是nearby_words中對應位置的詞的距離的分數,分數在(0-1)區間內,越接近於1,代表越相近。

人臉: [['圖片', '圖像', '通過觀察', '數字圖像', '幾何圖形', '臉部', '圖象', '放大鏡', '面孔', 'Mii'], [0.597284, 0.580373, 0.568486, 0.535674, 0.531835, 0.530095, 0.525344, 0.524009, 0.523101, 0.516046]]
識別: [['辨識', '辨別', '辨認', '標識', '鑑別', '標記', '識別系統', '分辨', '檢測', '區分'], [0.872249, 0.764099, 0.725761, 0.702918, 0.68861, 0.678132, 0.663829, 0.661863, 0.639442, 0.611004]]

synonyms.compare

獲得兩個句子的相似度

sen1 = "旗幟引領方向"
sen2 = "道路決定命運"
assert synonyms.compare(sen1, sen2) == 0.0, "the similarity should be zero"
sen1 = "發生歷史性變革"
sen2 = "取得歷史性成就"
assert synonyms.compare(sen1, sen2) > 0, "the similarity should be bigger then zero"

返回值:[0-1],並且越接近於1代表兩個句子越相似。

詳細的文檔。

場景

推薦。將用戶輸入進行近義詞分析,可以推薦給用戶相關的關鍵詞。

搜索。將用戶非標準化輸入轉換為標準化輸入,進而進行資料庫/知識庫檢索。

相似度計算。解決在自然語言處理任務中常見的詞語語義相似度計算問題。

Why Synonyms

1、準確率高。
從上面的示例可以看到synonyms作為開放領域的同義詞庫,已經有較優的表現。
2、快速使用。
即安即用,方便開發者直接調用。
3、方便搭建。

作者

Hu Ying Xi

hain

給 Synonyms 點讚。

相關焦點

  • 資源 | Synonyms:一個開源的中文近義詞工具包
    近日,Hai Liang Wang 和胡小夕在 GitHub 開放了一個中文近義詞工具包 Synonyms,它可用於如文本對齊、推薦算法、相似度計算
  • Synonyms — 基於 Word2vec 的中文近義詞工具包
  • 同義詞synonyms擴展,讓你的英文更高級
    synonyms : means that they mean the exact same thing. Just describe things in different ways. 同義詞:表示它們完全相同。 只是用不同的方式描述事物。
  • 【分享包】最全語音文本數據、工具包大分享,快來下載吧!(II)
    applications: https://github.com/asyml/texar/tree/master/examples/bert36.Texar - Toolkit for Text Generation and Beyond:https://github.com/asyml/texar基於Tensorflow的開源工具包
  • Python 打造站長工具之軟文偽原創工具
    當然辦法還是有的,網上有很多工具關於軟文偽原創的工具,我也看了幾個,貌似都要收費的,哎,屌絲程式設計師,沒錢.......不過,屌絲的我會編程啊,會python啊...........然後就開始了.........
  • 英語學習之: 同義詞多/synonyms/thesaurus
    英語的詞彙的特點是詞義多, 還有一個特點, 同義詞(synonyms/thesaurus)多.
  • NLP、KG相關軟體、工具、資源匯總
    在學習和工作中,選擇一套合適的工具、框架能夠事半功倍。這裡收集了NLP、KG領域目前常用的軟體、工具和一些資源,方便大家按照需求選用。hanlp(https://github.com/hankcs/HanLP):面向生產環境的多語種自然語言處理工具包,基於 TensorFlow 2.0,目標是普及落地最前沿的NLP
  • Web安全:截包工具
    Web安全:截包工具 提及截包工具,我們自然就會想到重放攻擊。重放攻擊是一種主動的攻擊方式,一般是由中間人發起的攻擊。提及截包工具,我們自然就會想到重放攻擊。重放攻擊是一種主動的攻擊方式,一般是由中間人發起的攻擊。一般攻擊者使用截包工具截包以後,即刻改包並重發包,這就是攻擊者通常使用的重放攻擊流程。
  • 通用資料庫管理工具 DBeaver 5.0.3 發布
    DBeaver 5.0.3 發布,DBeaver 是一個通用的資料庫管理工具和 SQL 客戶端,支持 MySQL、PostgreSQL、Oracle、DB2、MSSQL、Sybase、Mimer、HSQLDB、Derby, 以及其他兼容 JDBC 的資料庫。
  • 愛站SEO工具包
    愛站SEO工具包是愛站推出的一款功能豐富的SEO優化工具,愛站SEO工具包提供了豐富的SEO功能,非常適合網站優化人員下載使用的SEO優化工具。
  • 【導購】忠義牌工具包 電工五金維修工人專用工具包
    女士內褲專場 限時最底價 ,支持拼單 此款多功能加厚帆布工具包採用高級600D防水牛津帆布,雙層加厚布料帆布工具包專為電工、五金維修工設計,包上LOGO批量採購可幫印製。
  • 詞彙教學 | 如何教孩子學習同義詞 Synonyms?
    Have students record synonyms for the worn out words on the patches and glue them to the jeans.在藍色卡紙(最好用另一種顏色的藍色卡紙,這樣看得清楚些)上裁剪出不同形狀的「補丁」,帶著孩子在「補丁」上記錄過渡使用詞的同義詞,然後貼在牛仔褲上。
  • 詞彙教學 | 用合唱的方式教孩子學習同義詞 Synonyms Sing-Along
    3、Challenge groups to use a thesaurus to rewrite the song with synonyms for as many words as possible.
  • 【導購】夾棉減震帆布工具包 收納工具專用
    此款帆布工具包選用優質黑色帆布,提帶、接縫處採用多重車線,保證結實耐用。包內含有柔軟抗撕拉減震棉,規格為280×350×70cm,可收納50KG工具。此款收納工具包有黑色、綠色兩款顏色。大小規格支持加工定製。
  • 瑞薩學習工具包培訓活動
    由《電子產品世界》主辦的「2007瑞薩學習工具包(Starter Kit)活動」 第一站於9月7日在深圳拉開了序幕,參加培訓的工程師涵蓋了工業控制、醫療器械、汽車製造以及家電設計製造領域。
  • 文旅行業發布「政策工具包」
    中國江蘇網訊為進一步提升文旅企業政策知曉度,省文化和旅遊廳近日開展送政策進企業活動並印發《政策問答》,全面梳理推出9類39項惠企「政策工具包」,推動紓困惠企政策落實落地。「政策工具包」匯總了國家和我省出臺的各類惠企相關政策,特別是普惠性財稅、金融、社保、租金、用工等支持政策,通過問答的形式,梳理包括關於支持企業應對經營困難,可申報哪些資金扶持、企業貸款到期後是否可展期或續貸、企業融資有哪些綠色通道,是否有擔保支持及免息、貼息、延期付息、企業是否可延期、減免繳納稅款等實際難題。「工具包」引來文旅企業的「點讚」。
  • 如何用synonyms(同義詞)幫助你獲得雅思口語高分