スキル一覧に戻る

label-training-data

pjt222
更新日 2 days ago
3 閲覧
17
2
17
GitHubで表示
デザインaidata

について

このスキルは、Label Studioなどのツールを使用して体系的なデータラベリングワークフローを構築し、品質管理とアノテーター間一致評価を含みます。教師あり機械学習を開始する際や、モデルの性能が不十分なラベル数によって制限されている場合に、テキスト、画像、音声、または動画のラベル付きデータをMLパイプラインに統合することを支援します。また、能動学習をサポートし、ラベリングに価値の高い事例を優先的に選択します。

クイックインストール

Claude Code

推奨
メイン
npx skills add pjt222/agent-almanac -a claude-code
プラグインコマンド代替
/plugin add https://github.com/pjt222/agent-almanac
Git クローン代替
git clone https://github.com/pjt222/agent-almanac.git ~/.claude/skills/label-training-data

このコマンドをClaude Codeにコピー&ペーストしてスキルをインストールします

ドキュメント

Label Training Data

See Extended Examples for complete config files + templates.

Systematically label data for supervised ML w/ QC + efficient workflows.

Use When

  • Start supervised ML needing labeled data
  • Model perf limited by insufficient examples
  • Label text, images, audio, video
  • Measure + improve annotation quality
  • Team of annotators w/ diff expertise
  • Active learning → prioritize valuable examples
  • Track progress + costs
  • Consistent labels across multi annotators

In

  • Req: Unlabeled dataset (images, text, audio, video)
  • Req: Label schema (classes, attributes, annotation types)
  • Req: Labeling guidelines doc
  • Opt: Pre-existing labels (quality compare)
  • Opt: Model predictions for pre-annotation
  • Opt: Budget + timeline
  • Opt: Domain expert availability

Do

Step 1: Install + Config Label Studio

Setup labeling platform.

# Install Label Studio
pip install label-studio

# Or use Docker for production
docker pull heartexlabs/label-studio:latest

# Create project directory
mkdir -p labeling-project/{data,exports,config}
cd labeling-project

# Initialize Label Studio
label-studio init my_project

# Start Label Studio server
label-studio start my_project --port 8080

Access http://localhost:8080 (default creds: create on first visit).

Prod deploy w/ Docker:

# docker-compose.yml
version: '3.8'

services:
  label-studio:
    image: heartexlabs/label-studio:latest
    ports:
      - "8080:8080"
# ... (see EXAMPLES.md)
docker-compose up -d

→ Label Studio running + accessible, PostgreSQL DB init for prod.

If err: Port 8080 busy → change port in config. Docker fails → check daemon running. Ensure disk space for data vols. Firewall allows 8080.

Step 2: Design Interface + Schema

Create labeling config for task type.

# labeling-project/config/labeling_config.py
"""
Label Studio configuration templates for common tasks.
"""

