开发者弹药库升级 推荐五个机器学习框架

开发 前端 机器学习
你可能没听过它们,但从今天起或许会考虑上手。

业内知名数据科学网站 KDnuggests,昨日评选出了四月份“你不可忽视的五个机器学习项目”。

你可能没听过它们,但今天或许会考虑上手。至于那些不同生态、不同编程语言的工具——对于高手而言,即便没有使用需求,借鉴它们的代码执行也能为自己的产品开发带来许多灵感。

1. Scikit-plot

一帮缺乏艺术细胞的数据科学家,在某年某月某天突然心怀恐惧地意识到:可视化是数据科学最关键的东西之一,而不仅仅是一个加分项。

这就导致了 Scikit-plot 的诞生。

开发者弹药库升级 推荐五个机器学习框架

KDnuggests 副主编 Matthew Mayo 表示:“我注意到 Scikit-plot,是因为在 Reddit 上看到了它的作者的发帖,随后几乎立刻便上了手。”

该项目旨在为 Scikit-learn 用户提供一系列标准、实用的图表。这包括:

  • Elbow plots
  • Feature importance graphs
  • PCA projection plots
  • ROC curves
  • Silhouette plots

Scikit-plot 库有两个 API,其中一个与 Scikit-learn 紧密整合,以控制对其 API 的调用(Factory API)。另一个更传统(the Functions API)。但无论哪个都应当足够你使用。

它的快速上手指南在这里。

2. Scikit-feature

Scikit-feature 是 Python 的开源特征选取资源库,由亚利桑那州立大学的数据挖掘&机器学习实验室开发。它基于 scikit-learn、Numpy 以及 Scipy。Scikit-feature 内置约 40 个常见特征选取算法,包含传统算法以及一些结构式、流式的特征选取算法。

所有的特征选取方案,都有一个共同目标:找出多余、不相关的特征。这是一个相当热门的研究领域,对此有无数算法。

Scikit-feature 既适用于实用特征选取工程,也适合做算法研究。查看它支持的算法列表请点击这里。

一名为 Rubens Zimbres 的数据科学家曾如是说:

  • “在积累了经验,尝试了堆叠神经网络、并行神经网络、asymmetric configs、简单的神经网络、多层、dropout、激活函数等各种东西之后,我得出了一个结论:论效果,什么都比不上好的特征选取。”

3. Smile

Smile (Statistical Machine Intelligence and Learning Engine) 是一个快速、全面的机器学习系统。受益于先进的数据结构与算法,Smile 有最***的性能。

Smile 覆盖了机器学习的方方面面,包括分类、回归、聚类、关联规则挖掘、特征选取、流形学习(manifold learning,)、多维尺度分析(MDS)、遗传算法、missing value imputation、最邻近搜索等等。

开发者弹药库升级 推荐五个机器学习框架

对于使用 Java 和 Scala 的开发者,目前来看,Smile 是最合适的机器学习库。你可以把它看作是一个 JVM Scikit-learn。该项目有非常全面的官方教程,地址: http://haifengl.github.io/smile/。该教程不仅覆盖了 Smile 使用技巧,还是很高质量的机器学习算法入门资料。

如果你用 JVM 开发机器学习,Smile 绝对值得一试。事实上,如果你身在这个生态系统却没听过 Smile,才是一桩奇闻。

4. Gensim

Gensim 是一个针对话题建模、文件索引、在大语料库中进行相似性检索的 Python 算法库。目标受众是自然语言处理和信息检索社区。

Gensim 是个以完整性为目标的多面手。其开发团队称,它为“常见算法提供了高效的多核执行,比如 Latent Semantic Analysis (LSA/LSI/SVD), Latent Dirichlet Allocation (LDA), Random Projections (RP), Hierarchical Dirichlet Process (HDP) 或 word2vec 深度学习。”

Gensim 的文件在这里。KDnuggets 以前发过一篇教新手用 Gensim 搞话题建模的教程,请戳这里。

5. Sonnet

[[188711]]

本月初,DeepMind 在官方博客宣布了开源 Sonnet 的消息。雷锋网***时间进行了报道:DeepMind发布Sonnet 帮你用TensorFlow快速搭建神经网络。

DeepMind 在博客中表示:

“对于 TensorFlow 而言,自从其在 2015 年末开源,一个由众多高级算法库组成的多样生态系统,便已围绕着它迅速发展起来。这些高级工具,允许常用任务以更简便、更快的方式完成,极大节省了开发者的时间精力。

作为该生态的新成员,Sonnet 也是如此。它与现有的神经网络算法库有许多共同点,但部分功能专为 DeepMind 的研究需要而设计。”

Sonnet 是基于 TensorFlow 的高级算法库。DeepMind 承认了它与一些现有产品比较类似,但整合了 DeepMind 研究所必须的功能与特性,比如允许特定模块在随机聚集的 Tensor 群组上运行:

“RNN 的状态,最适合于以异构 Tensor 集合来表示,用扁平列表来表示它们很容易会导致错误。Sonnet 提供了处理这些随机等级结构的功能,所以改变你的试验,使用另一种 RNN,并不需要繁冗地修改代码。DeepMind 已经对核心 TensorFlow 做了修改,以更好地支持这一使用情况。”

***,希望本文能够对你产生帮助。让你知道一些此前没听说过的算法库,或者你并没有意识到自己其实需要的功能。

责任编辑:未丽燕 来源: 雷锋网
相关推荐

2015-10-14 17:56:30

2015-03-12 13:53:11

开发者PHP框架PHP

2018-07-25 15:43:27

机器学习框架开发

2019-01-16 18:22:24

机器学习人工智能计算机

2012-02-17 09:21:28

开发

2020-05-29 07:00:00

Python机器学习编程语言

2017-04-10 09:07:47

开发者开发代码

2024-02-28 08:15:38

DevSecOps开发者工具

2014-09-01 09:53:50

Android框架

2012-07-12 11:00:40

2022-07-28 11:33:23

数据分析经验

2013-03-11 11:20:05

2023-05-06 11:54:16

数据经验业务

2024-04-28 12:47:03

数据业务

2018-10-11 10:37:31

JavaScript开源 机器学习

2014-08-18 11:06:47

js框架Node.js

2020-03-17 11:13:21

微软开源框架

2013-09-10 09:35:53

移动开发者全能开发者技能

2018-07-10 08:40:36

JavaScript机器学习框架
点赞
收藏

51CTO技术栈公众号