【问题标题】:Regression result in keras using python使用python在keras中回归结果
【发布时间】:2018-08-04 05:19:29
【问题描述】:

这是一个回归问题。下面是我的代码

import numpy as np
import pandas as pd
from keras.models import Sequential
from keras.layers import Dense
from keras.wrappers.scikit_learn import KerasRegressor
from sklearn.cross_validation import cross_val_score, KFold
from sklearn.preprocessing import StandardScaler
from sklearn.pipeline import Pipeline
os.chdir(r'C:\Users\Swapnil\Desktop\RP TD\first\Changes')

## Load the dataset
dataset1 = pd.read_csv("Main Lane Plaza 1.csv")
X_train = dataset1.iloc[:,0:11].values
Y_train = dataset1.iloc[:,11].values
dataset2 = pd.read_csv("Main Lane Plaza 1_070416010117.csv")
X_test = dataset2.iloc[:,0:11].values
Y_test = dataset2.iloc[:,11].values

##Define base model
def base_model():
model = Sequential()
model.add(Dense(11, input_dim=11, kernel_initializer='normal', 
activation='sigmoid'))
model.add(Dense(7, kernel_initializer='normal', activation='sigmoid'))
model.add(Dense(1, kernel_initializer='normal'))
model.compile(loss='mean_squared_error', optimizer = 'adam')
return model

seed = 7
np.random.seed(seed)

clf = KerasRegressor(build_fn=base_model, nb_epoch=100, 
batch_size=5,verbose=0)

clf.fit(X_train, Y_train)
res = clf.predict(X_train)

##Result
clf.score(X_test, Y_test)

不确定分数是否应该为负数? 如果我做错了什么,请告知。 提前致谢。

我无法弄清楚这是否是由于特征缩放而导致的问题,因为我使用 R 进行了特征缩放并保存了 csv 文件以在 python 中使用。

【问题讨论】:

  • 我尝试过编辑但不能。请格式化代码并提供更多信息
  • @SagarBHathwar 如果可能,请您现在检查一下,谢谢

标签: python keras


【解决方案1】:

当您在回归问题上得到负分时,通常意味着您选择的模型不能很好地拟合您的数据。

【讨论】:

    【解决方案2】:

    第 1 层激活为 sigmoid,第 2 层也为 sigmoid,最后一层为 1 输出。

    将激活值更改为relu,因为sigmoid 会将值压缩在 0 到 1 之间。使数字非常小,导致第 2 个隐藏层上的梯度消失问题。

    def base_model():
        model = Sequential()
        model.add(Dense(11, input_dim=11, kernel_initializer='normal', activation='relu'))
        model.add(Dense(7, kernel_initializer='normal', activation='relu'))
        model.add(Dense(1, kernel_initializer='normal'))
        model.compile(loss='mean_squared_error', optimizer='adam')
        return model
    

    【讨论】:

      猜你喜欢
      • 2018-05-01
      • 2020-05-16
      • 1970-01-01
      • 2017-10-08
      • 2021-03-26
      • 2017-08-03
      • 2017-06-04
      • 2019-11-26
      • 2020-07-13
      相关资源
      最近更新 更多