ThinkChat🤖让你学习和工作更高效,注册即送10W Token,即刻开启你的AI之旅 广告
1. **定义**训练数据:**输入**张量和**目标**张量。 2. **定义**层组成的网络(或模型),将输入**映射**到目标。 Sequential类(仅用于层的线性堆叠,这是目前最常见的网络架构) ``` from keras import models from keras import layers model = models.Sequential() model.add(layers.Dense(32, activation='relu', input_shape=(784,))) model.add(layers.Dense(10, activation='softmax')) ``` 函数式 API(functional API,用于层组成的有向无环图,让你可以构建任意形式的架构) ``` input_tensor = layers.Input(shape=(784,)) x = layers.Dense(32, activation='relu')(input_tensor) output_tensor = layers.Dense(10, activation='softmax')(x) model = models.Model(inputs=input_tensor, outputs=output_tensor) ``` 3. **配置**学习过程:选择损失函数、优化器和需要监控的指标。 ``` 指定模型使用的优化器和损失函数,以及训练过程中想要监控的指标 单一损失函数: from keras import optimizers model.compile(optimizer=optimizers.RMSprop(lr=0.001), loss='mse', metrics=['accuracy']) ``` 4. **调用**模型的**fit**方法在训练数据上进行迭代 ``` 将输入数据的 Numpy 数组(和对应的目标数据)传入模型 model.fit(input_tensor, target_tensor, batch_size=128, epochs=10) ```