Machine Learning

スポンサーリンク
Machine Learning

【全クリア】強化学習(DQN)でAtari Breakoutを動かす【PyTorch】

前回、GymnasiumでAtari Breakout(ブロック崩し)をランダムに動かすことができたので、ここではPyTorchによる強化学習(DQN)によってゲームを攻略していきます。最終的に、全ブロックを崩すことに成功しました。 ...
Google Colab

GymnasiumでAtari Breakoutを動かす【Google Colab】

強化学習でなにか動作させてみたいと思い、まずはGymnasiumのAtari BreakoutをGoogle Colabで動作させてみます。Atari Breakoutは、以下のようなブロック崩しゲームです。 DQN強化学習...
Machine Learning

【PyTorch】モデルの重みに初期値を設定する方法

PyTorchモデルの重みに初期値を設定する方法について記載していきます。今回、対象とするモデルはシンプル構造の下記コードとします。 class Model(nn.Module): def __init__(self): ...
Machine Learning

【初心者】Amazon SageMaker Studio Labに登録して、PyTorchをGPUで動かす【機械学習】

誰でも無料でGPUを利用できるAmazon SageMaker Studio Lab(Studio Lab)の始め方の手順を記載していきます。また、GPUでPyTorchを動作させるところまで見ていきます。Studio Labは、AWSの...
Machine Learning

【PyTorch】音声/音へのデータ拡張をするFrequencyMasking、TimeMasking、TimeStretch【SpecAugment】

音声強調、音声認識や音環境分類のような音データにおけるデータ拡張方法であるSpecAugmentをPyTrochで試す。PyTorchには、FrequencyMasking、TimeMaskingとTimeStretchの3つのクラスが用...
Machine Learning

PyTorchでモデルのパラメータ(重み)を固定する方法、転移学習やファインチューニングに利用可能

転移学習やファインチューニングを行う際に、モデルの重みを固定する必要があり、PyTorchにおける方法を調べてました。 モデルのパラメータ(重み)を固定する方法 PyTorchの公式Quickstartの例から、簡単なモデルを...
Machine Learning

ValueError: Expected more than 1 value per channel when training, got input size torch.Sizeの解決方法【PyTorch】

PyTorchで学習を行なっていると、以下エラーが出たので対処方法をメモしていく。 ValueError: Expected more than 1 value per channel when training, got inp...
Machine Learning

【scikit-learn】カテゴリ変数を数値化するsklearn.preprocessing.LabelEncoder【ラベルエンコーディング】

Pythonでカテゴリ変数を数値化するには、scikit-learnライブラリのsklearn.preprocessing.LabelEncoderを用いる。 sklearn.preprocessing.LabelEncoder ...
Machine Learning

学習中のlossをグラフで表示するlivelossplotをPyTorchで動かす

ディープラーニングの学習中にlossや正解率などを動的にグラフで表示したい場合は、livelossplotを用いると簡単に表示することができる。 livelossplot - GitHub livelossplotライブラ...
Machine Learning

PyTorch modelを安全にコピーする方法【copy.deepcopy】

PyTorchのモデルmodelAをmodelBにコピーすると、変数名は異なりますが、idが同じことからメモリが共有されていることが分かります。この場合、どちらか一方のモデルを学習などで更新すると、もう一方のモデルも変更されてしまい、学...