Apple的Core ML和Vision框架已经让开发人员进入了一个勇敢的机器学习新世界,并带来了令人兴奋的可能性。Vision允许您检测和跟踪面部,Apple的机器学习页面提供了可立即使用的模型,可以检测对象和场景,以及NSLinguisticTagger
自然语言处理。如果您想构建自己的模型,请尝试使用Apple的新Turi Create来扩展其预先训练的模型之一。
为什么要使用Keras?
ML模型涉及许多复杂的代码,操纵数组和矩阵。但ML已经存在了很长时间,研究人员已经创建了库,使像我们这样的人更容易创建ML模型。其中许多是用Python编写的,尽管研究人员还使用R,SAS,MATLAB和其他软件。但您可能会在基于Python的工具中找到所需的一切:
- scikit-learn提供了一种运行许多经典ML算法的简便方法,例如线性回归和支持向量机。我们的初学机器学习与scikit-learn教程向您展示如何训练这些。
- 另一方面是PyTorch和Google的TensorFlow,它可以让您更好地控制深度学习模型的内部工作。
- 微软的CNTK和Berkeley的Caffe是类似的深度学习框架,它们使用Python API来访问他们的C ++引擎。
那么Keras在哪里适合?这是TensorFlow和CNTK的包装,亚马逊的MXNet即将推出。(它也与Theano合作,但蒙特利尔大学于2017年9月停止了这项工作。)它提供了一个易于使用的API,用于构建模型,您可以在一个后端训练,并在另一个后端部署。
使用Keras而不是直接使用TensorFlow的另一个原因是coremltools
包括Keras转换器,但不包括TensorFlow转换器 - 尽管存在TensorFlow到CoreML转换器和MXNet到CoreML转换器。虽然Keras支持CNTK作为后端,但coremltools
仅适用于Keras + TensorFlow。
代码:https://www.raywenderlich.com/188-beginning-machine-learning-with-keras-core-ml