zuminote

個人的な勉強記録

venvメモ

前提

  • Mac(OS Monterey)でbrewを使用してpython3.9をインストール済み

手順

まず、global gitignoreに以下を追加しておくとよい。

github.com

仮想環境を構築する

$ cd [作業フォルダ]

$ python -m venv [新しい環境名]

アクティベート

$ . [環境名]/bin/activate

pythonのバージョン変えたい時は以下参照

dev.classmethod.jp

参考ページ

python macで仮想環境を構築 virtualenv Anacondaが有償化されて困っている人に贈る、Pythonのパッケージ管理

PythonとKerasによるディープラーニング 第5章

いよいよCNNによるおなじみの画像分類である。

学び: - 原則としてCNNでは、情報を漏れなく拾ったうえで寄与が大きい特徴を抽出したいので、「ストライドなしの畳み込み」→「最大プーリング」を使ったほうがよい。 - Rescaling層の存在

github.com

続きを読む

PythonとKerasによるディープラーニング 第4章

機械学習における基本的なテクニックを確認する。

ここでの学び:

  • 過学習を防ぐための方策
  • 正則化について、コスト…?と思ってたけどイメージが分かった(損失関数の誤差をとにかく大きくしたくないという気持ちにつけこむ)

  • 機械学習の一般的なワークフロー

github.com

続きを読む

PythonとKerasによるディープラーニング 第3章(3)回帰

Boston Housingデータセットを用いた住宅価格予測を行う。

ここでの学び

  • データの正規化(入力データ行列の列ごとに平均を引く&標準偏差で割る→中心0,標準偏差1)
  • 小さいネットワークを使ったほうが、過学習を抑制できる。訓練データが少ない=過学習に陥りやすいので、ネットワークはムダに大きくしない。
  • スカラー回帰(連続値を1つだけ予測する回帰)は、最終層ユニットは1,活性化関数は使わない。sigmoidなどの活性化関数を使うと値が0〜1に制限されてしまうので不適切。
  • クロスバリデーションを使う場合のワークフロー(データ数少ないときにやる。CVは平均をとって精度を確認するためのもの。そのあと、trainデータ全部で本番の学習をして、testで検証する。)

github.com

続きを読む

PythonとKerasによるディープラーニング 第3章(2)多クラス分類

ロイターデータセットを使った、記事の多クラス分類を行う。

ここでの学び:

  • 分類タスクで使う損失関数「交差エントロピー」は、学習モデルにによって出力される確率分布と、ラベルの真の確率分布の距離を表すものである。

  • ディープラーニングの肝は中間層での特徴抽出なので、中間層のユニット数は、最終出力よりも多くしておく必要がある。

github.com

続きを読む

PythonとKerasによるディープラーニング 第3章(1)二値分類

IMDbデータセットを使用した二値分類を行う。

ここでの学び:

  • データ前処理(one-hot化)

  • model.fitの戻り値historyオブジェクトによるスコア確認

github.com

続きを読む

PythonとKerasによるディープラーニング 第2章 メモ

第2章 予習:ニューラルネットワークの数学的要素

ここでは例として、定番のMNISTの画像分類モデルの学習を行うとともに、ディープラーニングの重み調整アルゴリズムの詳細(確率的勾配降下法とか)について説明しています。

github.com

続きを読む