首页 文章

Keras层中逻辑回归的权重

提问于
浏览
0

以下是逻辑回归代码,我用它来 Build 剂量值(形状672,1)和疾病结果(形状672,1;二元结果0,1)之间的关联使用Keras . 我的目标是计算优势比,我认为这是exp(权重),并将其与我使用Fisher检验计算的优势比进行比较 .

from keras.models import Sequential 
from keras.layers import Dense, Activation 
from keras import layers

class logit:
def lg_keras(self,input_dim,output_dim,ep,X,y):
    model = Sequential() 
    model.add(Dense(output_dim, input_dim=input_dim, activation='sigmoid')) 
    model.compile(optimizer='adam', loss='binary_crossentropy', metrics=['accuracy']) 
    model.fit(X, y, nb_epoch=ep, verbose=0) 
    print("Done")
    return model

我的问题是当我从Keras模型中提取权重时 . 我希望只为一个输出节点获得一个权重,但我收到了两个 . 下面是代码和输出 .

model = lgd.lg_keras(X.shape[1], y.shape[1],20,X,y)
for layer in model.layers:
    weights = layer.get_weights() # list of numpy arrays
print(weights)

[array([[ - 0.00019858]],dtype = float32),array([ - 0.06999612],dtype = float32)]

这两个重量值是什么?

1 回答

  • 1

    我想我已经找到了自己问题的答案 . 第一个数字/数组用于权重项,第二个数组用于偏差项 . 因为如果我在我的要素表中添加两列,那么我在权重数组中得到两个值,在偏置数组中有一个值,这是有道理的 .

相关问题