expert network

Et ensemble af specialiserede delmodeller (eksperter) styret af en portmekanisme, der vælger eller vægter eksperternes output baseret på inputtet.

Kort fortalt

Et ekspertnetværk kombinerer flere små, specialiserede neurale netværk, så hvert netværk lærer forskellige aspekter af data, og en port vælger, hvilket netværk der skal bruges til en given opgave.

Kategori
arkitektur
Niveau
øvet

Betydninger

1
  1. 1

    En maskinlæringsarkitektur bestående af flere specialiserede modeller (eksperter) og en portmekanisme, der styrer, hvilke eksperter der aktiveres for et givet input.

    • Mixtral 8x7B er et eksempel på en sprogmodel, der anvender et ekspertnetværk med otte eksperter, hvoraf kun to aktiveres per token.Mistral AI blog, 2023
    • I et ekspertnetværk trænes en port til at vælge den relevante ekspert for hvert input.Jacobs et al., 1991

Hvornår bruges det

Ekspertnetværk bruges især i mixture-of-experts-arkitekturer, hvor man træner flere 'eksperter' (f.eks. feedforward-netværk) og en port, der lærer at vægte dem. De anvendes til at skalere modeller effektivt, f.eks. i store sprogmodeller som Mixtral 8x7B, hvor kun en del af eksperterne aktiveres per token, hvilket sparer beregning.

Formel

y = Σ_i g_i(x) · f_i(x), where g_i(x) = softmax(W_g · x)_i for soft MoE, or top-k gating for sparse MoE.

Kodeeksempel

import torch
import torch.nn as nn

class ExpertNetwork(nn.Module):
    def __init__(self, experts, gate):
        super().__init__()
        self.experts = nn.ModuleList(experts)
        self.gate = gate
    def forward(self, x):
        gate_weights = torch.softmax(self.gate(x), dim=-1)
        expert_outputs = torch.stack([e(x) for e in self.experts], dim=1)
        return (gate_weights.unsqueeze(-1) * expert_outputs).sum(dim=1)

Simpel PyTorch-implementering af et ekspertnetværk. Porten (gate) beregner vægte, og output er en vægtet sum af eksperternes output.

Oprindelse

Udtrykket 'expert network' opstod inden for maskinlæring i 1990'erne med Jacobs et al.'s work on 'Adaptive Mixtures of Local Experts' (1991). Det er inspireret af ideen om at kombinere specialiserede modeller (eksperter) ligesom man konsulterer eksperter inden for forskellige felter.

Afledte ord

3

Kilder

3