Questions tagged «keras»

Keras是一个神经网络库,在Python和R中提供了高级API。对于与如何使用此API有关的问题,请使用此标签。还请包含您使用的语言/后端的标签([python],[r],[tensorflow],[theano],[cntk])。如果您正在使用tensorflow的内置keras,请使用[tf.keras]标签。

3
Keras Tokenizer方法到底能做什么?
有时,我们需要执行以下操作: from keras.preprocessing.text import Tokenizer tokenizer = Tokenizer(num_words=my_max) 然后,我们总是吟诵此咒语: tokenizer.fit_on_texts(text) sequences = tokenizer.texts_to_sequences(text) 尽管我(或多或少)了解了总的效果,但是无论我做了多少研究(显然包括文档),我都无法弄清楚每个人分别做什么。我想我从来没有见过一个没有另一个。 那么,每个做什么?在任何情况下,您会使用其中一个而不使用另一个吗?如果不是,为什么不将它们简单地组合成如下形式: sequences = tokenizer.fit_on_texts_to_sequences(text) 很抱歉,如果我缺少明显的内容,但是我对此很陌生。
74 python  keras  nlp 


2
Keras:LSTM辍学和LSTM反复辍学之间的区别
从Keras文档中: dropout:介于0到1之间的浮点。输入线性变换要下降的单位的分数。 recurrent_dropout:在0到1之间浮动。用于递归状态线性转换的要下降的单位的分数。 谁能指出每个辍学下方图片的位置?
73 keras  lstm  dropout 

18
训练回归网络时NaN损失
我有一个“一键编码”(全1和全0)的数据矩阵,具有260,000行和35列。我正在使用Keras训练简单的神经网络来预测连续变量。组成网络的代码如下: model = Sequential() model.add(Dense(1024, input_shape=(n_train,))) model.add(Activation('relu')) model.add(Dropout(0.1)) model.add(Dense(512)) model.add(Activation('relu')) model.add(Dropout(0.1)) model.add(Dense(256)) model.add(Activation('relu')) model.add(Dropout(0.1)) model.add(Dense(1)) sgd = SGD(lr=0.01, nesterov=True); #rms = RMSprop() #model.compile(loss='categorical_crossentropy', optimizer=rms, metrics=['accuracy']) model.compile(loss='mean_absolute_error', optimizer=sgd) model.fit(X_train, Y_train, batch_size=32, nb_epoch=3, verbose=1, validation_data=(X_test,Y_test), callbacks=[EarlyStopping(monitor='val_loss', patience=4)] ) 但是,在训练过程中,我看到损失下降得很好,但是在第二个时期的中间,它就变成了nan: Train on 260000 samples, validate on 64905 samples Epoch 1/3 260000/260000 [==============================] - …

1
keras.argmax中axis = -1的含义是什么?
我是Keras的初学者,需要帮助以了解keras.argmax(a, axis=-1)和理解keras.max(a, axis=-1)。是什么意思axis=-1时a.shape = (19, 19, 5, 80)?而且也将是什么样的输出keras.argmax(a, axis=-1)和keras.max(a, axis=-1)?
71 keras  axis  argmax 

4
警告:tensorflow:sample_weight模式从…强制为['…']
使用.fit_generator()或.fit()将字典传递class_weight=为参数来训练图像分类器。 我从未在TF1.x中遇到错误,但在2.1中,开始训练时得到以下输出: WARNING:tensorflow:sample_weight modes were coerced from ... to ['...'] 强制从...到['...']到底意味着什么? tensorflow的回购中此警告的来源在此处,注释为: 尝试将sample_weight_modes强制转换为目标结构。这隐含地依赖于模型展平其内部表示的输出这一事实。


2
Keras的预测时间不一致
我试图估计我的keras模型的预测时间,并意识到一些奇怪的事情。除了正常情况下相当快外,模型偶尔还需要很长时间才能得出预测。不仅如此,这些时间还增加了模型运行的时间。我添加了一个最小的工作示例来重现该错误。 import time import numpy as np from sklearn.datasets import make_classification from tensorflow.keras.models import Sequential from tensorflow.keras.layers import Dense, Flatten # Make a dummy classification problem X, y = make_classification() # Make a dummy model model = Sequential() model.add(Dense(10, activation='relu',name='input',input_shape=(X.shape[1],))) model.add(Dense(2, activation='softmax',name='predictions')) model.compile(optimizer='adam', loss='sparse_categorical_crossentropy', metrics=['accuracy']) model.fit(X, y, verbose=0, batch_size=20, epochs=100) …

6
为什么神经网络会根据自己的训练数据预测错误?
的恩惠到期在19小时。这个问题的答案有资格获得+150声望奖励。 sirjay正在寻找信誉良好的答案。 我制作了带有监督学习的LSTM(RNN)神经网络,用于数据库存预测。问题是为什么它会根据自己的训练数据预测错误?(注意:可复制的示例以下可) 我创建了一个简单的模型来预测未来5天的股价: model = Sequential() model.add(LSTM(32, activation='sigmoid', input_shape=(x_train.shape[1], x_train.shape[2]))) model.add(Dense(y_train.shape[1])) model.compile(optimizer='adam', loss='mse') es = EarlyStopping(monitor='val_loss', patience=3, restore_best_weights=True) model.fit(x_train, y_train, batch_size=64, epochs=25, validation_data=(x_test, y_test), callbacks=[es]) 正确的结果以y_test(5个值)表示,因此对模型进行训练,可以回顾90天的前几天,然后使用以下方法从最佳(val_loss=0.0030)结果中恢复权重patience=3: Train on 396 samples, validate on 1 samples Epoch 1/25 396/396 [==============================] - 1s 2ms/step - loss: 0.1322 - val_loss: 0.0299 Epoch 2/25 …

