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
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
3Kilder
3- Adaptive Mixtures of Local Experts
- Outrageously Large Neural Networks: The Sparsely-Gated Mixture-of-Experts Layer
- Mixtral of Experts