Подготовка к собеседованию на Data Scientist
Менторы
Специалисты своей области, которые смогут помочь вам
Middle .Net Developer
Senior Product Manager
Middle Python Developer
Ведущий программист
Backend Software Engineer (PHP)
Senior .NET/C# developer
Middle DevOps Engineer | Tbilisi, Georgia
Middle C# .NET
Senior PHP-разработчик
Middle python developer
Каналы
Полезные Telegram каналы и чаты
Транскрипция видео:
так всем привет сегодня у нас очередное видео собеседование по анализу данных и мой компаньон по вопросам сегодня андрей а которого уже на река знаете вот и спрашивать собеседовать мы будем сегодня романа роман расскажи из трех фактах и себе всем привет я кончу всех я обучаюсь машинки в школе надо данных и я работаю над беспроводными технологиями сбер оптикой очень круто так нагретый вызвался ответить на 100 вопросов по анализу данных и у нас ограничено время поэтому мы решили сделать так что тебя есть 30 минут и вот
00:00:00 - 00:01:29
мы посмотрим на сколько вопросов и 100 ты успеешь ответить за 30 минут и мы начинаем прямо сейчас только перед тем как начнем с какой секции ты хочешь начать с 4 секций питон пасквиль статистика и дает шанс не менее давайте спит он а то мозги разогреть хорошо поехали тогда какие принципы опыта и значит три принципа наследование полиморфизмами консультации вот есть еще один да поменяем какие магические методы лишь python значит лет от но и в принципе практически операции get better get at our trip вот о чем отличается сыр и
00:00:44 - 00:02:32
он вы внезапно начала и поехал дальше зачем нужен а секса по 20 для обращения к родительскому классу а зачем еще такой полезный метод диск для объектов когда мы здесь можем обернуть объект атрибуты на выводе хорошо вопрос про библиотеку pandas три конкретно про методы чем их различие между ними теплой и от лайма так от life of life он применяется либо столбцу reebok строке apple iphone ко всем продолжите ответ трой except хорошо чем разница между листом и кортежем ну кортеж не изменяем описанию
00:01:42 - 00:03:12
туда не мы его там они еще получит по памяти провал а зачем нужен youth вместо ритер на иногда функцию и вот это когда мы возвращаем оперируем объект хотя если говорить снова пропан до 100 в чем отличие log off и log а когда мы выделяем срез так чеснок лук это обращение по индексов нутуз то что data frame интуиции и лук это когда мы по порядку - давай пропан даст что делает такая комбинация групп грубая плюс transport вот что сделает здесь делает ими transform spans ну france форму но он применяет какую-то трасс которым придаем
00:02:37 - 00:04:09
но вот важно что он сохраняет порядок миксов который был назначен для супер супер продолжим про панглос чем разница между пиво ты его типов помогут пилот можно задавать агрегируются ну в принципе для разогрева очень-очень да да только наоборот в последнем последним от этим было наоборот хорошо в принципе неплохо да я предлагаю продолжить наш опрос далее у нас остались еще до это сайт статистика резки какой секции ты хочешь и продолжить ну давайте скидками пошли но тогда сразу давай что ты можешь сказать про опорный пункт
00:03:25 - 00:04:50
какие-то играешь так как он и функцию них три большие группы есть агрегируются аранжирую щи и и функции смещения не ври называется вот ну то есть реагируешь типа сумма количество мини максимум занимается эти два дальше от арки чём разница между типами чар и варшаву чар он константные длинные типа там если тебя длина всем было на строки меньше то там дополняется я не волчара соответственно переменной длины сколько там влаги точно не помню там динамическое выделение памяти вот и поэтому медленнее чем просто чар чем
00:04:10 - 00:05:32
разница между командами билет и pranked так glide гремит можно удалить часть данных плюс она еще вернет количество строк который удалены вот от рамки то на всю таблицу да в принципе очень быстро да то есть прошли поиск ель но остается ds и статистика что хочешь первым подключать в статистику уйдем разнообразие давай хорошо давай начнется статистике одной из таких базовых вопросов что такой метод амортизации правдоподобия это способ настроить параметры модели когда мы выбираем параметры при которых
00:04:51 - 00:06:00
вероятность наблюдать те данные которые вот мы получили выборку ближайшего максимально на хрящ это что такое map оценка map это максимум апостериори она похожа нами вот как раз максимально пропадает и только искусство настраиваем параметры но только мы теперь берем такие параметры вероятность которых максимально при условии что мы наблюдали при данной которые не смотря на вам об этом точечная оценка что значит более умного ну если не точно можно интервальные делать то есть мы задаёмся некоторым порогом вот там мы
00:05:26 - 00:06:39
хотим чтобы словом 95 процентной вероятностью оценивал параметр лежал внутренне про интервала вот этот интервал от супер datex платья давай последовательно ваши дороги белье tac есть у нас к эта гипотеза и не соответственно ткать статистика которым мы тестируем гипотезу и вот вероятность получить то значение которое статистике который мы наблюдаем на данных или более экстремальная и то есть пиво или насколько у нас нет ни данный точек а почему статистический тестах часто 0 гипотеза берут как раз именно отсутствие
00:06:02 - 00:07:12
различий например в тесте студента на равенство средних значений как пример нам вот как раз получается надо чтоб оценивать их эвелина значит нам надо знать какой раз принять будет статистике вот это мы можем сделать когда он часто нам надо чтобы это вот посчитать распределение надо знать именно что нет нет этого тогда смотри раз мы проверки гипотез коснулись то вопрос а каким у нас могут быть проблемы когда мы проверяем на край сразу 10 гипотез но это очень похоже на множественность тестирований гипотез вот
00:06:38 - 00:08:00
из может получиться что мы найдем статистически достоверное различие там где их на самом деле нет я как решить проблему как решить но обычно вот как раз делать поправки на ты верил но вот самый простой внутрь поправку демфер они прос поделить на количество супа парных сравнений которым делом а какие способы ускорения так генерация будет траппера вания данных стратификация использования информацию о пользователях и зачетами дисперсию снизить еще можно использовать исторические данные это называется
00:07:19 - 00:08:35
супер хорошо давай тогда будет какой пример разберем а вот и действия пустим 15000 магазинов а допустим это вкусил какой-нибудь мир твоя цель проверить некую гипотезу как ты иди 15 магазинов будешь бить на 2 группа нам надо чтобы эти две группы были между собой очень похоже максимально похоже на пример можно взять так разделить чтобы распределение определение у скажем товарооборота было одинаково хорошо а если вот если мы хотим еще чтоб они сильнее были похожи например у них даже была похожа поведение во времени
00:07:59 - 00:09:15
рассмотрим вот эту вот и смотрим на пример чтобы средняя и ты меж плюс трение на 7 между минимальным и все между средними и товарооборота в группу хорошо но у нас остается теперь самая обширная часть это давайте перейдем сразу давай путей чем разница между классификации и регрессии и их ветками классификации кресс отличаются целевой перемены в регрессию это числовое классификация это метка классно категория метрики там разные ну для регрессии среди патриотично ошибкой на сми средние абсолютно личные моей
00:08:39 - 00:10:09
некоторые модификации их для задач классификации это эко россию доля верных ответов при жевании точность прикол полнота комбинация вадим скоро там еще есть рока лук какую метрику для регрессе ты бы использовал чтобы объяснить результаты бизнесу или вот заказчику который не разбирается мультик ну наверно можно два таких больших прохода выделить либо если нам важна муссом штуки по мы получаем у нас интересуют точность прогноза в рублях типа prezi - 1 рубль их условно тогда наверное это будет моей абсолютной
00:09:28 - 00:10:46
величине алиса нас интересует процента вот и сразу по вопросам и больше штрафует за мета прогноз или перепадов если смотреть на формулу как мог не считается то там получится числителе безразницы берем серьезно величину той что маша плюс nata ru большой минус вроде как одинаково штраф не совсем тут на самом деле все зависит от того чтобы в реальной жизни мы работаем с положительными значения на пиратам выручку купить козу и тут она может быть не совсем симметрично и задавая этот вопрос мы оставим как тема для дискуссии
00:10:08 - 00:11:23
в комментариях кто на самом деле думать что мы симметрично то считает что на несимметричная vod-ok на ваш вопрос вернемся к задача классификации да как изменится метрика рока у после функции вероятности надежности первому классу применив алгоритм такой вероятности мы применяем у горилл и как мир вокруг есть трактовка как удалим пар объектного класс объект первого класса который мог по силе катар выдавал вероятность и консистентными то есть чтобы как объект 1 класс вероятность больше ряд и в таком смысле
00:10:50 - 00:12:12
смотрением логарифм а логарифм за монотонная то тут вот инверсии не должно быть то есть количество таких пар не поменяется и рока у кто же панина раз мы коснулись видов прогнозов как ты считаешь вот что хуже иметь слишком много ложных срабатываний или например иметь слишком много ложноотрицательные срабатываний давай конкретный пример возьмем какой тяните анти фрод так anti-fraud если defro значит нам надо выявить все подозрительные операции потому что ущерб от них честно больше чем недовольство
00:11:31 - 00:12:40
которые там в чате как пользователь от лишних заморочек на телефон вот наверно поэтому там важнее чтобы не было пропуска for можно 30 до супер то есть случае немножко переборщить с масками да но зато не допустить решен так и давай книжка про рекомендательные системы поговорим лучше какие наши рекомендательные модели основные подходы там коллаборативный фильтрация и матричное разложение хорошо рисует чисто глобальная что пытается сделать рекомендательная модель выдачу чтобы вот мне наиболее релевантные объекты были до сточки
00:12:06 - 00:13:29
зрения модель а вот с точки зрения бизнесом и какие пытаемся сделать выдачи что мы пытаемся максимизировать наверное хотим вероятный доход то есть вот если допустим здесь вероятно ты предсказал вероятности и при прочих равных у тебя для любых товаров вероятность одинаково какой-то товар посоветую удобно которому ржавую до support прошел и давай тогда раз только с небес рекомендательных а какие то знающих метрики именно ранжиру ющие верующим ну на самом про стоит [музыка] программе на неси только кумулятивный какой не знаешь
00:12:55 - 00:14:14
кумулятивный [музыка] индекс djia хорошо но раз мне уже заговорили да действительно про-бизнеса вайс то тогда с точки зрения бизнес-процесса в чем разница между метрики качества и функции потерь при обучении модели ну не только качество она завязана на кита бизнес-цели бизнес постановку задачи функция потеря то то как мы модели машин обучение на настраиваем в хорошем случае у нас эти две они могут не совпадать общей говоря вот но они должны коррелируют с ним и уменьшаем функцию пакета у нас растет внутри
00:13:42 - 00:15:00
качество касались обучения то как обучается моделям что происходит под капотом украина ну-ка и надо такое он просто запоминает все как студент ботаник и потом похожие среди то есть она ничего не учится под капот ну по сути ничего не учится хорошо если вода мрак то деревья говорим то как строится дерево если прайсом простую реализацию то просто жадным алгоритмом на каждом этапе играется всевозможные пороге по которым мы будем делиться выбрали признак берем значение порога и вот делим на 2 части и смотрим где
00:14:21 - 00:15:47
наилучшие разделений получаются а как мой понимаешь что разделение хорошие то что мы минимизируем так не дерутся энтропии минимизируется интервью со когда хорошо а как обучаются линейной модели некоторых моделях линейных вообще можно на этическую форму выписывать для весов в общем случае там какой-нибудь градиентный спуск под капотом до чтобы подобрать часа путей а вот раз ты сказал про градиента спуска вот есть два спуска есть сгд и обычной гребенки спуск чем отличие кто лучше вдох ещё статистического статистическом мы просто
00:15:04 - 00:16:24
выбираем папа выборку и в данных из нас каждый шаг это было bredent считается быстрее но получается более шумный и общем может локальный минимум проскакивать то есть но зато сходится быстрее кто ну быстрее за меньшее число шагов получается сошелся просто градиентный спуск окей хорошо ну допустим вот мы обучили модель а есть еще такой эффект моделях переобучения что ты правительства штатов четко переобучение вот когда модель для очень сильно поданы настраиваться все же и закономерности выявил они тоже шум
00:15:44 - 00:16:52
какой-нибудь данных пытается продублировать вот так сложно слишком большая для технок а как моя как много необычных удачно но вы суем модели новые данные то есть она на каких-то данных обучалась иных видов они потом мы покажем новые данные которых не видел смотрим качество на этих данных и стоит если нет большого если появляется большой разрыв на новых данных тогда говори что-нибудь покрепче а как тут то убегает регуляризация огранизация она но она уменьшает сложность модели например вот деревьях мы ограничен
00:16:18 - 00:17:35
высоту или в линейных моделях мы штрафуем за большие значения весов не даем себе пришел ты сказал два способа а да там ограничивать а вот что за что или стопим на место pink это мы когда модельку обучаем мы сразу же еще смотрим к качеству на то чтобы данных если нас качественно теста данный момент начинает падать а вместо чтобы расти год не говорю что при обучаться и даже таким образом регулировать расчет в чем разница между или один или два бинаризации original 2 ну приспустят там разный штраф на большие леса
00:16:56 - 00:18:30
или 1 получается что она может иногда заменяется леса это реализовано какой линейной модели или провели разведки на лассо и давайте сразу вот вероятность не смысл регуляризации ну это получается как априорное распределение на само деле мы получается что куда мы так настраиваем модельку мы делаем методом сенатором наподобие максимально кастрюлю вот и тут могут быть вот разные ошибки давай тогда поговорим актива бывают назначили тематическая ошибка и там разные дисперсии вот как они связаны между собой ну систематической ошибкой у
00:17:42 - 00:19:09
нас получается моделька недостаточно достаточно сложно чтобы закономерности выйдет более сложные ну например там мы не на мадрид пытаемся настроить на и нас получается плохого качества из этого а дисперсии она связана с тем что но день наоборот слишком сильно банданы подстраиваться если они даже чуть-чуть поменяются у нас модель совсем по-другому как-то обучиться и не будет давайте сильным светящийся прошел вот пример моделей с большим смещением и вот большой дисперсии наш привести но уже до уже упоминал
00:18:30 - 00:19:42
включаться большое-большое смещение линий на модели будет какой-нибудь неглубокого дерева и например если мы qaynana используем с большим числом 7 если дисперсию большие перцы соответственно глубокий деревьев и cummins и вот кто такой хитрый вопрос а если модели с маленьким смещением и при этом еще и о которых низкой дисперсией одновременно знаешь ли ты что-то про рейдов между бойцами вариантом танка есть два с ником позишн принципе да получается что надо выкинуть многих это баланс между изучением и
00:19:06 - 00:20:38
дисперсию модели и получается у базовых вот этих простых моделей у них либо одно большое либо другой большой и помогает бороться ансамбле рование хорошо развит не дал как раз хотел задать вопрос в чем разница между этими budding он мы обучаем несколько параллельных лучей на несколько одинаковых моделей с большой сложностью то есть которых потенциально может быть большая дисперсия и не потом вы их у средне и за счет этого уменьшаем дисперсию по отношению каждый из модель а в бусинки мы делаем обратную вещь мы
00:19:51 - 00:21:02
берем попросили глубокие деревья очень берем простые модели и последовательно одна за другой дом она обучаем и по сути каждый следующие обучаем на ошибки всех предыдущих суммарные что здесь можно сказать про размещение дисперсия пусть инга бусины получается наоборот дисперсия у каждой модели персия маленькая но возможно большое смещение и как раз и черта что мы их обучаем над разности то у нас в бусинки будет еще не уменьшаться а значит такие понятия как stretching и blending вот их часто путают вот а как
00:20:35 - 00:21:57
они отличаются и как революцию при этих методов стыке блондинк они по сути отличаются тем как тем как мы проводим обучение это модели то есть у нас получается есть базовой модели который новые признаки хмелем и есть эта модель который агрегирует этим новый признак вот и получается мы можем либо просто отложить выборку который на который мы будем обучать метамодель и это будет брендинг а можем делать что оно похоже на кровь валидацию когда у нас в нашей выборке один кусочек откладывается на всем
00:21:16 - 00:22:38
остальном обучаются базовой модели генерят новые признаки и это надо на этом обучается ночью по круги гоняем получается тот кусок на котором мы эта модель обучаю как как похоже на консультацию чем-то и не вот это самое главное разница между давай последний вопрос чтобы ложиться 30 минут о чем чем не рассеять отличается от бустинга над линейными моделями то есть чел вот что такой вот back pro повешен смотреть на мир и сеть как нам busting надо именно сейчас но получается вот кранов бусинки в каждую модельку
00:21:57 - 00:23:17
маленькую разлучали независимо ну то есть мы при этом не никак не меняли рисом и пусть в предыдущих моделях а в нейросети мы получается и его intent обучаем то есть у нас не могут меняться я сразу на всех слоях во всех 42 и делаем это быстро как раз за счет этого алгоритма быстро сетям груди слышала кажется вас полчаса прошло в целом неплохо да то есть ты успел на пять лет на 50 вопросов и 100 за 30 минут мне кажется 7 спрашивали тебя час и выложился сотен что тогда давай тогда может быть еще там десяточку вопросов
00:22:40 - 00:23:55
или как вы хотите но может можно попробовать 15 задавайся 15 давайте поговорим про 5 метров и начнем с разница между cummins и тайным моделями же макро разница но они вообще да про очень разные вещи какая-либо про регрессию либо классификацию соответственно каждый раз просто ищем наполненный обучающей выборке похож близкие объекты а в камень он уже он же для задач кластеризации когда у нас нет никаких метр мы пытаемся до разбить накрутки наши данные она тоже похожего да почему там там там тоже приближает
00:23:18 - 00:24:45
ближайший вещицу смотрится на расстояние от объекта до центра кластер как бы например используются на расстоянии расстояние до ну может быть разным у сам простой на эвклидовой расстоянии можно вот мы коснулись отобрали сказал провод и что 1 1 за для задачи там пачкать регресс 1 для канализации а вот в чем разница между методом джимми и камином то есть гайсин меча модель и если брать например вот кнн который cummins который сам евклидовым расстоянием то по сути это как частный случай смеси гауссовских распределений
00:24:02 - 00:25:29
таких что в каждом каждый компонент этой смеси из персии это единичная матрица математически так получается естественно если мы говорим ну то есть если так смотреть каждую минуту она более широкий класс представляют и например нам лучше подходит для задачи когда у нас вот эти вот группы они там скажем как вдоль одному направлению вытянуты повернуты такой вот интересный вопрос да тоже относится к метрике learning это конкретно метод снижения размерности это паца вот как например определить процент потерянной
00:24:54 - 00:26:14
дисперсии при используем данного метода так работает в основе пицца лежит декомпозиция там случится диагонально получится при этом положении диагональная матрица сингулярные числами и дамы краз срезаем по сколько таких чисел первых и получается что если мы возьмем отношения первых нескольких чувство то есть 1 число компонент который мы оставили а сумму сумму сингулярных числа поделим на сумму всех сингулярно числа тот как раз будет процент дисперсий которых которая осталась в модель даша давай теперь
00:25:34 - 00:26:59
чуть-чуть передём к msi секции поймали на музыку со круче вырежем отличий вопрос почему вот нейронные сети усложняют добавлением слоев они количеством нейронов стоят потому что известно же что там аппроксимацию любой какой-то зависимости этом закономерности в наших данных мы можем добиться и как и тем и тем путем как я понимаю то есть у нас тут с каждый слой номинированы съедает что такое маленькое линейное преобразование с нелинейной активации вот и когда мы делаем глубокую не россии более глубокую
00:26:16 - 00:27:30
это это похоже на на прокси мацию нас есть кривая и мы падаем heavy ломаный приблизить вот и когда мы делаем много слоев мы как будто делаем больше точек в этой ломаный и она тогда получаться все лучше лучше если среднем одним предложением то что в чем разница ну пока от сложности пленников стороны забыл про пусть близок почему нет бронированных сетях инициализировать лица нулями но у нас градиент они будут протекать потому что когда делом крах под про повешены градиент с предыдущего фрейма на предыдущий протягиваем и там
00:26:54 - 00:28:25
участвует умножения на матрицу весов они снова будет выливается клиент предыдущий слой будет на него не чуть чуть дыша давай теперь вопрос от очки в просили какие знаешь общая архитектура допустим вот здесь это нужно было решить задачку . какие бы архитектуры пробовал практически нет а если сегментация сегментация сегментацией обычно любят подобная структура начала ты сказал дрисня ты ведь и так ну по идее разного в том что есть русским connection когда мы с предыдущим здесь число передаем за счет окрас улучшать протекание
00:27:48 - 00:29:17
бриллиантов и обучать можно его кратко про юнит что-то чтобы юннат ну это только похожа на энкодер recorder борт и при этом еще и тут получается на разных пространственных разрешениях есть skip connection чтобы получился детали разного масштаба учит ты что не знаешь про градиентный взрыв одну градиентный взрыв это явление когда у нас глубокой сети при прохождении членами слоев нарастает как раз этот градиент очень большим становится и это плохо тем что мы когда захотим сделать градиентный шаг то у нас куча снасть куда-то унесёт
00:28:40 - 00:30:15
совсем далеко и итоге не садимся одри денег на и за дыхание . затухание not обратная ситуация то есть у нас с каждым при протягивании градиентов к начальным слоям у нас уменьшается величина градиента на вход мента что ну лица например и у нас не будут обновляться и лица то есть тоже обучение окей давай теперь еще немножко про современной архитектуры текстовых языковых моделей вот ты не знаешь что там самая популярная когда вверх [музыка] да да да вот опять отличия роберт и обертас [музыка] пошла вода вот ты значит что языку и
00:29:27 - 00:31:09
модель это тяжелые модели и часто продакшене нужно что-то полегче вот вопрос что делает для того чтобы и вот как-то добраться можно делать и вроде принципе вещь это conti зации дистилляция можешь про них подробнее с какой начать для вас дистилляция дистилляция так ну идея там в том что нас есть типа большая тяжелый модель с большим количеством слоев и мы берем маленькую модель попроще и пытаемся ее пучить чтобы она сделал такую точность как большая модель но за счет аж просто оно само по себе меньше она и
00:30:26 - 00:31:47
паспортизации общественный прикол а квантизация то мы заменяем леса который обычно типа числа 100 и личи . вот на винты на целочисленный и за счет этого получается ускорение супер я думала достаточно для формата одного интервью вот и ответил мне хочется больше чем на мышь и дом вопрос создавали пользоваться как минимум больше чем семьдесят пять вопросов вот уже хороший результат мне кажется быстрее даже просто экстремально супер солдат и фарш круто ну молодец я старался не растекаться мыслью по
00:31:09 - 00:32:25
решающему дереву здорово здорово кстати здесь вот может еще быть секция где мы смотрим резюме aroma ромом . смотри можем отдельный гоняться вырезами мы можем посмотреть на резюме андрея сайте и помнит что прибор видос назад обещал что мы посмотрим размер андрей андреев и не готов понят ну супер тогда можно на этом закончить [музыка]
00:31:51 - 00:32:54