机器学习
机器学习是一种人工智能,它允许软件应用程序从数据中学习,并在无需人工干预的情况下更准确地预测结果。
这是一个允许机器从示例和经验中学习的概念,而且无需明确编程。为了实现这一点,我们今天有很多可用的机器学习框架。机器学习算法是普通算法的演进。它们允许程序自动从您提供的数据中学习,从而使您的程序更智能。
scikit-learn
网址:https://scikit-learn.org/stable/index.html
简介
scikit-learn包含多种有用的工具:分类、回归和聚类模型,以及预处理、降维和评估工具,是一个建立在 NumPy 之上的通用机器学习库,是 Python 中用于构建传统模型的库。
Tensorflow
网址:https://www.tensorflow.org/
简介
TensorFlow (TF) 是来自 Google 的端到端机器学习框架,可让您执行极其广泛的下游任务。随着TF2.0及更高版本,更高的效率和便利性被带到了比赛。
keras
网址:https://keras.io/
简介
Keras建立在 TensorFlow 之上,是基于 Tensorflow 构建的高级 API,这使其成为用于深度学习目的的包装器。它非常易于使用且易于上手。一个可靠的资产是它的神经网络模块模块化以及它是用 Python 编写的,这使得它易于调试。
pytorch
网址:https://pytorch.org/
简介
PyTorch是 TensorFlow 的直接竞争对手,由 Facebook 开发,广泛用于研究项目。它允许几乎无限的定制,并且非常适合在 GPU 上运行张量操作(实际上,TensorFlow 也是如此)。
十大流行框架
TensorFlow
Theano
Scikit-learn
Caffe
H20
Amazon Machine Learning
Torch
Google Cloud ML Engine
Azure ML studio
Spark ML lib
相关简介(包含教程):https://medium.com/edureka/top-10-machine-learning-frameworks-72459e902ebb
框架选择
对于数据分析,我们选择基于 Python 的框架是因为 Python 的简单性以及其庞大的社区和可用的支持工具。
机器学习框架是一个接口、库或工具,允许开发人员轻松构建机器学习模型,而无需深入底层算法。
最终用于执行任务的框架和模型应该取决于该任务的性质
如果你想预测人们对电影评论的看法,那么使用 Keras 或 PyTorch 的深度学习方法是有意义的
如果你想预测未来 NBA 比赛门票的价格,那么你只需要 scikit-learn 处理结构化数据的能力
如果您从事学术研究并想深入研究复杂的建模,那么 TF 和 PyTorch 是合适的。
从简单入手
从简单开始是熟练学习曲线的关键。然后,您将利用您的基本知识并探索其他模型、调整参数,并可能转向更复杂和更具挑战性的事情。可以先从scikit-learn入手。
相比之下,从实现端到端 TensorFlow 或 PyTorch 模型开始可能会有点棘手,而且一开始可能会让人不知所措。
不要全部学习
这一点似乎很明显,但请相信我,初学者通常认为他们需要彻底检查每个框架的源代码才能被聘为 ML 工程师或数据科学家。用太多信息淹没你的大脑可能会阻碍你解决问题的能力,这不是我们想要的,是吗?
花时间的一种更有趣的方式是学习基本概念,这将帮助您更好地了解您应该熟悉框架的哪些特定部分以解决您的问题。例如,您有时会使用scikit-learn 的度量函数来评估模型的性能,但这并不意味着您应该熟记所有可用的度量函数才能做好事。
在致力于深入学习机器学习框架之前,探索并权衡您的选择,您可能会对其他可用的框架感到惊讶。
不必担心无法立即获得令人惊叹的最新成果。注意您的学习曲线,并享受发现的乐趣。
永远不要把两件事半途而废。专注一件事。保证自信地使用任何一个提到的框架都是一种宝贵的资产,没有必要知道一切来解决问题。