model
import numpy as np
import tensorflow as tf
NUM_CLASSES = 10
class FireModule(tf.keras.layers.Layer):
def __init__(self, s1, e1, e3):
super(FireModule, self).__init__()
self.squeeze_layer = tf.keras.layers.Conv2D(filters=s1,
kernel_size=(1, 1),
strides=1,
padding="same")
self.expand_1x1 = tf.keras.layers.Conv2D(filters=e1,
kernel_size=(1, 1),
strides=1,
padding="same")
self.expand_3x3 = tf.keras.layers.Conv2D(filters=e3,
kernel_size=(3, 3),
strides=1,
padding="same")
def call(self, inputs, **kwargs):
x = self.squeeze_layer(inputs)
x = tf.nn.relu(x)
y1 = self.expand_1x1(x)
y1 = tf.nn.relu(y1)
y2 = self.expand_3x3(x)
y2 = tf.nn.relu(y2)
return tf.concat(values=[y1, y2], axis=-1)
class SqueezeNet(tf.keras.Model):
def __init__(self):
super(SqueezeNet, self).__init__()
self.conv1 = tf.keras.layers.Conv2D(filters=96,
kernel_size=(7, 7),
strides=2,
padding="same")
self.maxpool1 = tf.keras.layers.MaxPool2D(pool_size=(3, 3),
strides=2)
self.fire2 = FireModule(s1=16, e1=64, e3=64)
self.fire3 = FireModule(s1=16

该文展示了如何用TensorFlow构建SqueezeNet卷积神经网络模型,并详细描述了数据预处理、训练集和测试集的构建过程。模型在特定数据集上进行训练,测试集准确率约为72%-79%。
最低0.47元/天 解锁文章
179

被折叠的 条评论
为什么被折叠?



