Skip to main content

中文文本相似度计算器

Project description

Xiangsi

中文文本相似度计算器

Pypi Version Downloads

简体中文 | English

Xiangsi是一个计算文本相似度的Python包,并支持中文文本(即中文分词、停用词过滤等) Xiangsi提供4个传统相似度算法,分别是:余弦相似度,Simhash,Minhash以及Jaccard

在线计算文本相似度

下载与安装

Pip安装:

pip3 install xiangsi

国内较慢的话可以使用清华镜像:

pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple xiangsi

使用方法

计算文本相似度

Xiangsi会自动对文本进行中文分词处理,并过滤掉停用词。之后,Xiangsi会根据所选算法计算文本相似度。

余弦相似度

import xiangsi as xs
xs.cossim("如何更换花呗绑定银行卡", "花呗更改绑定银行卡")

Simhash & Minhash & Jaccard相似度

import xiangsi as xs
# Simhash
xs.simhash("如何更换花呗绑定银行卡", "花呗更改绑定银行卡")
# Minhash
xs.minhash("如何更换花呗绑定银行卡", "花呗更改绑定银行卡")
# Jaccard
xs.jaccard("如何更换花呗绑定银行卡", "花呗更改绑定银行卡")

其它加权方法

默认的加权方法是计算每个单词在文本中出现的频率。此外,还有另外两种加权方法可供选择。

TFIDF

arg = [
    "西班牙失业率创新高",
    "澳大利亚失业率高达5.1%",
    "花呗更改绑定银行卡",
    "我什么时候开通了花呗",
    "从这个角度来看, 我们一般认为,抓住了问题的关键,其他一切则会迎刃而解。"
    "从这个角度来看, 每个人都不得不面对这些问题。"

]
xs.weight = "TFIDF" # 将加权方式设置为TFIDF
xs.construct(arg) # 输入TFIDF文本,相同的文本只需调用这个函数一次

xs.cossim("如何更换花呗绑定银行卡", "花呗更改绑定银行卡")
xs.simhash("如何更换花呗绑定银行卡", "花呗更改绑定银行卡")

没有加权

xs.weight = "None" # 将加权方式设置为None
xs.cossim("如何更换花呗绑定银行卡", "花呗更改绑定银行卡")

修改参数

修改默认值

import xiangsi as xs
#计算Simhash时取前多少的TFIDF值。默认值为64
xs.feature = 64
#计算Minhash时算出多少个哈希值。默认值为16
xs.HashNums = 16
#计算Minhash时的最大哈希。默认值为4294967311
xs.prime = 4294967311

修改停用词

在v4.2.1之后,Textsim支持更改停用词:

import xiangsi as xs
stopwords = ["你好", "世界"]
xs.update_stopwords(stopwords)

新版本

v4.2.3:

  • 从xiangshi改名为xiangsi

v4.2.2:

  • 解决路径问题

v4.2.1:

  • 支持英文文本相似度

注意:

  • v4.2.0+文本相似度的计算结果可能和v4.1.0不一样,因为v4.1.0加权方式不同。
  • v4.2.0+文本相似度的输入均为两个string,且不与v4.1.0反向兼容。
  • v4.2.0+不再支持文本聚类(如果还有人需要的话请联系我,我会另开一个包)

其他链接

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

xiangsi-4.2.3.tar.gz (11.0 kB view details)

Uploaded Source

Built Distribution

xiangsi-4.2.3-py3-none-any.whl (9.5 kB view details)

Uploaded Python 3

File details

Details for the file xiangsi-4.2.3.tar.gz.

File metadata

  • Download URL: xiangsi-4.2.3.tar.gz
  • Upload date:
  • Size: 11.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.8.4

File hashes

Hashes for xiangsi-4.2.3.tar.gz
Algorithm Hash digest
SHA256 012572beea6b250e2dcc8b1b8b73793b244678b17de44039acf91878f6acf79a
MD5 e3be96596bd7a90676e33a86440b16f9
BLAKE2b-256 2ae0e8fc9282d3dc48c235b2ed0dd8f43613140ca20e1009c8dbe68134f9a893

See more details on using hashes here.

File details

Details for the file xiangsi-4.2.3-py3-none-any.whl.

File metadata

  • Download URL: xiangsi-4.2.3-py3-none-any.whl
  • Upload date:
  • Size: 9.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.8.4

File hashes

Hashes for xiangsi-4.2.3-py3-none-any.whl
Algorithm Hash digest
SHA256 1ec27797cdf125c3ff82345b73792498d249fe73e25612af0e3737199dbd0548
MD5 16cc849efec011d24bf3b4cddf59fb76
BLAKE2b-256 e94d4330b464d688fe742369178b6abbc6e700d24e12ed7796e5a5ae8e7a8f61

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page