【发布时间】:2018-10-21 12:53:06
【问题描述】:
我正在尝试在贷款状态数据集上应用深度学习网络,以检查我是否可以获得比传统机器学习算法更好的结果。
准确度似乎非常低(甚至低于使用正常逻辑回归)。我该如何改进它?
我尝试过的事情: - 改变学习率 - 增加层数 - 增加/减少节点数**
X = df_dummies.drop('Loan_Status', axis=1).values
y = df_dummies['Loan_Status'].values
model = Sequential()
model.add(Dense(50, input_dim = 17, activation = 'relu'))
model.add(Dense(100, activation = 'relu'))
model.add(Dense(100, activation = 'relu'))
model.add(Dense(100, activation = 'relu'))
model.add(Dense(100, activation = 'relu'))
model.add(Dense(1, activation = 'sigmoid'))
sgd = optimizers.SGD(lr = 0.00001)
model.compile(optimizer=sgd, loss='binary_crossentropy', metrics=`['accuracy'])`
model.fit(X, y, epochs = 50, shuffle=True, verbose=2)
model.summary()
纪元 1/50 - 1s - 损失:4.9835 - acc:0.6873 纪元 2/50 - 0s - 损失:4.9830 - acc:0.6873 时代 3/50 - 0s - 损失:4.9821 - acc:0.6873 时代 4/50 - 0s - 损失:4.9815 - acc:0.6873 纪元 5/50 - 0s - 损失:4.9807 - acc:0.6873 时代 6/50 - 0s - 损失:4.9800 - acc:0.6873 纪元 7/50 - 0s - 损失:4.9713 - acc:0.6873 时代 8/50 - 0s - 损失:8.5354 - acc:0.4397 纪元 9/50 - 0s - 损失:4.8322 - acc:0.6743 纪元 10/50 - 0s - 损失:4.9852 - acc:0.6873 11/50 纪元 - 0s - 损失:4.9852 - acc:0.6873 12/50 纪元 - 0s - 损失:4.9852 - acc:0.6873 13/50 纪元 - 0s - 损失:4.9852 - acc:0.6873 14/50 纪元 - 0s - 损失:4.9852 - acc:0.6873 15/50 纪元 - 0s - 损失:4.9852 - acc:0.6873 16/50 纪元 - 0s - 损失:4.9852 - acc:0.6873 17/50 纪元 - 0s - 损失:4.9852 - acc:0.6873 18/50 纪元 - 0s - 损失:4.9852 - acc:0.6873 19/50 纪元 - 0s - 损失:4.9852 - acc:0.6873 20/50 纪元 - 0s - 损失:4.9852 - acc:0.6873 21/50 纪元 - 0s - 损失:4.9852 - acc:0.6873 22/50 纪元 - 0s - 损失:4.9852 - acc:0.6873 时代 23/50 - 0s - 损失:4.9852 - acc:0.6873 时代 24/50 - 0s - 损失:4.9852 - acc:0.6873 25/50 纪元 - 0s - 损失:4.9852 - acc:0.6873 时代 26/50 - 0s - 损失:4.9852 - acc:0.6873 时代 27/50 - 0s - 损失:4.9852 - acc:0.6873 时代 28/50 - 0s - 损失:4.9852 - acc:0.6873 29/50 纪元 - 0s - 损失:4.9852 - acc:0.6873 时代 30/50 - 0s - 损失:4.9852 - acc:0.6873 时代 31/50 - 0s - 损失:4.9852 - acc:0.6873 时代 32/50 - 0s - 损失:4.9852 - acc:0.6873 时代 33/50 - 0s - 损失:4.9852 - acc:0.6873 时代 34/50 - 0s - 损失:4.9852 - acc:0.6873 时代 35/50 - 0s - 损失:4.9852 - acc:0.6873 时代 36/50 - 0s - 损失:4.9852 - acc:0.6873 时代 37/50 - 0s - 损失:4.9852 - acc:0.6873 时代 38/50 - 0s - 损失:4.9852 - acc:0.6873 时代 39/50 - 0s - 损失:4.9852 - acc:0.6873 时代 40/50 - 0s - 损失:4.9852 - acc:0.6873 时代 41/50 - 0s - 损失:4.9852 - acc:0.6873 时代 42/50 - 0s - 损失:4.9852 - acc:0.6873 时代 43/50 - 0s - 损失:4.9852 - acc:0.6873 时代 44/50 - 0s - 损失:4.9852 - acc:0.6873 时代 45/50 - 0s - 损失:4.9852 - acc:0.6873 时代 46/50 - 0s - 损失:4.9852 - acc:0.6873 时代 47/50 - 0s - 损失:4.9852 - acc:0.6873 时代 48/50 - 0s - 损失:4.9852 - acc:0.6873 时代 49/50 - 0s - 损失:4.9852 - acc:0.6873 纪元 50/50 - 0s - 损失:4.9852 - acc:0.6873
Layer (type) Output Shape Param # ================================================================= dense_19 (Dense) (None, 50) 900 _________________________________________________________________ dense_20 (Dense) (None, 100) 5100 _________________________________________________________________ dense_21 (Dense) (None, 100) 10100 _________________________________________________________________ dense_22 (Dense) (None, 100) 10100 _________________________________________________________________ dense_23 (Dense) (None, 100) 10100 _________________________________________________________________ dense_24 (Dense) (None, 1) 101 ================================================================= Total params: 36,401 Trainable params: 36,401 Non-trainable params: 0 _________________________________________________________________
【问题讨论】: