- 文档
- 知识库
- 机器学习
【免费下载链接】best-of-ml-python
🏆 A ranked list of awesome machine learning Python libraries. Updated weekly.
本篇技术指南以 history/2023-10-26_changes.md 这份周报为骨架,系统解读 best-of-ml-python 项目在该更新周期内的评分升降情况:10 个项目评分上行、10 个项目评分下行。读完本文,你将掌握该项目 project-quality score 的含义与周报的数据来源,能够逐条读懂每个上榜项目的定位、所属生态(PyTorch / TensorFlow / scikit-learn 等)、许可协议与维护状态,并把周报转化为"选库、避坑、跟踪生态"的实操工具。
一、这份周报是什么:best-of-ml-python 的更新机制
best-of-ml-python 是一个按"项目质量评分"排序的机器学习 Python 库精选列表,每周自动更新。其核心数据源是根目录下的 projects.yaml(当前维护 900+ 个开源项目),README.md由生成器根据该 YAML 自动渲染。仓库在config目录中预留了 markdown 头部模板 config/header.md 与底部模板 config/footer.md,而history目录则保存了历次快照数据。
从 projects.yaml 的configuration段可以看到生成规则的关键参数:
configuration: min_stars: 300 # 少于 300 Star 的项目默认不收录 require_github: True # 必须存在 GitHub 仓库 max_trending_projects: 10 # 每次"趋势上升/下降"各最多展示 10 个 allowed_licenses: ["Unlicense", "Apache-2.0", "MIT", "BSD-3-Clause", "BSD-2-Clause", "ISC", "MPL-2.0", "LGPL-2.1"] markdown_header_file: "config/header.md" markdown_footer_file: "config/footer.md" projects_history_folder: "history"history/2023-10-26_changes.md就是该机制每周产出的"变更快照":它只保留相比上一更新周期评分发生显著变化的项目,并分Trending Up与Trending Down两组列出,每组最多 10 个。与它配套的 history/2023-10-26_projects.csv(917 行)则保存了当期全部项目的原始指标快照——Star 数、Fork 数、提交数、PyPI 月下载量、最新版本号、类别等——是周报结论背后的原始数据。周报里看到的"评分上升/下降",其直接依据正是 CSV 中trending列的数值(例如 torchvision 为 -4.0、PyTorch Geometric 为 +3.0,代表与上一期的评分/位次差分)。
二、先读懂符号系统:评分、徽章与状态标记
周报中的每个条目都形如名称 (评分 · Star 数 · 状态) - 一句话定位,后续跟着许可协议链接与框架图标。这些符号的定义在 README.md 的Explanation一节有官方说明:
| 符号 | 含义 |
|---|---|
| 🥇 / 🥈 / 🥉 | 综合项目质量评分的三个档位(金牌 / 银牌 / 铜牌) |
| ⭐ | GitHub Star 数 |
| 💤 | 不活跃项目(6 个月无活动) |
| 💀 | 已停滞项目(12 个月无活动) |
| 📈 / 📉 | 项目评分相比上期上升 / 下降 |
| ➕ | 近期新加入项目 |
| ❗ | 警告(例如许可证缺失或存在风险) |
| 框架小图标 | TensorFlow / PyTorch / scikit-learn / MxNet / Apache Spark / Jupyter / PaddlePaddle / pandas / JAX 关联项目 |
周报开头还分别用一句话说明了两个分组的语义:Trending Up是"相比上次更新,项目质量评分升高(可能源于下载量或代码活跃度上升)"的项目;Trending Down则是评分降低(可能源于下载量或代码活跃度下降)的项目。也就是说,这个"趋势"不是功能层面的"变好/变坏",而是社区热度与工程活跃度的量化信号。
三、Trending Up:本周评分上升的 10 个项目
本周评分上行榜覆盖图神经网络、人脸分析、地理编码、可视化、语音、基因变异检测等方向,呈现明显的"图学习 + 视觉 + 数据工程工具"组合特征。
3.1 图神经网络双雄:PyTorch Geometric 与 torch-cluster
- PyTorch Geometric(🥇38 · ⭐ 19K · 📈)— Graph Neural Network Library for PyTorch,MIT 许可,PyTorch 关联项目。CSV 快照显示其当期 Star 为 18,772,属
graph类别,PyPI 包名为torch-geometric,当期最新版本为 2.4.0(2023-10-12 发布),月下载量约 20.5 万。 - torch-cluster(🥈24 · ⭐ 710 · 📈)— PyTorch Extension Library of Optimized Graph Cluster Algorithms,MIT 许可,PyTorch 关联项目。CSV 显示其 PyPI 包名为
torch-cluster,Conda 包为pytorch_cluster,当期版本 1.6.3,Star 706。
这两个项目同属graph类别(见 projects.yaml 中category: graph的定义:"Libraries for graph processing, clustering, embedding, and machine learning tasks")。PyTorch Geometric 是高层图神经网络库,torch-cluster 则提供其底层依赖的优化聚类/邻居采样算子(如knn_graph、radius_graph等 C++ 扩展),两者一并上行,说明以 PyTorch 为底座的 GNN 生态在本周期获得整体热度抬升。搭配同属图类别的 PyTorch-BigGraph(见下文)使用,可覆盖"图聚类算子 → GNN 模型 → 大规模图嵌入"的完整链路。
3.2 人脸与生物信息:InsightFace、DeepVariant
- InsightFace(🥈37 · ⭐ 19K · 📈)— State-of-the-art 2D and 3D Face Analysis Project,MIT 许可,MxNet 关联项目。CSV 显示其当期 Star 18,638,属
image类别,最新发布 0.7.3。它在 projects.yaml 中带labels: ["mxnet"],是该榜单中少数基于 MxNet 生态的视觉项目。 - DeepVariant(🥉27 · ⭐ 2.9K · 📈)— 使用深度神经网络从下一代 DNA 测序数据中调用基因变异的分析流水线,BSD-3 许可,TensorFlow 关联项目。CSV 显示其属
medical-data类别,当期版本 1.6.0,通过 bioconda 渠道分发(bioconda/deepvariant)。
这两个项目分属image与medical-data类别,代表了"视觉分析"与"基因组学"两个领域的工程化成熟度上升——前者是工业级人脸识别方案,后者是 Google 出品的临床级变异检测工具。
3.3 数据可视化与地理编码:HoloViews、geopy
- HoloViews(🥈35 · ⭐ 2.5K · 📈)— "With Holoviews, your data visualizes itself",BSD-3 许可,Jupyter 关联项目。CSV 显示其当期 Star 2,505,属
data-viz类别,版本 1.18.0(2023-10-23 发布),并有 npm 侧配套包@pyviz/jupyterlab_pyviz支持 JupyterLab 集成。 - geopy(🥈36 · ⭐ 4.1K · 📈)— Geocoding library for Python,MIT 许可。CSV 显示其当期 Star 4,109,属
geospatial-data类别,版本 2.4.0,PyPI 月下载量约 417 万,是本期上行榜中下载量最大的数据工程类工具。
两者分别对应 README.md 中的Data Visualization与Geospatial Data两个分类。HoloViews 的定位是"声明式地把数据映射为可视化对象、再由后端(Bokeh/Matplotlib/Plotly)渲染",而 geopy 则是封装 Nominatim、Google、Bing 等地理编码服务的通用客户端。它们的评分上行更多源于稳定的下载量与持续维护,而非版本大更新。
3.4 语音、图嵌入与模型评估:DeepSpeech、PyTorch-BigGraph、sklearn-evaluation、Headliner
- DeepSpeech(🥈34 · ⭐ 23K · 💀 · 📈)— 开源嵌入式(离线、端侧)语音转文本引擎,MPL-2.0 许可,TensorFlow 关联项目。这是本期的一个"矛盾体":评分上行但带 💀 标记。CSV 显示其最近提交停留在 2021-11-17,最新发布 0.9.3(2020-12-10),且当期快照中
show字段为False。可见"评分上行"更多来自历史下载与依赖惯性(PyPI 包deepspeech仍有一定月下载),而非代码活跃——这正是"评分≠维护活跃度"的典型例证。 - PyTorch-BigGraph(🥈24 · ⭐ 3.3K · 📈)— 从大规模图结构数据生成嵌入(embedding),BSD-3 许可,PyTorch 关联项目。CSV 显示其当期 Star 3,296,属
graph类别,PyPI 包torchbiggraph最新版本停留在 1.0.0(2019-10-14)。它适合为知识图谱/社交网络类数据做分布式嵌入训练。 - sklearn-evaluation(🥉18 · ⭐ 360 · 💤 · 📈)— "Machine learning model evaluation made easy: plots, tables, HTML reports, experiment tracking",MIT 许可,scikit-learn 关联项目。CSV 显示其属
interpretability类别,版本 0.12.0。它把混淆矩阵、ROC/PR 曲线、分类报告等评估产物封装成一键输出的图表与 HTML 报告,是 scikit-learn 工作流中低成本的评估增强工具。 - Headliner(🥉14 · ⭐ 230 · 💀 · 📈)— Easy training and deployment of seq2seq models,MIT 许可。CSV 显示其属
nlp类别,Star 231,最新发布 1.0.2(2020-01-24),最近提交停在 2020-02。与 DeepSpeech 类似,它是"评分上行但项目本身已停更"的遗留项目,实际选型时需重点甄别。
四、Trending Down:本周评分下降的 10 个项目
下行榜呈现出与上行榜不同的画像:头部依然是 PyTorch 官方工具链,腰部则集中了大量已停更(💀)或休眠(💤)的"考古级"项目。
4.1 PyTorch 官方视觉与 NLP 工具链:torchvision、torchtext
- torchvision(🥇38 · ⭐ 15K · 📉)— Datasets, Transforms and Models specific to Computer Vision,BSD-3 许可,PyTorch 关联项目。CSV 快照显示当期 Star 14,707,属
image类别,版本 0.16.0(2023-10-04),PyPI 月下载量约 915 万,trending列为 -4.0。 - torchtext(🥈29 · ⭐ 3.4K · 📉)— Models, data loaders and abstractions for language processing, powered by PyTorch,BSD-3 许可,PyTorch 关联项目。CSV 显示当期 Star 3,386,属
nlp类别,版本 0.16.0,trending列为 -4.0。
这两个项目是本期下行幅度最大的头部项目(评分 -4.0)。原因可从 CSV 数据侧面推断:二者当期recent_commit_count较低(torchtext 最近提交周期内仅 4 次),且 torchtext 在 0.16.0 后进入架构调整期。它们的绝对热度依然很高(月下载量百万级),评分下行反映的是"与自身历史高点相比"的相对收缩,而非被弃用。这正是周报的用法之一:头部项目出现 📉 时,先看绝对指标,再判断是否影响选用决策。
4.2 可视化与数据工程:PyQtGraph、agate
- PyQtGraph(🥈32 · ⭐ 3.4K · 📉)— Fast data visualization and GUI tools for scientific / engineering applications。周报中标记为
❗Unlicensed(无许可证),CSV 当期 Star 3,436,属data-viz类别,trending列为 -3.0。它是面向科学/工程实时曲线绘制的 Qt 系可视化库,与 README.md 中 Data Visualization 分类下的 Matplotlib、Plotly、Bokeh 等构成不同技术路线。 - agate(🥈32 · ⭐ 1.1K · 📉)— A Python data analysis library that is optimized for humans instead of machines,MIT 许可。CSV 当期 Star 1,148,属
others类别,PyPI 月下载量约 429 万,trending列为 -3.0。它以"人类可读"为设计目标,强调 CSV/JSON 数据的链式、可打印分析 API。
4.3 停更/休眠项目的集中下探:english-words、polyglot、EfficientNet-PyTorch、DeepMatcher、scikit-rebate、backprop
下行榜后半段几乎被状态不佳的项目占据,是"选型避坑"价值最集中的部分:
| 项目 | 评分 | Star | 状态 | 许可 | 类别 | 定位 |
|---|---|---|---|---|---|---|
| english-words | 🥉24 | 9.4K | 💤 | Unlicense | nlp | 含 47.9 万英文单词的文本文件,供补全/词典类项目使用 |
| polyglot | 🥉23 | 2.2K | 💀 | ❗Unlicensed | nlp | 多语言 NLP 处理工具包 |
| EfficientNet-PyTorch | 🥉22 | 7.6K | 💀 | Apache-2.0 | pytorch-utils | PyTorch 版 EfficientNet/EfficientNetV2 实现 |
| DeepMatcher | 🥉17 | 510 | 💀 | BSD-3-Clause | nlp | 实体/文本匹配的深度学习库 |
| scikit-rebate | 🥉16 | 390 | 💀 | MIT | others | scikit-learn 兼容的 Relief 特征选择算法套件 |
| backprop | 🥉9 | 240 | 💀 | ❗Unlicensed | model-serialisation | 简化 SOTA 模型的使用、微调与部署 |
从 CSV 快照可精确看到这些项目的停滞程度:EfficientNet-PyTorch 最近提交停在 2021-04-15、DeepMatcher 停在 2021-06-13、polyglot 停在 2020-09-22、backprop 停在 2021-05-03、scikit-rebate 停在 2021-02-15;english-words 属于"纯数据文件"型仓库,最近更新在 2022-11,带 💤 标记。对这些项目,周报中的 💀/💤 标记应被当作比评分更重要的信号:评分可能仍受历史下载量支撑(例如 scikit-rebate 的skrebate仍由 PyPI 分发),但若项目已停更,生产环境选用前必须评估安全补丁与框架兼容风险。
五、交叉视角:从本期数据能读出什么
将changes.md与projects.csv叠加,可得到几条值得记录的结构性观察(均为基于仓库数据的推断,供参考):
- PyTorch 生态内部"涨跌互现":图学习(PyTorch Geometric、torch-cluster、PyTorch-BigGraph)上行,而官方视觉/NLP 工具链(torchvision、torchtext)下行。说明 PyTorch 生态的热度重心在本周期明显向图数据与特定领域倾斜。
- 评分上行≠代码活跃:DeepSpeech、Headliner 均带 💀 标记却出现在上行榜,说明 project-quality score 是下载量、依赖数、GitHub 指标等的复合结果,与维护活跃度解耦。解读周报时必须同时看状态标记(💤/💀)与 CSV 中的
last_commit_pushed_at。 - 许可风险会被显式标注:PyQtGraph(❗Unlicensed)、polyglot(❗Unlicensed)、backprop(❗Unlicensed)在下行榜中出现,配合 projects.yaml 中
allowed_licenses白名单机制,说明该榜单对许可证合规有明确把关,选型时对 ❗ 标记项目应谨慎。 - 领域分布印证分类体系:20 个趋势项目覆盖了 README.md 的 34 个分类中的约 10 个(graph、image、nlp、data-viz、audio、geospatial-data、medical-data、pytorch-utils、interpretability、others、model-serialisation),说明每周趋势并非集中于单一热点,而是全生态的量化扫描。
六、如何把这份周报用起来
- 定位候选库:当你在某个分类(如 graph、nlp)有选型需求时,先翻对应周期的
changes.md看哪些项目在上行,再用配套projects.csv核对 Star 数、月下载量、最近提交时间、最新版本与许可证,做出综合判断。 - 甄别维护健康度:优先选择"评分高 + 无 💤/💀 + 最近提交时间较新"的组合;对 💀 项目除非有明确理由(如仅作参考实现),否则谨慎引入生产依赖。
- 跟踪生态迁移:连续多期观察
trending列的方向性变化,可以发现框架生态的热点迁移(例如本期图学习集群的整体上行),辅助技术选型的长期决策。 - 对照源码验证:周报描述的项目定位可以在 projects.yaml 的
description字段与对应 GitHub 仓库 README 中进一步核实;CSV 中的版本号与下载量数据则是评估成熟度的直接证据。
结语
history/2023-10-26_changes.md 看似只是一份 20 行的升降榜单,但配合 history/2023-10-26_projects.csv 与 projects.yaml 的生成配置,它实际上是一份"全生态热度雷达图":评分是复合信号,状态标记是健康度,许可与框架标签是合规与生态归属。掌握本文的符号系统与数据来源后,你可以把每一期周报都变成可执行的选型情报,而不是停留在"谁涨谁跌"的表层。
- 文档
- 知识库
- 机器学习
【免费下载链接】best-of-ml-python
🏆 A ranked list of awesome machine learning Python libraries. Updated weekly.
相关推荐
best-of-ml-python 每周趋势报告解读:2022-04-21 期 Python 机器学习开源项目升降榜分析
best of ml python 每周趋势报告解读:2022 04 21 期 Python 机器学习开源项目升降榜分析 本篇技术指南以 history/202
文档知识库机器学习Weave Router 切模 handover 机制全解析:如何给 prompt cache miss 成本封顶
Weave Router 切模 handover 机制全解析:如何给 prompt cache miss 成本封顶 Weave Router 是一个面向 Age
文档知识库机器学习Leaflet WMS 图层接入与识别实战:从 WMSTileLayer 到增强插件 leaflet.wms
Leaflet WMS 图层接入与识别实战:从 WMSTileLayer 到增强插件 leaflet.wms Web Map Service(WMS)是 GIS
文档知识库机器学习
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考