DNI,用于Pythorch
pytorch-dni的Python项目详细描述
#使用合成梯度分离神经界面[构建状态](https://travis-ci.org/ixaxaar/pytorch-dni.svg?branch=master)(https://travis-ci.org/ixaxaar/pytorch-dni)[![PYPI版本](https://badge.fury.io/py/dni.svg)](https://badge.fury.io/py/pytorch dni)
<;!--启动DOCTOC生成的目录请在此处保留注释以允许自动更新-->;
<;!--不要编辑此部分,而是重新运行doctor以更新-->;
-[安装](安装)
-[从源代码](从源代码)
-[架构](架构)
-[用法](用法)
-[任务]
<;!--结束DOCTOC生成的TOC请在此处保留注释以允许自动更新-->;
这是使用合成梯度的[分离神经接口的实现,Jaderberg et al.](https://arxiv.org/abs/1608.05343).
## Install
```bash
pip install pytorch-dni
```
### From source
```
git clone https://github.com/ixaxaar/pytorch-dni
cd pytorch-dni
pip install -r ./requirements.txt
pip install -e .
```
## Architecure
<img src=“../docs/3-6.gif//>;
<
``python
从dni导入dni
>自定义网络,可以是任何扩展的nn.module,可以是任何扩展的nn.module,可以是任何扩展的nn.module,可以是任何网络网络的网络,可以是任何网络的网络,可以是网络的网络的网络,可以是网络的网络的网络,可以是网络的网络的网络扩展,可以是网络的网络的网络,可以是网络的网络的网络的网络的网络的网络扩展,可以是网络的网络的网络的网络的网络,可以是网络的网络的网络的优化网络的。网,在那之后,我们继续我们的日常工作
e in range(epoch)的e in range(epoch)的e in range(epoch):
opt.zero_grad()
output=net(输入,*args)
loss=crcrcrcriter(输出,目标输出)
loss.backward
opt.step()
-nrnn_dni:堆叠的lstm、gru或rnn
-线性:2层线性模块
-线性:2层线性模块
-乙状结肠:2层线性,然后是乙状结肠
>定义初始化(自我,输入大小,隐藏大小,输出大小,**kwargs):
超级(mydni,self)。\uu init(输入大小,隐藏大小,输出大小)
self.net={…您的自定义网络}
…
def forward(self,input,hidden):
return self.net(input),none return(output,hidden),hidden可以是none
`````
除了他们在这里使用dni进行培训之外。
对于mse线性sg是一个合理的选择,但是对于日志丢失,应该使用包括sigmoid在内的体系结构,将sigmoid逐点应用于线性sg
<;!--启动DOCTOC生成的目录请在此处保留注释以允许自动更新-->;
<;!--不要编辑此部分,而是重新运行doctor以更新-->;
-[安装](安装)
-[从源代码](从源代码)
-[架构](架构)
-[用法](用法)
-[任务]
<;!--结束DOCTOC生成的TOC请在此处保留注释以允许自动更新-->;
这是使用合成梯度的[分离神经接口的实现,Jaderberg et al.](https://arxiv.org/abs/1608.05343).
## Install
```bash
pip install pytorch-dni
```
### From source
```
git clone https://github.com/ixaxaar/pytorch-dni
cd pytorch-dni
pip install -r ./requirements.txt
pip install -e .
```
## Architecure
<img src=“../docs/3-6.gif//>;
<
``python
从dni导入dni
>自定义网络,可以是任何扩展的nn.module,可以是任何扩展的nn.module,可以是任何扩展的nn.module,可以是任何网络网络的网络,可以是任何网络的网络,可以是网络的网络的网络,可以是网络的网络的网络,可以是网络的网络的网络扩展,可以是网络的网络的网络,可以是网络的网络的网络的网络的网络的网络扩展,可以是网络的网络的网络的网络的网络,可以是网络的网络的网络的优化网络的。网,在那之后,我们继续我们的日常工作
e in range(epoch)的e in range(epoch)的e in range(epoch):
opt.zero_grad()
output=net(输入,*args)
loss=crcrcrcriter(输出,目标输出)
loss.backward
opt.step()
-nrnn_dni:堆叠的lstm、gru或rnn
-线性:2层线性模块
-线性:2层线性模块
-乙状结肠:2层线性,然后是乙状结肠
>定义初始化(自我,输入大小,隐藏大小,输出大小,**kwargs):
超级(mydni,self)。\uu init(输入大小,隐藏大小,输出大小)
self.net={…您的自定义网络}
…
def forward(self,input,hidden):
return self.net(input),none return(output,hidden),hidden可以是none
`````
除了他们在这里使用dni进行培训之外。
对于mse线性sg是一个合理的选择,但是对于日志丢失,应该使用包括sigmoid在内的体系结构,将sigmoid逐点应用于线性sg