我收到错误消息“索引243超出了尺寸1的轴1的范围”,我不知道自己在做什么错。另外,我想知道线性代数和keras是否有通用指南。
让我知道你们的想法!
import numpy as np
import pandas as pd
from sklearn.model_selection import train_test_split
from tensorflow import keras
from tensorflow import keras
from tensorflow.keras.models import Sequential
from tensorflow.keras.layers import Dense, Flatten, Conv2D
img_rows, img_cols = 16, 16
num_classes = 10
image_file = "../input/pic-test/output2.csv"
image_data = np.loadtxt(image_file,skiprows=1, delimiter=',') #skiprows=1,
def prep_data(raw):
y = raw[:, 0]
out_y = keras.utils.to_categorical(y,num_classes) #num_classes
x = raw[:,1:]
num_images = raw.shape[0]
out_x = x.reshape(num_images, img_rows, img_cols,1)
out_x = out_x / 255
return out_x, out_y
x, y = prep_data(image_data)
image_model = Sequential()
image_model.add(Conv2D(12,
activation='relu',
kernel_size=3,
input_shape = (img_rows, img_cols, 1)))
image_model.add(Conv2D(20, activation='relu', kernel_size=3))
image_model.add(Conv2D(20, activation='relu', kernel_size=3))
image_model.add(Flatten())
image_model.add(Dense(100, activation='relu'))
image_model.add(Dense(10, activation='softmax'))
image_model.compile(loss='categorical_crossentropy',
optimizer='adam',
metrics=['accuracy'])
image_model.fit(x, y, batch_size=100, epochs=4, validation_split=0.2)