首页 > 编程知识 正文

n折交叉验证(k折交叉验证输出哪个模型)

时间:2023-05-04 00:39:38 阅读:80571 作者:3617

本文介绍了Keras的常见验证和参数调整技巧,以便快速进行模型验证和参数调整。

小技巧:

加载CSV数据文件Dense初始化警告的验证和调整:

“模型验证”(Validation ) k“重交验证”(K-fold Cross-Validation ) (网格搜索验证) 9500.163.com)。

Keras

加载CSV数据文件

使用NumPy的loadtxt ()方法加载CSV数据文件

delimiter :数据单元的分隔符; skiprows :跳过开头行的标题; Dense初始化警告

Dense初始化参数警告:

只需将init参数替换为kernel_initializer参数即可。

模型验证

fit ) )中自动分割验证集:

通过设置参数validation_split的值(0-1)来确定验证集的百分比。

实现:

fit ) )中手动分割验证集:

train_test_split源sk learn .模型_选择:

test_size :验证集的比例; random_state :随机数的种子; 使用参数validation_data添加验证数据。 格式是数据标签的元组。

实现:

交叉检验

k-fold交叉验证是一般的模型评价统计。

人工模式

相互验证函数StratifiedKFold ()来源于sklearn.model_selection,即两者之间的相互验证函数。

n_splits :交叉的重量,即n重交叉验证; shuffle :数据和标签是否随机打乱random_state :随机数种子; SKF.split(x,y ) :划分数据和标签的索引。 cvscores用于统计k重新交叉验证的结果,计算平均值和方差值。

实现:

输出:

Wrapper模式

用cross_val_score ()函数集成模型和相互验证逻辑。

请注意,将模型封装到wrapper中,不带括号()使用内置函数而不是调用。 epochs为倒圆角,batch_size为批处理次数; StratifiedKFold是k重新交叉验证的逻辑; cross_val_score的输入是模型wrapper、数据x、标签y、交叉检查cv; 输出是每次验证的结果,计算平均值和方差。

实现:

输出:

网格搜索验证

使用“栅格搜索验证”(Grid Search Cross-Validation )来选择模型的最佳超级参数值。

交互验证函数GridSearchCV (其中是来自sklearn.model_selection )。

设置超级参数列表,如optimizers、init_modes、epochs和batches; 编写参数词典。 key值是模型的参数,或wrapper的参数。 estimator为模型,param_grid为网格参数词典,n_jobs为进程数; 输出最佳结果和其他数组的组合结果。 实现:

输出:

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。