https://torchmetrics.readthedocs.io/en/stable/
Подсчет метрик в торче
Подсчет метрик в торче
👍4
Как ускорить обучение вашей звуковой модельки в разы.
Обычно когда вы обучаете модельку для звука у вас много данных и вы в каждой эпохе для каждого батча достаете из обычной памяти нужные семплы, как то их предобрабатываете и дальше уже загоняете в модельку. Так вот, оказывается, в этом пайплайне есть ебейший ботлнек - подсчет мелспеки/мфсс. Чтоб убрать его достаточно 1 раз пройтись по всему датасету и к каждой вавке в пару к ней сделать файлик с предпосчитанной мелспекой/мфсс и при обучении считывать сразу его. Зато такой вот такой нехитрый метод ща спидапнул мне обучение на работе в 20 ебанных раз! Ну а еще я перестал жрать все ядра на машинке))) Сплошные плюсы.
P.S. Сначала я решил пожадничать и не делать для каждой вавки по файлу, а записать все в один, при инициализации датасета считывать его в оперативу и прям с ним работать. В теории такой подход должен работать быстрее. Но на практике я тыщу лет считывал этот файл в начале каждого эксперимента и это дико бесило. Ну и хранить много данных в оперативе тоже не лучшая идея. Learn from my mistakes)
Обычно когда вы обучаете модельку для звука у вас много данных и вы в каждой эпохе для каждого батча достаете из обычной памяти нужные семплы, как то их предобрабатываете и дальше уже загоняете в модельку. Так вот, оказывается, в этом пайплайне есть ебейший ботлнек - подсчет мелспеки/мфсс. Чтоб убрать его достаточно 1 раз пройтись по всему датасету и к каждой вавке в пару к ней сделать файлик с предпосчитанной мелспекой/мфсс и при обучении считывать сразу его. Зато такой вот такой нехитрый метод ща спидапнул мне обучение на работе в 20 ебанных раз! Ну а еще я перестал жрать все ядра на машинке))) Сплошные плюсы.
P.S. Сначала я решил пожадничать и не делать для каждой вавки по файлу, а записать все в один, при инициализации датасета считывать его в оперативу и прям с ним работать. В теории такой подход должен работать быстрее. Но на практике я тыщу лет считывал этот файл в начале каждого эксперимента и это дико бесило. Ну и хранить много данных в оперативе тоже не лучшая идея. Learn from my mistakes)
👍7🔥1
https://openai.com/blog/whisper/
OpenAI обучили и опенсурснули ASR трансформер на 680к часах и он могет в мультиязычность
OpenAI обучили и опенсурснули ASR трансформер на 680к часах и он могет в мультиязычность
Openai
Introducing Whisper
We’ve trained and are open-sourcing a neural net called Whisper that approaches human level robustness and accuracy on English speech recognition.
Осознал что метрика ранжирования MAP@K это MAPATK (для тех кто не в курсе админа этого паблика зовут Марат), это довольно тупо, но мне нравится! Буду как додик теперь считать ее своей любимой метрикой....
🔥7😁4
Или я жоска наебался🤔🤔🤔
Похоже на то, завтра попробую разобраться...
Похоже на то, завтра попробую разобраться...
Да, действительно, инициализация одного слоя нулями не мешает обучению. Проблемы возникают при инициализации более одного слоя подряд нулями.
Я взял сверточную сетку, на которую накинул 2 линейных слоя с ReLU между ними.
1. Дефолтная торчовская инициализация
2. Инициализация двух слоев нулями
3. Инициализация только первого слоя нулями
4. Инициализация только второго слоя нулями
1. Дефолтная торчовская инициализация
2. Инициализация двух слоев нулями
3. Инициализация только первого слоя нулями
4. Инициализация только второго слоя нулями
🤔3👍1
Подтверждая слова @Yar4ik000
1. Инициализация первого слоя нулями, но вместо релу взять сигмоиду (ключевое различие что в нуле релу выдает 0, а сигмоида 0.5).
2. Инициализация двух слоев нулями, но сигмоида вместо релу.
1. Инициализация первого слоя нулями, но вместо релу взять сигмоиду (ключевое различие что в нуле релу выдает 0, а сигмоида 0.5).
2. Инициализация двух слоев нулями, но сигмоида вместо релу.
👍3
Про разницу между weight_decay и l2 в оптимизаторах с моментумом
https://www.fast.ai/posts/2018-07-02-adam-weight-decay.html
https://www.fast.ai/posts/2018-07-02-adam-weight-decay.html
fast.ai
AdamW and Super-convergence is now the fastest way to train neural nets – fast.ai
Making neural nets uncool again
👍1
Базовые трюки для обучения трансформеров, но оформлено оч красиво.
https://www.borealisai.com/research-blogs/tutorial-17-transformers-iii-training/#:~:text=They%20found%20that%20without%20warm,Liu%20et%20al.%2C%202020
И еще
https://tnq177.github.io/data/transformers_without_tears.pdf
https://www.borealisai.com/research-blogs/tutorial-17-transformers-iii-training/#:~:text=They%20found%20that%20without%20warm,Liu%20et%20al.%2C%202020
И еще
https://tnq177.github.io/data/transformers_without_tears.pdf
RBC Borealis
Tutorial #17: Transformers III Training - RBC Borealis
This blog post is a tutorial on training Transformer models, which are widely used in natural language processing (NLP) applications.
https://huggingface.co/docs/tokenizers/pipeline
Как скармливать тексты в сето4ки
(вроде базовая штука, но мне никогда в жизни не доводилось с таким работать)
Как скармливать тексты в сето4ки
(вроде базовая штука, но мне никогда в жизни не доводилось с таким работать)
huggingface.co
The tokenization pipeline
We’re on a journey to advance and democratize artificial intelligence through open source and open science.
Что делать если моделька + батч не влазят в память гпушки
https://huggingface.co/docs/transformers/main/en/perf_train_gpu_one
https://medium.com/tensorflow/fitting-larger-networks-into-memory-583e3c758ff9
https://huggingface.co/docs/transformers/main/en/perf_train_gpu_one
https://medium.com/tensorflow/fitting-larger-networks-into-memory-583e3c758ff9
huggingface.co
GPU
We’re on a journey to advance and democratize artificial intelligence through open source and open science.