# Text Classification (single label)
TEXT_CLASSIFICATION = """
<View>
# ... (see EXAMPLES.md)

→ Interface configured w/ appropriate controls for task type, data imported, interface accessible to annotators.

If err: Validate XML config w/ Label Studio validator. Check data file format (JSON / CSV). Ensure image/audio URLs accessible if external storage. Verify API key perms.

Step 3: Prepare Data + Sampling Strategy

Format data for import + prioritize for labeling.

# labeling-project/prepare_data.py
import pandas as pd
import json
import random
from typing import List, Dict
from sklearn.cluster import KMeans
import numpy as np

# ... (see EXAMPLES.md)

→ Data formatted for Label Studio import, sampling prioritizes informative examples, tasks include metadata for tracking.

If err: Verify JSON w/ jq / Py json.load(). Check URLs accessible if remote images. Ensure no special chars break JSON. Validate column names match config.

Step 4: QC + IAA Measurement

Setup processes to measure + improve quality.

# labeling-project/quality_control.py
import pandas as pd
import numpy as np
from sklearn.metrics import cohen_kappa_score, confusion_matrix
from typing import Dict, List, Tuple
import logging

logging.basicConfig(level=logging.INFO)
# ... (see EXAMPLES.md)

→ IAA measured (Cohen's Kappa > 0.6 = moderate, >0.8 = good), difficult tasks ID'd for review, annotator perf tracked.

If err: Kappa very low (<0.4) → review guidelines for clarity, retrain annotators, simplify schema, check ambiguous examples, consider expert annotators for gold std.

Step 5: Export + Integrate Labeled Data

Export labels + prep for ML training.

# labeling-project/export_labels.py
import requests
import pandas as pd
import json
from typing import List, Dict
import logging

logger = logging.getLogger(__name__)
# ... (see EXAMPLES.md)

→ Annotations exported training-ready format, label distribution balanced / documented, data quality validated before training.

If err: Verify API key perms. Check export format compat w/ ML framework. Handle missing annotations gracefully. Validate JSON matches expected.

Step 6: Continuous Labeling Pipeline

Automate workflow w/ active learning.

# labeling-project/active_learning_pipeline.py
import schedule
import time
import logging
from datetime import datetime
from prepare_data import DataSampler, prepare_label_studio_format
from export_labels import LabelStudioExporter, convert_to_training_format
import pandas as pd
# ... (see EXAMPLES.md)

→ Active learning selects informative examples auto, batches prep weekly, model retrained when sufficient new labels avail.

If err: Uncertainty sampling doesn't improve model → try diversity sampling. Annotators can't keep up → reduce batch size. Monitor queue length, backpressure if queue grows.

Check

  • Label Studio accessible + responsive
  • Interface intuitive (test w/ sample annotator)
  • Data import successful w/ correct format
  • IAA (Cohen's Kappa) > 0.6
  • QC IDs problematic tasks
  • Labels export training-ready
  • Distribution matches expected (or intentionally imbalanced)
  • Active learning pipeline runs w/o manual intervention
  • Throughput meets timeline

Traps

  • Unclear guidelines: Ambiguous → inconsistent labels. Invest detailed guidelines + examples.
  • Insufficient overlap: Can't measure IAA w/o multi annotators per task. 10-20% overlap.
  • Ignore difficult cases: Edge cases often skipped, critical for robustness. Flag for expert review.
  • Batch effects: Annotator fatigue / learning → temporal inconsistency. Randomize task order.
  • No quality feedback: Annotators don't improve w/o feedback. Regular accuracy reports.
  • Wrong sampling: Random wastes budget on easy. Use uncertainty / diversity sampling.
  • Labeling in isolation: Domain experts needed for complex tasks. Pair novices w/ experts initially.
  • Not tracking costs: Labeling expensive. Monitor time per task + budget consumption.

  • version-ml-data — version control for labeled datasets
  • track-ml-experiments — track model perf as labels added

GitHub リポジトリ

pjt222/agent-almanac
パス: i18n/caveman-ultra/skills/label-training-data
0
agentsagentskillsai-assisted-developmentclaude-codeskillsteams

関連スキル

executing-plans

デザイン

executing-plansスキルは、完全な実装計画があり、それを管理されたバッチでレビューチェックポイントを設けながら実行する場合に使用します。このスキルは計画を読み込んで批判的にレビューした後、小さなバッチ(デフォルトは3タスク)でタスクを実行し、各バッチの間に進捗状況を報告してアーキテクトのレビューを受けます。これにより、品質管理チェックポイントが組み込まれた体系的な実装が保証されます。

スキルを見る

requesting-code-review

デザイン

このスキルは、コードレビュアーサブエージェントを起動し、処理を進める前に要件に対してコード変更を分析します。タスク完了後、主要な機能の実装後、またはmainブランチへのマージ前などに使用すべきです。このレビューは、現在の実装と元の計画を比較することで、問題を早期に発見するのに役立ちます。

スキルを見る

connect-mcp-server

デザイン

このスキルは、開発者がHTTP、stdio、またはSSEトランスポートを使用してMCPサーバーをClaude Codeに接続するための包括的なガイドを提供します。GitHub、Notion、カスタムAPIなどの外部サービスを統合するためのインストール、設定、認証、セキュリティについて解説しています。MCP統合のセットアップ、外部ツールの設定、またはClaudeのModel Context Protocolを扱う際にご利用ください。

スキルを見る

web-cli-teleport

デザイン

このスキルは、タスク分析に基づいて開発者がClaude Code WebとCLIインターフェースの選択を支援し、これらの環境間でのシームレスなセッションテレポーテーションを可能にします。Web、CLI、モバイル環境を切り替える際のセッション状態とコンテキストを管理することで、ワークフローを最適化します。様々な段階で異なるツールを必要とする複雑なプロジェクトにご活用ください。

スキルを見る