数据中心 频道

从小白到入门:用Keras进行图像基础分类

  【IT168 资讯】在这篇文章中,将解释一些在keras中经常需要的常见操作。首先,如何保存模型并使用它们进行预测,从数据集中显示图像并从加载系统中图像并预测其类别。

Keras快速上手!进行图像的基础分类

  如果你还没有这样做,可以启动你的IDE跟着文章,一起来操作。

  保存模型

  训练模型是一个非常缓慢的过程,没有人希望每次都这样做,幸运的是,我们只需要训练我们的模型一次,保存,然后就可以随时加载,并用它来预测新的图像。

  Keras将模型保存为h5格式,所以如果你在发布的第一个教程中跳过了h5py的安装,请运行:Keras快速上手!进行图像的基础分类

  我们还需要matplotlib来形象化我们的图像,因此,运行Keras快速上手!进行图像的基础分类

  这是第一个教程的代码:

Keras快速上手!进行图像的基础分类

Keras快速上手!进行图像的基础分类

  了保存模型,只需在模型之后添加以下内容。

Keras快速上手!进行图像的基础分类

  推理

  推理是指使用我们的模型预测新图像的过程。

  在你的代码中,标注出Keras快速上手!进行图像的基础分类

  取而代之的是下面的内容。Keras快速上手!进行图像的基础分类

  我们的代码现在是这样的。

Keras快速上手!进行图像的基础分类

Keras快速上手!进行图像的基础分类

  我们在这里所做的是从保存的模型文件中加载模型的参数,评估函数在测试数据集上运行预测,并返回我们预测的准确性。

  到目前为止,已经演示了如何保存模型并稍后使用它们进行预测,然而,这些都是无聊的事情,真正的协议是能够加载一个特定的图像,并确定它属于什么类别。

  第一步是添加下面的代码以获得测试的特定图像的过程。

Keras快速上手!进行图像的基础分类

  这里我们选择一个随机的图像,在这个例子中,从测试集的索引130中,我们创建了一个扁平的副本,它被重新塑造。

  将这个副本加入到我们的模型中,接下来得到预测并打印出来。

  在代码中注释掉model.evaluate,添加上面的代码并运行它。

  你的输出应该是这样的:Keras快速上手!进行图像的基础分类

  现在已经有了预测,我们使用matplotlib来显示图像和它的预测类别。

      这里的重塑操作是必要的,以使matplotlib显示图像

  你的更新代码应该都是这样的  

Keras快速上手!进行图像的基础分类Keras快速上手!进行图像的基础分类

  运行它,得到的输出应该是这个。比较简单,因为已经建立了一个基本的数字识别系统。

  鼓励尝试不同的测试图像索引,可以亲自查看结果如何。

Keras快速上手!进行图像的基础分类

  但是,如果想引入未包含在测试集中的图像,那么请将下面的图像保存到系统中,并将其复制到python文件所在的目录中。

Keras快速上手!进行图像的基础分类

  运行下面的代码

Keras快速上手!进行图像的基础分类

Keras快速上手!进行图像的基础分类

  你可能会注意到这里有一些新东西,首先是从keras.preprocessing导入图像。

  接下来,我们加了

Keras快速上手!进行图像的基础分类

  在第一行中,我们从磁盘加载图像,并指定它应该调整大小为28 x 28 x 1,请记住,这是原始mnist图像的尺寸,所以它的优点就是保持恒定。

  接下来,我们将图像转换为一个像素数组,这就是全部。

  运行它并自己检查结果,查看预测结果是否为3。

0
相关文章