GitHub - chatopera/Synonyms: 中文近义词:聊天机器人,智能问答工具包

Synonyms

Chinese Synonyms for Natural Language Processing and Understanding.

更好的中文近义词:聊天机器人、智能问答工具包。

synonyms可以用于自然语言理解的很多任务:文本对齐,推荐算法,相似度计算,语义偏移,关键字提取,概念提取,自动摘要,搜索引擎等。

Table of Content:

  • Install
  • Usage
  • Quick Get Start
  • Valuation
  • Benchmark
  • Statement
  • References
  • Frequently Asked Questions
  • License

Welcome

pip install -U synonyms
python -c "import synonyms" # download word vectors file

兼容 py2 和 py3,当前稳定版本 v3.x。

提示:安装后初次使用会下载词向量文件,下载速度取决于网络情况。

#118 词向量文件一直下载不下来?可尝试按下述方法设置国内的词向量备份地址:

export SYNONYMS_WORD2VEC_BIN_URL_ZH_CN=https://gitee.com/chatopera/cskefu/attach_files/610602/download/words.vector.gz
pip install -U synonyms
python -c "import synonyms" # download word vectors file

其它环境变量介绍见下文,Windows cmd 使用 set SYNONYMS_WORD2VEC_BIN_URL_ZH_CN 设置环境变量。

本文档的配置和接口说明面向 python 工具包。

Usage

支持使用环境变量配置分词词表和 word2vec 词向量文件。

环境变量 描述
SYNONYMS_WORD2VEC_BIN_MODEL_ZH_CN 使用 word2vec 训练的词向量文件,二进制格式。
SYNONYMS_WORDSEG_DICT 中文分词主字典,格式和使用参考

synonyms#nearby(word [, size = 10])

import synonyms
print("人脸: ", synonyms.nearby("人脸"))
print("识别: ", synonyms.nearby("识别"))
print("NOT_EXIST: ", synonyms.nearby("NOT_EXIST"))

synonyms.nearby(WORD [,SIZE])返回一个元组,元组中包含两项:([nearby_words], [nearby_words_score])nearby_words是 WORD 的近义词们,也以 list 的方式存储,并且按照距离的长度由近及远排列,nearby_words_scorenearby_words对应位置的词的距离的分数,分数在(0-1)区间内,越接近于 1,代表越相近;SIZE 是返回词汇数量,默认 10。比如:

synonyms.nearby(人脸, 10) = (["图片", "图像", "通过观察", "数字图像", "几何图形", "脸部", "图象", "放大镜", "面孔", "Mii"],[0.597284, 0.580373, 0.568486, 0.535674, 0.531835, 0.530
095, 0.525344, 0.524009, 0.523101, 0.516046])

在 OOV 的情况下,返回 ([], []),目前的字典大小: 435,729。

synonyms#compare(sen1, sen2 [, seg=True])

两个句子的相似度比较

    sen1 = "发生历史性变革"sen2 = "发生历史性变革"r = synonyms.compare(sen1, sen2, seg=True)

其中,参数 seg 表示 synonyms.compare 是否对 sen1 和 sen2 进行分词,默认为 True。返回值:[0-1],并且越接近于 1 代表两个句子越相似。

旗帜引领方向 vs 道路决定命运: 0.429
旗帜引领方向 vs 旗帜指引道路: 0.93
发生历史性变革 vs 发生历史性变革: 1.0

synonyms#display(word [, size = 10])

以友好的方式打印近义词,方便调试,display(WORD [, SIZE])调用了 synonyms#nearby 方法。

>>> synonyms.display("飞机")
'飞机'近义词:1. 飞机:1.02. 直升机:0.84233913. 客机:0.83930034. 滑翔机:0.78723885. 军用飞机:0.78320816. 水上飞机:0.778572267. 运输机:0.77247428. 航机:0.76647489. 航空器:0.7659290410. 民航机:0.74209654

SIZE 是打印词汇表的数量,默认 10。

synonyms#v(word)

获得一个词语的向量,该向量为 numpy 的 array,当该词语是未登录词时,抛出 KeyError 异常。

>>> synonyms.v("飞机")
array([-2.412167  ,  2.2628384 , -7.0214124 ,  3.9381874 ,  0.8219283 ,-3.2809453 ,  3.8747153 , -5.217062  , -2.2786229 , -1.2572327 ],dtype=float32)

synonyms#sv(sentence, ignore=False)

获得一个分词后句子的向量,向量以 BoW 方式组成

    sentence: 句子是分词后通过空格联合起来ignore: 是否忽略OOV,False时,随机生成一个向量

synonyms#seg(sentence)

中文分词

synonyms.seg("中文近义词工具包")

分词结果,由两个 list 组成的元组,分别是单词和对应的词性。

(['中文', '近义词', '工具包'], ['nz', 'n', 'n'])

该分词不去停用词和标点。

synonyms#keywords(sentence [, topK=5, withWeight=False])

提取关键词,默认按照重要程度提取关键词。

