
[AI基礎解説] 仮想環境ってなんだ? 〜conda編〜
前回のあらすじ:仮想環境って何だっけ?
「Pythonってなんだ?」の記事で、仮想環境の存在をチラ見せした。覚えてるか?
簡単におさらいすると:
プロジェクトAはNumPy 1.20が必要
プロジェクトBはNumPy 1.25が必要
同じマシンで両方動かしたい
こういう「バージョン地獄」を解決するのが仮想環境だ。
前回はPython標準のvenvを紹介したが、今回はcondaという別の選択肢を見ていく。
condaって何者?美味しいの?
condaは、クロスプラットフォーム、言語非依存のバイナリパッケージマネージャーだ。簡単に言うと:
パッケージマネージャー:ライブラリのインストール・管理ができる(pipみたいなもん)
環境マネージャー:仮想環境を作成・管理できる(venvみたいなもん)
言語非依存:Python以外(R、C++のライブラリとか)も管理できる
つまり、pipとvenvを合体させて、さらに強化したやつだ。
venv vs conda:どっち使えばいい?
項目 venv conda インストール Python標準搭載 別途インストール必要 対応言語 Pythonのみ Python、R、C++など パッケージ管理 pip conda(pipも使える) 依存関係解決 弱い 強い(賢い) ディスク容量 軽い 重い(数GB食う) 科学計算ライブラリ 別途インストール 最初から揃ってる
結論:
ライトなプロジェクト → venv
AI・データサイエンス → conda
複雑な依存関係がある → conda
ディスク容量が厳しい → venv
Anaconda vs Miniconda vs Miniforge:三つ巴の戦い
condaをインストールする方法は3つある。どれ選ぶか迷うよな。
Anaconda(フルセット)
Anaconda Distributionは300以上のパッケージを自動でインストールする。
特徴:
GUI(Anaconda Navigator)付き
データサイエンス系ライブラリ全部入り
インストール容量:約5GB
NumPy、Pandas、Matplotlib、Jupyterなど全部最初から使える
おすすめ対象:
GUI好き
とりあえず全部入りが欲しい初心者
ディスク容量に余裕がある人
デメリット:
商用利用は有料ライセンスが必要な場合がある(個人・教育・従業員200人未満の企業は無料)
重い
使わないパッケージまで入ってる
Miniconda(ミニマル版)
Minicondaは、conda、Python、それらの依存関係、および少数の他のパッケージのみを含む軽量版。
特徴:
必要最小限だけインストール
インストール容量:約500MB
自分で好きなパッケージを追加していくスタイル
おすすめ対象:
何が必要か把握してる中級者以上
ディスク容量を節約したい
サーバー環境で使いたい
デメリット:
Anacondaと同じ、商用利用の制約がある可能性
Miniforge(コミュニティ版)
Miniforgeは、conda-forgeコミュニティによって維持されているインストーラーで、conda-forgeチャンネルを使うように事前設定されている。
特徴:
Minicondaと似てるが、conda-forgeチャンネルがデフォルト
商用利用の制約なし(完全オープンソース)
Apple Siliconネイティブ対応
おすすめ対象:
商用プロジェクト
ライセンス気にしたくない人
M1/M2 Macユーザー
結論:どれ選べばいい?
初心者・個人利用 → Anaconda
中級者・軽量が好き → Miniconda
商用・ライセンス心配 → Miniforge
俺のおすすめはMiniconda。必要なものだけ入れる方が健全だし、後から追加するのも簡単だからな。
インストール手順:OS別に解説
【Windows編】
ステップ1:インストーラーをダウンロード
Minicondaの例で説明する。
https://docs.conda.io/en/latest/miniconda.html にアクセス。
「Miniconda3 Windows 64-bit」をダウンロード。
ステップ2:インストーラー実行
ダウンロードした.exeファイルをダブルクリック。
重要な設定:
「Just Me」を選択(推奨)
インストール先はデフォルトでOK
「Add Miniconda3 to my PATH environment variable」はチェックしない(公式非推奨)
「Register Miniconda3 as my default Python」はチェック入れてOK
ステップ3:動作確認
スタートメニューから「Anaconda Prompt (miniconda3)」を起動。
conda --version
バージョンが表示されたら成功。
【Mac編】Homebrew使わない方法
ステップ1:インストーラーをダウンロード
https://docs.conda.io/en/latest/miniconda.html にアクセス。
Intelチップ: Miniconda3 macOS Intel x86 64-bit pkg M1/M2チップ: Miniconda3 macOS Apple M1 ARM 64-bit pkg
ステップ2:インストーラー実行
ダウンロードした.pkgファイルをダブルクリック。 指示に従ってインストール。
ステップ3:シェル初期化(重要)
ターミナルを開いて:
# conda初期化
/Users/あなたのユーザー名/miniconda3/bin/conda init zsh
bashを使ってる人は:
/Users/あなたのユーザー名/miniconda3/bin/conda init bash
ターミナルを再起動。
ステップ4:動作確認
conda --version
プロンプトの先頭に(base)って表示されてたら完璧。
【Mac編】Homebrewを使う方法(簡単)
別記事「Homebrewってなんだ?」でHomebrew入れた人向け。
brew install --cask miniconda
一行で終了。神。
初期化は同じくやる:
conda init zsh # または bash
ターミナル再起動して完了。
conda環境の基本操作:これだけ覚えとけ
環境作成
# 基本形
conda create -n myenv
# Python指定して作成
conda create -n myenv python=3.11
# パッケージも一緒にインストール
conda create -n ml-project python=3.11 numpy pandas matplotlib
環境にパッケージを追加しながら作成するには、環境名の後にそれらを指定する。
環境一覧表示
conda env list
または
conda info --envs
アクティブな環境はアスタリスク(*)が付いてるやつ。
出力例:
# conda environments:
#
base * /Users/username/miniconda3
ml-project /Users/username/miniconda3/envs/ml-project
環境の有効化
conda activate ml-project
プロンプトが(ml-project)になったら成功。
環境の無効化
conda deactivate
(base)に戻る。
環境の削除
conda env remove -n ml-project
もう使わない環境は消そう。ディスク容量の節約。
パッケージ管理:condaとpipの二刀流
パッケージ検索
# conda公式リポジトリで検索
conda search numpy
# conda-forgeで検索
conda search -c conda-forge numpy
パッケージインストール
# 現在の環境にインストール
conda install numpy
# バージョン指定
conda install numpy=1.24
# 複数まとめて
conda install numpy pandas matplotlib
# conda-forgeから
conda install -c conda-forge scikit-learn
以前に作成した環境にパッケージをインストールするには、環境を有効化するか、コマンドラインで環境名を指定する。
# 方法1:環境を有効化してから
conda activate myenv
conda install numpy
# 方法2:環境名を指定
conda install -n myenv numpy
パッケージアップデート
# 特定パッケージ
conda update numpy
# 全パッケージ
conda update --all
パッケージアンインストール
conda uninstall numpy
インストール済みパッケージ一覧
conda list
pipも使える
condaで見つからないパッケージはpipで入れればOK。
conda activate myenv
pip install some-package
注意:condaとpipを混ぜると依存関係が壊れることがある。 できるだけcondaで統一しろ。どうしても必要な時だけpip。
チャンネル(Channel):パッケージの供給源
チャンネルとは、パッケージが保存されている場所(自分のコンピューターまたはインターネット上)。
主要チャンネル
defaults(デフォルト):Anaconda公式
conda-forge:コミュニティ版。パッケージが最新で豊富
bioconda:バイオインフォマティクス系
pytorch:PyTorch専用
チャンネル指定してインストール
# 一時的に指定
conda install -c conda-forge tensorflow
# デフォルトチャンネルに追加
conda config --add channels conda-forge
conda config --set channel_priority strict
conda-forgeを追加しておくと、パッケージが見つかりやすくなる。おすすめ。
実践:AI・機械学習プロジェクトを始める
シナリオ:画像分類プロジェクト
# 1. 環境作成
conda create -n image-classifier python=3.11
# 2. 環境有効化
conda activate image-classifier
# 3. 必要なパッケージインストール
conda install numpy pandas matplotlib scikit-learn jupyter
# 4. PyTorchインストール(公式チャンネルから)
conda install pytorch torchvision -c pytorch
# 5. その他(condaにないもの)
pip install pillow tqdm
環境をファイルに保存(再現性)
# 現在の環境をYAMLファイルにエクスポート
conda env export > environment.yml
environment.ymlの中身(例):
name: image-classifier
channels:
- pytorch
- defaults
dependencies:
- python=3.11
- numpy
- pandas
- matplotlib
- scikit-learn
- jupyter
- pytorch
- torchvision
- pip:
- pillow
- tqdm
ファイルから環境を復元
# 別のマシンやチームメンバーが環境を再現
conda env create -f environment.yml
これでチーム全員が同じ環境で作業できる。神。
よく使うコマンド一覧:チートシート
# 環境管理
conda create -n myenv python=3.11 # 環境作成
conda activate myenv # 環境有効化
conda deactivate # 環境無効化
conda env list # 環境一覧
conda env remove -n myenv # 環境削除
conda env export > env.yml # 環境エクスポート
conda env create -f env.yml # 環境インポート
# パッケージ管理
conda install numpy # インストール
conda install numpy=1.24 # バージョン指定
conda install -c conda-forge pkg # チャンネル指定
conda update numpy # アップデート
conda update --all # 全パッケージアップデート
conda uninstall numpy # アンインストール
conda list # インストール済み一覧
conda search numpy # パッケージ検索
# conda自身の管理
conda --version # バージョン確認
conda update conda # condaアップデート
conda clean --all # キャッシュクリア(容量節約)
つまずきやすいポイントと対策
ケース1:「conda: command not found」
原因: PATHが通ってない、または初期化されてない。
対策(Mac/Linux):
# 初期化
~/miniconda3/bin/conda init zsh # または bash
ターミナル再起動。
対策(Windows): スタートメニューから「Anaconda Prompt」を使え。
ケース2:baseが自動で有効化されるのウザい
デフォルトでターミナル開くたびに(base)が有効化される。これが嫌な人:
conda config --set auto_activate_base false
ケース3:パッケージのインストールが遅い
conda
の依存関係解決が遅いことがある。特に大きい環境で。
対策1: mamba使え(condaの高速版)
conda install -c conda-forge mamba
mamba install numpy # condaの代わりにmamba
対策2: パッケージをまとめて指定
# ❌ 遅い
conda install numpy
conda install pandas
conda install matplotlib
# ✅ 速い
conda install numpy pandas matplotlib
ケース4:ディスク容量がヤバい
condaは容量食う。定期的に掃除しろ。
# キャッシュ削除
conda clean --all
# 使ってない環境を削除
conda env remove -n old-project
ケース5:condaとpipを混ぜたら壊れた
依存関係がバグった。
対策:
# 環境を作り直す
conda deactivate
conda env remove -n broken-env
conda create -n fixed-env python=3.11
conda activate fixed-env
# 今度はcondaを優先して入れ直す
教訓:condaとpipは混ぜるな危険。
ケース6:Anacondaのライセンスが心配
商用利用でAnaconda Repositoryを使うと有料の場合がある。
対策:
Miniforgeに乗り換える
conda-forgeチャンネルを使う
conda config --add channels conda-forge
conda config --set channel_priority strict
baseって何?触っていいの?
デフォルト環境、conda自身がインストールされているものは、baseと呼ばれる。
ルール:
baseには何も入れるな。
プロジェクトごとに新しい環境を作れ。
baseはconda管理用と割り切れ。
理由:baseを汚すと、conda自体が壊れる可能性がある。
conda vs venv:結局どっち?
もう一度整理する。
condaを使うべき場合:
AI・機械学習・データサイエンスやる
NumPy、SciPy、TensorFlowなど科学計算ライブラリ使う
複雑な依存関係がある(C++ライブラリとか)
チームで環境を共有したい
venvを使うべき場合:
Webアプリ開発
シンプルなスクリプト
ディスク容量が厳しい
Python標準だけで済ませたい
俺の使い分け:
機械学習プロジェクト → conda
Djangoアプリ → venv
ちょっとしたスクリプト → venv
両方マスターしとけ。状況に応じて使い分けろ。
次のステップ
実際にconda環境を作ってみる:記事読んだだけじゃ身につかない
Jupyter Notebookを試す:データ分析の定番
conda install jupyter
jupyter notebook
environment.ymlを作る習慣:プロジェクトごとに必ず作れ
Hugging Faceと組み合わせる:別記事「Hugging Faceってなんだ?」参照
まとめ:condaマスターへの道
condaのインストールと基本操作、お疲れ様。これで君も:
✅ condaが何か説明できる ✅ Anaconda/Miniconda/Miniforgeの違いがわかる ✅ conda環境を作成・管理できる ✅ パッケージをインストールできる ✅ チームで環境を共有できる ✅ venvとcondaを使い分けられる
仮想環境は面倒に見えるけど、絶対に使え。使わないと後で地獄を見る。マジで。
「環境壊れたから全部アンインストールして入れ直す」とか、時間の無駄だろ?conda使えば秒で新環境作れる。
プロジェクト始めるたびにconda createする習慣をつけろ。それだけで君のストレスは激減する。
AIの世界で生き残るために、環境管理をマスターしろ。
参考リンク:
Conda公式ドキュメント: https://docs.conda.io/
Conda Getting Started: https://docs.conda.io/projects/conda/en/stable/user-guide/getting-started.html
Minicondaダウンロード: https://docs.conda.io/en/latest/miniconda.html
Miniforgeダウンロード: https://conda-forge.org/download/
Anaconda利用規約: https://www.anaconda.com/terms-of-service
conda-forge: https://conda-forge.org/