[NAISP] Gradivo
TentationeM
M̵̧̩͑̀͝î̶͍̉ć̴̝̾́̀o̶̺̟̣͂̽ m = 2, ceil(m/2) <= k <= m, znači k = [1, 2], barem k - 1 elementata u čvoru daje 0.
Evo sada me baš zanima, nadam se da će objaviti bodove po zadacima.
pero122
TentationeM Yep istina fkt ispada 0… formule su
Max children : m
Max keys : m - 1
Min children : ceil( m/2 )
Min keys : ceil( m/2 ) - 1
A ocito onda vrijedi
min keys : ceil( 2/2 ) - 1
= 1 - 1
= 0
Ali mi je to i dalje precudno i onda to krši ono pravilo da mora biti popunjenost barem 50%
micho
TentationeM Hmmm imaš pravo. Štimalo bi i pod pravilo 3. Samo onda su ove osobitosti krive. Kakav shitfest hahahah
micho
fPolic Zanimljivo, znači po ovome radi
- on-line dodavanja
- nemogućnosti stvaranja stabla s 2k - 1 elemenata (mislim da je ovo s 2k elemenata greška, onda nemaš ni puno, kamoli potpuno ili savršeno stablo)
zadatak je krivo zadan i oni bi nam kao trebali dati sve bodove hahahaha
Ali ipak mislim da će tu samo biti prazni čvorovi, to se slaže s njihovom definicijom, iako onda treba mijenjati prezentacije i ovih 50% popunjenosti
Što je najstrašnije, ovaj zadatak bi bio idealan da je bilo B-stablo 3. stupnja, jer onda bi imao savršeno stablo (3 + 3 * 3 = 12)
pero122
M̵̧̩͑̀͝î̶͍̉ć̴̝̾́̀o̶̺̟̣͂̽
Sta znači on-line dodavanje, znam da to postoji u neuronskim mrezama, ali kod stabla nisam čuo, a i na ovom post-u nigdje ne vidim da to netko spominje
micho
teslaFan Online algoritmi su oni koji se obavljaju sekvencijalno, bez da je poznata budućnost. Zadaci s poredanim dodavanjem elemenata su simulacija online algoritma dodavanja elemenata jer ti u nekom danom trenutku ne znaš koji je sljedeći element za dodati u stablo.
doakes
Dosli rezultati… 1 prošao
Bobicki
doakes Koliko vas je ukupno pisalo ako je samo 1 prošao?
micho
BOG JE VELIK
pero122
Bobicki 20 nas je pisalo, i prošla su dvojica.
TentationeM
Može li netko tko je bio na uvidima nakraju ukratko objasniti kako do punih bodova s B-stablom?
doakes
TentationeM Odgovor je nemozes….
volimfmos69
Oj vi bogovi NASP-a koji ste prosli pismeni, molim vas za dojam s usmenog xD
micho
debos Znači prošlo je 3 ljudi - ja i kolega, i još jedan lik je uspio na uvidima dobit bodove.
Mene je pitao 2 teme, 5 pitanja svaka, 5 bodova svako.
Protok
- presjek grafa
- dopunski put
- rezidualna mreža
- max flow min cut teorem
- protok presjeka
Neuronske mreže
- koju smo arhitekturu radili na predmetu
- je li gradijentna optimizacija konveksna ili nekonveksna
- koju smo funkciju cilja radili na predmetu, za koji je to tip učenja (regresija ili klasifikacija), i koja/e bi bila/e bolja/e
- koja je poveznica dinamičkog programiranja i backpropagationa
- za slučaj jednog neurona imamo 3 slučaja, kako učimo u tim slučajevima
Prof mi je rekao da je ostale ljude pitao po ispitu. Mene nije u slučaju da su podijelili pitanja na forumu (ali rekao sam mu da nisu xD).
Prokomentirali smo zadatak s B-stablom - rekao je da je trebalo napisati da je nemoguće izgraditi B-stablo s tim brojem čvorova, i kad sam mu rekao za prazne čvorove rekao je OK, ali da onda ti prazni čvorovi ne mogu imati pointere na dalje (jer nemaju ključeva za usporedbu), dakle mogu biti samo listovi.
Ovo podebljano sam znao i odgovori su redom:
- svaki put kod određivanja maksimalnog protoka u grafu kojim se od polazišta može doći do odredišta
- graf koji gradimo prilikom određivanja maksimalnog protoka u grafu pomoću kojeg lakše pratimo iskorištenost kapaciteta svakog brida
- rekao sam densenet, ali da se izbjegne konfuzija s DenseNetom iz CV-a, točniji odgovor je MLP
- može biti, ali generalno nije
- radili smo MSE, to je regresijska funkcija gubitka, bila bi bolja unakrsna entropija (ili binarna unakrsna entropija ako imamo multilabel dataset)
- backpropagation za neki komad mreže se računa koristeći prethodne gradijente, pa stoga prethodne gradijente jednom izračunate čuvamo i koristimo ih za izračunavanje gradijenata ranijih slojeva mreže, kao i u dinamičkom programiranju
Dobio sam 30 bodova, zapisao mi 3 i to je to. Dost je bilo opušteno, nije bilo frke oko toga kaj nisam znao ove stvari, on je rekao da ne može utvrditi jel čitam prezentacije iako sam morao upaliti kameru, al nisam varao, možda sam mogao izvući 5-10 bodova više, ali to mi stvarno ništa ne znači u životu jer da sam polagao kontinuirano ciljao bih na 2.
volimfmos69
M̵̧̩͑̀͝î̶͍̉ć̴̝̾́̀o̶̺̟̣͂̽ Puno hvala za detaljni odgovor!
sara
jeli netko rjesio neuronsku za ljetnog ove godine, idem po formulama sa sluzbenog , matricno, i dobivam grozne brojke pa neznam sta krivo radim
micho
Gragas Ako hoćeš mogu napisati mali guide danas za to ili me nađi na faksu u aleji pa ti objasnim irl, do 10 sam tu
sara
hvala, dodem u aleju za 20ak min
TentationeM
Kako provjeravate jeste točno riješili zadatak s neuronskim?
@M̵̧̩͑̀͝î̶͍̉ć̴̝̾́̀o̶̺̟̣͂̽ Stavite onda ovdje, hvala 😄
micho
TentationeM Skini si Pytorch i možeš svaki gradijent provjeriti.
Npr. za 3×4×1 mrežu sa sigmoidom nakon skrivenog sloja bi moglo ovako nešto:
import torch
l1 = torch.nn.Linear(3, 4)
a1 = torch.nn.Sigmoid()
l2 = torch.nn.Linear(4, 1)
# Ulazi i izlazi
inputs = torch.tensor([[0, 0, 1], [0, 1, 0], [1, 0, 0]])
outputs = torch.tensor([[0], [1], [2]])
loss_f = torch.nn.MSELoss()
optimizer = torch.optim.SGD([l1.parameters(), l2.parameters()], lr=1)
for i, x in enumerate(inputs):
# Forward pass
x = l1(x)
x = a1(x)
x = l2(x)
# Backward pass
loss = 0.5 * loss_f(x, outputs[i])
loss.backward()
print(f"Gradijenti l1 težina:\n{l1.weight.grad}")
print(f"Gradijenti l2 težina:\n{l2.weight.grad}")
print(f"Gradijenti l1 pomaka:\n{l1.bias.grad}")
print(f"Gradijenti l2 pomaka:\n{l2.bias.grad}\n")
# Ažuriranje parametara
optimizer.step()
# Reset gradijenata, pomaknuti izvan for petlje ako se radi o grupnom učenju
optimizer.zero_grad()
Za specifične početne težine, mogu se inicijalizirati s npr.
torch.nn.init.constant_(l1.weight, 1)
torch.nn.init.constant_(l1.bias, 1)
ovo će postaviti težine i pomake 1. sloja na 1.