草庐IT

python - 用于序列标记的 keras BLSTM

我对神经网络比较陌生,所以请原谅我的无知。我正在尝试调整kerasBLSTM示例here.该示例读取文本并将它们分类为0或1。我想要一个BLSTM来做一些非常像POS标记的事情,尽管不需要像词形还原或其他高级功能这样的额外功能,我只想要一个基本模型。我的数据是一个句子列表,每个单词都有一个1-8类。我想训练一个BLSTM,它可以使用这些数据来预测一个看不见的句子中每个单词的类别。例如输入=['The','dog','is','red']给出输出=[2,4,3,7]如果keras示例不是最佳途径,我愿意接受其他建议。我目前有这个:'''TrainaBidirectionalLSTM.''

python - 导入 keras 时出现 ValueError «您正在尝试使用旧的 GPU 后端»

我正在使用Keras与TheanoUbuntu16.04上的后端。我的设置一直没有问题,但是,当我导入Keras(importkeras)时突然出现以下错误:ValueError:YouaretryingtousetheoldGPUback-end.ItwasremovedfromTheano.Usedevice=cuda*now.Seehttps://github.com/Theano/Theano/wiki/Converting-to-the-new-gpu-back-end%28gpuarray%29formoreinformation.我该如何解决?

python - 如何使用keras找到损失值?

我想使用keras中定义的各种损失函数来手动计算损失值。例如:fromkeras.lossesimportbinary_crossentropyerror=binary_crossentropy([1,2,3,4],[6,7,8,9])给我错误AttributeError:'list'objecthasnoattribute'dtype'.类似的方式我想使用其他keras损失函数。我有我的y_pred和y_true列表/数组。 最佳答案 您可以使用K.variable()包装输入并使用K.eval()获取值。fromkeras.lo

python - 使用 Keras 在滑动窗口中评估函数

我正在尝试跨序列扩展匹配匹配算法。我的比赛有20个单位,每个时间点有4个channel。我已经构建了一个封装匹配的模型,我只是不知道如何在滑动窗口中使用它来将它应用于更长的序列以找到序列中的匹配。我有2(20,4)输入张量(query和target),我连接、添加、展平,然后应用一个简单的密集层。我在这个阶段有数据要训练100K查询,目标对。defsum_seqs(seqs):returnK.sum(seqs,axis=3)defpad_dims(seq):returnK.expand_dims(seq,axis=3)defpad_outshape(in_shape):return(i

python - Keras:进行超参数网格搜索时内存不足

我正在运行多个嵌套循环来进行超参数网格搜索。每个嵌套循环都运行一个超参数值列表,在最内层的循环中,每次使用生成器构建和评估Keras顺序模型。(我没有做任何训练,我只是随机初始化然后多次评估模型,然后检索平均损失)。我的问题是,在此过程中,Keras似乎正在填满我的GPU内存,因此我最终遇到了OOM错误。有人知道如何解决这个问题并在每次评估模型后释放GPU内存吗?在对模型进行评估后,我就不再需要它了,每次在内循环的下一轮构建新模型之前,我都可以将其完全丢弃。我正在使用Tensorflow后端。这是代码,尽管其中大部分与一般问题无关。该模型建立在第四个循环内,forfsizeinfsiz

python - 如何在 Keras 中创建自定义目标函数?

Keras中有很多目标函数here.但是你如何创建自己的目标函数,我尝试创建一个非常基本的目标函数,但它给出了一个错误,我无法知道在运行时传递给该函数的参数的大小。defloss(y_true,y_pred):loss=T.vector('float64')foriinrange(1):flag=Trueforjinrange(y_true.ndim):if(y_true[i][j]==y_pred[i][j]):flag=Falseif(flag):loss=loss+1.0loss/=y_true.shape[0]printloss.typeprinty_true.shape[0]

python - 如何在 Keras 序列模型中提取偏差权重?

这个问题在这里已经有了答案:HowcanIgetbiasesfromatrainedmodelinKeras?(3个答案)关闭5年前。我正在使用Keras运行一个简单的前馈网络。只有一个隐藏层,我想对每个输入与每个输出的相关性做出一些推断,并且我想提取权重。这是模型:defbuild_model(input_dim,output_dim):n_output_layer_1=150n_output=output_dimmodel=Sequential()model.add(Dense(n_output_layer_1,input_dim=input_dim,activation='rel

python - keras 预测错误

我正在尝试使用keras神经网络来识别绘制数字的Canvas图像并输出数字。我已经保存了神经网络并使用django来运行web界面。但是每当我运行它时,我都会收到内部服务器错误和服务器端代码错误。错误显示异常:检查时出错:预期dense_input_1具有形状(None,784)但得到形状为(784,1)的数组。我唯一的主要观点是fromdjango.shortcutsimportrenderfromdjango.httpimportHttpResponseimportStringIOfromPILimportImageimportnumpyasnpimportrefromkeras.

python - 具有 LSTM 单元的 Keras RNN,用于基于多个输入时间序列预测多个输出时间序列

我想用LSTM单元对RNN建模,以便根据多个输入时间序列预测多个输出时间序列。具体来说,我有4个输出时间序列,y1[t]、y2[t]、y3[t]、y4[t],每个的长度为3,000(t=0,...,2999)。我还有3个输入时间序列,x1[t]、x2[t]、x3[t],每个时间序列的长度为3,000秒(t=0,...,2999)。目标是使用截至当前时间点的所有输入时间序列预测y1[t],..y4[t],即:y1[t]=f1(x1[k],x2[k],x3[k],k=0,...,t)y2[t]=f2(x1[k],x2[k],x3[k],k=0,...,t)y3[t]=f3(x1[k],x2

python - Keras - 是否可以在 Tensorboard 中查看模型的权重和偏差

我刚开始使用Keras并构建了一个Q-learning示例程序。我创建了一个tensorboard回调并将其包含在对model.fit的调用中,但TensorBoard中出现的唯一内容是损失的标量摘要和网络图。有趣的是,如果我打开图中的密集层,我会看到一个标有“bias_0”和一个标有“kernel_0”的小摘要图标,但我没有看到这些出现在TensorBoard的分布或直方图选项卡中,就像我在我在纯tensorflow中构建了一个模型。我是否需要执行其他操作才能在Tensorboard中启用这些功能?我是否需要查看Keras生成的模型的详细信息并添加我自己的tensor_summary