草庐IT

CNN-LSTM

全部标签

python - Pytorch 中的 LSTM

我是PyTorch的新手。我遇到了一些这个GitHubrepository(linktofullcodeexample)包含各种不同的示例。还有一个关于LSTM的例子,这是网络类:#RNNModel(Many-to-One)classRNN(nn.Module):def__init__(self,input_size,hidden_size,num_layers,num_classes):super(RNN,self).__init__()self.hidden_size=hidden_sizeself.num_layers=num_layersself.lstm=nn.LSTM(in

python - 带有用于可变长度输入的屏蔽层的 Keras lstm

我知道这是一个有很多问题的主题,但我找不到解决问题的方法。我正在使用掩蔽层在可变长度输入上训练LSTM网络,但它似乎没有任何效果。输入形状(100,362,24),其中362是最大序列长度,24是特征数量,100是样本数量(分为75个训练/25个有效)。输出形状(100,362,1)稍后转换为(100,362-N,1)。这是我的网络的代码:fromkerasimportSequentialfromkeras.layersimportEmbedding,Masking,LSTM,Lambdaimportkeras.backendasK#OOO#exampleforN:3|||#OOOOO

python - 更改 CNN 以使用 3D 卷积

我正在使用来自here的代码(paperhere)创建GAN。我正在尝试将其应用到一个新领域,从他们在MNIST上的应用切换到3D大脑MRI图像。我的问题在于GAN本身的定义。例如,他们用于定义生成模型的代码(采用z_dim维度的噪声并从MNIST分布生成图像,因此28x28)是这样的,我的评论基于我认为它的工作原理:defgenerate(self,z):#startwithnoiseincompactspaceassertz.shape[1]==self.z_dim#Fullyconnectedlayerthatforsomereasonexpandstolatent*64outp

python - Keras - 将 3 channel 图像输入 LSTM

我已经将一系列图像读取到形状为(7338,225,1024,3)的numpy数组中,其中7338是样本大小,225是时间步长,1024(32x32)是扁平图像像素,在3channel(RGB)中。我有一个带有LSTM层的顺序模型:model=Sequential()model.add(LSTM(128,input_shape=(225,1024,3))但这会导致错误:Input0isincompatiblewithlayerlstm_1:expectedndim=3,foundndim=4documentation提到LSTM层的输入张量应该是形状为(batch_size,timest

python - 如何在测试集中找到错误的预测案例(使用 Keras 的 CNN)

我正在使用具有60000个训练图像和10000个测试图像的MNIST示例。如何找出10000张测试图像中的哪一张分类/预测错误? 最佳答案 只需使用model.predict_classes()并将输出与真实标签进行比较。即:incorrects=np.nonzero(model.predict_class(X_test).reshape((-1,))!=y_test)获取错误预测的索引 关于python-如何在测试集中找到错误的预测案例(使用Keras的CNN),我们在StackOve

python - PyTorch:使用 numpy 数组为 GRU/LSTM 手动设置权重参数

我正在尝试使用pytorch中手动定义的参数填充GRU/LSTM。我有numpy参数数组,其形状在其文档(https://pytorch.org/docs/stable/nn.html#torch.nn.GRU)中定义。似乎可以,但我不确定返回值是否正确。这是用numpy参数填充GRU/LSTM的正确方法吗?gru=nn.GRU(input_size,hidden_size,num_layers,bias=True,batch_first=False,dropout=dropout,bidirectional=bidirectional)defset_nn_wih(layer,para

【Python】解决CNN中训练权重参数不匹配size mismatch for fc.weight,size mismatch for fc.bias

目录1.问题描述2.问题原因3.问题解决3.1思路1——忽视最后一层权重额外说明:假如载入权重不写strict=False,直接是model.load_state_dict(pre_weights,strict=False),会报错找不到key?解决办法是:加上strict=False,这个语句就是指忽略掉模型和参数文件中不匹配的参数3.2思路2——更改最后一层参数额外说明:假如原有的model默认类别数 和 载入权重类别数不一致,代码如何更改?1.问题描述训练一个CNN时,比如ResNet,借助迁移学习的方式使用预训练好的权重,在导入权重后报错:RuntimeError:Error(s)in

python - 如何测试tensorflow cifar10 cnn教程模型

我对机器学习比较陌生,目前几乎没有开发它的经验。所以我的问题是:在训练和评估来自tensorflowtutorial的cifar10数据集之后我想知道如何使用示例图像对其进行测试?我可以训练和评估Imagenettutorialfromthecaffemachine-learningframework并且使用pythonAPI在自定义应用程序上使用经过训练的模型相对容易。如有任何帮助,我们将不胜感激! 最佳答案 这不是问题的100%答案,但它是一种类似的解决方法,基于问题评论中建议的MNISTNN训练示例。基于TensorFlowb

Python基于PyTorch实现卷积神经网络回归模型(CNN回归算法)项目实战

说明:这是一个机器学习实战项目(附带数据+代码+文档+视频讲解),如需数据+代码+文档+视频讲解可以直接到文章最后获取。 1.项目背景卷积神经网络,简称为卷积网络,与普通神经网络的区别是它的卷积层内的神经元只覆盖输入特征局部范围的单元,具有稀疏连接(sparseconnectivity)和权重共享(weightshared)的特点,而且其中的过滤器可以做到对图像关键特征的抽取。因为这一特点,卷积神经网络在图像识别方面能够给出更好的结果。本项目通过基于PyTorch实现卷积神经网络回归模型。2.数据获取本次建模数据来源于网络(本项目撰写人整理而成),数据项统计如下:数据详情如下(部分展示): 3

python - CNN 给出有偏见的结果

我在CNN上使用二元分类器。我有两个类别“我”和“其他”。我有大约250张我自己的图像和500张其他人的图像(随机面孔数据库)。我目前的图层实现非常简单self.model.add(Conv2D(128,(2,2),padding='same',input_shape=dataset.X_train.shape[1:]))self.model.add(Activation('relu'))self.model.add(MaxPooling2D(pool_size=(2,2)))self.model.add(Dropout(0.25))self.model.add(Conv2D(64,(