![見出し画像](https://assets.st-note.com/production/uploads/images/7107004/rectangle_large_type_2_32ad019e72bab3ea14e84c49788c665d.jpg?width=1200)
②ゼロから作る DEEP LEARNINGを使ってPythonを勉強する(2)
前回は関数の定義についてまでのプログラムを紹介しました。
今回はクラスの定義、実装から配列の計算(numpy)画像の描画やグラフの可視化について紹介していきます。
・クラスの生成
intなどのデータの型はあらかじめ、pythonに組み込まれた「組み込み」データ型というものです。ここでは、自分で新しいクラスを定義します。ユーザーが自分でクラスを定義すれば、独自にデータの型を作成することができます。また、オリジナルのメソッド(クラス用の関数)や属性を定義することも可能です。
・NumPy
NumPyは行列の計算に優れたライブラリです。Pythonの良さは行列計算に優れていることが1つ言えます。そのライブラリのインポート方法を紹介しています。
・NumPyの算術計算
ここでは行列の計算をPythonをつかって実行しています。数学の行列と違って行列どうしの掛け算の値が違うことにちゅいして実行していただきたいです。(Pythonではアダマール積になっている)・
・NumPyのN次元配列
今まで一次元の配列に対しての算術計算を紹介しましたが、ここでは配列の次元が増えた時の行列式の表し方、算術計算を紹介しています。一次元配列の掛け算はアダマール積になっていたがN次元も同様です。
・ブロードキャスト(broadcast)
ブロードキャストとはスカラー倍になっている値を拡大して計算することで、これはPython特有の機能です。どのようなアルゴリズムで計算が成り立つのか確認していただきたいです。
・要素へのアクセス
N次元の行列なってもインデックスは0番目スタートです。タイトル通り要素へのアクセスを行なっています。そこに注意してプログラムを実行してみてください。
・Matplotlib
Matplotlibはグラフの描画やデータの可視化に使うライブラリです。
今回はsin関数の例でグラフの描画の仕方を紹介しています。
・グラフを描写を見やすくする
グラフをただ描写するだけでは、何が何のグラフかよくわかりません。
グラフは描写することで視覚的に瞬時に判断できるメリットがあるので見やすくする工夫が必要となります。上記のプログラムはグラフを見やすくするために工夫方法を紹介しています。
・画像の表示
画像の表示のプログラムを紹介しています。画像の読み込みをするためには、プログラムのファイルと同じ階層に画像を持ってくるか、ファイルのパスを指定する必要があります。今回はその2つを紹介しています。
今回は(1)(2)を使ってDeep Learningを学ぶために基本的な知識を学習しました。次回は パーセプトロンに入っていきます。パーセプトロンもDeep Learningの基本的な知識です。Deep Learningがプログラムで書くためには必要な知識なのでしっかり理解することが重要となります。