Fișierul Python ar trebui să antreneze o rețea mică, dar se oprește cu o eroare sau afișează numere ciudate. Sigmora deschide fișierul, identifică liniile relevante, rulează comanda de antrenament cu Shell și afișează output-ul real într-un card, ca să vezi ce s-a întâmplat, nu doar o presupunere. Începe cu un singur fișier. Agentul nu antrenează nimic el însuși, pentru că acest lucru îl face codul tău, iar procesul poate dura cât durează. Ciclul este scurt: citește, rulează, compară, modifică. Tu alegi folderul, alegi modul și decizi ce modificare să accepți. Folosește doar cod, date și calculatoare pe care le deții sau ai dreptul să le folosești, și păstrează fiecare experiment suficient de mic pentru a fi repetabil.
01
Deschide folderul
Alege folderul de lucru care conține scriptul de antrenament, fișierul de configurare și jurnalele. Instrumentele de fișiere funcționează în acel folder, iar list_dir arată ce se află în interior. Păstrează datele pe care ai dreptul să le folosești în același loc, astfel încât fiecare cale din script să fie scurtă. Instrumentele de fișiere folosesc acest folder.
02
Cere o citire
Cere-i lui Sigmora să citească scriptul de antrenament și să explice straturile, funcția de pierdere și bucla. read_file și grep citesc liniile la care se referă, astfel încât să poți verifica explicația împotriva propriului cod. Modul Plan only nu modifică nimic. Cere din nou dacă un bloc este încă neclar.
03
Rulează comanda
Specifică comanda de antrenament și alege un mod. Shell o rulează în Windows, în WSL sau prin SSH pe serverul tău propriu, iar cardul afișează output-ul real și codul de ieșire. Python trebuie instalat în mediul unde rulează comanda. Antrenamentul poate dura mult pe hardware-ul tău.
04
Verifică rezultatul
Extinde cardul și citește eroarea tipărită sau valorile de pierdere. Un cod de ieșire zero înseamnă doar că scriptul s-a încheiat fără eroare, așa că evaluează numerele pe datele de validare pe care modelul nu le-a văzut și notează ce ai observat. Apoi decide asupra următoarei modificări mici.
Exemplu: un neuron învață poarta AND în Python simplu
Sigmora · Rulează exemplul● Ask first
Rulează perceptron_and.py, apoi crește numărul de epoci și rulează din nou.
read_fileperceptron_and.pyread
Shellpython perceptron_and.pyexit 0
edit_fileperceptron_and.pysaved
Shellpython perceptron_and.pyexit 0
așteaptă confirmarea ta înainte de a continuaRespingeAcceptă
perceptron_and.py
# AND gate: one neuron (perceptron) learns the table
rows = [((0,0),0), ((0,1),0), ((1,0),0), ((1,1),1)]
w = [0.0, 0.0]
b = 0.0
rate = 0.1
for epoch in range(20):
for x, target in rows:
total = w[0] * x[0] + w[1] * x[1] + b
out = 1 if total > 0 else 0
err = target - out
w[0] += rate * err * x[0]
w[1] += rate * err * x[1]
b += rate * err
print("weights:", w, "bias:", b)
Acest fișier antrenează un singur neuron să învețe poarta AND cu un rat de învățare și o buclă scurtă de actualizare a ponderilor, apoi afișează ponderile și bias-ul. Folosește Python simplu, fără biblioteci și fără numere aleatorii, astfel încât fiecare rulare să dea același rezultat. Ruleaz-o cu Shell, modifică numărul de epoci și ruleaz-o din nou pentru a vedea ce se schimbă în ponderile afișate.
Ghid pas cu pas: urmărirea unui experiment Python cu rețele neuronale convoluționale
Citește codul de antrenament
Înainte de orice modificare, Sigmora citește. read_file deschide scriptul tău de antrenament, list_dir arată folderul cu date și grep găsește liniile care definesc straturile, funcția de pierdere și bucla. Vezi textul fișierului în card, astfel încât să poți compara dimensiunile straturilor cu forma datelor tale. Agentul nu modifică nimic în această fază. Modelele de rețele neuronale pentru porți logice, cum ar fi fișierul AND de mai sus, sunt primul exercițiu clasic, iar același pas de citire se potrivește unei rețele neuronale din zero în Python pe care ai scris-o acum o lună și nu mai ții minte. Cere explicații pentru orice bloc în termeni simpli sau treci la Plan only dacă vrei o explicație scrisă și fără acțiuni. Citește fiecare explicație alături de cod și verifică dacă se potrivește cu ceea ce ai scris.
Rulează comanda de antrenament
Alege Auto-run pentru o rulare în care ai încredere, sau Ask first dacă vrei să aprobezi acțiunile care modifică ceva. Shell pornește comanda de antrenament, de exemplu python perceptron_and.py, în mediul ales, iar cardul afișează output-ul real și codul de ieșire. Extinde cardul pentru a citi jurnalul complet al scriptului tău Python cu rețele neuronale convoluționale linie cu linie. Antrenamentul poate dura cât durează, iar Sigmora nu îl grăbește. Când funcția de pierdere nu converge într-o rețea neuronală, jurnalul este primul loc unde vezi acest lucru. Uită-te la numere, nu doar la codul de ieșire, deoarece un cod de ieșire zero înseamnă doar că scriptul s-a terminat. Apoi decide dacă codul are nevoie de o modificare și cere diferențele doar dacă este cazul.
Repară o eroare de formă sau o pierdere lentă
edit_file modifică scriptul și afișează o diferență. În modul Ask first nu se scrie nimic până nu accepți diferența, în timp ce Auto-run aplică modificarea imediat. O eroare de formă înseamnă de obicei că datele și primul strat nu se potrivesc, astfel că repararea constă adesea într-un singur număr. O pierdere care se mișcă puțin poate indica ratul de învățare, labelurile care nu se aliniază cu datele sau un model care nu poate încă să supraadapteze un lot mic. Încearcă mai întâi acel lot mic. Supraadaptarea și subadaptarea sunt probleme diferite, așa că verifică pierderea de antrenament și cea de validare înainte de a modifica ceva semnificativ. Construirea unei rețele neuronale pentru șah este un proiect mai mare, dar începe în același mod. După editare, rulează din nou comanda cu Shell și compară noile numere cu cele vechi.
Loghează rezultatele într-un fișier CSV
Pentru a compara rulările, ai nevoie de numere într-un fișier. write_file creează un fișier CSV în folderul tău de lucru, sau append_file adaugă un rând pe epocă, iar read_file îl încarcă din nou astfel încât agentul să poată pune 2 rulări una lângă alta. Sigmora nu analizează datele pentru tine; salvează numerele și le afișează, iar tu decizi ce înseamnă. Păstrează datele de validare separate de datele de antrenament și lasă setul de testare neschimbat până la final. Modul Plan only poate scrie următorul experiment ca un plan fără a rula nimic. Când ești gata, schimbă modul și lasă agentul să îl execute. Înainte de a păstra un rezultat, deschide fișierul CSV și verifică dacă rândurile se potrivesc cu ceea ce a afișat cardul și dacă fiecare coloană este etichetată.