1作者: hassonofer5 个月前原帖
我在纯 PyTorch 中构建了一个小型的自包含 K-Means 实现:<a href="https:&#x2F;&#x2F;gitlab.com&#x2F;hassonofer&#x2F;pt_kmeans" rel="nofollow">https:&#x2F;&#x2F;gitlab.com&#x2F;hassonofer&#x2F;pt_kmeans</a> 我在进行数据集采样和近似最近邻搜索时,尝试了几种现有的大规模 K-Means 库。可是我找不到一个既快速又简单,并且能够在我的工作站上顺畅运行而不受内存限制的解决方案。也许我错过了某个现有的解决方案,但最终我写了一个符合我需求的实现。 核心思路:将数据保留在 CPU 上(因为那里有更多的内存),并在迭代步骤中智能地将必要的数据块移动到 GPU 进行计算。结果总是返回到 CPU 以便进行简单的后处理。 (注意:在 GPU 上计算 K-Means++ 初始化时,完整数据集仍需适配于 GPU。) 它提供了一些实用功能: ``` - 分块计算:通过仅将必要的数据块移动到 GPU,进行内存高效的大数据集处理,防止内存溢出错误 - 聚类拆分:通过将单个聚类拆分为多个子聚类来细化现有聚类 - 零依赖:单文件实现,仅需 PyTorch。可以直接复制粘贴到任何项目中 - 高级聚类:支持可选重采样的层次 K-Means(遵循最新研究),聚类拆分工具 - 设备灵活性:显式设备控制 - 数据可以存放在任何地方,计算在您指定的地方进行(任何 PyTorch 支持的加速器) ``` 未来计划: ``` - 添加对内存映射文件的支持,以处理更大的数据集 - 探索 PyTorch 分布式以实现多节点 K-Means ``` 该实现处理 L2 和余弦距离,并包含 K-Means++ 初始化。 可通过 PyPI 安装(`pip install pt_kmeans`),完整实现可在这里找到:<a href="https:&#x2F;&#x2F;gitlab.com&#x2F;hassonofer&#x2F;pt_kmeans" rel="nofollow">https:&#x2F;&#x2F;gitlab.com&#x2F;hassonofer&#x2F;pt_kmeans</a> 希望能收到对该方法的反馈,以及任何我可能遗漏的用例!
1作者: jakubdudek5 个月前原帖
嗨,HN, 我开发了Pollar,这是一个为波兰提供的人工智能驱动的新闻聚合器。Pollar可以自动完成以下任务,帮助用户避免浏览大量文章的麻烦: - 每几分钟从主要的波兰媒体收集新闻 - 使用嵌入技术将相似的文章归类为一个事件 - 生成简短的AI摘要,让你快速获取关键信息 - 通过简单的颜色编码突出媒体偏见 现在它已经作为网页应用上线,iOS和Android应用也即将推出。 我希望能得到你们的反馈,具体包括: - 摘要是否准确且有用 - 偏见标记是否有帮助,还是过于简化 - 有哪些改进可以让它作为日常新闻工具更具价值 谢谢! Jakub
3作者: PAndreew5 个月前原帖
docustore的目标是为大型语言模型(LLMs)提供最新的、现成的、即插即用的上下文,来源于经过精心挑选的框架/SDK列表。它有一个四步流程:抓取文档 - 清理文档 - 向量化 - 打包。我的愿景是将其托管在某个地方,并围绕它开发一个API/MCP,使其与开发环境无关。