tgoop.com/eboutdatascience/90
Last Update:
Собеседование в Huawei от 270к на Data Science NLP
Задачи:
- Нужно определить сложность алгоритма - O(n^2)
- Оптимизировать данную функцию и сказать сложность нового функции - (2 картинка), да, меня только на это и хватило....
- Нужно понять, что делает данная функция - делает матрицу-маску для нейронки, я там оставил комментарии
- Оптимизировать её - тут ненмого душно и касается входных данных, но расскажу про идейку. Жирная функция np.count_nonzero(v_all == i), которую можно заменить вычисление данных из функции np.unique(v_all, return_counts=True)
Что такое MAP (Mean Average Precision) ?
MAP - это метрика ранжирования, которая считает кумулятивная сумму Recall`а. Чем больше MAP, тем лучше ранжирования. Грубо говоря, MAP стремится к тому, чтобы правильные ответы стремились в вверх, а отрицательные ответы - вниз.
LoRA - это адаптер, которые встраивается в модель. Она нужна, чтобы не обучать модель 1000 лет, а обучить 1% от всех модели, что сокращает время в несколько раз.
У attention сложность - это O(2^n), но существуют разные виды его ускорений, также есть flash-attention, который очень быстро считает attention из-за правильной работы с памятью CUDA.
Итог:
В целом задачи интересные, особенно вторая. Также классно, что спросили по опыту, так делают редко