i3-80m / CITEȘTEMĂ.md
FlameF0X's picture
Create CITEȘTEMĂ.md
bd4ae9f verified

i3-80M - Model de Limbaj cu Arhitectură Hibridă

Descrierea Modelului

Modelul i3-80M este o arhitectură hibridă inovatoare care combină straturi convoluționale/recurente cu straturi de atenție completă pentru modelarea eficientă a limbajului. Această arhitectură îmbină în mod unic time-mixing în stil RWKV cu dinamica spațiului de stare Mamba în straturile timpurii, urmată de atenție multi-cap standard în straturile mai profunde.

Acesta este al doilea model din seria i3, scalat de la originalul i3-22M cu arhitectură îmbunătățită și antrenament pe multiple seturi de date.

Pentru a utiliza modelul, încercați-l aici

Statistici Model

  • Parametri Totali: ~82,77M (82.765.160)
  • Arhitectură: 10 Straturi Hibride (RWKV-Mamba) + 6 Straturi de Atenție Completă = 16 Straturi Totale
  • Dimensiune Vocabular: 35.560 token-uri (fragmente de lungime variabilă cu token )
  • Dimensiune Ascunsă (d_model): 512
  • Capete de Atenție: 16
  • Dimensiune Stare (d_state): 32
  • Lungime Maximă Secvență: 256
  • Tokenizare: Fragmentare cu lungime variabilă eficientă din punct de vedere al memoriei (2-3 caractere)

Defalcare Arhitectură

Straturile 1-10:  Blocuri Hibride RWKV-Mamba (Recurent/Conv)
                  ├─ RWKVMambaHybrid (Time-mixing + Spațiu de stare)
                  └─ Rețea Feed-Forward (expansiune 4x)

Straturile 11-16: Blocuri de Atenție Completă
                  ├─ Atenție Multi-Cap (16 capete)
                  └─ Rețea Feed-Forward (expansiune 4x)

Comparație cu i3-22M

Caracteristică i3-22M i3-80M (Acest Model)
Parametri 22,6M 82,77M
Arhitectură 24 Straturi Hibride 10 Straturi Hibride + 6 Straturi de Atenție
Dimensiune Ascunsă 512 512
Dimensiune Vocabular 4.466 35.560
Set de Date Antrenament Doar TinyChat TinyStories + TinyChat + Propoziții HQ
Token-uri Totale ~1M conversații ~3M+ token-uri
Pierdere Finală ~2,0 ~2,0
Perplexitate Finală 7,29-9,70 7,29-10,0
Timp Antrenament ~17 ore ~2-4 ore
Straturi de Atenție Niciuna (Pur Hibrid) 6 Straturi de Atenție Completă

Îmbunătățiri Cheie față de i3-22M

  1. Arhitectură Hibridă: Introduce atenție multi-cap completă în straturile superioare pentru dependențe pe distanțe lungi mai bune
  2. Vocabular Mai Mare: Vocabular de 8 ori mai mare (35.560 vs 4.466) pentru acoperire mai bună a token-urilor
  3. Antrenament pe Multiple Seturi de Date: Antrenat pe 3 seturi de date diverse vs un singur set de date
  4. Generalizare Mai Bună: Expunere la narative (TinyStories), conversații (TinyChat) și text formal (Propoziții HQ)
  5. Gestionare Îmbunătățită a Token-urilor Necunoscute: Sistem robust de token-uri pentru cuvinte în afara vocabularului

Când să Folosiți Fiecare Model

Folosiți i3-22M dacă aveți nevoie de:

  • Dimensiune mai mică a modelului (~22M parametri)
  • Focus pur conversațional (specializat TinyChat)
  • Amprenta de memorie mai mică
  • Inferență mai rapidă

Folosiți i3-80M dacă aveți nevoie de:

  • Generare de text cu scop general mai bună
  • Raționament bazat pe atenție mai puternic (6 straturi de atenție)
  • Acoperire mai mare a vocabularului
  • Înțelegere a textului multi-domeniu (povești, chat, text formal)

