active-learning-system

Эксперт active learning. Используй для ML с участием человека, uncertainty sampling, annotation workflows и labeling optimization.

16 stars

Best use case

active-learning-system is best used when you need a repeatable AI agent workflow instead of a one-off prompt.

Эксперт active learning. Используй для ML с участием человека, uncertainty sampling, annotation workflows и labeling optimization.

Teams using active-learning-system should expect a more consistent output, faster repeated execution, less prompt rewriting.

When to use this skill

  • You want a reusable workflow that can be run more than once with consistent structure.

When not to use this skill

  • You only need a quick one-off answer and do not need a reusable workflow.
  • You cannot install or maintain the underlying files, dependencies, or repository context.

Installation

Claude Code / Cursor / Codex

$curl -o ~/.claude/skills/active-learning-system/SKILL.md --create-dirs "https://raw.githubusercontent.com/diegosouzapw/awesome-omni-skill/main/skills/data-ai/active-learning-system/SKILL.md"

Manual Installation

  1. Download SKILL.md from GitHub
  2. Place it in .claude/skills/active-learning-system/SKILL.md inside your project
  3. Restart your AI agent — it will auto-discover the skill

How active-learning-system Compares

Feature / Agentactive-learning-systemStandard Approach
Platform SupportNot specifiedLimited / Varies
Context Awareness High Baseline
Installation ComplexityUnknownN/A

Frequently Asked Questions

What does this skill do?

Эксперт active learning. Используй для ML с участием человека, uncertainty sampling, annotation workflows и labeling optimization.

Where can I find the source code?

You can find the source code on GitHub using the link provided at the top of the page.

SKILL.md Source

# Active Learning System Expert

Эксперт по системам активного обучения для машинного обучения.

## Основные стратегии

- **Uncertainty Sampling**: Выбор примеров с наименьшей уверенностью модели
- **Query by Committee**: Использование разногласий ансамбля
- **Expected Model Change**: Выбор наиболее информативных образцов
- **Diversity-based Selection**: Покрытие пространства признаков

## Основной цикл активного обучения

```python
from modAL import ActiveLearner
from modAL.uncertainty import uncertainty_sampling

class ActiveLearningSystem:
    def __init__(self, initial_labeled_pool, unlabeled_pool):
        self.labeled_X, self.labeled_y = initial_labeled_pool
        self.unlabeled_X = unlabeled_pool

        self.learner = ActiveLearner(
            estimator=RandomForestClassifier(n_estimators=100),
            query_strategy=uncertainty_sampling,
            X_training=self.labeled_X,
            y_training=self.labeled_y
        )

    def query_and_update(self, batch_size=10, oracle_func=None):
        query_indices = []
        temp_unlabeled = self.unlabeled_X.copy()

        for _ in range(min(batch_size, len(temp_unlabeled))):
            query_idx, query_instance = self.learner.query(temp_unlabeled)
            query_indices.append(query_idx)
            temp_unlabeled = np.delete(temp_unlabeled, query_idx, axis=0)

        queried_X = self.unlabeled_X[query_indices]
        queried_y = oracle_func(queried_X) if oracle_func else self.simulate_oracle(queried_X)

        self.learner.teach(queried_X, queried_y)
        self.unlabeled_X = np.delete(self.unlabeled_X, query_indices, axis=0)

        return query_indices, queried_X, queried_y
```

## Query by Committee

```python
class CommitteeActiveLearner:
    def __init__(self, X_initial, y_initial):
        self.committee = [
            RandomForestClassifier(n_estimators=50),
            GradientBoostingClassifier(n_estimators=50),
            SVC(probability=True)
        ]

        for clf in self.committee:
            clf.fit(X_initial, y_initial)

    def query_by_committee(self, X_pool, n_instances=1):
        disagreements = []

        for x in X_pool:
            predictions = [clf.predict_proba([x])[0] for clf in self.committee]
            avg_pred = np.mean(predictions, axis=0)
            disagreement = -np.sum(avg_pred * np.log(avg_pred + 1e-10))
            disagreements.append(disagreement)

        selected_indices = np.argsort(disagreements)[-n_instances:]
        return selected_indices, X_pool[selected_indices]
```

## Мониторинг производительности

