SEワンタンの独学備忘録

IT関連の独学した内容や資格試験に対する取り組みの備忘録

Jupyter Notebook

【機械学習】入門⑱ KerasによるMNIST(手書き数字)の分析

MNISTデータベース MNIST データの取得 データ構造の確認 2層フィードフォワードネットワークモデルの実装 データの整形 ニューラルネットワークモデルの定義 学習の実行 経過の表示

【機械学習】入門⑰ Windows上でKerasライブラリを使用する

Keras Kerasとは Kerasインストール前提 Kerasインストール手順 KerasによるPython実装 モジュールインポートとデータの作成 モデルの作成 結果の出力

【機械学習】入門⑯ 誤差逆伝搬法(バックプロパゲーション)について学ぶ Python実装編

事前準備 データ準備 データ表示 前回実装部分 シグモイド関数 ニューラルネットワークモデル 平均交差エントロピー誤差 誤差逆伝搬法による実装 解析的微分の実装(dCE_FNN) 勾配法による最適パラメータの導出(Fit_FNN) 分類の実施

【機械学習】入門⑮ 誤差逆伝搬法(バックプロパゲーション)について学ぶ 理論編

誤差逆伝搬法(バックプロパゲーション) 誤差逆伝搬法とは 平均交差エントロピー誤差を定義 出力層の偏微分式を求める ∂E/∂aの導出 ∂a/∂vの導出 ∂E/∂vの導出 中間層の偏微分式を求める ∂E/∂bの導出 ∂b/∂wの導出 ∂E/∂wの導出

【機械学習】入門⑭ 2層ニューラルネットワークモデルをPythonで実装②

前回までの流れ ニューラルネットワークの適切な重みを設定するには 平均交差エントロピー誤差 数値微分の導入 数値微分の実装 勾配法の実装 ニューラルネットワークモデルによる分類

【機械学習】入門⑬ 2層ニューラルネットワークモデルをPythonで実装①

前回考えたニューラルネットワークモデルをPythonで実装することによりイメージをつかみます。 イメージ概要 データの準備の実装 データの説明 データの保存 訓練データとテストデータに分割 データのプロット ニューラルネットワークの実装 シグモイド関数…

【機械学習】入門⑫ ディープラーニングとニューラルネットワークについて調べてみる

今回から名前はよくきくディープラーニングに入ります。 まずはイメージをつかむところから。 pythonによる実装には入れませんでしたが、今後、pythonによる実装を行う予定です。 ディープラーニング(深層学習) ニューロンモデル ニュートラルネットワーク…

【機械学習】入門⑫ 分類-2次元入力3クラス分類- Pythonで学ぶ「教師あり学習」

前回の2次元入力の続き。www.wantanblog.com データセットの準備 scikit-learn アヤメの品種データ データセットの準備 数学的な導出 ロジスティック回帰モデル 平均交差エントロピー誤差 勾配法による解の導出 Pythonによる実装 実装の全容 ロジスティック…

【機械学習】入門⑪ 分類-2次元入力2クラス分類- Pythonで学ぶ「教師あり学習」

分類の続き。 2次元入力2クラスの分類の問題設定 問題提起 データの設定(PG上) データの散布表示 ロジスティック回帰モデル 3D曲線モデルの描画 等高線による図示 交差エントロピー誤差

【機械学習】入門⑩ 分類-勾配法による決定境界の算出- Pythonで学ぶ「教師あり学習」

ひさしぶりになりすぎたので、過去記事をちゃんと読み返してからの再開となりました。 ↓↓前回www.wantanblog.com 前回までの内容(復習) 問題提起 確率表現と最尤推定 ロジスティック回帰と交差エントロピー誤差 勾配法によるパラメータの算出 勾配法の導入…

【機械学習】入門⑨ 分類-ロジスティック回帰- Pythonで学ぶ「教師あり学習」

前回の続き。 それっぽくはなりますが、単純に難しくなってきます。↓前回 www.wantanblog.com ロジスティック回帰 ロジスティック回帰 ロジスティック回帰とシグモイド関数 ロジスティック回帰モデル 交差エントロピー誤差 交差エントロピー誤差 交差エント…

【機械学習】入門⑧ 分類-導入編(確率と最尤推定)- Pythonで学ぶ「教師あり学習」

やっと次章に進みました。今回から機械学習の教師あり学習における「分類」を扱っていきます。 分類 問題設定 データセット準備 問題設定 確率表現と最尤推定 確率表現 最尤推定 数学的に考える最尤推定

【機械学習】入門⑦ モデルを生成してみる Pythonで学ぶ「教師あり学習」 回帰編

回帰編の基本は今回で完了する予定です。 モデルを考えてみる データセットに対する最適なグラフの形は? オリジナルモデルの作成 オリジナルモデルの実装 ライブラリscipy.optinize モデル関数 モデルのグラフ表示 MSEの導出 最適化パラメータの導出 結果と…

【機械学習】入門⑥ オーバーフィッティング(過学習)について Pythonで学ぶ「教師あり学習」 回帰編

今回は「過学習」について学びます。モデルの検証方法としてのホールドアウト検証法と交差検証法を用いて最適なパラメータや過学習となる地点の導出を試みます。

【機械学習】入門⑤ 線形基底関数モデル Pythonで学ぶ「教師あり学習」 回帰編

ガウス関数を用いた線形基底関数モデルの実装をPythonで行います。データセットにはBoston house-prices (ボストン住宅価格データセット)を活用してみます。

