Skip to Main Content
Python程序设计:人工智能案例实践
book

Python程序设计:人工智能案例实践

by 保罗 戴特尔, 哈维 戴特尔
August 2021
Intermediate to advanced content levelIntermediate to advanced
450 pages
13h 28m
Chinese
Pearson
Content preview from Python程序设计:人工智能案例实践

15.6.5 训练和评价模型

与scikit-learn的模型类似,我们通过调用fit方法来训练Keras模型:

▪ 与scikit-learn一样,前两个参数是训练数据和分类目标标签。

epochs指定模型应处理整组训练数据的次数。正如前面提到的,神经网络是迭代训练的。

batch_size指定每个epoch期间单次处理的样本数。大多数模型指定为32~512的2的幂次。若batch_size太大,则会降低模型准确性[1],所以选择了64,也可以尝试不同的值来查看它们是如何影响模型性能的。

▪ 通常需要使用一些样本来验证模型,如果指定了验证数据,则每个epoch结束之后,将使用模型对验证集进行预测并显示验证损失和准确性,可以通过研究这些值来调整网络层和fit方法的超参数,或者更改模型的层组成。在这里,我们使用validation_split参数来指示保留最后10%(0.1)的训练样本进行模型验证[2],共6,000个验证样本。如果有单独的验证数据,则可以使用validation_data参数(如15.9节所示)来指定包含这些样本和目标标签数组的元组。通常,最好随机选择验证样本,利用scikit-learn的train_test_split函数(将在本章稍后介绍),然后使用validation_data参数传递随机选择的数据。

在以下输出中,我们以粗体突出显示了训练准确性(acc)和验证准确性(val_acc):

在15.7节中,我们将介绍TensorBoard—一个TensorFlow工具,用于从深度学习模型中可视化数据,特别是,我们将查看训练和验证准确性以及损失值是如何通过每个epoch发生变化的。在15.8节中,我们将演示Andrej ...

Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

数据科学中的实用统计学(第2版)

数据科学中的实用统计学(第2版)

Peter Bruce, Andrew Bruce, Peter Gedeck
Python算法交易实战

Python算法交易实战

Posts & Telecom Press, Sebastien Donadio
Python机器学习案例精解

Python机器学习案例精解

Posts & Telecom Press, Yuxi (Hayden) Liu

Publisher Resources

ISBN: 9787111678458