Informatii generale
- Categorie: Educational
- Judetul: Brașov
- Surse: GitHub - NeuroVis/NeuroVision-Docs
Descriere
Introducere
NeuroVision este un editor vizual puternic și intuitiv, conceput pentru a ajuta utilizatorii să creeze, să înțeleagă și să experimenteze cu rețele neuronale artificiale. Indiferent dacă ești începător și înveți bazele sau un utilizator avansat care prototipează modele de învățare profundă, NeuroVision face legătura dintre teorie și practică printr-o interfață interactivă care face rețelele neuronale mai accesibile.
Mediu interactiv și lecții
La bază, NeuroVision oferă un mediu de editare a straturilor, unde utilizatorii pot construi arhitecturi neuronale adăugând și eliminând straturi și noduri dintr-o rețea neuronală. Fiecare nod este complet configurabil, acceptând parametri precum funcții de activare, rata de învățare, metode de regularizare și altele. Printre altele, pot fi adăugate diferite straturi și arhitecturi pentru a fi vizualizate la nivelul neuronilor.
Ce diferențiază NeuroVision este componenta sa educațională. Fiecare hiperparametru și element al rețelei este însoțit de explicații detaliate și sugestii clare, scrise într-un limbaj prietenos pentru începători, dar suficient de bogat pentru a satisface și utilizatorii avansați. De exemplu, când ajustezi rata de învățare, NeuroVision îți permite să vizualizezi cum afectează aceasta procesul de antrenare. Ghidări similare sunt oferite și pentru funcțiile de activare, regularizare (L1, L2, dropout) și straturile de ieșire, în funcție de tipul problemei (ex. clasificare vs. regresie).
NeuroVision este de asemenea modular și extensibil. Fiecare nod este generat cu un identificator unic (UUID) și poate fi complet personalizat.
Vizualizatorul oferă și feedback în timp real despre structura modelului tău. De exemplu:
- Tooltip-urile oferă link-uri la lecțiile corespunzătoare uneltelor și opțiunilor utilizate.
- Interfața permite selectarea de modele pentru probleme comune (ex. clasificare, regresie).
- Panoul din dreapta arată predicția curentă în timp real, pe măsură ce rețeaua învață.
Deși în prezent NeuroVision se concentrează pe construirea arhitecturii în mod vizual, modelul neuronal rulant este generat automat folosind Tensorflow.js și este complet adaptat parametrilor aleși de utilizator.
Agent LLM
Pe lângă mediul de experimentare și lecții, NeuroVision oferă un asistent AI specializat în rețele neuronale de tip agent care te poate ajuta în procesul de învățare, nu doar cu informații, ci și prin generarea și exemplificarea rețelelor în mod automat.
Platforma socială
Pentru a spori și mai mult interesul, pentru domeniu, NeuroVision are și o platformă pentru comunitate unde utilizatorii pot posta lecții proprii (articole) cu snippet-uri de cod și părți interactive integrate, ce permite dezvoltarea aplicației mai departe de lecțiile propuse.
Obiectivul principal al NeuroVision este să explice rețelele neuronale, pe înțelesul tuturor, transformând conceptele abstracte în experiențe vizuale și interactive. Este ideal pentru:
- Elevi și profesori în domeniul învățării automate și inteligenței artificiale
- Oricine dorește să înțeleagă cum circulă datele într-o rețea neuronală
Astfel, NeuroVision își propune să devină instrumentul vizual de referință pentru învățarea și explorarea rețelelor neuronale, făcându-le ușor de înțeles pentru oricine.
Tehnologii
Tehnologii folosite
- NextJS (Framework pentru aplicație)
- TailwindCSS (Pentru stilizarea site-ului)
- Lucide React (Pentru iconițe)
- React XY Flow (Pentru grafuri)
- PostgreSQL (Baza de date pentru conturi)
- Drizzle ORM (ORM folosit pentru comunicarea cu baza de date)
- Tauri (Pentru varianta desktop a site-ului, alternativă la Electron)
- Nextra (pentru documentație și lecții)
Am ales framework-ul Next.js întrucât este ideal pentru această aplicație, deoarece oferă o combinație eficientă între generarea statică a conținutului (lecții și documentație) prin SSR (server side rendering) și funcționalitatea dinamică necesară pentru partea de playground. Next.js permite dezvoltarea rapidă a interfeței cu suport integrat pentru rutare, API routes și rendering hibrid (static și server-side), ceea ce îl face potrivit pentru astfel de aplicații.
Ca bază de date, am utilizat PostgreSQL, bază de date relațională, datorită structurii aplicației.
Pentru autentificare, utilizăm cookie-uri și tokene JWT. Parolele sunt criptate folosind algoritmul BCrypt cu 10 runde de salting.
Cerinte sistem
Pentru rularea în Web
OS: Windows, Linux MacOS (trbuie să ruleze un browser)
RAM: 4 GB
Browser: Chromium Based, Safari sau Firefox
CPU: Dual-core processor, 1.6 GHz (se pot utiliza și procesoare mai slabe, dar antrenarea rețelelor va fi mult mai înceată)
Internet: Conexiune stabilă pentru accesarea din interfața web
Suplimentar pentru aplicația desktop:
Storage: 1 GB disk liberi
Realizatori
Irina-Maria Alexa
- Scoala: Colegiul Național de Informatică “Gr. Moisil” Brașov
- Clasa: 11
- Judet: Brașov
- Oras: Brașov
Screenshots


