我用CNN算法练习ML.然后我找到了参考教程,第6页和第7页.
我猜默认内核是矩阵中的所有'1'实例(MXNet中的内核).如何制作如上滑动的平滑内核.
这是带有R的MXNet代码.
mx.symbol.Convolution(data=data, kernel=c(5,5), num_filter=20)
Run Code Online (Sandbox Code Playgroud) 我试图在Julia中使用mxnet.jl从mxnet主文档复制以下示例:
A = Variable('A')
B = Variable('B')
C = B * A
D = C + Constant(1)
# get gradient node.
gA, gB = D.grad(wrt=[A, B])
# compiles the gradient function.
f = compile([gA, gB])
grad_a, grad_b = f(A=np.ones(10), B=np.ones(10)*2)
Run Code Online (Sandbox Code Playgroud)
该示例显示如何自动提取symoblic表达式并获取其渐变.
mxnet.jl(2016-03-07最新版本)中的等价物是什么?
我有一个预先训练好的Mxnet模型.我需要更改最后两层并添加新的两层进行测试.基本上,我需要创建图像的概率图.我怎样才能做到这一点 ?
如何找到MXNet符号中保存的实际数值.
假设我有,
x = mx.sym.Variable('x')
y = mx.sym.Variable('y')
z = x + y,
Run Code Online (Sandbox Code Playgroud)
如果x = [100,200]且y = [300,400],我想打印:
z = [400,600],
有点像tensorflow的eval()方法
我在MXNet中有2个符号,并希望将它们连接起来.我怎样才能做到这一点:
例如:a = [100,200],,我b = [300,400]想得到
c = [100,200,300,400]
注意:
我是MXNet的新手。
看来该Gluon模块是要替换(?)Symbol作为高级神经网络(nn)接口的模块。因此这个问题专门利用Gluon模块寻求答案。
残差神经网络(res-NNs)是相当流行的体系结构(该链接提供了对res-NNs的回顾)。简而言之,res-NN是一种架构,其中输入经历(一系列)转换(例如,通过标准nn层),最后在激活功能之前将其与纯净的自身组合:
因此,这里的主要问题是“如何使用自定义实现res-NN结构gluon.Block?” 以下是:
通常,子问题被视为并发主要问题,导致帖子被标记为过于笼统。在这种情况下,它们是合法的子问题,因为我无法解决我的主要问题是由这些子问题引起的,并且胶子模块的部分/初稿文档不足以回答这些问题。
“如何通过自定义实现res-NN结构gluon.Block?”
首先让我们进行一些导入:
import mxnet as mx
import numpy as np
import math
import random
gpu_device=mx.gpu()
ctx = gpu_device
Run Code Online (Sandbox Code Playgroud)
在定义res-NN结构之前,首先我们定义一个通用的卷积NN(cnn)架构;即卷积?批处理规范。?坡道。
class CNN1D(mx.gluon.Block):
def __init__(self, channels, kernel, stride=1, padding=0, **kwargs):
super(CNN1D, self).__init__(**kwargs)
with self.name_scope():
self.conv = mx.gluon.nn.Conv1D(channels=channels, kernel_size=kernel, strides=1, padding=padding)
self.bn = mx.gluon.nn.BatchNorm()
self.ramp = mx.gluon.nn.Activation(activation='relu')
def forward(self, x):
x = self.conv(x) …Run Code Online (Sandbox Code Playgroud) 使用 virtualenv 和 -p python2 安装时pip install gluoncv出错并出现以下错误
Requirement already satisfied: setuptools in ./mxv16_p2/lib/python2.7/site-packages (45.0.0)
ERROR: Package 'setuptools' requires a different Python: 2.7.12 not in '>=3.5'
Run Code Online (Sandbox Code Playgroud) MXNet 和 PyTorch 都提供了计算 log 的特殊实现(softmax()),速度更快,数值更稳定。但是,我在这两个包中都找不到该函数 log_softmax() 的实际 Python 实现。
谁能解释一下这是如何实现的,或者更好的是,给我指出相关的源代码?
最近决定学习MXNet,因为我需要用到的一些代码,就是用这个API写的。
但是,我想知道 MXNet 与其他深度学习库相比有哪些优点和缺点。
我想训练一个神经网络,同时使用 MXNet 在我的 g2.8xarge EC2 实例上利用所有 4 个 GPU。我正在使用以下 AWS Deep Learning Linux 社区 AMI:
深度学习 AMI Amazon Linux - 3.3_Oct2017 - ami-999844e0)
根据这些说明,当我连接到实例时,我通过发出以下命令切换到带有 MXNet 后端的 keras v1:
source ~/src/anaconda3/bin/activate keras1.2_p2
Run Code Online (Sandbox Code Playgroud)
我还在 python 模型编译代码中添加了上下文标志,以利用 MXNet 中的 GPU:
model.compile(loss='binary_crossentropy', optimizer='adam', metrics=['accuracy'], context=gpu_list)
Run Code Online (Sandbox Code Playgroud)
其中 gpu_list 旨在利用所有 4 个 GPU。
但是,每次运行代码时,我都会收到以下错误消息:
Epoch 1/300 [15:09:52] /home/travis/build/dmlc/mxnet-distro/mxnet-build/dmlc-core/include/dmlc/logging.h:308: [15:09:52] src /storage/storage.cc:113:使用 USE_CUDA=1 进行编译以启用 GPU 使用
和
运行时错误:simple_bind 错误。参数:dense_input_1: (25, 34L) [15:09:52] src/storage/storage.cc:113:使用 USE_CUDA=1 进行编译以启用 GPU 使用
我检查了 /home/ec2-user/src/mxnet 中的 config.mk 文件,它包含 USE_CUDA=1。我还发出了“made”命令来尝试使用 USE_CUDA=1 标志重新编译 …
machine-learning amazon-ec2 amazon-web-services deep-learning mxnet
mxnet ×10
python ×5
pytorch ×2
amazon-ec2 ×1
caffe ×1
julia ×1
mxnet.jl ×1
nlp ×1
python-2.7 ×1
python-3.x ×1
r ×1
tensorflow ×1
virtualenv ×1