Zoom/Video: https://zoom.us/j/3167417956?pwd=Q2NoNWp2a3M2Y2hRSHBKZE1Wcml4Zz09
Materials: https://pytorch.org/tutorials/beginner/nlp/deep_learning_tutorial.html
Whiteboard iedotas tiesības gustavse@gmail.com
Iepriekšējā gada Video: https://youtu.be/Ejv260iiVfo
41Diesel 4402
2Petrol 3631
3CNG 57
4LPG 38
Izmantot norādes video 6.1 un sagatavi. Implementēt:
Kategoriskajiem ievades datiem izveidot Embedding Matrix
Implementēt MSE kļūdas funkciju
Implementēt Huber loss kā kļūdas funkciju
Iesniegt screenshot ar rezultātiem un pirmkodu!
Sagatave:
https://share.yellowrobot.xyz/quick/2025-3-11-732576A0-39F9-4E54-95B5-B3B96D7C9E2E.zip
Uzdevumi:
Implementēt Cross-Entropy Loss (nedrīkst izmantot iebūvēto loss funkciju)
Implementēt Accuracy (precizitātes) metriku un grafiku
Implementēt Confusion matrix
https://encord.com/glossary/confusion-matrix/
https://dev.to/overrideveloper/understanding-the-confusion-matrix-264i
Implementēt F1-score metriku
Iesniegt screenshot ar rezultātiem un pirmkodu!
Sagatave: https://share.yellowrobot.xyz/quick/2025-3-11-887C70B9-A83E-4476-9478-DAA4A03E72FF.zip
Class weights methods
Uzdevumi:
Implementēt Binary-Cross-Entropy Loss (nedrīkst izmantot iebūvēto loss funkciju)
Implementēt BatchNormalization funkciju PyTorch, neizmantojot gatavu funkciju
Iesniegt screenshot ar rezultātiem un pirmkodu!
Sagatave:
https://share.yellowrobot.xyz/quick/2025-3-11-D20D5C91-C312-4F7C-A30D-36B6CC4CFF57.zip
🔴 ^ Izskaidrot, ka BatchNorm palīdz novērst dead neurons
Uzdevumi:
Implementēt SoftMax funkciju un tās atvasinājumu
Implementēt CCE loss funckiju un tās atvasinājumu
Iesniegt screenshot ar rezultātiem un pirmkodu!
Sagatave:
https://share.yellowrobot.xyz/quick/2025-3-11-C9DF4709-2854-4749-8F89-A43546F1F562.zip
Dati
Sadalīt Apmācību, Testa un Validācijas datu kopas
Atrast vajadzīgajam uzdevumam vienkāršāko datu kopu un apmācīt modeli uz tās, iegūstot augstāko rezultātu. Piemēram, ja ir jāatpazīst zari dēļu fotogrāfijās, vispirms apmācīt modeli ar COCO datu kopu. Vai tabulāriem datiem ar sklearn sintētiskajām datu kopām
Datu ielādes pirmkodā ieviest Augmentācijas, Normalizācijas
Modelis
Sākt ar jau iepriekš apmācītu modeli vai modeli, kuram ir zināma arhitektūra un rezultāti, nevis izstrādāt uzreiz savu
Sakt ar pēc iespējas lielāku modeli, vairāk parameteriem
Kļūdas funkcija
Izvēlēties pareizu kļūdas funkciju, piemēram, CCE neder, ja prognozējāmās klases nav OHE, kā A=100%, B=0%, C=0%, bet, ja ir A=50%, B=50%, C=0%, tad jāizmanto KL Divergence
Sākt ar jau iepriekš zināmu kļūdas funkciju, piemēram, BCE, CCE, Huber
Noteikti kļūdas funkcijai jāpievieno klašu svari apmācību ciklā, ja klases vai datu daļas nav sabalansētas
Apmācība
Izvēlēties adekvātu novērtējuma rādītāju, kas nebūtu kļūdas funkcijā
Augmentācija / normalizācija / izmēru maiņa
Apmācības un testēšanas dati
Testēšana ar vienādu klašu skaitu
Modelis - konvolūcijas neironu tīkls (convnet)
Zuduma funkcija - binārā krosentropija (bce), kategoriskā krosentropija (cce), fokusa funkcija
Svarotā zuduma funkcija
Zuduma grafiks - bez pārapmācīšanās
Optimizators SGD (stohastiskā gradienta nolaišana)
Metrika - precizitāte (Acc), F1 vērtējums
Svaru saglabāšana, darbība bez gradientu uzkrāšanas
Binārajai klasifikācijai svari šajā pusē
Class weights
Accuracy formula
Huber loss
CCE formula
F1 formula
BCE formula
BatchNormalization formula
Softmax formula derivative
CCE formula derivative
Nice examples of optimization algorithms https://emiliendupont.github.io/2018/01/24/optimization-visualization/
http://www.denizyuret.com/2015/03/alec-radfords-animations-for.html?m=1
Ranger (FastAI RAdam + Lookahead) Paratrooper optimizer pytorch https://github.com/unslothai/hyperlearn