AI-For-Beginners/translations/ja/AGENTS.md

12 KiB
Raw Blame History

AGENTS.md

プロジェクト概要

AI for Beginnersは、人工知能の基礎を網羅した12週間、24レッスンのカリキュラムです。この教育用リポジトリには、Jupyter Notebookを使用した実践的なレッスン、クイズ、ハンズオンラボが含まれています。カリキュラムの内容は以下の通りです

  • 知識表現とエキスパートシステムを用いた記号的AI
  • TensorFlowとPyTorchを使用したニューラルネットワークと深層学習
  • コンピュータビジョンの技術とアーキテクチャ
  • トランスフォーマーやBERTを含む自然言語処理NLP
  • 専門的なトピック:遺伝的アルゴリズム、強化学習、マルチエージェントシステム
  • AI倫理と責任あるAIの原則

主要技術: Python 3、Jupyter Notebook、TensorFlow、PyTorch、Keras、OpenCV、Vue.jsクイズアプリ用

アーキテクチャ: トピック別に整理されたJupyter Notebookを含む教育コンテンツリポジトリ、Vue.jsベースのクイズアプリケーション、多言語対応を充実させた構成。

セットアップコマンド

主な開発環境Python/Jupyter

このカリキュラムはPythonとJupyter Notebookで動作するよう設計されています。推奨される方法はminicondaの使用です

# Clone the repository
git clone https://github.com/microsoft/ai-for-beginners
cd ai-for-beginners

# Create and activate conda environment
conda env create --name ai4beg --file environment.yml
conda activate ai4beg

# Start Jupyter Notebook
jupyter notebook
# OR
jupyter lab

代替案: devcontainerの使用

# Open in VS Code and select "Reopen in Container" when prompted
# The devcontainer will automatically set up the environment

クイズアプリのセットアップ

クイズアプリはetc/quiz-app/にあるVue.jsアプリケーションです

cd etc/quiz-app
npm install
npm run serve  # Development server
npm run build  # Production build
npm run lint   # Lint and fix files

開発ワークフロー

Jupyter Notebookの操作

  1. ローカル開発:

    • conda環境をアクティブ化: conda activate ai4beg
    • Jupyterを起動: jupyter notebook または jupyter lab
    • レッスンフォルダに移動し、.ipynbファイルを開く
    • セルをインタラクティブに実行してレッスンを進める
  2. VS CodeとPython拡張機能:

    • リポジトリをVS Codeで開く
    • Python拡張機能をインストール
    • VS Codeが自動的にconda環境を検出して使用
    • .ipynbファイルを直接VS Codeで開く
  3. クラウド開発:

    • GitHub Codespaces: 「Code」→「Codespaces」→「Create codespace on main」をクリック
    • Binder: READMEのBinderバッジを使用してブラウザで起動
    • 注意: Binderはリソースが限られており、ウェブアクセスに制限がある場合があります

高度なレッスン向けGPUサポート

後半のレッスンではGPUアクセラレーションが大いに役立ちます

  • Azure Data Science VM: GPUサポート付きのNCシリーズVMを使用
  • Azure Machine Learning: GPUコンピュートを使用したートブック機能
  • Google Colab: ートブックを個別にアップロード無料のGPUサポートあり

クイズアプリの開発

cd etc/quiz-app
npm run serve  # Hot-reload development server at http://localhost:8080

テスト手順

このリポジトリは学習コンテンツに焦点を当てており、ソフトウェアテストのための従来型のテストスイートはありません。

検証方法:

  1. Jupyter Notebook: セルを順番に実行してコード例が動作することを確認
  2. クイズアプリのテスト: 開発サーバーを使用した手動テスト
  3. 翻訳の検証: translations/フォルダ内の翻訳コンテンツを確認
  4. クイズアプリのLinting: npm run lintetc/quiz-app/で実行

コード例の実行:

# Activate environment first
conda activate ai4beg

# Run Python scripts directly
python lessons/4-ComputerVision/07-ConvNets/pytorchcv.py

# Or execute notebooks
jupyter notebook lessons/3-NeuralNetworks/03-Perceptron/Perceptron.ipynb

コードスタイル

Pythonコードスタイル

  • 教育用コードにおける標準的なPythonの慣例
  • 学習を優先した明確で読みやすいコード
  • 重要な概念を説明するコメント
  • Jupyter Notebookに適した形式: セルは可能な限り自己完結型にする
  • レッスンコンテンツには厳密なLinting要件はなし

JavaScript/Vue.jsクイズアプリ

  • etc/quiz-app/package.jsonにESLint設定
  • npm run lintを実行して問題をチェックし自動修正
  • Vue 2.xの慣例
  • コンポーネントベースのアーキテクチャ

ファイル構成

lessons/
  ├── 0-course-setup/          # Setup instructions
  ├── 1-Intro/                 # Introduction to AI
  ├── 2-Symbolic/              # Symbolic AI
  ├── 3-NeuralNetworks/        # Neural Networks basics
  ├── 4-ComputerVision/        # Computer Vision
  ├── 5-NLP/                   # Natural Language Processing
  ├── 6-Other/                 # Other AI techniques
  ├── 7-Ethics/                # AI Ethics
  └── X-Extras/                # Additional content

etc/
  ├── quiz-app/                # Vue.js quiz application
  └── quiz-src/                # Quiz source files

translations/                  # Multi-language translations

ビルドとデプロイ

