草庐IT

python - 神经网络(无隐藏层)与逻辑回归?

我一直在上神经网络类(class),但并不真正理解为什么我从逻辑回归和两层神经网络(输入层和输出层)的准确度得分中得到不同的结果。输出层使用sigmoid激活函数。根据我学到的知识,我们可以在神经网络中使用sigmoid激活函数来计算概率。如果不完全相同,这应该与逻辑回归试图实现的目标非常相似。然后从那里反向传播以使用梯度下降最小化错误。可能有一个简单的解释,但我不明白为什么准确性分数差异如此之大。在这个例子中,我没有使用任何训练或测试集,只是简单的数据来证明我不理解的地方。逻辑回归的准确率为71.4%。在下面的示例中,我刚刚为“X”和结果“y”数组创建了数字。当结果等于“1”时,我故

python - 如何查看初始化权重(即训练前)?

我正在使用Keras生成一个简单的单层前馈网络。当权重值通过kernel_initializer参数初始化时,我想更好地处理它们。有没有一种方法可以在初始化之后(即训练完成之前)查看权重值? 最佳答案 只需在模型上使用get_weights()。例如:i=Input((2,))x=Dense(5)(i)model=Model(i,x)printmodel.get_weights()这将打印一个2x5的权重矩阵和一个1x5的偏差矩阵:[array([[-0.46599612,0.28759909,0.48267472,0.559513

python - 与 tensorflow-gpu 1.4 一起使用的 keras 版本

我正在使用ubuntu16、python3、tf-GPU和keras。由于cuda错误,我降级到tf1.4,如解释的那样here但是现在我得到了这个错误TypeError:softmax()gotanunexpectedkeywordargument'axis'似乎这是一个APIchange在tensorflow和新的keras中不适合旧的tf.我找不到与tf1.4gpu一起使用的正确keras版本。什么是正确的? 最佳答案 Keras-Tensorflow版本兼容性是我自己遇到过很多次的常见问题。我将这个compatibility

Python/Keras - 如何访问每个时期的预测?

我正在使用Keras来预测时间序列。作为标准,我使用20个纪元。我想通过对20个时期中的每一个时期进行预测来检查我的模型是否学习良好。通过使用model.predict()我在所有时期中只得到一个预测(不确定Keras如何选择它)。我想要所有预测,或者至少是10个最好的预测。有人知道如何帮助我吗? 最佳答案 我觉得这里有点困惑。epoch仅在训练神经网络时使用,因此当训练停止时(在本例中,在第20个epoch之后),权​​重对应于在最后一个epoch上计算的权重。Keras在每个时期后的训练期间在验证集上打印当前损失值。如果每个时期

python - 为什么二进制 Keras CNN 总是预测 1?

我想使用KerasCNN构建二元分类器。我有大约6000行输入数据,如下所示:>>print(X_train[0])[[[-1.06405307-1.06685851-1.05989663-1.06273152][-1.06295958-1.06655996-1.05969803-1.06382503][-1.06415248-1.06735609-1.05999593-1.06302975][-1.06295958-1.06755513-1.05949944-1.06362621][-1.06355603-1.06636092-1.05959873-1.06173742][-1.06

python - 使用 Keras VGG 模型的预期输入范围是多少?

我正在尝试使用来自keras的预训练VGG16。但我真的不确定输入范围应该是多少。快速回答,这些颜色顺序中的哪些?RGBBGR哪个范围?0到255?从大约-125平衡到大约+130?0比1?-1比1?我注意到thefilewherethemodelisdefined导入输入预处理器:from.imagenet_utilsimportpreprocess_input但此预处理器从未在文件的其余部分中使用。此外,当我检查codeforthispreprocessor,它有两种模式:caffe和tf(tensorflow)。每种模式的工作方式不同。最后,我无法在Internet上找到一致的文

python - 如何清除使用 Keras 和 Tensorflow(作为后端)创建的模型?

我在JupyterNotebook中使用Keras训练神经网络时遇到问题。我创建了一个具有多个隐藏层的顺序模型。训练模型并保存结果后,我想删除该模型并在同一session中创建一个新模型,因为我有一个for循环来检查不同参数的结果。但是据我了解我得到的错误,当我改变参数时,当我循环时,我只是向模型添加层(即使我在循环内用network=Sequential()再次初始化它).所以我的问题是,我怎样才能完全清除以前的模型,或者我怎样才能在同一个session中初始化一个全新的模型? 最佳答案 keras.backend.clear_s

python - 导入 theano 给出 AttributeError : module 'theano' has no attribute 'gof'

我有python3。我安装了“Theano”前沿和“Keras”使用pipinstall--upgrade--no-depsgit+git://github.com/Theano/Theano.git还有pipinstall--upgradegit+git://github.com/Theano/Theano.git和pipinstallgit+git://github.com/fchollet/keras.git但是当我尝试导入Theano时,我收到以下错误:AttributeError:module'theano'hasnoattribute'gof'我在网上寻找解决方案,但一无所

python - Keras 中的矩阵乘法

我尝试使用Keras在python程序中将两个矩阵相乘。importkeras.backendasKimportnumpyasnpA=np.random.rand(10,500)B=np.random.rand(500,6000)x=K.placeholder(shape=A.shape)y=K.placeholder(shape=B.shape)xy=K.dot(x,y)xy.eval(A,B)我知道这行不通,但我也不知道如何让它发挥作用。 最佳答案 您需要使用变量而不是占位符。importkeras.backendasKimpo

python - Keras:异常:收到未知关键字参数:{'epochs':100}

我正在尝试复制http://machinelearningmastery.com/time-series-prediction-lstm-recurrent-neural-networks-python-keras/上的代码(第一个例子)。代码可以在“用于回归的LSTM网络”部分找到。但是,我的问题主要是指以下行:model.fit(trainX,trainY,epochs=100,batch_size=1,verbose=2)当我执行这一行时,出现以下异常:model.fit(trainX,trainY,batch_size=1,verbose=2,epochs=100)File"/