0. 本シリーズについて
このシリーズでは,Pythonによる機械学習を始める人や,もっと効率的に研究開発を行いたい人に向けて,再現性が高く・開発しやすく・すぐに使える環境構築方法を紹介していきます.
目次
- 【第0回】(初学者OK) 最強の機械学習環境を作る!pyenv × Poetry × Hydra × W&B × PyTorchで始めるMLライフ
- 【第1回】Windows民の救世主!WSL2でLinux環境を爆速構築 (初学者OK)(←この記事)]
- 【第2回】Python管理に革命を!pyenv × poetryで快適開発(Windows / Linux 両対応・初学者OK)
- 【第3回】PyTorchを使った初めてのディープラーニング体験!(初学者OK)
- 【第4回】もう設定に迷わない!Hydraでパラメータ管理完全攻略(Python 機械学習・初学者OK)
- 【第5回】神ツールW&Bで訓練の可視化・比較・ログ化が一瞬で(Python 機械学習・初学者OK)
- 【第6回】誰でもすぐ使える!Hydra × W&B × PyTorchテンプレを配布!(Python 機械学習)
1. この記事でわかること
- WSL2を使ってWindows環境に仮想Linux環境を構築する方法.
- VSCodeを使って仮想Linux環境内のファイルを扱う方法.
おねがい
今回の手順でうまくいかなかった箇所や,つまずいたところがあれば,
ぜひコメントなどで共有してもらえると,他の人(ひっしゃふく)の助けにもなります!
自分で調べてみるのも大事ですが,困ったら誰かに頼るのも大切です.
2. なぜWindows民に仮想Linux環境が必要なの?
機械学習や深層学習をWindows環境だけで進めようとすると,
意外と「思ったより遅い」「なんか動かない」「人の記事と挙動が違う」といったことが起きがちです.
たとえば私の場合,PyTorch
で学習時に DataLoader
の num_workers
を2以上に設定すると,
Windowsではプロセス生成が極端に遅くなってしまい,学習速度がガクッと落ちました.
本来は学習速度が早くなるはずなのに, 逆に遅くなってしまいました.
🔧 その他にもこんな理由があります
- 多くの機械学習ライブラリ・フレームワークが Linux前提で開発 されている
- QiitaやGitHubなどの技術記事の多くが Linux環境を前提に書かれている事が多い
- 研究や業務のサーバ環境はほとんど Linux(UbuntuやCentOSなど)
- Dockerやクラウドの知識と連携しやすいのも Linux の利点
💡 WSL2なら,こんな良いことが!
- Windows上にそのままLinux環境が作れる(再起動なしで切り替え可能)
- ファイルは Windowsと共有可能
- GPUやDockerも対応(対応GPUならCUDAが使える!)
-
機械学習用のサーバーがあるならLinuxをそのまま入れれば良いけど,Windowsが入ったデスクトップPCやノートパソコンをそのまま使いたいなら, WSL2が手っ取り早くLinux環境を構築できる!
-
もっと基本的な仕組みやら概要が知りたい人は公式サイトへ.
3. さっそく導入
※ここから先で再起動することになるので,必要なものは保存しといてください.
- 今回使用するOSは Windows11 です.
(Window10だとうまく動作しない可能性があります.)
3.1. 管理者でWindows PowerShellを開く
- 左下のWindowsマークを右クリックして「検索」
- 「PowerShell」と検索して「Windows PowerShell」を 管理者として 実行
3.2. WSL2のインストール
-
wsl --install
と入力
実行結果
PS C:\Windows\system32> wsl --install
インストール中: Linux 用 Windows サブシステム
Linux 用 Windows サブシステム はインストールされました。
インストール中: Ubuntu
Ubuntu はインストールされました。
要求された操作は正常に終了しました。変更を有効にするには、システムを再起動する必要があります。
- 再起動を促されたら,言うことを聞きましょう
- 再起動後は,この記事に戻ってきて!
3.3. 再起動後
- 自動で以下のようなウィンドウが表示されるかと思います.
- 表示されない場合は「検索」から「Ubuntu」と検索し,開く.
(下の画像とは異なり,左上のウィンドウ名は「Ubuntu」になってるはずです.)
- 上から順に 設定したいユーザー名,設定したいパスワード×2を入力します
- ※ローカルでのみ使うなら,簡単なものでOK.短い方が良い.(ここではuser)
- 下の例はパスワードまで入力し終わった後の画面
Enter new UNIX username: user
New password: '設定したいパスワード'
Retype new password: '設定したいパスワード'
passwd: password updated successfully
Installation successful!
- インストール完了!
3.4. 一応インストールできてるか確認
- 前と同じようにPowerShellを,今度は 普通に開く
-
wsl --list --verbose
と入力 - 以下の画面のように,NameにUbuntuがあればOK!
4. VSCodeと連携しよう
これから先は,基本的にVSCodeで作業をします.
VSCodeってなに?という方は以下の解説ページを見て,インストールを済ませてください.
- さて,手順は簡単.VSCodeを開いたら,左下の青い >< みたいなマークを押します
- WSLへの接続を押す
- 左下の青いとこが,
><WSL: Ubuntu
となってれば完了!
VSCodeの詳しい使い方や,Linuxのコマンドなどは詳しく説明してくれている記事がたくさんあるので,今回は最小限必要なところだけ記述します.その他は各自で調べて勉強しましょう!
使い方
- 下画像の青矢印の先を押すと,ターミナル (bash) が開けます.
- こんな感じ
よく使うLinuxコマンド
コマンド | 意味 |
---|---|
pwd |
今いるディレクトリ(場所)を表示 |
ls |
中にあるファイルやフォルダを表示 |
cd ディレクトリ名 |
ディレクトリを移動(Change Directory) |
mkdir ディレクトリ名 |
新しいフォルダを作成(Make Directory) |
rm -r ディレクトリ名 |
ディレクトリごと削除(※注意!) |
clear |
画面をスッキリさせる(ログを一時消去) |
- では,現在のディレクトリを確認してみましょう.
pwd
/home/user
このディレクトリは,Windowsで言うところの,C:\Users\user
ですね.
- 今後のプロジェクト(作業ディレクトリ)を整理しやすいように,ここに
projects
ディレクトリを作成しましょう
mkdir projects
- 作成できているか,
ls
で確認しましょう
ls
projects
この projects
の中に,プロジェクトごとにディレクトリを作成すれば分かりやすいかなって思います.今回は sample
ディレクトリを作成して,その中で今後は作業しよう.
-
projects
に移動して,sample
を作るには,以下のコマンドを順に実行
cd projects
mkdir sample
- 作業ディレクトリ
sample
を作成できたので,VSCodeに認識させます - これを押して,
- 「フォルダーを開く」を押して,
- 「projects」「sample」の順に押して,
- 「OK」を押す
- 完了!
その他VSCodeの使い方は各自で調べてください!
ファイル作成やフォルダ作成,エディタ分割などなど.
最近 (2025) だとCopilotを入れれば,コードの予測や自動修正とかしてくれるので便利!
5. WindowsのエクスプローラーでLinux内のディレクトリを操作可能
今までの手順でLinux環境を構築していれば,Windowsのエクスプローラーに見慣れないペンギンのマークがいると思います.
ここから,Windowsと同様の操作でLinux内のファイルをいじれます.便利.
基本的にいじるのは以下の画像に示すフォルダ内だけにしておこう.
さっきの projects
や sample
もいつもの操作で作れます.
Windows内のデータをLinuxで扱いたいときは,いつもの操作でコピペや移動ができますよ.
6. おわりに
ここまでで,Windows環境にWSL2でLinuxを導入し,VSCodeと連携して開発できる環境が整いました!
筆者も3年間ほどはWindows直下で開発してましたが,今はメリットの多いLinux環境で開発・研究しています.
今のうちに,Linux環境に慣れておくのは将来役立つはずです.Linux環境に挑戦しよう.
次回はこちら
- 【第2回】Python管理に革命を!pyenv × poetryで快適開発(Windows / Linux 両対応・初学者OK)
またお会いしましょう!