-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[nmt-2.0] #21
Comments
|
запуски на маке500 эпох, датасет 100 train != 100 test, lr = 0.05, step_size=150, gamma=0.1, bs=10*10, test every 10, ИСПРАВЛЕННЫЙ grad acc - ничем вроде не отличается от предыдущего, но что-то скоры совсем другие; ДО BIDERECTIONAL, добавила clip_gradhttps://app.wandb.ai/natalymr/nmt-2.0-test/runs/1s09khnv 500 эпох, датасет 100 train != 100 test, lr = 0.05, step_size=150, gamma=0.1, bs=10*10, test every 10, ИСПРАВЛЕННЫЙ grad acc - ничем вроде не отличается от предыдущего, но что-то скоры совсем другие; ДО BIDERECTIONALhttps://app.wandb.ai/natalymr/nmt-2.0-test/runs/35uz9xt0 500 эпох, датасет 100 train != 100 test, lr = 0.1, step_size=100, gamma=0.1), bs=10*10, test every 10, ИСПРАВЛЕННЫЙ grad acchttps://app.wandb.ai/natalymr/nmt-2.0-test/runs/cnqca8ml 500 эпох, датасет 100 train != 100 test, lr = 0.1, step_size=100, gamma=0.1), bs=10*10, test every 10https://app.wandb.ai/natalymr/nmt-2.0-test/runs/1o31kd14 добавила grad acc (bs = 1, step делаем через каждый 5 шагов)https://app.wandb.ai/natalymr/nmt-2.0-test/runs/uaoy1i2r просто предыдущий запускhttps://app.wandb.ai/natalymr/nmt-2.0-test/runs/2iarf6cm h = 2, init = xavier_uniform_, 10 dataset, train != test, добавила dropout везде с коэф 0.5, lr начали с 0.001, после 500 эпох уменьшили в 0.2 раза, добавила pack_paddedhttps://app.wandb.ai/natalymr/nmt-2.0-test/runs/ypzmdhj4 h = 2, init = xavier_uniform_, 10 dataset, train != test, добавила dropout везде с коэф 0.5, lr начали с 0.001, после 500 эпох уменьшили в 0.2 раза, убрала dropout, clip_gradhttps://app.wandb.ai/natalymr/nmt-2.0-test/runs/2bhi9b3z h = 2, init = xavier_uniform_, 10 dataset, train != test, добавила dropout везде с коэф 0.5, lr начали с 0.001, после 500 эпох уменьшили в 0.2 раза, clip_grad(0.25)https://app.wandb.ai/natalymr/nmt-2.0-test/runs/3nkuv908 h = 2, init = xavier_uniform_, 10 dataset, train != test, добавила dropout везде с коэф 0.5, lr начали с 0.001, после 500 эпох уменьшили в 0.2 раза, добавила dropout на lstm в decoder, clip_grad(0.25)https://app.wandb.ai/natalymr/nmt-2.0-test/runs/3v4h52mv?workspace=user-natalymr h = 2, init = xavier_uniform_, 10 dataset, train != test, добавила dropout везде с коэф 0.5, lr начали с 0.001, после 500 эпох увеличили в 10 разhttps://app.wandb.ai/natalymr/nmt-2.0-test/runs/ba9k4hxu?workspace=user-natalymr h = 2, init = xavier_uniform_, 10 dataset, train != test, добавила dropout везде с коэф 0.5, lr увеличивается через каждые 500 эпох в 10 разhttps://app.wandb.ai/natalymr/nmt-2.0-test/runs/1612jgvi h = 2, init = xavier_uniform_, 10 dataset, train != test, добавила dropout везде с коэф 0.5, lr уменьшается через каждые 500 эпох в 10 разhttps://app.wandb.ai/natalymr/nmt-2.0-test/runs/2kdz2ntc h = 2, init = xavier_uniform_, 10 dataset, train != test, добавила dropout везде с коэф 0.5, lr уменьшается через каждые 100 эпох в 10 разhttps://app.wandb.ai/natalymr/nmt-2.0-test/runs/2ar6y7nu h = 2, init = xavier_uniform_, 10 dataset, train != test, добавила dropout везде с коэф 0.5https://app.wandb.ai/natalymr/nmt-2.0-test/runs/cp5vlq38 h = 2, init = xavier_uniform_, 10 dataset, train=test, добавила dropout везде с коэф 0.5https://app.wandb.ai/natalymr/nmt-2.0-test/runs/3msbqrk2 h = 2, init = xavier_normal_, 10 dataset, train=testвот тут видно, что
h = 2, init = normal, 10 dataset, train=testhttps://app.wandb.ai/natalymr/nmt-2.0-test/runs/3nxm5dk6?workspace=user-natalymr h = 2, init не делала, 10 dataset, train=testhttps://app.wandb.ai/natalymr/nmt-2.0-test/runs/2bjp9eqj?workspace=user-natalymr запуски на машине1000 эпох, 100 dataset, train != test, lr = 0.0001https://app.wandb.ai/natalymr/nmt-2.0-test/runs/xc58t4gg?workspace=user-natalymr 200 эпох, init = xavier_normal_, 100 dataset, train != test, lr = 0.01https://app.wandb.ai/natalymr/nmt-2.0-test/runs/zx11267c 2000 эпох, init = xavier_normal_, 100 dataset, train != test, lr = 0.01https://app.wandb.ai/natalymr/nmt-2.0-test/runs/b12hg64j 200 эпох, init = xavier_normal_, 100 dataset, train != test, lr уменьшающийся через каждые 50 эпохhttps://app.wandb.ai/natalymr/nmt-2.0-test/runs/4rx2i84m 200 эпох, init = xavier_normal_, 100 dataset, train != test, lr уменьшающийся через каждые 500 эпохhttps://app.wandb.ai/natalymr/nmt-2.0-test/runs/ttyv6fs2 1000 эпох, init = xavier_normal_, 100 dataset, train != test, lr уменьшающийся через каждые 500 эпох, batch size = 100, а не 10; hid_size 400, а не 300https://app.wandb.ai/natalymr/nmt-2.0-test/runs/mpr4zj4q 2000 эпох, init = xavier_normal_, 100 dataset, train != test, lr уменьшающийся через каждые 500 эпох, batch size = 100, а не 10; hid_size 400, а не 300https://app.wandb.ai/natalymr/nmt-2.0-test/runs/ymhus29z 2000 эпох, init = xavier_normal_, 100 dataset, train != test, lr НЕ УМЕНЬШАЕМ (0.001), batch size = 100, а не 10; hid_size 400, а не 300https://app.wandb.ai/natalymr/nmt-2.0-test/runs/ej4s0x8t 2000 эпох, init = xavier_normal_, 100 dataset, train != test, lr УВЕЛИЧИВАЕМ через каждые 500 эпох в 5 раз (0.001), batch size = 100, а не 10; hid_size 400, а не 300https://app.wandb.ai/natalymr/nmt-2.0-test/runs/wy8r2kfu 2000 эпох, init = xavier_normal_, 100 dataset, train != test, lr уменьшающийся через каждые 500 эпох в 2 раза (а не в 10 раз), начиная с 0.001, batch size = 100, а не 10; hid_size 400, а не 300https://app.wandb.ai/natalymr/nmt-2.0-test/runs/5gnbvy1d 2000 эпох, init = xavier_normal_, 100 dataset, train != test, lr не уменьшаем (0.001), batch size = 100, а не 10; hid_size 400, а не 300, добавила DROPOUT (encoder: embed, lstm, decoder: embed)https://app.wandb.ai/natalymr/nmt-2.0-test/runs/dk5czbor 200 эпох, init = xavier_normal_, 2000 dataset, train != test, lr не уменьшаем (0.001), batch size = 100, а не 10; hid_size 400, а не 300, добавила DROPOUT (encoder: embed, lstm, decoder: embed)https://app.wandb.ai/natalymr/nmt-2.0-test/runs/hysoott0 200 эпох, init = xavier_normal_, 2000 dataset, train != test, batch size = 130, а не 10; hid_size 400, а не 300, добавила DROPOUT (encoder: embed, lstm, decoder: embed) scheduler = torch.optim.lr_scheduler.StepLR(optimizer, step_size=50, gamma=0.1)https://app.wandb.ai/natalymr/nmt-2.0-test/runs/513ukeok 200 эпох, init = xavier_normal_, 2000 dataset, train != test, lr =0.1, batch size = 130, а не 10; hid_size 400, а не 300, добавила DROPOUT 0.2 (encoder: embed, lstm, decoder: embed) scheduler = torch.optim.lr_scheduler.StepLR(optimizer, step_size=50, gamma=0.1)https://app.wandb.ai/natalymr/nmt-2.0-test/runs/zyvjmits 200 эпох, init = xavier_normal_, 2000 dataset, train != test, lr =0.1, batch size = 130, а не 10; hid_size 400, а не 300, добавила DROPOUT 0.2 (encoder: embed, lstm, decoder: embed) scheduler = torch.optim.lr_scheduler.StepLR(optimizer, step_size=50, gamma=0.1), sort dataset = Truehttps://app.wandb.ai/natalymr/nmt-2.0-test/runs/r1ik0206?workspace=user-natalymr 200 эпох, init = xavier_normal_, 2000 dataset, train != test, lr =0.1, batch size = 130, а не 10; hid_size 400, а не 300, добавила DROPOUT 0.2 (encoder: embed, lstm, decoder: embed) scheduler = torch.optim.lr_scheduler.StepLR(optimizer, step_size=50, gamma=0.1), sort dataset = True, SKIP PADDINGhttps://app.wandb.ai/natalymr/nmt-2.0-test/runs/anwy0t7z 200 эпох, init = xavier_normal_, 2000 dataset, train != test, lr =0.1, batch size = 130, а не 10; hid_size 400, а не 300, добавила DROPOUT 0.2 (encoder: embed, lstm, decoder: embed), lr НЕ УМЕНЬШАЕМ, sort dataset = True, скип паддингhttps://app.wandb.ai/natalymr/nmt-2.0-test/runs/nobbnkk3 59 эпох, init = xavier_normal_, 2000 dataset, train != test, lr =0.01, batch size = 130, а не 10; hid_size 400, а не 300, добавила DROPOUT 0.2 (encoder: embed, lstm, decoder: embed), lr не уменьшаем, sort dataset = FALSE, shuffle=TRUE, скип паддинг
https://app.wandb.ai/natalymr/nmt-2.0-test/runs/bdtttitj 200 эпох, init = xavier_normal_, 2000 dataset, train != test, lr =0.1, batch size = 130, а не 10; hid_size 400, а не 300, добавила DROPOUT 0.2 (encoder: embed, lstm, decoder: embed), lr не уменьшаем, sort dataset = TRUE, shuffle=TRUE, скип паддингhttps://app.wandb.ai/natalymr/nmt-2.0-test/runs/nlz2wr98 200 эпох, init = xavier_normal_, 2000 dataset, train != test, hid_size 256, а не 400, добавила dropout 0.2 (encoder: embed, lstm, decoder: embed), lr не уменьшаем, sort dataset = true, shuffle=true, скип паддинг; GRAD ACC (bs=100*2) & lr = 0.1, step_size=100, gamma=0.1 & test_every 2https://app.wandb.ai/natalymr/nmt-2.0-test/runs/45tyzit5 30 эпох, init = xavier_normal_, 2000 dataset, train != test, hid_size 256, а не 400, добавила dropout 0.2 (encoder: embed, lstm, decoder: embed), lr не уменьшаем, sort dataset = true, shuffle=true, скип паддинг; GRAD ACC (bs=100*5(!!!)) & lr = 0.1, step_size=100, gamma=0.1 & test_every 5(!) - дубина - неправильно реализовала GRAD ACC
https://app.wandb.ai/natalymr/nmt-2.0-test/runs/q5okz6q1 100 эпох, init = xavier_normal_, 2000 dataset, train != test, hid_size 256, а не 400, добавила dropout 0.2 (encoder: embed, lstm, decoder: embed), lr не уменьшаем, sort dataset = true, shuffle=true, скип паддинг; GRAD ACC (bs=50*5(!!!)) & lr = 0.1, step_size=50, gamma=0.1 & test_every 1 - ДУБИНА, неправильно реализовала GRAD ACChttps://app.wandb.ai/natalymr/nmt-2.0-test/runs/s7hwma0d
100 эпох, весь датасет, Total number of params = 16167398, src vocab = 26774, tgt vocab = 13795, bs=100*2 & lr = 0.1, step_size=50, gamma=0.1 & test_every 1https://app.wandb.ai/natalymr/nmt-2.0-test/runs/99lrdx51 100 эпох, весь датасет, Total number of params = 16133862, src vocab = 26643, tgt vocab = 13795, bs=100*5 & lr = 0.1, step_size=50, gamma=1 & test_every 1https://app.wandb.ai/natalymr/nmt-2.0-test/runs/fhva9pab 100 эпох, весь датасет, Total number of params = 26839398, src vocab = 26643, tgt vocab = 13795, hid_size 400, а не 256, bs=50*5(!) & lr = 0.1, step_size=50, gamma=1 & test_every 1https://app.wandb.ai/natalymr/nmt-2.0-test/runs/4nc1j7lj 100 эпох, весь датасет, Total number of params =19172998, src vocab = 26643, tgt vocab = 13795, hid_size 300, а не 400, bs=50*10(!) & lr = 0.1, step_size=50, gamma=1 & test_every 1https://app.wandb.ai/natalymr/nmt-2.0-test/runs/d9gjkoer 100 эпох, весь датасет, Total number of params =19172998, src vocab = 26643, tgt vocab = 13795, hid_size 300, а не 400, bs=50*10(!) & lr = 0.1, step_size=50, gamma=1 & test_every 1, добавила clip_grad(1)https://app.wandb.ai/natalymr/nmt-2.0-test/runs/625igudj ДУБИНА - неправильно реализовала bleu - новый Bleu, добавляем по 1000 каждую эпоху после test_bleu > 1.5https://app.wandb.ai/natalymr/nmt-2.0-test/runs/z2vjlp74 Новые Bleu, сразу на всем датасете - ДУБИНА, не на всем, неправильно реализовала постепенное добавление датасета, поэтому тут все испортилаhttps://app.wandb.ai/natalymr/nmt-2.0-test/runs/3amsiq35?workspace=user-natalymr Новые Bleu, сразу на всем датасете |
если градиенты начинают расходиться (перепрыгнули лок минимум)lr уменьшаем, dropout добавитьесли градиенты сходятся, а loss/acc не тот (засели в лок минимуме)lr увеличиваем, dropout ослабитьСтатья про Batch Size
With all that in mind, we have to choose a batch size that will be neither too small nor too large but somewhere in between. The main idea here is that we should play around with Solution (survey)One way to overcome the GPU memory limitations and run large batch sizes is to split the
So what is gradient accumulation, technically?Gradient accumulation means running a configured number of steps without updating the model variables while accumulating the gradients of those steps and then using the accumulated gradients to compute the variable updates. Iterating through an exampleSo, let’s say we are accumulating gradients over 5 steps. We want to accumulate the gradients of the first 4 steps, without updating any variable. At the fifth step, we want to use the accumulated gradients of the previous 4 steps combined with the gradients of the fifth step to compute and assign the variable updates. Let’s see it in action:
We’ll then take this sum and insert it as a parameter to the optimizer, resulting in the updates computed using all the gradients of those 5 steps, computed over all the samples in the global batch. Solution (implementation)https://discuss.pytorch.org/t/how-to-implement-accumulated-gradient/3822 |
200 tokens1000 dataset (500val/test) bs = 250, lr=0.1https://app.wandb.ai/natalymr/nmt-2.0-test/runs/0yjtnd2s ALL dataset, Total number of params = 26230872, src vocab = 41607, tgt vocab = 18069, bs = 250, lr=0.1https://app.wandb.ai/natalymr/nmt-2.0-test/runs/1p2c36bd ALL dataset, Total number of params = 10497688, src vocab = 41607, tgt vocab = 18069, bs = 500, hid_size = 128, а не 300, lr=0.1https://app.wandb.ai/natalymr/nmt-2.0-test/runs/ljc12vrp Обучаем на 1000 коммитах, проверяем на всем test/val, hid_size=300, bs=25*10, lr=0.1https://app.wandb.ai/natalymr/nmt-2.0-test/runs/ha8nper1 Обучаем на 1000 коммитах С КОНЦА, проверяем на всем test/val, hid_size=300, bs=25*10, lr step_size=10, gamma=0.8, lr=0.1https://app.wandb.ai/natalymr/nmt-2.0-test/runs/ehtguhaa Обучаем на 5000 коммитах, проверяем на всем test/val, hid_size=300, bs=25*10, lr step_size=10, gamma=0.8, lr=0.1,https://app.wandb.ai/natalymr/nmt-2.0-test/runs/0ux74572 Проверочный запуск: вначале обучаемся на 1000 примерх, когда test_bleu > 0.5, начинаем каждую эпоху добавлять по 500 примеров в трейн, проверяемся на всем test/val, hid_size=300, bs=25*10, lr step_size=10, gamma=0.8, lr=0.1,https://app.wandb.ai/natalymr/nmt-2.0-test/runs/ojqkbrjw Вначале обучаемся на 1000 примерх, когда test_bleu > 1.5, начинаем каждую эпоху добавлять по 500 примеров в трейн, проверяемся на всем test/val, hid_size=300, bs=25*10, lr step_size=10, gamma=0.7, lr=0.1,https://app.wandb.ai/natalymr/nmt-2.0-test/runs/q6jh7kqd Поменяла способ подсчета bleuhttps://app.wandb.ai/natalymr/nmt-2.0-test/runs/1k6wlhkq Добавляем по 1000 коммитовhttps://app.wandb.ai/natalymr/nmt-2.0-test/runs/31y4gm86?workspace=user-natalymr Добавляем по 500 коммитов |
NMT100 tokensна всем датасете 200 tokensдобавляем по 500 |
New Dataset (match with code2seq)NMT100 tokensпо старому - добавлять немного коммитов, потом 4 эпохи обучаемсяhttps://app.wandb.ai/natalymr/nmt-1.0-test/runs/8p3nb59w?workspace=user-natalymr сразу все данныеhttps://app.wandb.ai/natalymr/nmt-1.0-test/runs/d97basok?workspace=user-natalymr сразу все данные, в 2 раза больше эпохhttps://app.wandb.ai/natalymr/nmt-1.0-test/runs/9kdczc93?workspace=user-natalymr изменила lrпрервался запуск 200 tokenslr = 0.01, после 150 эпох уменьшаем в 10 раз, 250 эпох |
New Dataset (match with code2seq)NMT-2100 tokensВесь датасет, lr=0.01 |
No description provided.
The text was updated successfully, but these errors were encountered: