副标题[/!--empirenews.page--]
- 本文将介绍21个你可能没使用过的机器学习开源工具。
- 每个开源工具都为数据科学家处理数据库提供了不同角度。
- 本文将重点介绍五种机器学习的工具——面向非程序员的工具(Ludwig、Orange、KNIME)、模型部署(CoreML、Tensorflow.js)、大数据(Hadoop、Spark)、计算机视觉(SimpleCV)、NLP(StanfordNLP)、音频和强化学习(OpenAI Gym)。
你肯定已经知道一些知名的开源工具,如R、Python、Jupyter笔记本等。但除此之外,还有一个世界——一个在雷达下机器学习工具存在的世界。它们虽没有那些知名的开源工具出色,但却可以帮助用户解决许多机器学习的任务。
开源机器学习工具可分为以下5类:
1. 面向非程序员的开源机器学习工具
对于没有编程背景和技术背景的人来说,机器学习似乎很复杂。这是一个广阔的领域,可以想象,初次接触机器学习有多令人害怕。一个没有编程经验的人能在机器学习领域获得成功吗?
事实证明,能获得成功!以下三种工具可以帮助非程序员跨越技术鸿沟,进入声名鹊起的机器学习世界:
- Uber Ludwig:Uber’s Ludwig是一个建立在TensorFlow上的工具箱。Ludwig允许用户训练和测试深度学习模型,而不需要编写代码。用户需要提供的只是一个包含数据的CSV文件,一个用作输入的列表,以及一个用作输出的列表——而剩下工作将由Ludwig来完成。它对实验非常有用,因为用户只需耗费很少的时间和精力,就能构建复杂的模型。并且用户可以对其进行调整和处理之后再决定是否要将其运用在代码中。
- KNIME:KNIME可供用户使用拖放界面创建整个数据科学工作流。用户可以基本实现从功能工程到功能选择的所有功能,甚至可以通过这种方式将预测机器学习模型纳入工作流程中。这种可视化执行整个模型工作流的方法非常直观,并且在处理复杂的问题时非常有用。
- Orange:用户不必知道如何编写代码以使用orange来挖掘数据、处理数字以及由此得出自己的见解。相反,用户可执行基本可视化、数据操作、转换和数据挖掘等任务。由于Orange的易用性及其添加多个附加组件以补充其功能的能力,该工具最近在学生和教师中十分流行。
还有许多更有趣、免费的开源软件可以提供很好的机器学习功能,而无需编写(大量)代码。
此外,一些付费服务也可以考虑,如Google AutoML、 Azure Studio、 Deep Cognition和 Data Robot.
2. 旨在部署模型的开源机器学习工具
部署机器学习模型是一个十分重要但最容易被忽视的任务,用户应该加以注意。它肯定会出现在面试中,所以用户需很好地了解这个话题。
以下四种工具可以使用户更易将其项目运用到现实设备上。
- MLFlow: MLFlow旨在与机器学习库或算法配合使用,并管理包括实验、再验和机器学习模型部署在内的整个生命周期。目前,MLFlow在Alpha中有3个部分——跟踪、项目和模型。
- Apple’s CoreML: CoreMLl是一个十分受欢迎的工具,它可将机器学习模型内置到用户的iOS/Apple Watch/Apple TV/MacOS的应用程序中。CoreML的闪光点在于用户无需对神经网络或机器学习有广泛的了解,最终达到双赢的结果!
- TensorFlow Lite: TensorFlow Lite是一套帮助开发人员在移动设备(Android和iOS)和物联网设备上运行TensorFlow模型的工具,旨在方便开发人员在网络“边缘”的设备上进行机器学习,而不是从服务器来回发送数据。
- TensorFlow.js :TensorFlow.js是用户在网上部署机器学习模型的首选。这是一个开放源码库,供用户在浏览器中构建和处理机器学习模型。它可为GPU加速,还自动支持WebGL。用户可以导入现有的预培训模型,也可以在浏览器上重新处理整个现有机器学习模型!
3. 大数据开源机器学习工具
大数据是一个研究如何进行分析、如何系统地从数据集中提取信息或以其他方式处理传统数据处理软件无法处理的太大或太复杂的数据集的领域。想象一下,每天处理数百万条推特进行情绪分析。这感觉像是一项艰巨的任务,不是吗?
放宽心!以下三种工具可以帮助用户处理大数据。
- Hadoop: Hadoop是处理大数据最杰出也是最相关的工具之一。Hadoop允许用户使用简单的编程模型在计算机集群之间对大型数据集进行分布式处理。它旨在对单个服务器到数千台机器,每台机器都提供本地计算和存储。
- Spark: Apache spark被认为在大数据应用程序方面是Hadoop的进阶版。Apache spark的关键在于填补了Apache Hadoop在数据处理方面的空白。有趣的是,Spark可以同时处理批量数据和实时数据。
- Neo4j: 在处理大数据相关问题方面,Hadoop可能不是绝佳的选择。例如,用户需要处理大量的网络数据或图形相关问题(如社交网络或人口统计模式等)时。而图形数据库(Neo4j)则是最佳选择。
(编辑:宜春站长网)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|