小编Ove*_*gon的帖子

如何从命令行使用节点模块?

我找不到任何关于此的简单说明。我已经安装了 node.js 和 npm,然后在其自己的文件夹 中创建了一个项目,D:\node_stuff然后通过cmd(Windows 10) cd 到那里并运行npm install express, npm init。我正在尝试使用gififynpm ,并通过而不是brew(ffmpeg、imagemagick、giflossy)安装其依赖项。

  • gifify -h->“gifify”不被识别为内部或外部命令、可操作程序或批处理文件。
  • node gifify -h-> 错误:找不到模块 'D:\node_stuff\gifify'
  • cd node_modules-> node gifify -h-> 什么也没发生

我究竟做错了什么?我什至在哪里看 - 所有带有简单搜索的教程仅显示如何安装软件包或构建项目 - 我不需要构建任何东西,只需使用这个模块。

node.js npm node-modules

4
推荐指数
1
解决办法
7518
查看次数

AttributeError: 'FrozenImporter' 对象没有属性 'filename'

使用 PyInstaller 运行从 plotly-dash 代码生成的 exe 文件时,我不断收到以下错误。

AttributeError: 'FrozenImporter' object has no attribute 'filename'
Run Code Online (Sandbox Code Playgroud)

做了一些深入的检查,只能识别出当 dash 尝试导入 dash_renderer并从package.filename行检索文件名时发生的属性错误

尝试添加以下但仍然无法解决

  1. import dash_renderer添加到我的代码中
  2. 将 dash 和 dash_renderer 包文件夹复制到 dist/{app}/ 文件夹中

我的情节破折号代码

external_stylesheets = ['https://codepen.io/chriddyp/pen/bWLwgP.css']

app = dash.Dash(__name__, external_stylesheets=external_stylesheets)

app.layout = html.Div(children=[
    html.H2(children='H-{} Meeting Dashboard'.format("SS"), style={'text-align':'center'}),
    html.Div(children=[
        html.Div('''Generated on {}'''.format(str(datetime.now())[:19]), style={'text-align':'center', 'font-size':'15px'})
        ], className='row')]
    )

if __name__ == "__main__":
    app.run_server(debug=True)
Run Code Online (Sandbox Code Playgroud)

用于生成 exe 文件的 PyInstaller 代码

\path\to\python37\python.exe -m PyInstaller app_short.py
Run Code Online (Sandbox Code Playgroud)

运行 .exe 文件时出错,遇到以下错误

my\directory>app_short.exe
2019-06-25 23:36:55 Imported all …
Run Code Online (Sandbox Code Playgroud)

python pyinstaller plotly-dash

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

LSTM 'recurrent_dropout' 与 'relu' 产生 NaN

任何非零值recurrent_dropout都会产生 NaN 损失和权重;后者要么是 0,要么是 NaN。发生在堆叠、浅、stateful, return_sequences= 任何、带有 & w/o Bidirectional(), activation='relu', loss='binary_crossentropy'。NaN 发生在几个批次内。

有修复吗?感谢帮助。


尝试排除故障

  • recurrent_dropout=0.2,0.1,0.01,1e-6
  • kernel_constraint=maxnorm(0.5,axis=0)
  • recurrent_constraint=maxnorm(0.5,axis=0)
  • clipnorm=50 (经验确定),Nadam 优化器
  • activation='tanh'- 无 NaN,权重稳定,测试最多 10 个批次
  • lr=2e-6,2e-5- 无 NaN,权重稳定,测试最多 10 个批次
  • lr=5e-5- 3 个批次没有 NaN,权重稳定 - 第 4 批次有 NaN
  • batch_shape=(32,48,16)- 2 个批次损失较大,第 3 批次为 NaN

注意:每批次batch_shape=(32,672,16)17 次调用train_on_batch


环境

  • Keras 2.2.4(TensorFlow 后端)、Python 3.7、Spyder 3.3.7(通过 Anaconda)
  • GTX 1070 6GB、i7-7700HQ、12GB 内存、Win-10.0.17134 x64
  • CuDNN 10+,最新的 …

numerical-stability lstm keras tensorflow

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

Keras:当相同的输入被传递给两个函数时,为什么 train_on_batch() 和 test_on_batch() 的损失不同?

我将相同的输入(即相同的数据和相同的真实标签)传递给 keras train_on_batch() 和 test_on_batch()。我想知道为什么我的两个函数得到不同的损失值。

代码:

model_del_fin.compile(optimizer=SGD(lr=0.001,decay=0.001/15), loss='categorical_crossentropy',metrics=['accuracy'])
iters_per_epoch = 1285 // 50
print(iters_per_epoch)
num_epochs = 15
outs_store_freq = 20 # in iters
print_loss_freq = 20 # in iters

iter_num = 0
epoch_num = 0
model_outputs = []
loss_history  = []

while epoch_num < num_epochs:
  print("ok")
  while iter_num < iters_per_epoch:
    x_train, y_train = next(train_it2)
    loss_history += [model_del_fin.train_on_batch([x_train,x_train], y_train)]
    print("Iter {} loss: {}".format(iter_num, loss_history[-1]))
    print(model_del_fin.test_on_batch([x_train,x_train], y_train))
    iter_num += 1
  print("EPOCH {} FINISHED".format(epoch_num + 1))

  epoch_num += 1
  iter_num = 0 # …
Run Code Online (Sandbox Code Playgroud)

python deep-learning keras tensorflow

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

如果 Keras 结果不可重复,那么比较模型和选择超参数的最佳做法是什么?

更新:这个问题是针对 Tensorflow 1.x 的。我升级到 2.0 并且(至少在下面的简单代码中)重现性问题似乎已在 2.0 上解决。这样就解决了我的问题;但我仍然很好奇 1.x 上针对此问题使用了哪些“最佳实践”。

