パーセプトロンのアルゴリズム(python編)



スポンサードリンク

ここではパーセプトロンについて実際のプログラムを、pythonの数理統計関数の説明していきながら述べていきます。

計算に用いたプログラム

 

最初のパラメータのところは問題ないと思います。

Variancesdで2種類の分散を用意しているのは、分散が大きい時と小さい時で、分類結果を比較するためです。

分散が大きい時は、二つのデータ群が多かれ少なかれ、重なる領域が生じ、綺麗に二つのデータ群を直線で分割できなくなります。

前ページで言えば、総誤差ΣEは小さくすることはできるが、0にならないということになります。

分散が小さい時は二つのデータ群はそれぞれの中心座標からあまり離れることなく、データが分布するので、領域が明確になり、直線で二つのデータ群を分割できます。

前ページで言えば誤差関数=0の状態です。

データセットの用意に関して

  • varianceは標本から分散を推定する場合に用いるコマンドです。

「分散」とはデータの中心からのバラツキの度合いです。

ここでは、関数の変数として使われていますので、注意してください。

上記は二重にネストした配列を作成しています。


スポンサードリンク

  • multivariate_normal

このコマンドは

のように用いると多次元正規分布の乱数を生成してくれるみたいです。

よくわからないので、途中でreturnの前にprint df1を挟んで確認してみます。

Dateframeコマンドで、マトリクスを作成するみたいです。

columnsでインデックスの指定、さらにマトリクスに行とインデックスを追加する場合には別で

と書いていますね。

  • pd.concat

よくわからないのでprint

linuxのcatコマンドからきているのでしょう。df1とdf2を縦に連結しています。

もう一つ下のdfも不明なので、これまたprint.

df.reindex(np.random.permutationでランダムに並び替えています。

その次のreset_index(drop=True)で左端のインデックスのみ数字順に並び替えています。

以降ではパーセプトロンのアルゴリズムの部分と計算結果について述べていきます。

>>>続きはこちら。



スポンサードリンク

記事が役に立ったらシェア!

投稿者:

中村 俊

中村 俊

1993/09/04生まれ。機械系大学院を休学し、ベンチャーでインターンしている最中。直近では、デカルトの「方法序説」に感銘を受けた。 趣味:読書、web開発の勉強、異分野の論文読んだり、記事書いたり。 最終的には経営者か研究者になりたい。

「パーセプトロンのアルゴリズム(python編)」への2件のフィードバック

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA