AICurious Logo

What is: DPN Block?

SourceDual Path Networks
Year2000
Data SourceCC BY-SA - https://paperswithcode.com

A Dual Path Network block is an image model block used in convolutional neural network. The idea of this module is to enable sharing of common features while maintaining the flexibility to explore new features through dual path architectures. In this sense it combines the benefits of ResNets and DenseNets. It was proposed as part of the DPN CNN architecture.

We formulate such a dual path architecture as follows:

xk=_t=1k1f_tk(ht),x^{k} = \sum\limits\_{t=1}^{k-1} f\_t^{k}(h^t) \text{,}

yk=_t=1k1v_t(ht)=yk1+ϕk1(yk1),y^{k} = \sum\limits\_{t=1}^{k-1} v\_t(h^t) = y^{k-1} + \phi^{k-1}(y^{k-1}) \text{,} \\\\
rk=xk+yk,r^{k} = x^{k} + y^{k} \text{,} \\\\
hk=gk(rk),h^k = g^k \left( r^{k} \right) \text{,}

where xkx^{k} and yky^{k} denote the extracted information at kk-th step from individual path, vt()v_t(\cdot) is a feature learning function as ftk()f_t^k(\cdot). The first equation refers to the densely connected path that enables exploring new features. The second equation refers to the residual path that enables common features re-usage. The third equation defines the dual path that integrates them and feeds them to the last transformation function in the last equation.