小编jin*_*imo的帖子

keras:如何保存培训历史记录

在Keras,我们可以将输出返回model.fit到历史记录,如下所示:

 history = model.fit(X_train, y_train, 
                     batch_size=batch_size, 
                     nb_epoch=nb_epoch,
                     validation_data=(X_test, y_test))
Run Code Online (Sandbox Code Playgroud)

现在,如何将历史记录保存到文件中以供进一步使用(例如,绘制针对时期的acc或loss的绘制图)?

python machine-learning neural-network deep-learning keras

39
推荐指数
6
解决办法
3万
查看次数

keras:model.predict和model.predict_proba之间有什么区别

我发现model.predict和model.predict_proba都给出了一个相同的2D矩阵,表示每行的每个类别的概率.

这两个功能有什么区别?

python machine-learning deep-learning keras

20
推荐指数
1
解决办法
3万
查看次数

Keras CNN模型参数计算

我的cnn模型是使用Keras 1.1.1创建的,它有两个卷积池,后面是两个密集层,并在第二个卷积池和第一个密集层之后添加了丢失.代码如下:

model = Sequential()
#convolution-pooling layers
model.add(Convolution2D(32, 5, 5, input_shape=input_shape))
model.add(Activation('relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Convolution2D(64, 5, 5))
model.add(Activation('relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.25))
#dense layers
model.add(Flatten()) 
model.add(Dense(100))
model.add(Activation('relu'))
model.add(Dropout(0.5))
model.add((Dense(2)))
model.add(Activation('softmax'))
#optimizer
sgd = SGD(lr=1e-3, decay=1e-6, momentum=0.9, nesterov=True) 
model.compile(loss='categorical_crossentropy',
              optimizer = sgd,
              metrics=['accuracy'])
print model.summary()
Run Code Online (Sandbox Code Playgroud)

模型摘要给出如下表:

在此输入图像描述

我不清楚如何计算第二卷积层的参数数量(即,由红色矩形指示的51264).我认为数字将是(5*5 + 1)*64 = 1664,因为卷积内核的大小为5*5,并且要提取64个特征映射.

此外,我已经实施了辍学.为什么参数表不能反映这一点.虽然表中列出了丢失(层),但似乎没有给出丢失的参数号.任何人都可以帮我解释参数摘要?

keras

12
推荐指数
1
解决办法
6049
查看次数

在哪里可以找到安装在 google Colab 中的现有包

我想检查一些软件包是否安装在Colab. 用于存储已安装软件包的特定文件夹是什么(例如,keras)?

google-colaboratory

12
推荐指数
1
解决办法
8317
查看次数

Keras:model.evaluate_generator和model.predict_generator之间有什么区别

我使用keras数据增强来执行图像分类(十级图像).最后一次训练时期给出的结果如下:

Epoch 50/50
4544/4545 [============================>.] - ETA: 0s - loss: 0.7628 - acc: 0.7359 loss:  0.762710434054
New learning rate:  0.00214407973866
4545/4545 [==============================] - 115s - loss: 0.7627 - acc: 0.7360 - val_loss: 0.5563 - val_acc: 0.8124
Run Code Online (Sandbox Code Playgroud)

然后评估训练模型:

scores = model.evaluate_generator(test_generator,1514) #1514 testing images
print("Accuracy = ", scores[1])
Run Code Online (Sandbox Code Playgroud)

它导致以下结果:

('Accuracy = ', 0.80713342132152621)
Run Code Online (Sandbox Code Playgroud)

准确性与上一次训练时期的准确性不完全相同.我不明白这种差异,即使它是微不足道的.

此外,model.predict_generator给出了完全不同的结果,该数组如下所示:

array([[  4.98306963e-06,   1.83774697e-04,   5.49453034e-05, ...,
      9.25193787e-01,   7.74697517e-04,   5.79946618e-06],
   [  2.06657965e-02,   2.35974863e-01,   2.66802781e-05, ...,
      2.16283044e-03,   8.42395966e-05,   2.46680051e-04],
   [  1.40222355e-05,   1.22740224e-03,   7.52218883e-04, ...,
      3.76749843e-01,   3.85622412e-01,   6.47417846e-06],
   ..., 
   [ …
Run Code Online (Sandbox Code Playgroud)

keras

11
推荐指数
1
解决办法
2万
查看次数

如何使用oid sha256信息下载git-lfs文件

我遇到了一组图像(例如,https://github.com/kehuantiantang/A-DNN-based-Semantic-Segmentation-for-Detecting-Weed-and-Crop/blob/master/stuttgart/stuttgart_cp_00000.npy)存储在 中git lfs的信息如下:

version https://git-lfs.github.com/spec/v1
oid sha256:6692f38904c1ae21cd3d3e6e378538c07fda86fe97ee01d8664bb95fc20cd1de
size 8889498
Run Code Online (Sandbox Code Playgroud)

如何查看和下载原图文件?我是 Git LFS 新手。任何人都可以提供一些详细的步骤吗?

我所做的更新:

我下载了 github 仓库:https://github.com/kehuantiantang/A-DNN-based-Semantic-Segmentation-for-Detecting-Weed-and-Crop

将其解压缩到一个文件夹和cd子文件夹stuttgart(以下是其中包含的内容: https: //github.com/kehuantiantang/A-DNN-based-Semantic-Segmentation-for-Detecting-Weed-and-Crop/tree/master /斯图加特),

键入命令git lfs pull(通过git bashwin10),但出现此错误:“批量响应:超出速率限制: https: //github.com/kehuantantang/A-DNN-based-Semantic-Segmentation-for-Detecting-Weed-and-Crop .git/info/lfs/objects/batch错误:无法从 'https://github.com/kehuantantang/A-DNN-based-Semantic-Segmentation-for-Detecting-Weed-and-Crop.git 获取某些对象/信息/lfs'

git gitlab git-lfs

9
推荐指数
1
解决办法
1万
查看次数

Keras:LSTM中的input_dim和input_length的区别

在构建LSTM时,我们需要通过以下方式提供输入形状信息:

input_shape = () # a tuple
Run Code Online (Sandbox Code Playgroud)

或者,通过:

input_length = () # an integer
input_dim = () # an integer
Run Code Online (Sandbox Code Playgroud)

我对这两个数量感到有些困惑.它们表明了什么?

另外,input_dim是所谓的时间步吗?

lstm keras

8
推荐指数
1
解决办法
1928
查看次数

在python中,如果os.chdir ='path'已经实现,如何恢复os.chdir()的功能

在路径设置中,我错误地编写了代码:os.chdir ='\ some path',它将函数os.chdir()转换为字符串.有没有快速的方法来恢复功能而无需重新启动软件?谢谢!

python

7
推荐指数
1
解决办法
1144
查看次数

Keras:嵌入 LSTM

在 LSTM 上用于对 IMDB 序列数据建模的 keras 示例中(https://github.com/fchollet/keras/blob/master/examples/imdb_lstm.py),在输入到 LSTM 层之前有一个嵌入层:

model.add(Embedding(max_features,128)) #max_features=20000
model.add(LSTM(128))
Run Code Online (Sandbox Code Playgroud)

嵌入层的真正作用是什么?在这种情况下,这是否意味着进入 LSTM 层的输入序列的长度是 128?如果是这样,我可以将 LSTM 层写为:

model.add(LSTM(128,input_shape=(128,1))
Run Code Online (Sandbox Code Playgroud)

但也注意到输入X_train已经过pad_sequences处理:

print('Pad sequences (samples x time)')
X_train = sequence.pad_sequences(X_train, maxlen=maxlen) #maxlen=80
X_test = sequence.pad_sequences(X_test, maxlen=maxlen) #maxlen=80
Run Code Online (Sandbox Code Playgroud)

好像输入序列长度是80?

embedding lstm keras

6
推荐指数
1
解决办法
9141
查看次数

qDebug - 如何以位(二进制格式)输出数据

qDebug()可以以二进制格式输出数据吗?
例如,我想检查一些状态变化:

unsigned char status;
...
qDebug() << "Status: " << status;
Run Code Online (Sandbox Code Playgroud)

我想以二进制格式生成输出,如:

Status: 1011
Run Code Online (Sandbox Code Playgroud)

c++ qt qdebug qt5

6
推荐指数
1
解决办法
1267
查看次数