Aprendizado profundo com Keras - Compilando o modelo

A compilação é realizada usando uma única chamada de método chamada compile.

model.compile(loss='categorical_crossentropy', metrics=['accuracy'], optimizer='adam')

o compilemétodo requer vários parâmetros. O parâmetro de perda é especificado para ter tipo'categorical_crossentropy'. O parâmetro metrics está definido como'accuracy' e finalmente usamos o adamotimizador para treinar a rede. A saída nesta fase é mostrada abaixo -

Agora, estamos prontos para inserir os dados em nossa rede.

Carregando dados

Como disse antes, vamos usar o mnistconjunto de dados fornecido por Keras. Quando carregamos os dados em nosso sistema, vamos dividi-los nos dados de treinamento e teste. Os dados são carregados chamando oload_data método da seguinte forma -

(X_train, y_train), (X_test, y_test) = mnist.load_data()

A saída neste estágio se parece com o seguinte -

Agora, aprenderemos a estrutura do conjunto de dados carregado.

Os dados que nos são fornecidos são as imagens gráficas de tamanho 28 x 28 pixels, cada uma contendo um único dígito entre 0 e 9. Iremos exibir as primeiras dez imagens no console. O código para fazer isso é fornecido abaixo -

# printing first 10 images
for i in range(10):

plot.subplot(3,5,i+1)
plot.tight_layout()
plot.imshow(X_train[i], cmap='gray', interpolation='none')
plot.title("Digit: {}".format(y_train[i]))
plot.xticks([])
plot.yticks([])

Em um loop iterativo de 10 contagens, criamos um subplot em cada iteração e mostramos uma imagem de X_trainvetor nele. Nós intitulamos cada imagem do correspondentey_trainvetor. Observe que oy_train vetor contém os valores reais para a imagem correspondente em X_trainvetor. Removemos as marcações dos eixos xey chamando os dois métodosxticks e ytickscom argumento nulo. Ao executar o código, você verá a seguinte saída -

A seguir, prepararemos os dados para alimentá-los em nossa rede.