Jupyterコンテンツ

ビルドプロセスは不要 - Jupyter Notebookは直接実行されます。

クイズアプリ

cd etc/quiz-app

# Development
npm run serve

# Production build
npm run build  # Outputs to etc/quiz-app/dist/

# Deploy to Azure Static Web Apps
# Azure automatically creates GitHub Actions workflow
# See etc/quiz-app/README.md for detailed deployment instructions

ドキュメントサイト

このリポジトリはDocsifyを使用してドキュメントを提供しています

コントリビューションガイドライン

プルリクエストプロセス

  1. タイトル形式: 変更内容を明確に説明するタイトル
  2. CLA要件: Microsoft CLAを署名する必要あり自動チェック
  3. コンテンツガイドライン:
    • 教育的な焦点と初心者向けのアプローチを維持
    • ノートブック内のすべてのコード例をテスト
    • ノートブックがエンドツーエンドで動作することを確認
    • 英語コンテンツを変更する場合は翻訳を更新
  4. クイズアプリの変更: コミット前にnpm run lintを実行

翻訳のコントリビューション

  • 翻訳はGitHub Actionsを使用してco-op-translatorで自動化
  • 手動翻訳はtranslations/<language-code>/に配置
  • クイズ翻訳はetc/quiz-app/src/assets/translations/に配置
  • 対応言語: 40以上の言語詳細はREADME参照

積極的なコントリビューション分野

現在のニーズについてはetc/CONTRIBUTING.mdを参照:

  • 深層強化学習セクション
  • オブジェクト検出の改善
  • 固有表現認識の例
  • カスタム埋め込みトレーニングサンプル

環境構成

必要な依存関係

# Core Python packages (from requirements.txt)
tensorflow==2.17.0
torch (via conda)
torchvision (via conda)
keras==3.5.0
opencv (via conda)
scikit-learn
numpy==1.26
pandas==2.2.2
matplotlib==3.9
jupyter

環境変数

基本的な使用には特別な環境変数は不要。

Azureデプロイメントクイズアプリ

  • AZURE_STATIC_WEB_APPS_API_TOKENAzureによって自動設定

デバッグとトラブルシューティング

よくある問題

問題: Conda環境の作成が失敗する

  • 解決策: まずcondaを更新: conda update conda -y
  • 十分なディスク容量を確保推奨50GB

問題: Jupyterカーネルが見つからない

  • 解決策:
    conda activate ai4beg
    python -m ipykernel install --user --name ai4beg
    

問題: ートブックでGPUが検出されない

  • 解決策:
    • CUDAインストールを確認: nvidia-smi
    • PyTorch GPUを確認: python -c "import torch; print(torch.cuda.is_available())"
    • TensorFlow GPUを確認: python -c "import tensorflow as tf; print(tf.config.list_physical_devices('GPU'))"

問題: クイズアプリが起動しない

  • 解決策:
    cd etc/quiz-app
    rm -rf node_modules package-lock.json
    npm install
    npm run serve
    

問題: Binderがタイムアウトする、またはダウンロードをブロックする

  • 解決策: GitHub Codespacesまたはローカルセットアップを使用してリソースアクセスを改善

メモリ問題

一部のレッスンでは大量のRAM推奨8GB以上が必要

  • リソース集約型のレッスンにはクラウドVMを使用
  • モデルをトレーニングする際は他のアプリケーションを閉じる
  • メモリ不足の場合はノートブック内のバッチサイズを減らす

追加の注意事項

コースインストラクター向け

  • 教師向けガイダンスはlessons/0-course-setup/for-teachers.mdを参照
  • レッスンは自己完結型で、順番に教えることも個別に選択することも可能
  • 推定期間: 12週間週2レッスン

クラウドリソース

  • Azure for Students: 学生向け無料クレジットあり
  • Microsoft Learn: 補足的な学習パスが随所にリンク
  • Binder: 無料だがリソースが限られ、ネットワーク制限がある場合あり

コード実行オプション

  1. ローカル(推奨): 完全な制御、最高のパフォーマンス、GPUサポート
  2. GitHub Codespaces: クラウドベースのVS Code、迅速なアクセスに適している
  3. Binder: ブラウザベースのJupyter、無料だが制限あり
  4. Azure MLートブック: GPUサポート付きのエンタープライズオプション
  5. Google Colab: ートブックを個別にアップロード、無料GPU層利用可能

ノートブックの操作

  • ノートブックは学習のためにセルごとに実行するよう設計
  • 多くのノートブックは初回実行時にデータセットをダウンロード(時間がかかる場合あり)
  • 一部のモデルは合理的なトレーニング時間のためにGPUが必要
  • 計算要件を減らすために事前学習済みモデルを使用

パフォーマンスの考慮事項

  • 後半のコンピュータビジョンレッスンCNN、GANはGPUが有効
  • NLPトランスフォーマーレッスンは大量のRAMを必要とする場合あり
  • ゼロからのトレーニングは教育的だが時間がかかる
  • 転移学習の例はトレーニング時間を最小化

免責事項:
この文書は、AI翻訳サービス Co-op Translator を使用して翻訳されています。正確性を追求しておりますが、自動翻訳には誤りや不正確な部分が含まれる可能性があります。元の言語で記載された文書を正式な情報源としてお考えください。重要な情報については、専門の人間による翻訳を推奨します。この翻訳の使用に起因する誤解や誤解釈について、当方は一切の責任を負いません。