【機械学習】入門④ Pythonで学ぶ「教師あり学習」 回帰編(多次元モデル)

線形回帰モデルではこれまで最も基本的な一次元入力と二次元入力を扱ってみましたが、今回は多次元(N次元)線形回帰モデルを扱います。入力の次元数を限定しないことによって、本格的な活用も可能になってくるかと思います。 煩雑になってくるかもしれませ…

【機械学習】入門③ Pythonで学ぶ「教師あり学習」 回帰編(二次元入力のモデル)

前回まではX軸とY軸の二要素のみを扱ってきました。 二要素ならばそこまでがっつりやりこまなくてもなんとかなりましたが、あまり機械学習という感じもしませんでした。今回は入力が二要素の場合です。最終的には多数要素を扱いますが、回帰モデルも単純な一…

【機械学習】入門② Pythonで学ぶ「教師あり学習」 回帰編(線形回帰-勾配降下法)

今回も線形回帰について、線形回帰モデルを求めるために前回は最小二乗法という方法について学びましたが、今回は勾配降下法について学びます。 Pythonで学ぶ勾配降下法 Pythonで実装する勾配降下法 勾配のイメージをつかむ 勾配を求める 勾配を利用し底を求…

【機械学習】入門① Pythonで学ぶ「教師あり学習」 回帰編(線形回帰-最小二乗法)

何も分からなかった状態の基礎編、重く苦しい数学編をなんとか超えてついに機械学習編にたどり着きました! 基本も数学も適宜振り返る必要があると思われ、何も分からなくて苦しいのは今後も続くと見込まれますが、とにかく本編がやっとスタートします。 教…

【Python】入門⑬ Pythonを使って機械学習のために数学を学習する その6(指数対数)

またまたしばらくサボっていました。 今回は指数対数ということで、機械学習を勉強しようと思ったことがある人はみたことがあるであろうシグモイド関数などがでてきます。 概要はつかんでおきたいですね。 個別の関数については難しくてギブアップ気味・・

【Python】入門⑫ Pythonを使って機械学習のために数学を学習する その5(行列2)

長くなってきたので一旦切りました。行列の続きです。 特殊な行列 正方行列 単位行列 逆行列 その他の行列の操作と性質 転置 行列と連立方程式 写像(変換) 固有ベクトル

【Python】入門⑪ Pythonを使って機械学習のために数学を学習する その4(行列)

明けましておめでとうございます。 本ブログは年が明けようが、年が戻ろうが平常運転でいきたいと思います。今回は「行列」、なんともくるしかった微分よりははるかにPythonが使いやすそう。 行列 行列ってなんだっけ? 行列の加減算 スカラー倍 行列の乗算

【Python】入門⑩ Pythonを使って機械学習のために数学を学習する その3(微分)

いろいろあって長く間が空いてしましましたが、Pythonやります。 微分 そもそも微分ってなんだっけ? 微分公式と表現 関数の微分 偏微分 そもそも偏微分って? 偏微分のグラフ上の表現 勾配のグラフ化 多変数の入れ子関数 Σ(シグマ)の微分

【Python】入門⑨ Pythonを使って機械学習のために数学を学習する その2(シグマΣ)

深く立ち入りすぎずに今回はシグマについて(*´Σ`) 和の記号Σ シグマ(Σ)とは 内積をシグマで表現する パイ(Π)積の記号

【Python】入門⑧ Pythonを使って機械学習のために数学を学習する その1(ベクトル)

まとめるのが難しいところ。 機械学習における数学 数学は学習すべきか 本ブログでの扱い ベクトル ベクトルの基本 Pythonでベクトルを表す Pythonでベクトル操作 ベクトルの内積 その他のベクトル 法線ベクトル ベクトルのノルム コサイン類似度

【Python】入門⑦ Pythonでグラフを扱う その3(三次元グラフを扱う)

ちょっと時間が空いてしまいましたが、今回はPythonで三次元グラフを扱います。 三次元グラフ 三次元の数式 数値を色で表現する 数値を表面で表現する

【Python】入門⑥ Pythonでグラフを扱う その2(グラフの様々な描写方法)

前回はJupyter Notebookの基本的なグラフ描写方法を学習しましたが、今回は前回のグラフをベースにグラフの装飾を行います。www.wantanblog.com グラフの装飾 関数の変化を描写する 関数の表示を装飾する 複数のグラフを並べて表示する 複数グラフの表示

【Python】入門⑤ Pythonでグラフを扱う その1(二次元グラフの描写)

機械学習プログラミングをしっかりとやろうと思った場合、数学的な知識に加えてグラフの扱いが必須となります。 ※数学系の参考書を読んで思っただけです。今回はJupyter Notebookでのグラフ描写を扱います。プログラミングでグラフを扱うのは全くの初めてな…

【Python】入門④ Pythonの基本構文 その3(スライシング、関数など)

基本はその3までの予定です。その1www.wantanblog.comその2www.wantanblog.com スライシング表現 配列の中の条件を満たすデータの操作 関数 関数の宣言 関数の引数と戻り値 Pythonによるファイル操作

【Python】入門③ Pythonの基本構文 その2(ベクトルと行列)

入門②の続きでまだまだ基本編、少し機械学習っぽくなってきましたかね? Pythonのベクトル NumPyライブラリ ベクトルの計算 ベクトル成分の操作 おまけ Pythonの行列 行列の定義 行列の基本操作 特定行列の生成 数列の算術演算 その他の算術関数