```python
class ActiveLearningMonitor:
    def track_performance(self, model, X_test, y_test, n_annotations):
        accuracy = accuracy_score(y_test, model.predict(X_test))
        self.performance_history.append(accuracy)
        self.annotation_costs.append(n_annotations)

    def calculate_learning_efficiency(self):
        performance_gains = np.diff(self.performance_history)
        annotation_increments = np.diff(self.annotation_costs)
        efficiency = performance_gains / annotation_increments

        return {
            'current_efficiency': efficiency[-1],
            'average_efficiency': np.mean(efficiency),
            'efficiency_trend': np.polyfit(range(len(efficiency)), efficiency, 1)[0]
        }

    def suggest_stopping_criterion(self):
        efficiency = self.calculate_learning_efficiency()
        if efficiency['current_efficiency'] < 0.001:
            return "Consider stopping - low marginal gains"
        return "Continue learning"
```

## Лучшие практики

### Стратегия холодного старта
- Используйте стратифицированную выборку для начального набора
- Обеспечьте представленность всех классов
- Начинайте минимум с 5-10 примеров на класс

### Оптимизация размера батча
- Маленькие батчи (5-20) для высокой неопределенности
- Большие батчи (50-100) для дорогой аннотации
- Учитывайте усталость аннотатора

### Распространенные ловушки
- Игнорирование дисбаланса классов
- Чрезмерная зависимость от уверенности без калибровки
- Пренебрежение согласованностью аннотаторов
- Неучет шума аннотации

Related Skills

machine-learning-ops-ml-pipeline

16
from diegosouzapw/awesome-omni-skill

Design and implement a complete ML pipeline for: $ARGUMENTS

Analytics Learning

16
from diegosouzapw/awesome-omni-skill

Process YouTube analytics to extract actionable insights

agent-memory-systems

16
from diegosouzapw/awesome-omni-skill

Memory is the cornerstone of intelligent agents. Without it, every interaction starts from zero. This skill covers the architecture of agent memory: short-term (context window), long-term (vector stores), and the cognitive architectures that organize them. Key insight: Memory isn't just storage - it's retrieval. A million stored facts mean nothing if you can't find the right one. Chunking, embedding, and retrieval strategies determine whether your agent remembers or forgets. The field is fragm

agent-machine-learning-engineer

16
from diegosouzapw/awesome-omni-skill

Expert ML engineer specializing in production model deployment, serving infrastructure, and scalable ML systems. Masters model optimization, real-time inference, and edge deployment with focus on reliability and performance at scale.

agent-embedded-systems

16
from diegosouzapw/awesome-omni-skill

Expert embedded systems engineer specializing in microcontroller programming, RTOS development, and hardware optimization. Masters low-level programming, real-time constraints, and resource-limited environments with focus on reliability, efficiency, and hardware-software integration.

agent-context-system

16
from diegosouzapw/awesome-omni-skill

A persistent local-only memory system for AI coding agents. Two files, one idea — AGENTS.md (committed, shared) + .agents.local.md (gitignored, personal). Agents read both at session start, update the scratchpad at session end, and promote stable patterns over time. Works across Claude Code, Cursor, Copilot, Windsurf. Subagent-ready. No plugins, no infrastructure, no background processes.

activecampaign-automation

16
from diegosouzapw/awesome-omni-skill

Automate ActiveCampaign tasks via Rube MCP (Composio): manage contacts, tags, list subscriptions, automation enrollment, and tasks. Always search tools first for current schemas.

active-interleave

16
from diegosouzapw/awesome-omni-skill

Active Interleave Skill

Active Directory Attacks

16
from diegosouzapw/awesome-omni-skill

This skill should be used when the user asks to "attack Active Directory", "exploit AD", "Kerberoasting", "DCSync", "pass-the-hash", "BloodHound enumeration", "Golden Ticket", "Silver Ticket", "AS-REP roasting", "NTLM relay", or needs guidance on Windows domain penetration testing.

active-campaign-automation

16
from diegosouzapw/awesome-omni-skill

Automate ActiveCampaign tasks via Rube MCP (Composio). Always search tools first for current schemas.

33GOD System Expert

16
from diegosouzapw/awesome-omni-skill

Deep knowledge expert for the 33GOD agentic pipeline system, understands component relationships and suggests feature implementations based on actual codebase state

animation-system

16
from diegosouzapw/awesome-omni-skill

Implements animation systems using AnimationPlayer, AnimationTree, blend trees, and procedural animation. Use when creating character animations and visual effects.