neural-network相关内容

详细在Keras中创建自定义损失功能

我尝试在Keras中创建自定义损失函数. 我想让这个损失功能 输出尺寸为80.批量为5000. 所以我在下面建立了这个损失函数.但这是行不通的. def normalize_activation(y_true, y_pred): nb_divide = K.reshape(K.sqrt(K.sum(K.square(y_pred), axis=1)),(5000, ..
发布时间:2020-04-25 11:04:42 Python

Keras模型根本不学习

我的模型权重(我将它们输出到weights_before.txt和weights_after.txt)在训练前后精确地是相同的,即训练没有任何改变,没有拟合. 我的数据看起来像这样(我基本上希望模型预测特征的符号,如果特征为负,则 结果为0,如果为正): ,feature,zerosColumn,result 0,-5,0,0 1,5,0,1 2,-3,0,0 3,5,0,1 4,3, ..

在有效但良好地训练LSTM上,并行性与训练方式

对于我打算自发生成序列的模型,我发现逐个样本地训练它并保持其间的状态是最自然的.阅读了许多有用的资源后,我设法在Keras中构建了它. (因此: Q和两个奇妙的答案,Macine Learning Mastery 2 ,首先构造一个序列(在我的情况下也是单编码).通过将Y向前移动一个时间步,可以从该序列中删除X和Y.训练以一个样本和一个时间步为单位进行. 对于Keras,这看起来像这样: ..
发布时间:2020-04-25 11:02:48 AI人工智能

仅对两个类使用categorical_crossentropy

计算机视觉和深度学习文献通常说,对于二元(两类)问题,应使用binary_crossentropy;对于两类以上的问题,应使用categorical_crossentropy.现在我想知道:是否有理由不将后者用于两类问题? 解决方案 categorical_crossentropy: 每个样本仅接受一个正确的类别 将“仅"获取真实的神经元,并与该神经元进行交叉熵计算 binary ..
发布时间:2020-04-25 11:01:34 其他开发

训练期间Keras神经网络精度始终为0

我正在使用keras神经网络进行简单的分类算法.目标是获取有关天气的3个数据点,并确定是否有野火.这是我用于训练模型的.csv数据集的图像(此图像只是最上面的几行,并不是全部): 野火天气数据集 如您所见,有4列,第四列是"1"表示"fire"或"0"表示"no fire".我希望算法预测1或0.这是我编写的代码: import numpy as np import matplotlib.p ..

Keras神经网络中val-acc和预测精度之间的巨大差异

我有一个用于在Keras中建立NN模型的数据集,我从该数据集中获取了2000行作为验证数据,应该在.predict函数中添加这2000行. 我为Keras NN写了一个代码,现在它可以正常工作,但是我注意到一些对我来说很奇怪的东西.它为我提供了超过83%的非常好的准确性,损失约为0.12,但是当我要使用看不见的数据(即2000行)进行预测时,它只能预测平均65%的正确率. 当我添加Dropo ..
发布时间:2020-04-25 10:58:55 AI人工智能

Keras神经网络.前处理

当我将神经网络适合于回归问题时,我对此表示怀疑.我使用来自 sklearn.preprocessing 的 Imputers 和 Scale 的方法对火车和测试数据的预测变量(特征)进行了预处理,但我没有预处理了我的火车数据或测试数据的类或目标. 在我的神经网络的体系结构中,除最后一层具有 Sigmoid 功能外,所有层均具有 relu 作为激活功能.我为最后一层选择了S型函数,因为预测值在 ..
发布时间:2020-04-25 10:55:21 Python

从2个自动编码器中提取特征并将其馈入MLP

我了解从自动编码器中提取的功能可以输入到mlp中以进行分类或回归.这是我之前所做的. 但是,如果我有2个自动编码器怎么办?是否可以从2个自动编码器的瓶颈层中提取特征并将其馈入基于这些特征执行分类的mlp中?如果是,那怎么办?我不确定如何串联这两个功能集.我尝试使用numpy.hstack()给出了“无法散列的切片"错误,而使用tf.concat()则给出了错误“模型的输入张量必须是Keras张量 ..
发布时间:2020-04-25 10:55:13 Python

深度学习:从一开始就在培训和验证损失之间存在巨大差异

我的神经网络是本文提出的模型的略微修改版本: https://arxiv.org /pdf/1606.01781.pdf 我的目标是将文本分类为9个不同的类别.我正在使用29个卷积层,并将任何文本的最大长度设置为256个字符. 训练数据有900k个样本,验证数据有35k个样本.数据非常不平衡,因此我做了一些数据扩充来平衡训练数据(显然没有触及验证数据),然后在训练中使用了班级权重. ..

Keras CNN尺寸问题

我正在基于这文章.因为我的数据集很小,所以我想使用Keras ImageDataGenerator并将其提供给fit_generator().因此,我遵循了Keras网站上的示例.但是,由于无法压缩图像和蒙版生成器,因此我遵循了我的输入数据大小为(701,256,1),我的问题是二进制(前景,背景).对于每个图像,我都有一个相同形状的标签. 现在,我正面临一个尺寸问题. answer ,但我 ..
发布时间:2020-04-25 10:52:26 Python

Keras:2D输入-> 2D输出?

我想构建一个神经网络来学习一组标准特征向量.因此,该集合的形状为(N,100),其中N是样本数.但是,标签集的形状为(Nx18)(例如,每个“标签"是由18个元素组成的另一个数组).我对keras和神经网络还很陌生,我只知道一维标签(例如二进制分类中的0或1)时如何处理标签.如何处理多维输出? 谢谢! 解决方案 也许我不完全理解这个问题,但是最简单的方法是使输出层具有18个神经元.每 ..
发布时间:2020-04-25 10:52:15 其他开发

test_on_batch和train_on_batch的不同损耗值

在尝试训练GAN生成图像时,我遇到了一个无法解释的问题. 训练发电机时,train_on_batch返回的损耗仅经过2或3次迭代即可直接降至零.经过调查,我意识到train_on_batch方法的一些奇怪行为: 当我检查以下内容时: noise = np.random.uniform(-1.0, 1.0, size=[batch_size, gen_noise_length]) ..

使用Keras Functional API的多个输入

Keras似乎缺少有关功能API的文档,但我可能会弄错一切. 我有多个独立的输入,并且我想预测每个输入的输出.到目前为止,这是我的代码: hour = Input(shape=(1,1), name='hour') hour_output = LSTM(1, name='hour_output')(hour) port = Input(shape=(1,1), name='po ..
发布时间:2020-04-25 10:51:25 Python