Caracteristici Cheie

  1. Arhitectură Hibridă: Combină eficiența procesării recurente/convoluționale cu puterea atenției

    • Straturile timpurii folosesc hibridul RWKV-Mamba pentru procesarea eficientă a secvențelor
    • Straturile ulterioare folosesc atenție multi-cap completă pentru recunoașterea de modele complexe
  2. Antrenament Optimizat pentru Memorie:

    • Construirea vocabularului în flux (fără stocare completă a textului)
    • Cache vocabular (construiește o dată, reutilizează)
    • Numărare eficientă a frecvenței fragmentelor
    • Curățare automată a memoriei
  3. Pre-antrenament pe Multiple Seturi de Date: Antrenat pe surse de text diverse pentru înțelegerea robustă a limbajului

    • TinyStories: Narațiuni și povestiri
    • TinyChat: Dinamici conversaționale
    • Propoziții Engleze de Înaltă Calitate: Diversitate lingvistică
  4. Tokenizare Inteligentă: Fragmentare cu lungime variabilă (2-3 caractere) cu optimizare trigrame comune

    • Token-uri totale procesate: 3.000.000+
    • Gestionează token-urile necunoscute cu grație folosind token-ul

Detalii Antrenament

Configurație Antrenament

  • Seturi de Date:
    • agentlans/high-quality-english-sentences
    • roneneldan/TinyStories
    • starhopp3r/TinyChat
  • Pași de Antrenament: 5.000 iterații
  • Dimensiune Lot: 4 (cu suport pentru acumulare gradient)
  • Rată de Învățare: 3e-4 (cu încălzire și declin cosinusoidal)
  • Optimizator: AdamW cu tăiere gradient (normă maximă: 1,0)
  • Hardware: NVIDIA P100 (16GB VRAM)
  • Timp de Antrenament: ~2-4 ore
  • Framework: PyTorch

Dinamica Antrenamentului

  • Utilizare GPU: Stabilă la ~15-20% în timpul antrenamentului
  • Memorie GPU: 18% alocată (2,2GB / 12GB)
  • Consum Energie: ~40W mediu
  • Debit: ~100-550 token-uri/sec

Metrici de Performanță

Metrică Inițială Finală
Pierdere Antrenament ~10,0 ~1,7
Perplexitate ~4000+ ~6

imagine

Nu știu de ce înregistrarea începe la pasul 4,6k.

Comparație i3-22m și i3-80m?

imagine

Modelul prezintă o convergență puternică cu dinamică stabilă de antrenament și utilizare eficientă a GPU.

Utilizare

import torch
from transformers import AutoModelForCausalLM, AutoTokenizer

# Încarcă modelul și tokenizatorul
model = AutoModelForCausalLM.from_pretrained("FlameF0X/i3-80m")
tokenizer = AutoTokenizer.from_pretrained("FlameF0X/i3-80m")

# Generează text
prompt = "salut"
inputs = tokenizer(prompt, return_tensors="pt")
outputs = model.generate(
    inputs.input_ids,
    max_length=100,
    temperature=0.8,
    top_k=40
)
generated_text = tokenizer.decode(outputs[0])
print(generated_text)

Inovații Tehnice

  1. Recurență Hibridă RWKV-Mamba: Combină time-mixing-ul RWKV cu dinamica spațiului de stare Mamba

    • Complexitate liniară pentru secvențe lungi
    • Procesare recurentă eficientă
    • Modelarea spațiului de stare pentru dependențe temporale
  2. Procesare Ierarhică:

    • Straturile inferioare se concentrează pe modele locale (conv/recurent)
    • Straturile superioare captează dependențe globale (atenție)
  3. Eficiență Memorie:

    • Tokenizare în flux în timpul construirii vocabularului
    • Fără stocare completă a setului de date în RAM
    • Curățare automată a datelor intermediare

Fișiere Model

  • pytorch_model.bin: Greutăți model
  • config.json: Configurație model
  • chunk_vocab_combined.json: Vocabular tokenizator

Urmărire Antrenament

Acest model a fost urmărit folosind Weights & Biases (WandB) cu metrici cuprinzătoare:

  • Urmărire în timp real a pierderii și perplexității
  • Monitorizare normă gradient
  • Vizualizare programare rată de învățare
  • Eșantioane de generare înregistrate în tabele
  • Checkpoint-uri model ca artefacte
  • Monitorizare resurse sistem

Limitări

  • Antrenat doar pe text în limba engleză
  • Limitat la fereastră de context de 256 token-uri
  • Poate necesita reglaj fin pentru sarcini specifice ulterioare
  • Stil conversațional influențat de setul de date TinyChat

Serie Model

  • i3-22M - Model original cu arhitectură hibridă pură
  • i3-80M (Acest model) - Versiune scalată cu straturi de atenție și antrenament pe multiple seturi de date

Citare

@misc{i3-80m,
  author = {FlameF0X},
  title = {i3-80M: Model de Limbaj cu Arhitectură Hibridă},
  year = {2025},
  publisher = {HuggingFace},
  howpublished = {\url{https://huggingface.co/FlameF0X/i3-80m}}
}