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

317 lines
12 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 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の使用です
```bash
# 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の使用
```bash
# Open in VS Code and select "Reopen in Container" when prompted
# The devcontainer will automatically set up the environment
```
### クイズアプリのセットアップ
クイズアプリは`etc/quiz-app/`にあるVue.jsアプリケーションです
```bash
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サポートあり
### クイズアプリの開発
```bash
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 lint`を`etc/quiz-app/`で実行
### コード例の実行:
```bash
# 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は直接実行されます。
### クイズアプリ
```bash
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を使用してドキュメントを提供しています
- `index.html`がエントリーポイントとして機能
- ビルド不要 - GitHub Pagesで直接提供
- アクセス先: https://microsoft.github.io/AI-For-Beginners/
## コントリビューションガイドライン
### プルリクエストプロセス
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`を参照:
- 深層強化学習セクション
- オブジェクト検出の改善
- 固有表現認識の例
- カスタム埋め込みトレーニングサンプル
## 環境構成
### 必要な依存関係
```bash
# 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_TOKEN`Azureによって自動設定
## デバッグとトラブルシューティング
### よくある問題
**問題:** Conda環境の作成が失敗する
- **解決策:** まずcondaを更新: `conda update conda -y`
- 十分なディスク容量を確保推奨50GB
**問題:** Jupyterカーネルが見つからない
- **解決策:**
```bash
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'))"`
**問題:** クイズアプリが起動しない
- **解決策:**
```bash
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](https://github.com/Azure/co-op-translator) を使用して翻訳されています。正確性を追求しておりますが、自動翻訳には誤りや不正確な部分が含まれる可能性があります。元の言語で記載された文書を正式な情報源としてお考えください。重要な情報については、専門の人間による翻訳を推奨します。この翻訳の使用に起因する誤解や誤解釈について、当方は一切の責任を負いません。