【PyTorch】畳込みニューラルネットワークを構築する方法【CNN】

公開日: : 最終更新日:2022/03/18 機械学習 , , , ,

今回は、PyTorch を使って畳込みニューラルネットワーク(CNN)を構築する方法について紹介します。

PyTorch でニューラルネットワーク(NN)を構築する方法については以前まとめたので、よかったら参考にしてみてください。

【PyTorch】ニューラルネットワークを構築する方法【NN】

手順はニューラルネットと同様なので、主に異なる点についてまとめてみます。

動作環境は、Windows10, Anaconda, Jupyter, GPU NVIDIA GeForce  RTX 2060 です。

Contents

データセットの読み込み

出力結果は以下のようになります。

データの形状が、NNではフラットにする必要がありましたが、CNNでは2階テンソルのままとなります。

モデルの定義

モデルの定義は以下のようになります。

畳込み層は「Conv2d()」メソッドを用います。

ここでは定義だけなので、出力結果はありません。

モデルの生成

モデルの生成は以下のようになります。

出力結果は以下のようになります。

2層の畳み込み層が配置されています。

損失関数とオプティマイザーの生成

train_step()関数の定義

訓練データの学習用関数の定義を行います。

test_step()関数の定義

テストデータの検証用関数の定義を行います。

学習の早期終了判定用関数の定義

学習を早期に終わらせるかどうかを判定するための関数を定義します。

学習

実際に CNN で学習を行います。

実行時間は、約15分でした。

精度のグラフ化

エポックごとの損失と精度(正解率)をグラフ化します。

参考文献

関連記事

【機械学習】モンテカルロ法(Monte Carlo method)について。

モンテカルロ法(Monte Carlo method)とは、シュミレーションや数値計算を乱数を用いて

記事を読む

【PyTorch】GPUのメモリ不足でエラーになったときの対処方法。

PyTorch で深層学習していて、 GPUのメモリ不足でエラーが出てしまったので、対処方法のメモで

記事を読む

【画像認識】 Google画像検索結果を取得する方法 【google image download】

今回は、深層学習(DeepLearning)で画像認識をするための画像データの収集を、Google画

記事を読む

【探索】ダイクストラ法・最良優先探索・Aアルゴリズムの比較。

縦型探索や横型探索では、機械的に順序を付け、最小ステップでゴールを目指します。 つまり、

記事を読む

【転移学習】学習済みVGG16 による転移学習を行う方法【PyTorch】

今回は、PyTorch を使って、学習済みのモデル VGG16 を用いて転移学習をしてみました。

記事を読む

【Weka】CSVファイルを読み込んで決定木を実行。

フリーの機械学習ソフト Weka を使って、CSVファイルを読み込んで決定木(Decision Tr

記事を読む

【Fashion-MNIST】ファッションアイテムのデータセットを使ってみた【TensorFlow】

今回は、機械学習用に公開されているデータセットの1つである「Fashion-MNIST」について紹介

記事を読む

【探索】縦型・横型・反復深化法の探索手法の比較。

探索とは、チェスや将棋や囲碁などのゲームをコンピュータがプレイするときに、どの手を指すかを決定するの

記事を読む

【Chainer】手書き数字認識をしてみた【Deep Learning】

Chainerを用いて、ニューラルネットワークを構築し、手書き数字認識を行ったときのメモです。

記事を読む

【機械学習】 scikit-learn で精度・再現率・F値を算出する方法【Python】

今回は、2クラス分類で Python の scikit-learn を使った評価指標である、精度(P

記事を読む

無料動画編集ソフト AviUtl で mp4 形式の動画を読み込み・出力する方法【Windows】

今回は、無料動画編集ソフト AviUtl で mp4 形式の動画を読み

【Cubase】イヤホンから音がでないときの対処方法。

Cubase でイヤホンから音がでなくなったときの対処方法のメモです。

【Cubase】特定のトラックを無効にする方法。

今回は、Cubaseで特定のトラックのみを無効にする方法について紹介し

【転移学習】学習済みVGG16 による転移学習を行う方法【PyTorch】

今回は、PyTorch を使って、学習済みのモデル VGG16 を用い

【PyTorch】畳込みニューラルネットワークを構築する方法【CNN】

今回は、PyTorch を使って畳込みニューラルネットワーク(CNN)

→もっと見る

PAGE TOP ↑