第4章 猫和狗

在第2章中,我们构建了一个简单的神经网络用于字符识别,并最终取得了85%左右的准确率。

在本章中,我们将利用更强大的网络架构来改进之前的分类器;然后,将深入研究一个更加困难的问题:处理CIFAR-10数据集中的彩色图像。这些图像非常复杂(包含猫、狗、飞机等),需要我们引入更强大的工具:卷积神经网络。

针对第2章使用的notMNIST数据集,本章我们将开始逐步改善所使用的技术。读者可以在学习本章过程中逐步编写代码,或者直接使用本书代码库中的代码(第2章的training文件)。

首先,导入下面的工具包。

import sys, os
import tensorflow as tf
sys.path.append(os.path.realpath('../..'))
from data_utils import *
from logmanager import *
import math

此处虽然并没有太大的变化,但是真正的“利器”已经通过tensorflow包导入。你可能会注意到,我们再次使用了之前创建的data_utils,但是需要做一些修改。

与之前唯一的区别是math包,我们将使用其中的一些数学函数,例如ceiling

之前的程序配置如下所示。

batch_size = 128
num_steps = 10000
learning_rate = 0.3
data_showing_step = 500

但是这次我们需要更多的配置。下面是将要使用的配置。

batch_size = 32 num_steps = 30000 learning_rate = 0.1 data_showing_step = 500 model_saving_step ...

Get TensorFlow机器学习 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.