2
最大化Keras模型的MSE
我有一个生成式对抗网络,其中通过MSE使鉴别器最小化,并且使生成器最大化。因为两者都是追求相反目标的对手。 generator = Sequential() generator.add(Dense(units=50, activation='sigmoid', input_shape=(15,))) generator.add(Dense(units=1, activation='sigmoid')) generator.compile(loss='mse', optimizer='adam') generator.train_on_batch(x_data, y_data) 为了获得可以从高MSE值中获利的生成器模型,我必须适应什么?

1
Keras中出现意外的关键字参数“参差不齐”
尝试使用以下python代码运行经过训练的keras模型: from keras.preprocessing.image import img_to_array from keras.models import load_model from imutils.video import VideoStream from threading import Thread import numpy as np import imutils import time import cv2 import os MODEL_PATH = "/home/pi/Documents/converted_keras/keras_model.h5" print("[info] loading model..") model = load_model(MODEL_PATH) print("[info] starting vid stream..") vs = VideoStream(usePiCamera=True).start() time.sleep(2.0) while True: frame = …

1
TypeError:len对于符号张量没有很好的定义。(activation_3 / Identity:0)请致电`x.shape`而不是`len(x)`以获得形状信息
我正在尝试在openAI体育馆的一场比赛中实现DQL模型。但这给了我以下错误。 TypeError:len对于符号张量没有很好的定义。(activation_3 / Identity:0)请致电,x.shape而不是len(x) 索取形状信息。 创建体育馆环境: ENV_NAME = 'CartPole-v0' env = gym.make(ENV_NAME) np.random.seed(123) env.seed(123) nb_actions = env.action_space.n 我的模型如下所示: model = Sequential() model.add(Flatten(input_shape=(1,) + env.observation_space.shape)) model.add(Dense(16)) model.add(Activation('relu')) model.add(Dense(nb_actions)) model.add(Activation('linear')) print(model.summary()) 通过keral-rl将模型拟合到DQN模型,如下所示: policy = EpsGreedyQPolicy() memory = SequentialMemory(limit=50000, window_length=1) dqn = DQNAgent(model=model, nb_actions=nb_actions, memory=memory, nb_steps_warmup=10, target_model_update=0.001, policy=policy) dqn.compile(Adam(lr=1e-3), metrics=['mse', 'mae']) dqn.fit(env, nb_steps=5000, …

1
每10个时间段tensorflow.keras v2保存模型
我正在使用在tensorflow v2中定义为子模块的keras。我正在使用fit_generator()方法训练模型。我想每10个时间保存一次模型。我该如何实现? 在Keras(不是tf的子模块)中,我可以给出ModelCheckpoint(model_savepath,period=10)。但在TF V2,他们已经改变了这ModelCheckpoint(model_savepath, save_freq)地方save_freq可'epoch'在这种情况下,模型保存每个时间段。如果save_freq为整数,则在处理了许多样本后将保存模型。但我希望在10个时代之后。我该如何实现?

4
tf.data.Dataset:不得为给定的输入类型指定`batch_size`参数
我使用的Talos和谷歌colab TPU运行的超参数调整Keras模型。请注意,我正在使用Tensorflow 1.15.0和Keras 2.2.4-tf。 import os import tensorflow as tf import talos as ta from tensorflow.keras.models import Sequential from tensorflow.keras.layers import Dense from tensorflow.keras.optimizers import Adam from sklearn.model_selection import train_test_split def iris_model(x_train, y_train, x_val, y_val, params): # Specify a distributed strategy to use TPU resolver = tf.contrib.cluster_resolver.TPUClusterResolver(tpu='grpc://' + os.environ['COLAB_TPU_ADDR']) tf.contrib.distribute.initialize_tpu_system(resolver) …

2
如何输出网络的第二层?
我的模型训练有数字图像(MNIST dataset)。我正在尝试打印网络第二层的输出-128个数字的数组。 在阅读了很多示例之后-例如this,this,this。 我没有在自己的网络上执行此操作。我自己的算法都无法使用这两种解决方案。 链接到Colab:https ://colab.research.google.com/drive/1MLbpWJmq8JZB4_zKongaHP2o3M1FpvAv ? fbclid = IwAR20xRz2i6sFS-Nm6Xwfk5hztdXOuxY4tZaDRXxAx3b986Toa9 我收到了很多不同的错误消息。我试图处理它们中的每一个,但我自己无法解决。 我想念什么?如何输出第二层? 如果我的形状是(28,28)-的类型和值应该是什么input_shape? 试用失败和错误,例如: (1) for layer in model.layers: get_2nd_layer_output = K.function([model.layers[0].input],[model.layers[2].output]) layer_output = get_2nd_layer_output(layer)[0] print('\nlayer output: get_2nd_layer_output=, layer=', layer, '\nlayer output: get_2nd_layer_output=', get_2nd_layer_output) TypeError:输入应为列表或元组。 (2) input_shape=(28, 28) inp = model.input # input placeholder outputs = [layer.output for layer in …

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.