草庐IT

keras-layer

全部标签

[论文笔记]ON LAYER NORMALIZATION IN THE TRANSFORMER ARCHITECTURE

引言这是论文ONLAYERNORMALIZATIONINTHETRANSFORMERARCHITECTURE的阅读笔记。本篇论文提出了通过Pre-LN的方式可以省掉Warm-up环节,并且可以加快Transformer的训练速度。通常训练Transformer需要一个仔细设计的学习率warm-up(预热)阶段:在训练开始阶段学习率需要设成一个极小的值,然后在一些迭代后逐步增加。这个阶段对于Transformer最终的表现非常重要,但同时引入了更多的超参数调节。学习率预热被证明在处理一些特定问题时是至关重要的,比如大批次训练。当使用较大的批大小进行训练时,在开始时使用一个较大的学习率来优化模型通

python - Keras,优化时保存状态的最佳方式

我只是想知道在优化模型时保存模型状态的最佳方法是什么。我想这样做,这样我就可以运行它一段时间,保存它,稍后再回来使用它。我知道有一个函数可以保存权重,另一个函数可以将模型保存为JSON。在学习过程中,我需要保存模型的权重和参数。这包括动量和学习率等参数。有没有办法将模型和权重保存在同一个文件中。我读到使用pickle不被认为是好的做法。梯度下降的动量是否也包含在模型JSON或权重中? 最佳答案 fromkeras.modelsimportload_modelmodel.save('my_model.h5')#createsaHDF5

python - 没有子文件夹的 Keras 图像

我是深度学习的新手。我有这个问题:我正在尝试使用thisdata训练网络.一切都在一个文件夹中,标签在不同的mat文件中。我知道我可以用scipy.io读取数据。但是我怎样才能在一个文件夹中获得火车X呢?如果我使用内置的flow_from_directory它不会显示图像,因为每个类都应该有自己的文件夹。如何创建只有一个文件夹的X?现在它显示Found0imagesbelongingof0classes只有一个包含图像的文件夹。所有图像都在1个文件夹中。我的意思是没有类文件夹。使用flow_from_directory你应该有像cars/mercedes,cars/bmw,cars/a

python - 在 Keras 中使用 sample_weight 进行序列标注

我正在处理不平衡类的顺序标记问题,我想使用sample_weight来解决不平衡问题。基本上,如果我训练模型大约10个时期,我会得到很好的结果。如果我训练更多的epoch,val_loss会不断下降,但我会得到更差的结果。我猜该模型只是检测到更多的优势类别,而不利于较小的类别。该模型有两个输入,用于词嵌入和字符嵌入,输入是从0到6的7个可能类别之一。有了填充,我的词嵌入输入层的形状是(3000,150),词嵌入的输入层是(3000,150,15)。我使用0.3分割来测试和训练数据,这意味着用于词嵌入的X_train是(2000,150)和(2000,150,15)用于字符嵌入。y包含每

python - 在keras中拆分图层的输出

比如说,我有一个输出dims(4,x,y)的层。我想将其拆分为4个独立的(1,x,y)张量,我可以将其用作其他4个层的输入。我主要寻找的是Merge层的反面。我知道在keras中没有分割层,但是在keras中有没有简单的方法来做到这一点? 最佳答案 你在找这样的东西吗?importkeras.backendasKimportnumpyasnpval=np.random.random((4,2,3))t=K.variable(value=val)t1=t[0,:,:]t2=t[1,:,:]t3=t[2,:,:]t4=t[3,:,:]p

python - 我需要 Keras VGG16 的预训练权重吗?

作为上下文,我对机器学习的世界还比较陌生,我正在尝试一个项目,目标是对NBA比赛中的比赛进行分类。我的输入是NBA比赛中每场比赛的40帧序列,我的标签是给定比赛的11个包罗万象的分类。计划是获取每个帧序列并将每个帧传递到CNN中以提取一组特征。然后,来自给定视频的每个特征序列都将传递到RNN。我目前在大部分实现中使用Keras,我选择为我的CNN使用VGG16模型。下面是一些相关代码:video=keras.Input(shape=(None,255,255,3),name='video')cnn=keras.applications.VGG16(include_top=False,w

python - 如何合并具有相同输入的keras顺序模型?

我正在尝试在keras中创建我的第一个集成模型。我的数据集中有3个输入值和一个输出值。fromkeras.optimizersimportSGD,Adamfromkeras.layersimportDense,Mergefromkeras.modelsimportSequentialmodel1=Sequential()model1.add(Dense(3,input_dim=3,activation='relu'))model1.add(Dense(2,activation='relu'))model1.add(Dense(2,activation='tanh'))model1.co

python - Keras 提前停止 : Which min_delta and patience to use?

我是深度学习和Keras的新手,我尝试对我的模型训练过程进行的改进之一是利用Keras的keras.callbacks.EarlyStopping回调函数。根据训练我的模型的输出,将以下参数用于EarlyStopping似乎合理吗?EarlyStopping(monitor='val_loss',min_delta=0.0001,patience=5,verbose=0,mode='auto')此外,如果要等待5个连续的时期,其中val_loss的差异小于min_delta0.0001?训练LSTM模型时的输出(没有EarlyStop)运行所有100个epochEpoch1/10010

python - 在有条件的keras中实现自定义损失函数

我需要一些关于keras损失函数的帮助。我一直在使用Tensorflow后端在keras上实现自定义损失函数。我已经在numpy中实现了自定义损失函数,但如果能将其转换为keras损失函数就更好了。损失函数采用数据框和一系列用户ID。如果user_id不同,则同一user_id的欧氏距离为正和负。该函数返回数据帧的标量距离总和。defcustom_loss_numpy(encodings,user_id):#user_id:apandasseriesofusers#encodings:apandasdataframeofencodingsbatch_dist=0foriinrange(

python - Keras 重命名模型和图层

1)我尝试使用TF后端重命名Keras中的模型和层,因为我在一个脚本中使用多个模型。类模型似乎具有属性model.name,但在更改它时我得到“AttributeError:无法设置属性”。这里的问题是什么?2)此外,我正在使用顺序API,我想给图层命名,这似乎可以使用函数式API,但我没有找到顺序API的解决方案。anonye知道如何为顺序API做吗?更新为2):命名图层有效,尽管它似乎没有记录。只需添加参数名称,例如model.add(Dense(...,...,name="hiddenLayer1")。注意,具有相同名称的图层共享权重! 最佳答案