Автор: Antonio Bărbălău (Bitdefender)
În 2024, CEO-ul Anthropic, Dario Amodei, a declarat public [1] că la momentul acela, preantrenarea unui Large Language Model (LLM) costa aproximativ o sută de milioane de dolari. În plus, acesta a declarat în același interviu că se pregăteau modele pentru care prețul se va apropia de un miliard de dolari. Conform unui studiu realizat de EpochAI [2], ne așteptăm ca în 2026 să folosim deja modele pentru care costul de antrenare a fost de un miliard de dolari.
Având în vedere aceste costuri, odată ce un model este lansat, orice schimbare necesară trebuie făcută fără a mai reantrena modelul. În acest sens, două direcții de cercetare importante au apărut în literatura de specialitate: Machine Unlearning [3, 4] și Model Steering [5, 6, 7, 8]. În cadrul Model Steering, activările unui model preantrenat sunt alterate cu scopul de a obține un comportament diferit din partea modelului fără a schimba arhitectura sau ponderile. Pentru această problemă, scopul vostru este să propuneți și să implementați o metodă de Model Steering care să debiaseze activările modelului CLIP [9] preantrenat de OpenAI față de gender. Rolul vostru este ilustrat în figura de mai jos.
În fișierul main.py veți găsi următoarele:
train_image_embeddings: O matrice numpy de dimensiune (15000, 512) reprezentând setul de activări ale encoder-ului de imagini al modelului CLIP pentru un set de 15000 de exemple adnotate.gender_labels: Un vector numpy de dimensiune 15000 ce conține adnotări binare de gender pentru cele 15000 de imagini din train_image_embeddings.test_image_embeddings: O matrice numpy de dimensiune (15000, 512) reprezentând setul de activări ale encoder-ului de imagini al modelului CLIP pentru un set de 15000 de exemple ce nu au adnotări de gender.generate_submission: O funcție care preia output-ul vostru—doi vectori numpy de dimensiune (15000, 512)—și îl salvează în formatul necesar pentru submisie.Dăndu-se train_image_embeddings și gender_labels, să se debiaseze atât train_image_embeddings cât și test_image_embeddings în raport cu atributul de gender. Un embedding este debiasat atunci când predicțiile finale ale modelului sunt în continuare corecte fără a favoriza un gender sau altul.
debiased_train_image_embeddings: O matrice numpy de dimensiune (15000, 512) reprezentând varianta debiasată a train_image_embeddings în raport cu atributul de gender.debiased_test_image_embeddings: O matrice numpy de dimensiune (15000, 512) reprezentând varianta debiasată a test_image_embeddings în raport cu atributul de gender.Pentru a genera o submisie:
generate_submission din fișierul main.py dat, care preia output-ul vostru ce constă în cei doi vectori numpy debiased_train_image_embeddings și debiased_test_image_embeddings și generează în folder-ul de lucru un fișier submission.pkl. Fișierul main.py este aranjat astfel încât, dacă codul vostru este scris în locul amenajat, funcția se va apela automat la finalul script-ului.submission.pkl pentru a obține o arhivă .zip..zip ce conține submission.pkl pe platformă.Într-o situație reală, un model steered care este dat clienților sau publicului larg, va fi folosit pentru orice scop își doresc aceștia, în timp ce vor evalua performanța modelului în funcție de propriile interese. Asta înseamnă că dezvoltatorii nu știu dinainte pentru ce task for fi folosite embedding-urile alterate, și nici cum evaluează publicul larg modelul lor. Scopul Model Steering este deci, de a altera informația țintită, păstrând cât mai mult din informația originală, astfel încât modelul să poată avea rezultate bune în continuare indiferent de task-ul care urmează și de modul de evaluare. După ce modelul oferă un răspuns clientului, acesta poate alege să ofere feedback, de exemplu acesta poate spune dacă (i) răspunsul este util, și dacă (ii) răspunsul este biased din perspectiva lui.
Similar, în cadrul acestei probleme, modalitatea de evaluare nu este cunoscută. Metoda de steering va fi evaluată folosind 4 task-uri și vor fi raportate două metrici ce măsoară: (i) performanța pe cele 4 task-uri și (ii) cât de biased au fost predicțiile pe cele 4 task-uri către un gender sau altul. În ceea ce privește primul scor, modelul este cu atât mai bun cu cât performanța este mai mare. În ceea ce privește cel de al doilea scor, modelul este mai bun cu cât metrica este mai aproape de 0 (biasul este mai puțin vizibil). Evaluarea finală se face în funcție de media armonică a celor două scoruri, iar departajarea se va face în funcție de scorul de debiasing.
[1] Jowi Morales, https://www.tomshardware.com/tech-industry/artificial-intelligence/ai-models-that-cost-dollar1-billion-to-train-are-in-development-dollar100-billion-models-coming-soon-largest-current-models-take-only-dollar100-million-to-train-anthropic-ceo, 2024.
[2] Cottier et al., "The rising costs of training frontier AI models", 2024.
[3] Wang et al., "Machine Unlearning: A Comprehensive Survey", 2025.
[4] Liu et al., "Rethinking Machine Unlearning for Large Language Models", 2024.
[5] Kim et al., "Interpretability Beyond Feature Attribution: Quantitative Testing with Concept Activation Vectors (TCAV)", 2017.
[6] Anthropic, https://transformer-circuits.pub/2024/scaling-monosemanticity/, 2024.
[7] Louapre, https://huggingface.co/spaces/dlouapre/eiffel-tower-llama, 2025.
[8] Turner et al., "Steering Language Models With Activation Engineering", 2023.
[9] Radford et al., "Learning Transferable Visual Models From Natural Language Supervision", 2021.