keywords = synonyms.keywords("9月15日以来,台积电、高通、三星等华为的重要合作伙伴,只要没有美国的相关许可证,都无法供应芯片给华为,而中芯国际等国产芯片企业,也因采用美国技术,而无法供货给华为。目前华为部分型号的手机产品出现货少的现象,若该形势持续下去,华为手机业务将遭受重创。")

Synonyms 中文近义词工具包 -- 支持文本对齐,推荐算法,相似度计算,语义偏移,关键字提取,概念提取,自动摘要,搜索引擎等相关推荐

  1. 安装使用中文近义词工具包:Synonyms

    Synonyms: 中文近义词工具包 前言 安装 使用 synonyms#nearby(word [, size = 10]) synonyms#compare(sen1, sen2 [, seg=T ...

  2. Synonyms:一个开源的中文近义词工具包

    作者:Synonyms 项目的作者胡小夕是北京邮电大学研究生,目前实习于今日头条 AI LAB.从事自然语言处理方向研究,在智能客服,知识图谱等领域都有相关研究开发经验. 工具包技术说明:该中文近义词 ...

  3. Synonyms最好的中文近义词工具包

    1.中文分词 import synonyms synonyms.seg("中文近义词工具包") 分词结果,由两个list组成的元组,分别是单词和对应的词性. (['中文', '近义 ...

  4. python中文近义词工具_Windows10下python3.5对维基百科语料用word2vec进行训练寻找同义词相似度...

    首先把需要下载的东西都列出来 1. 语料:下载地址是https://dumps.wikimedia.org/zhwiki/latest/zhwiki-latest-pages-articles.xml ...

  5. Python synonyms查找中文任意词汇的同义词近义词

    Python synonyms查找中文任意词汇的同义词近义词 作者:虚坏叔叔 博客:https://xuhss.com 早餐店不会开到晚上,想吃的人早就来了!

  6. python synonyms 近义词

    from scipy import spatial import synonyms S1 = '尽管步履维艰,我们依然不会放弃' S2 = '就算困难重重,咱们仍旧不能退出'# 使用 synonyms ...

  7. python 近义词库包 synonyms 的使用

    最近接触到nlp的一些东西,需要找出中文词语的近义词,也接触到了一个synonyms 的库, 分词,去停用词,word2vector  等 一些列nlp 的操作,还可以输出中文词语的近义词 https ...

  8. JAVA ik es_安装elasticsearch及中文IK和近义词配置

    安装elasticsearch及中文IK和近义词配置 安装java环境 java环境是elasticsearch安装必须的 yum install java-1.8.0-openjdk 安装elast ...

  9. 安装elasticsearch及中文IK和近义词配置

    安装elasticsearch及中文IK和近义词配置 安装java环境 java环境是elasticsearch安装必须的 yum install java-1.8.0-openjdk 安装elast ...

  10. 【Elasticsearch】相关性,近义词匹配,纠错匹配

    目录 相关性 布尔模型 词频/逆向文档频率(TF/IDF) 词频 逆向文档频率 字段长度归一值 结合使用 向量空间模型 Lucene 的实用评分函数 近义词匹配 近义词查询原理 同义词过滤器 纠错匹配 ...

最新文章

  1. 程序员缺乏经验的 7 种表现!
  2. Docx4j 添加页码
  3. Redis的诞生历程
  4. linux 性能测试iostat,Linux性能分析之二(iostat)
  5. java 翻转句子_Java编程-句子反转
  6. Mr.Xu的找实习之路
  7. 网站设计65条原则 作者:小柯
  8. 汽车行业大数据解决方案的应用案例详细分析
  9. Matlab绘制区域图
  10. CUDA学习:GPU硬件连接模型
  11. 取模 乘法和除法运算在CPU和GPU上的效率
  12. IBM X3650服务器使用说明一
  13. Settings Preference 的理解
  14. 光敏二极管血氧仪方案设计研发
  15. CMD(命令行)解密Bitlocker
  16. iOS原生框架Vision实现瘦脸大眼特效
  17. 惠普服务器开机系统密码,惠普(hp)各型号打印机冷复位,清零,回复出厂设置方法 以及 服务菜单(service menu)密码...
  18. ¥9.9拼5节scratch青少儿编程课程,还能领取少儿编程大礼包!快分享吧!
  19. 海思HI35xx平台软件开发快速入门之视频分辨率
  20. JavaScript 随机生成一组手机号码

热门文章

  1. 教师资格证考试攻略(高中信息技术)
  2. Kafka-3.0.1-Docker+集群 踩坑笔记
  3. 数学建模:R语言的正态性检验
  4. angularjs+uib-pagination实现同一页面多个分页功能
  5. 微信:一个必须研究的产品
  6. UVA - 10066 The Twin Towers
  7. 关于计算机取代学校的英语作文,关于网络教室将取代传统的教室英语作文
  8. 小爱同学课程表自动导入教程(2)——新版青果教务系统
  9. openwrt安装aliddns使用阿里云ddns
  10. 小议Linux安全防护(一)