Python Keras中由列表组成的列表的正确输入形状是什么?
我有一个由10个数字组成的小列表。像Python Keras中由列表组成的列表的正确输入形状是什么?,python,tensorflow,machine-learning,keras,neural-network,Python,Tensorflow,Machine Learning,Keras,Neural Network,我有一个由10个数字组成的小列表。像 [[1,2,3,4,5,6,7,8,9,10],[0,0,0,0,0,0,0,0,0,0],[1,1,1....]]. 我应该将什么形状应用于我的模型?以下是我目前掌握的代码: ''' 将open('games_from_file_1.json','r')作为f: data1=json.load(f) ''' 我得到了50%的准确率。。。所以我想可能是因为它的形状 我也有65000个较小的列表,我想用于培训,但当我运行该脚本时,在epochs文本下会出现:
[[1,2,3,4,5,6,7,8,9,10],[0,0,0,0,0,0,0,0,0,0],[1,1,1....]].
我应该将什么形状应用于我的模型?以下是我目前掌握的代码:
'''
将open('games_from_file_1.json','r')作为f:
data1=json.load(f)
'''
我得到了50%的准确率。。。所以我想可能是因为它的形状
我也有65000个较小的列表,我想用于培训,但当我运行该脚本时,在epochs文本下会出现:2032/2032。。。不应该有65000/65000吗?默认情况下,培训分32批进行,由model.fit方法的batch_size参数控制。因此2032/2032是正确的(65000/32)。
with open('games_from_file_3.json', 'r') as f:
data3 = json.load(f)
data = {}
data['games'] = data1['games'] + data3['games']
pprint(data['games'][0])
final_data = pop_or_add_afk(data)
train_samples = []
train_labels = []
for i in range(65000):
temp_list = [None] * 10
temp_list[0] = final_data['games'][i]['team_1']['Top']
temp_list[1] = final_data['games'][i]['team_1']['Mid']
temp_list[2] = final_data['games'][i]['team_1']['Jg']
temp_list[3] = final_data['games'][i]['team_1']['ADC']
temp_list[4] = final_data['games'][i]['team_1']['Sup']
temp_list[5] = final_data['games'][i]['team_2']['Top']
temp_list[6] = final_data['games'][i]['team_2']['Mid']
temp_list[7] = final_data['games'][i]['team_2']['Jg']
temp_list[8] = final_data['games'][i]['team_2']['ADC']
temp_list[9] = final_data['games'][i]['team_2']['Sup']
train_samples.append(temp_list)
train_labels.append(final_data['games'][i]['win'])
train_labels = np.array(train_labels)
train_samples = np.array(train_samples)
model = keras.Sequential([
keras.layers.Dense(units=10, input_shape=(65000,10), activation = 'relu'),
keras.layers.Dense(units=10, activation='relu'), # hidden layer (2)
keras.layers.Dense(units=3, activation='softmax')
])
model.compile(optimizer='adam',
loss='sparse_categorical_crossentropy',
metrics=['accuracy'])
model.fit(train_samples, train_labels, epochs = 30)