我正在对以下数据进行回归,以预测白葡萄酒的质量
数据集链接:https://archive.ics.uci.edu/ml/datasets/wine+quality
数据csv名称: winequality-white.csv e.csv
特点:1-固定酸度,2-挥发性酸度,3-柠檬酸,4-残糖,5-氯化物,6-无二氧化硫,7-总二氧化硫,8-密度,9- pH,10 -硫酸盐,11-酒精。
目标变量:质量
测试拆分: 33%
随机森林回归科学工具-学习实现
预处理:滑雪板标准定标器(尽管RFR不需要)
超视距:‘rf_regr_m_max_特点’:'auto',‘rf_regr_max_max_leaf_nodes’,‘rf_regr__min_samples_leaf_leaf’:1,‘rf_regr_min_split_split_ 5,’rf_regr_n_n_估值器‘:10
测试R2评分: 0.84
全连通神经网络
预处理:雪橇标准定标器
超参数: optimizer=tf.keras.optimizers.Adam(learning_rate=1e-3),loss=tf.keras.losses.mse,回调= tf.keras.callbacks.EarlyStopping(monitor='val_loss',patience=10)
tf.keras.callbacks.ModelCheckpoint('wine_model',监视器=‘val_loss’,save_best_only=True)
tf.keras.Input(shape=(num_features)),
tf.keras.layers.Dense(16,activation='relu'),
tf.keras.layers.Dense(8,activation='relu'),
tf.keras.layers.Dense(4,activation='relu'),
tf.keras.layers.Dense(2,activation='relu'),
tf.keras.layers.Dense(2,activation='relu'),
tf.keras.layers.Dense(1,activation='linear') 我已经尝试过各种其他拓扑和学习速率/其他惠普。
在测试数据上,R2得分最好: 0.33。
为什么随机森林(0.84)和神经回归(0.33)的测试R2评分会有如此大的差异?
此外,我观察到,即使有6-7个隐层,神经网络也无法对训练数据进行拟合。测试分数在增加超过4层后开始下降。
发布于 2022-04-14 15:01:22
神经元网络需要大量的数据进行训练。此外,如果你有少量的数据,它经常遭受过度拟合,正如你的评论。通常,神经元网络被应用于更复杂的问题中。另一个可能的原因是神经元网络具有更好的缩放功能,你做过吗?最后,NN有很多参数需要调整:层,神经元,激活函数,。找到权利是一项复杂的工作,也是一门艺术。
正如您所看到的,根据您的数据集,有些算法比其他算法更适合,这是一门艺术。
https://datascience.stackexchange.com/questions/110014
复制相似问题