
174
|
第
9
章
除了“Model Maker 和 Cloud AutoML”这两种制作模型的方法(主要涉及你避免编写代
码并让 API 为你训练模型)之外,还有第三种方法值得探索,你必须在其中进行一些编
码,但 ML 模型主要由其他人创建,你可以通过迁移学习利用他们的架构。
9.3
使用
TensorFlow
和迁移学习创建模型
如前所述,迁移学习的概念可以支持机器学习模型的快速发展。这个概念是使用在类似
问题上训练过的神经网络部分,然后针对你自己的场景覆盖它们。例如,EfficientNet 模
型架构是为 ImageNet 场景设计的,该场景有 1000 类图像,它在数百万张图像上进行了
训练。为自己训练这样一个模型的资源在时间和金钱上都非常昂贵。当在如此大的数据
集上训练模型时,它可以成为非常有效的特征选择器。
这意味着什么?简而言之,典型的计算机视觉神经网络使用所谓的卷积神经网络(CNN)
架构。CNN 由许多滤波器组成,一旦滤波器应用于图像,它就会对其进行转换。随着
时间的推移,CNN 将学习到有助于区分图像的滤波器。例如,图 9-12 显示了来自猫与
狗分类器的图像示例,该示例说明了 CNN 用于区分这些类型动物之间差异的图像区域。
很明显,在这种情况下,学习到的滤波器决定了狗的眼睛是什么样子的,而其他滤波器
则决定了猫的眼睛的样子。在网络中的所有滤波器中,决定图片中的内容可能就像这些
滤波器显示某些内容的结果一样简单。
图
9-12
:
CNN
滤波器激活不同图像中不同区域的示例
因此,对于现有的网络 ...