Xiangsi
中文文本相似度计算器
简体中文 | 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+不再支持文本聚类(如果还有人需要的话请联系我,我会另开一个包)
其他链接
- 在线计算文本计算器: https://kiwirafe.com/xiangsi
- PyPI: https://pypi.org/project/xiangsi/
- Github: https://github.com/kiwirafe/xiangsi
- 下载数量: https://pepy.tech/project/xiangsi
- Gitee(中国开源): https://gitee.com/kiwirafe/xiangsi
- 关于算法的其他链接: https://github.com/kiwirafe/xiangsi/blob/master/REFERENCE
Metadata
Release files for xiangsi 4.2.3
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| xiangsi-4.2.3.tar.gz | 11.0 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| xiangsi-4.2.3-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 20.6 kB
Release files / xiangsi-4.2.3.tar.gz
| Download URL | xiangsi-4.2.3.tar.gz |
|---|---|
| Size | 11.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
012572beea6b250e2dcc8b1b8b73793b244678b17de44039acf91878f6acf79a
|
|
BLAKE2b-256 checksum How to use checksums |
2ae0e8fc9282d3dc48c235b2ed0dd8f43613140ca20e1009c8dbe68134f9a893
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/5.1.1 CPython/3.8.4
|
Release files / xiangsi-4.2.3-py3-none-any.whl
| Download URL | xiangsi-4.2.3-py3-none-any.whl |
|---|---|
| Size | 9.5 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
1ec27797cdf125c3ff82345b73792498d249fe73e25612af0e3737199dbd0548
|
|
BLAKE2b-256 checksum How to use checksums |
e94d4330b464d688fe742369178b6abbc6e700d24e12ed7796e5a5ae8e7a8f61
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/5.1.1 CPython/3.8.4
|