🥀

えっちなサイトを作る(11)

2021/08/04に公開

引き続きえっちなゲームがプレイできちゃうサイトを作ろうと頑張ります。

引き続き書籍での学習とgoogle colaboratoryで演習を続けて行きます。
google colaboratoryは環境作んなくていいので楽ですね😋

前回からの課題

  • 課題:書籍を購入し内容を実践する
    • 課題:書籍の発売時から1年経ってるので完了後に再度技術調査必要
      • 課題:DeepCreamPyの実用性について調査
    • 課題:ブックマーク整理
  • 課題:個人開発をはじめよう本でMVPについてもうちょっと知る

モザイク除去から学ぶ最先端のディープラーニング本をやる(2)

https://qiita.com/koshian2/items/aefbe4b26a7a235b5a5e

1章

  • Google Colaboratoryを用いた演習(1-1)
    • Bostonの不動産価格の予想
    • 手書き文字の読み取り
      • predictionの結果はよさそう

  • 画像処理の畳込みとCNN
    • いわゆる画像へのフィルター処理で画像処理の畳込みが行われている
      • ガウシアンぼかし、エンボスフィルター、アンシャープマスク、エッジ強調、etc..
      • フィルター処理を試すにはPILライブラリを利用する
      • フィルター処理の実装の違いはカーネルに用いる値の違いである
    • 畳み込み処理の実装
      • 画像からカーネルサイズと同じウィンドウを切り出す(パッチ)
      • カーネルとパッチの積を計算
      • 合計値のスカラーを算出
    • フィルターではカーネルを2階のテンソルで利用している
      • DNNでは4階のテンソルで計算する
      • DNNでの画像処理の畳込みはカーネルの階数の違いと捉えるとわかりやすい
      • CNNはさらにカーネルに用いる値が学習により変化していっている
    • TensorFlowでの画像の畳込み関数
      • Depthwize Conv
        • チャンネル間の演算なし
      • Conv2D
        • チャンネル間の演算あり
    • 画像の畳込み演習(1-2)
      • 畳み込みを使う画像フィルタをnumpyで実装する
      • TensorFlowでの画像処理の畳み込み
        • 畳込み計算関数を利用して画像処理とのfilterとの共通性を考える

まとめメモ

問題解決のフロー

  • 実現したいこと(目的変数)は何か
    • 判断の根拠に使う値(説明変数)は何か
  • 機械学習のどの問題に当たるか
    • 損失関数の決定
    • tensorflowのレイヤー設計
    • オプティマイザ
    • テストデータの分割量

colabでのデータ処理手順

  • データ読み出し
    • pandasによるデータ表示
  • 前処理
    • 学習データ・テストデータの分離
  • モデル作成
  • モデルの訓練
    • validation
    • 評価値
  • 予測値を算出して利用する

4階のテンソルのカーネルの捉え方

テンソルを理解する際に、頭の中で4次元の立方体を考えるのは理解不能になるのでやめたほうがよい。

karnel : K = \begin{bmatrix} k0 & k1 & k2\\ k3 & k4 & k5\\ k6 & k7 & k8\\ \end{bmatrix}
4階テンソル: \begin{bmatrix} K & 0 & 0\\ 0 & K & 0\\ 0 & 0 & K\\ \end{bmatrix} or \begin{bmatrix} K\\ K\\ K\\ \end{bmatrix}

終わり

まだ1章終わりませんが、丁寧な演習問題のおかげで何とかついて行けてます。
次回で1章突破したいです!

Discussion