2017.10.21ここ最近、ディープラーニングというか、ニューラルネットワークのお勉強をしてみて、その処理コストが高いため、実装では行列演算として扱われていることを知った。ディープラーニング」を購入して少しずつ読み進めていたのです。↓ところが、読み進めている途中で壁にぶち当たりました。―Pythonで学ぶディープラーニングの理論と実装」を一通り読み終わりました。C#で実装しながら勉強する」とか言っておきながら、結局途中で...blog.negativemind.com2017.10.17行列演算に最適化されたライブラリを使うことで処理の高速化を図っているらしい。(GPUも行列演算得意だしね)そういうわけで、巷のオープンソースコードからアルゴリズムを勉強するのは、数学(というか行列)に疎いとちょっとしんどかったりする。スポンサーリンクそんな数学の苦手な人でもコードを読んで勉強できるよう、春条氏が行列演算を使わずにディープラーニングを実装したライブラリKelpNetを公開している。KelpNetKelpNetはC#で実装された深層学習のライブラリです。行列演算をライブラリに頼らないため全ソースが可読になっており、どこで何をしているかを全て観測できますKerasやChainerが採用している、関数を積み重ねるように記述するコーディングスタイルを採用しています並列演算にOpenCLを採用しているため、GPUだけでなくCPUやFPGA等の様々な演算装置で処理を並列化できますC#で作られているメリット開発環境の構築が容易で、プログラミング初学者にも学びやすい言語ですWindowsFormやUnity等、処理結果を視覚的に表示するための選択肢が豊富ですPCや携帯、組み込み機器等、様々なプラットフォームに向けたアプリケーションの開発ができますこのライブラリについてこのライブラリの基幹部分はChainerを参考に実装されています。その為ほとんどの関数パラメータがChainerと同じになっており、Chainer向けのサンプルを参考に開発することが可能になっています。2016年12月10日Unityでの利用も想定されているようなので、ちょっと試してみたいな。コメントデータの処理方法の詳細はこちらをご覧ください。toProfileNegativeMind都内で働くソフトウェア系エンジニア・リサーチャー。大学・大学院では3DCGのレンダリングアルゴリズムを研究してた。Mayaを使って映像制作もできるようになった。特撮・模型趣味も再燃。最近はPhotogrammetryや機械学習について勉強中。