第8章 使用迁移学习完成食物分类

在本章中,我们将使用迁移学习(transfer learning)对食物进行分类。为此,我们为重点关注的印度食品建立了自己的基于TensorFlow的机器学习模型。目前的识别模型有几百万个参数。从头开始训练一个新模型需要大量的时间和数据,同时还需要数百个图形处理单元(Graphical Processing Unit,GPU)或者张量处理单元(Tensor Processing Unit,TPU)运行数小时。

迁移学习使用已经训练好的现有模型,并在新模型上重用它,从而简化了这项任务。在这里的例子中,我们将使用MobileNet模型的特征提取功能,并在此基础上训练自己的分类器。即使不能得到100%的准确率,在很多情况下分类准确率也较高,尤其是在手机上(在手机上不会有大量的资源)。即使没有GPU,也可以在一台普通的笔记本电脑上轻松地训练这个模型几小时。这个模型使用MacBook Pro来构建,它具有2.6GHz的Intel i5处理器和8GB的内存。

本章将介绍以下内容:

  • 迁移学习的基本知识;
  • 训练自己的TensorFlow模型的方法;
  • 创建使用这个模型的iOS应用程序的方法。

 

本章的源代码可以在GitHub网站中找到。

迁移学习是深度学习中最流行的方法之一,在这种方法中,把针对一个任务开发的模型重用到另一个任务的模型中。在这里,如果仅有非常有限的计算资源和时间,那么基于计算机视觉的任务或基于自然语言处理(Natural Language ...

Get 移动端机器学习实战 now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.