HOME > natural science Laboratory > コンピュータ・シミュレーション講座 > ゼロから作るDeep Learning

ゼロから作るDeep Learning
ニューラルネットワークでフーリエ変換を学習させてみよう1

文責:遠藤 理平 (2017年4月29日) カテゴリ:ゼロから作るDeep Learning(15)

昨今注目を集めているAI(人工知能)を学びたいと思い立ち、ディープラーニング(Deep Learning、深層学習)と呼ばれるAIの数理モデルである多層構造のニューラルネットワークを書籍「ゼロから作るDeep Learning ―Pythonで学ぶディープラーニングの理論と実装」を参考にを独習していきたいと思います。本書籍ではプログラミング言語としてPythonが利用されていますが、本項ではJavaScriptで実装していきます。

目次


ニューラルネットワークでフーリエ変換を学習させてみよう1

これまではニューラルネットワークの練習がてら、あらかじめ与えた1変数関数を学習させました。 本項はx=0からx=1を100分割して、それぞれの地点における値を入力値として与えて、そのフーリエ級数展開の展開係数を出力値とするニューラルネットワークを構成することを考えます。 まずは動作確認として、2つの展開係数で展開される場合について実装します。

f(x) = a_1 \sin( 1\times 2\pi x ) + a_2 \sin( 2\times 2\pi x )

実行結果

下のグラフは、元の関数と入力値に対して出力した展開係数(a_1, \ a_2)を用いて計算した結果です。 元の関数と概ね一致していることがわかります。



▲このページのトップNPO法人 natural science トップ

関連記事

ゼロから作るDeep Learning







▲このページのトップNPO法人 natural science トップ