从事机器学习方面的工作,不会用工具将极大的阻碍工作效率。但现在工具那么多,我们该如何选择呢?本文针对非开发者、模型部署、NLP、语音、视觉、强化学习、数据挖掘等多个不同人群,提供了10个必须掌握的模型。
短短的5年时间机器的算法水平又提升了100万倍!过去或许只能从1万人中识别出1个人,后来发展到1000万、1亿、10亿甚至20亿人中识别出这个人!与此同时,算力方面提升了10万倍。从过去用1万量级规模的数据做训练,到百万规模的数据做训练,到现在用10亿的数据集做训练,又提升了1万倍!
我们已经深刻的体会到,人工智能的飞速增长刺激了当今就业市场对机器学习技能的巨大需求。机器学习社区现在非常活跃,各种开源工具层出不穷,让人有点目不暇接,有点不知道该如何选择。那么本篇将为你介绍10个最应该了解的机器学习开源工具,走起!
非开发者应该用什么?
不会开发,不会编程,也能用机器学习?答案是可以的,只要你会用工具。这里为初学者推荐两个工具:
Knime
Knime是一款出色的工具,可让你无需编写任何代码即可完成端到端的数据科学工作流程。
它甚至配备了一个拖放式界面,UI清晰,操作简单直观,可以说是懒人福音了。
操作起来非常简单,首先使用该工具进行数据收集和转换;完成后,你可以创建一个模型并将其可视化。在生产方面,你可以部署和管理数据科学项目。
最后,你可以通过使用Knime生成洞察来利用你的实现。
官网:https://www.knime.com/
Uber Ludwig
Uber Ludwig是另一款适合初学者的优秀工具。有了它,你可以快速测试和训练深度学习模型。用户可以选择启用懒人模式(拖拽界面),或者直接操作代码。
使用起来比Knime稍微复杂一点点。需要先加载CSV文件来训练数据。通过使用预先训练的模型,你可以预测输出目标。最后,你可以使用可用的可视化选项可视化你的数据。
如果你是编程的初学者,你还可以在Python中使用他们扩展的API和训练模型。
GitHub地址:https://uber.github.io/ludwig/user_guide/
模型部署用什么工具?
模型部署是机器学习的关键方面之一。为了帮助你完成此过程,这里列出了几个工具。
TensorFlow.js
TensorFlow.js允许你直接从Web构建和部署机器学习模型。它使用JavaScript在Web上运行。
你也可以使用Node.js。有了它,你不仅可以运行现有模型,还可以重新训练现有模型。
它提供了直观的API,允许你使用JavaScript构建和训练模型,在Web浏览器上也是如此。
如果你想在移动设备上进行开发,还可以查看TensorFlow Lite。
官方地址:https://www.tensorflow.org/js/
MLFlow
MLFlow让你可以解决端到端的机器学习生命周期问题。它有三个主要组件。
MLflow跟踪 - 通过记录和比较结果和参数来处理实验
MLflow项目 - 允许你将项目打包成其他成员的可重用表单
MLflow模型 - 帮助你在不同平台中部署和管理ML库
MLFlow的另一个惊人功能是它与库无关。这意味着你可以将其与其他机器学习库一起使用而不会出现任何兼容性问题。为了实现library-agonistic行为,它使用REST API和CLI。
官方地址:https://github.com/databricks/mlflow
NLP、计算机视觉和音频用什么工具?
还有其他方便的工具可用于在机器学习中执行不同的操作。
Detectron
如果你正在寻找最先进的物体检测算法,那么你可以使用Detectron。
它由Facebook开发,是AI Research软件系统的一部分。它利用Caffe2深度学习框架和Python。
官方地址:https://github.com/facebookresearch/Detectron
SimpleCV
SimpleCV,一个开源框架,允许你构建计算机视觉应用程序。它类似于OpenCV,使你可以访问高级计算机视觉库。这意味着你不必担心错综复杂的概念。
有了它,你可以制作计算机视觉项目,而无需在基础知识上投入太多时间。毕竟,出于某种原因,它被命名为SimpleCV。
官方地址:http://simplecv.org/
Tesseract OCR
Tesseract OCR是一款功能强大的光学字符识别软件,可让你识别语言。
它支持100多种语言,也可以编程识别新语言。
官方地址:https://github.com/tesseract-ocr/tesseract
强化学习用什么工具?
如果你想训练智能代理,那么你需要帮助强化学习。
Open AI Gym
Open AI Gym让你训练你的智能体做几乎任何事情,包括散步,玩游戏等等。它借助易于使用的强化学习任务套件来实现。
官方地址:https://gym.openai.com/
Unity ML Agents
Unity ML Agents是Unity提供的开源统一插件,让你开发可在游戏中使用的智能体。
官方网址:https://unity3d.com/machine-learninghttps://unity3d.com/machine-learning
数据挖掘用什么工具?
如果你希望收集数据科学项目的数据,可以使用以下工具。
Weka
Weka用于数据挖掘任务。它借助于为数据挖掘设计的机器学习算法来实现。有了它,你可以找到很多东西,包括分类,准备,回归,聚类,可视化和关联规则挖掘。
该项目是开源的,使用GNU许可。
官方网址:http://www.cs.waikato.ac.nz/ml/weka/
结论
机器学习正在改变我们与世界互动的方式。它使我们的生活更轻松,并确保我们建立一个未来世界。