在 keras/tensorflow 上训练完全相同的模型/参数/数据不会给出可重复的结果,并且每次训练模型时损失都显着不同。有很多关于此的 stackoverflow 问题(例如,如何在 keras 中获得可重现的结果),但推荐的解决方法似乎对我或 StackOverflow 上的许多其他人不起作用。好的,就是这样。

但是考虑到 keras 在张量流上的不可重复性的限制——比较模型和选择超参数的最佳实践是什么?我正在测试不同的架构和激活,但由于每次的损失估计都不同,我永远不确定一个模型是否比另一个更好。是否有处理此问题的最佳做法?

我认为这个问题与我的代码没有任何关系,但以防万一;这是一个示例程序:

import os
#stackoverflow says turning off the GPU helps reproducibility, but it doesn't help for me
os.environ["CUDA_DEVICE_ORDER"] = "PCI_BUS_ID"
os.environ["CUDA_VISIBLE_DEVICES"] = ""
os.environ['PYTHONHASHSEED']=str(1)

import tensorflow as tf
import tensorflow.keras as keras
import tensorflow.keras.layers 
import random
import pandas as pd
import numpy as np

#StackOverflow says this is needed for reproducibility but it doesn't help for …
Run Code Online (Sandbox Code Playgroud)

python reproducible-research keras tensorflow

3
推荐指数
2
解决办法
2231
查看次数

使用多个样本时,如何使用 Keras 进行多变量时间序列预测

正如标题所述,我正在做多元时间序列预测。我对这种情况有一些经验,并且能够在 TF Keras 中成功设置和训练一个工作模型。

但是,我不知道处理多个不相关的时间序列样本的“正确”方法。我有大约 8000 个独特的样本“块”,每个样本有 800 个时间步到 30,000 个时间步。当然,我无法将它们全部连接成一个时间序列,因为样本 2 的第一个点与样本 1 的最后一个点在时间上没有关系。

因此,我的解决方案是将每个样本单独放入一个循环中(效率极低)。

我的新想法是可以/应该我用空的时间步长填充每个样本的开始= RNN 的回顾量,然后将填充的样本连接成一个时间序列?这意味着第一个时间步将有一个主要为 0 的回溯数据,这听起来像是针对我的问题的另一个“黑客”,而不是正确的方法。

python time-series lstm keras tensorflow

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

如何在 Keras/TensorFlow 中可视化 RNN/LSTM 权重?

我遇到过研究出版物和问答讨论检查 RNN 权重的必要性;一些相关的答案是在正确的方向,建议get_weights()- 但我如何真正有意义地可视化权重?也就是说,LSTM 和 GRU 都有,并且所有RNN 都有用作独立特征提取器的通道- 那么我如何(1)获取每个门的权重,以及(2)以信息丰富的方式绘制它们?

python visualization keras tensorflow recurrent-neural-network

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

DLL 加载失败:找不到特定模块(VSCode、Numpy)

发生错误import numpy as np;命令在终端中直接输入时工作正常,但通过Code Runner运行时失败。我在下面重现的步骤。

的输出import sys; print(sys.version)3.7.5 (default, Oct 31 2019, 15:18:51) [MSC v.1916 64 bit (AMD64)]。VSCode 显示它正在运行预期的 Python 解释器:Python 3.7.5 64-bit ('vsc': conda)在左下窗格(见剪辑)。- 简短的视频演示

有关启用的扩展和内容的完整列表settings.json,请参阅相关的 Git

是什么问题,如何解决?


环境信息:Windows 10 x64、Anaconda 10/19(虚拟环境)、VSCode 1.41.1


重现步骤:

conda create --name vsc
conda activate vsc
conda install python==3.7.5
conda install numpy
# in VSCode: import numpy as np, etc
Run Code Online (Sandbox Code Playgroud)

完整追溯

conda create --name vsc
conda …
Run Code Online (Sandbox Code Playgroud)

python numpy anaconda visual-studio-code

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

批量大小=1时的批量标准化

当我使用批量标准化但设置时会发生什么batch_size = 1

因为我使用 3D 医学图像作为训练数据集,由于 GPU 限制,batch size 只能设置为 1。通常,我知道,当 时batch_size = 1,方差将为 0。并且(x-mean)/variance会因除以0 而导致错误。

但是为什么我设置的时候没有出现错误batch_size = 1呢?为什么我的网络训练得和我预期的一样好?有人能解释一下吗?

有人认为:

ZeroDivisionError由于两种情况,可能不会遇到 。首先,异常在trycatch 块中被捕获。其次,1e-19在方差项中添加一个小的有理数 ( ),使其永远不会为零。

也有人不同意。他们说:

您应该计算批次图像中所有像素的均值和标准差。(所以即使batch_size = 1,batch中仍然有很多像素。所以batch_size=1仍然可以工作的原因不是因为1e-19

我查过Pytorch的源码,从代码上我觉得后一种是对的。

有人有不同意见吗???

python deep-learning keras tensorflow batch-normalization

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

如何将对象添加到Sphinx的全局索引,或通过别名交叉引用?

每次我都必须引用一个我不愿意引用的方法:func:`package.subpackage.module.method`,尤其是那些经常使用的方法。有没有办法以某种方式“注册”,package.subpackage这样就module.method足够了?(更好的是,假设没有冲突,package.subpackage.module这样就足够了)。method

解决方案不应涉及将目录添加到packageor subpackage,但我可以将任何内容添加到docs/. 请注意,这里的问题涉及method文档字符串模块外部的定义(否则.method有效)。

python cross-reference python-sphinx

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