MNIST手書き数字認識用ニューラルネットワークが完成したので、今度は本命のミニ・ロボットカーを白線間を走らせるための白線追従走行用畳み込みニューラルネットワーク(白線追従走行用CNN)を製作しよう。 白線追従走行用CNNを作るにあたって、最初は直線の白線間を追従走行するための畳み込みニューラルネットワーク(CNN)を作ろうと思う。具体的には、多少外れた位置にいても、直線の白線間に戻れるCNNを学習させようと思っている。まずは小手調べとして、直線を走行するためだけのCNNを学習させてみよう。とは言っても外れた場合も戻ってくるように異常状態を考えるといくらでもありそうだ。しかし、ある程度のシチュエーションで白線間に戻れるようにすれば良いかと思うので、そうしようと思う。白線が全く見えない状況で探索する必要は無いということだ。 具体的には、Zybot のカメラで撮影した写真を使って、どの程度の画
”「ゼロから作るDeep Learning」の畳み込みニューラルネットワークのハードウェア化6(再度Vivado HLS )”の続き。 前回は、畳み込みニューラルネットワークをVivado HLS でハードウェア化することができた。今回は、HDLコードを見たり、C/RTL協調シミュレーションをしてみてから、IP化を行ってみよう。ただし、デフォルトのインターフェースのままでは、IP にしたときに使いにくいので、実際に使用する際にはAXI バスにする。 最初に生成されたHDLコードを見てみよう。VHDL コードを見る。トップファイルのmnist_conv_nn.vhd はメモリのインターフェースとなっている。 さて、次にC/RTL協調シミュレーションをやってみよう。ただし、100 回は長すぎるので、1 回だけやってみる。 C/RTL協調シミュレーションの結果を示す。 172089 クロックかか
「ゼロから作るDeep Learning」は以前、すべての章をご紹介した。とっても良い本だ。 その5章 誤差逆伝播法の2層のニューラルネットワークをハードウェア化してFPGA に実装してみようと思う。 学習はdeep-learning-from-scratch/ch05/ のtrain_neuralnet.py のコードをそのまま使用する。 このままでは浮動小数点数なので、指定されたビット長の固定小数点に量子化するメソッドをtwo_layer_net.py、layers.py に追加してある。それが、two_layer_net_int.py、layers_int.py だ。 上の図のように Class Relu に def forward_int が追加されているのが分かると思う。つまり、固定小数点に量子化してforward 処理を実行するメソッドを追加したわけだ。ただし、Relu はfo
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く