napkinXC是一个用于极端多类和多层次分类的极其简单且快速的库。
项目描述
napkinXC
napkinXC是一个用于极端多类和多层次分类的极其简单且快速的库,专注于实现概率标签树的各种方法。它允许使用最少的资源,仅用几行代码就训练非常大型数据集的分类器。
目前,napkinXC在Python和C++中实现了以下功能
- 概率标签树(PLT)和层次softmax(HSM),
- 不同类型的推理方法(top-k,给定阈值以上等),
- 带有标签权重的快速预测,例如倾向得分,
- 高效的在线F-measure优化(OFO)过程,
- 不同的树构建方法,包括层次k-means聚类方法,
- 树节点的训练
- 支持自定义树结构和节点权重,
- 从XML仓库下载和加载数据的帮助器,
- 性能测量帮助器(precision@k,recall@k,nDCG@k,倾向得分精度@k等)。
请注意,此库仍在开发中,也用作实验的基础。API可能在不同版本之间不兼容,一些实验性功能可能未进行文档说明。如有任何疑问或问题,请毫不犹豫地提出问题!
napkinXC遵循MIT许可协议。欢迎对项目的所有贡献!
Python 快速入门和文档
通过pip安装
pip install napkinxc
我们为许多Linux发行版、macOS和Windows提供了预编译的轮子,适用于Python 3.7及以上版本。如果没有适用于您的操作系统(os)的轮子,它将从源代码快速编译。从源代码编译需要现代C++17编译器、CMake、Git和Python 3.7+已安装。
最新(master)版本可以直接从GitHub仓库安装(不推荐)
pip install git+https://github.com/mwydmuch/napkinXC.git
使用示例
from napkinxc.datasets import load_dataset
from napkinxc.models import PLT
from napkinxc.measures import precision_at_k
X_train, Y_train = load_dataset("eurlex-4k", "train")
X_test, Y_test = load_dataset("eurlex-4k", "test")
plt = PLT("eurlex-model")
plt.fit(X_train, Y_train)
Y_pred = plt.predict(X_test, top_k=1)
print(precision_at_k(Y_test, Y_pred, k=1))
更多示例可以在python/examples目录
下找到,napkinXC的文档可在https://napkinxc.readthedocs.io查看。
可执行文件
napkinXC还可以用作可执行文件,用于使用LIBSVM格式的数据进行模型训练和评估。有关更多详细信息,请参阅文档。
参考文献和致谢
此库实现了以下论文中的方法(有关复现结果的脚本,请参阅experiments
目录)
PLT模型的另一种实现可在extremeText库中找到,该库实现了在NeurIPS论文中描述的方法。
项目详情
下载文件
下载您平台上的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。
源分布
napkinxc-0.6.2.tar.gz (43.6 MB 查看散列值)
构建的分布
napkinxc-0.6.2-cp310-cp310-win_amd64.whl (324.0 kB 查看散列值)
napkinxc-0.6.2-cp39-cp39-win_amd64.whl (324.1 kB 查看哈希值)
napkinxc-0.6.2-cp38-cp38-win_amd64.whl (324.0 kB 查看哈希值)
napkinxc-0.6.2-cp37-cp37m-win_amd64.whl (325.7 kB 查看哈希值)
关闭
napkinxc-0.6.2.tar.gz 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 927766f18fa214d9789901810b28dcce7ea360650229c5438ba17698d1e56868 |
|
MD5 | 501c0327b4690b3777b30bae879a4baf |
|
BLAKE2b-256 | c17633b6e22db312fd2f8105b94382083d023003b44b88fe602b6a5e2df96463 |
关闭
napkinxc-0.6.2-cp310-cp310-win_amd64.whl 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | c5bf60e6ea0cb14935513e57ac76b2aeadb1d0d3a04163692b0a998ff5d0d331 |
|
MD5 | d2f1ca3d46f87ae05a9e44120242fe15 |
|
BLAKE2b-256 | b978831352f1835cfa174d35c9446e1fe91935624abeadcc2847266e0ba09b02 |
关闭
napkinxc-0.6.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | c88f1578d4a5c77243930693ccfbe1fcfa197f19f3e8f4d801785de05e32cb2c |
|
MD5 | a167b54eac6e99992c683cf8a44ad26c |
|
BLAKE2b-256 | 4e31487777c0993e46a104918aeb88a0732e39e3083079c2be10ab8cd188a539 |
关闭
napkinxc-0.6.2-cp310-cp310-macosx_12_0_x86_64.whl 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 2662424ec21b946b4722918e8ab778e5aa4944e7f257aba0883f62db35a9d4fb |
|
MD5 | f7eb5e054edf529f799a206d2a51d298 |
|
BLAKE2b-256 | 9aa3f286bbae2c900a6f1dd89b5a3bf8c098cc85f49b019c20fefb36c6ed3d70 |
关闭
napkinxc-0.6.2-cp310-cp310-macosx_11_0_x86_64.whl 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | be9a3496b0c4c9fec2127767aa87ade9a1cbdf379b0dd768ebaa20638c534f85 |
|
MD5 | f34aae68ec4e1f3c622374d6dbeb68ed |
|
BLAKE2b-256 | 1856034c8ca7828bf528531225a4328c2d8e1f51ca08758014364eb0dd29b5d1 |
关闭
哈希值 用于 napkinxc-0.6.2-cp310-cp310-macosx_10_15_x86_64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 74c2e1c253ea6dcd207600427824a4942984d975ec2e684eb450a8bb265a950c |
|
MD5 | 9ef5d194efa30edf878a45dbaae7f825 |
|
BLAKE2b-256 | 4a9ef3977906e58caf7d7f803e72d97781cdbc1b2b6f84b6a23726abc9d4eeaf |
关闭
哈希值 用于 napkinxc-0.6.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 65f90ff1a91052fc16aefab7e25e473a549c1f127e2790ba3ac79a03ec41dc5e |
|
MD5 | 718c1aa32114392260bebddf07c8a3ca |
|
BLAKE2b-256 | b77ee1edfca4c810907d8d2614d60cfb170ad373ae325417fb47def30a250ac6 |
关闭
哈希值 用于 napkinxc-0.6.2-cp39-cp39-macosx_12_0_x86_64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | abeb2df62590bd39ba572aa9f0156c6a2779757ea1cb1617faf0e6b0aed9aa11 |
|
MD5 | 36da9ca9d54e8ce024ebb2163d0b26ac |
|
BLAKE2b-256 | 7329bb452c30061846bfcbd51433bff2ed970cf5fd8436ce049cafdaea726686 |
关闭
哈希值 用于 napkinxc-0.6.2-cp39-cp39-macosx_11_0_x86_64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | b466d52dac0716ba47f01e66b23f89f138c1dead096415513d8b9514b6c43607 |
|
MD5 | 0398fda7d42310eec3c428822534cc6a |
|
BLAKE2b-256 | 67e70426fb913f9ac294a826856dd975c1f75d911ffde209cb59618e157bcfa5 |
关闭
哈希值 用于 napkinxc-0.6.2-cp39-cp39-macosx_10_15_x86_64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 4ece2378e65802f28db5e7b9878bcc279e5ed31c83aab1d145fc70bfd0ce3daf |
|
MD5 | 86bd940b7eca1fac369d29a62bab572a |
|
BLAKE2b-256 | feec3b054ee58fcbc217f462796101ac2ecd0c4ebd59a31e72c60092f92a1ae0 |
关闭
哈希值 用于 napkinxc-0.6.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | d7bafab04e06e0da759285340a49cd28e12eff0404e441fa0df62185b95838a9 |
|
MD5 | 7a441b7a788eaf8eba35a8e7530f259d |
|
BLAKE2b-256 | 07f0fecffddaf333dac15e6bc88c267265aa4816a0694b51d60adbfb03c17faa |
关闭
哈希值 用于 napkinxc-0.6.2-cp38-cp38-macosx_12_0_x86_64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | eae1e3c622f7102df46252114f476b16ef01c3f972f6ae4a8cdf1654096da24f |
|
MD5 | 2a3775aa1f9253b8a6d1d41ef2f8ce43 |
|
BLAKE2b-256 | 86098f9a7193e6b01bfb7a3c298aee1618d1ed9c69088ed6b98d5079be7ca577 |
关闭
哈希值 用于 napkinxc-0.6.2-cp38-cp38-macosx_11_0_x86_64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 8d204005066b24675669a3dbc6967a531568fdf0b7307e5437307fb9d05ef0bb |
|
MD5 | 21588c89b85352a6b85ea7db49aeef22 |
|
BLAKE2b-256 | 75004cc9ec2a501059d024aa144af2811b4899001208d1b1e9db6efff5b20109 |
关闭
哈希值 用于 napkinxc-0.6.2-cp38-cp38-macosx_10_15_x86_64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 023a93b7d375d9f5c903080b5138e9ac8414b5685c330c4032aac7e0863329f3 |
|
MD5 | d2d065acac5c561a6e13155e9a9420d8 |
|
BLAKE2b-256 | e0d04d55760d8c6486dce8cb26efb54564631a2321a3a8f61697db09c32ea322 |
关闭
哈希值 用于 napkinxc-0.6.2-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | a994232a95327b1d1a3cbf917e517488b2aa2f8e9beabd86d7e208d843b20fa6 |
|
MD5 | fff7dd7f1b109b15e5c25c8cda0ca7c5 |
|
BLAKE2b-256 | c4355667fd3284dedc914bb1f636847adea0ce1426390955b248559f80fc3443 |
关闭
哈希值 用于 napkinxc-0.6.2-cp37-cp37m-macosx_12_0_x86_64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | a18efe11c0994b0141f19e6142e071683b6916a72585797932086d19a1b87c07 |
|
MD5 | ce126eca986c155138303875ce76bd74 |
|
BLAKE2b-256 | cfcc168220bf821cf21caf6b1a957c72ed1f7e3a493c1c4a6c4acb22d2432808 |
关闭
哈希值 用于 napkinxc-0.6.2-cp37-cp37m-macosx_11_0_x86_64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | d702f1883874cbbdfb87027322d0e94c16f58fa37716b8a54b5371984853a1f8 |
|
MD5 | 42fdae1adc35361fc7eb6d601151e033 |
|
BLAKE2b-256 | d6195037e68fc3ebcceb534bbe9ef44e2e3e954b6277809453bbf148049eb19d |
关闭
哈希值 用于 napkinxc-0.6.2-cp37-cp37m-macosx_10_15_x86_64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 0673296670260588f2a4ff89cf97419962d2059b9fd6eb34dccd824a81bafc47 |
|
MD5 | be9a128f8aad0ceffac6e68cb8522241 |
|
BLAKE2b-256 | d69c4d3cffe440af5796f35815f0ecddb2236988ec4409e4b5278121e8fe15ac |