実現されたPyBrainはオープンソースであり、Pythonディレクトリにソースコードがあります。C:\ Python27 \ Lib \ site-packages \ pybrain \ tools\shortcuts.pyファイルを開きました。このファイル内でbuildNetwork関数を見つけ、BiasUnitがどのように追加されるかを確認しました。関連するコードは次のとおりです。
...
n = Network()
# linear input layer
n.addInputModule(LinearLayer(layers[0], name='in'))
# output layer of type 'outclass'
n.addOutputModule(opt['outclass'](layers[-1], name='out'))
if opt['bias']:
# add bias module and connection to out module, if desired
n.addModule(BiasUnit(name='bias'))
if opt['outputbias']:
n.addConnection(FullConnection(n['bias'], n['out']))
# arbitrary number of hidden layers of type 'hiddenclass'
for i, num in enumerate(layers[1:-1]):
layername = 'hidden%i' % i
n.addModule(opt['hiddenclass'](num, name=layername))
if opt['bias']:
# also connect all the layers with the bias
n.addConnection(FullConnection(n['bias'], n[layername]))
# connections between hidden layers
...
基本的には、単一のBiasUnitを作成し、それを各非表示レイヤーに接続し、オプションで出力レイヤーにも接続するように見えます。