Pull to refresh
-13
0
Королев Иван @ivandreevich11

Всем салют! Меня зовут Иван, начинаю в DS и ML

Send message

Искусственный интеллект: помощник или игрушка?

Level of difficultyEasy
Reading time9 min
Views2K

2023 год можно назвать годом ИИ, особенно с учетом хайпа вокруг ChatGPT. Но действительно ли ИИ — панацея? Сможет ли он лишить работы людей? Давайте разберемся в этом вопросе.

Читать далее
Total votes 4: ↑2 and ↓2+2
Comments17

Feature Engineering или стероиды для ML моделей

Reading time6 min
Views16K

Привет, чемпион!

Часто при построении ML моделей мало просто взять сильную модель. Оказывается, иногда грамотная предобработка данных существенно важнее. Сегодня речь пойдёт про feature engineering.

Рассмотрим несколько кейсов на эту тему более подробно. Данные будут упрощённые, но обещаю, от этого примеры не станут менее интересными ?.
Читать дальше →
Total votes 28: ↑27 and ↓1+38
Comments3

Книга «System Design. Машинное обучение. Подготовка к сложному интервью»

Reading time10 min
Views12K
image Привет, Хаброжители!

Собеседования по проектированию систем машинного обучения — самые сложные. Если нужно подготовиться к такому, книга создана специально для вас.

Также она поможет всем, кто интересуется проектированием систем МО, будь то новички или опытные инженеры.

Что внутри?
  • О чем на самом деле спрашивают на собеседовании по System Design в МО и почему (инсайдерская информация!).
  • 7 основных шагов для решения любой задачи МО, предлагаемой на собеседовании.
  • 10 вопросов из реальных собеседований по System Design в МО с подробным разбором ответов.
  • 211 диаграмм, которые наглядно объясняют, как работают различные системы.
Читать дальше →
Total votes 17: ↑17 and ↓0+17
Comments7

Как работают трансформеры: разбираем математику

Level of difficultyMedium
Reading time28 min
Views19K

В этом посте я представлю подробный пример математики, используемой внутри модели трансформера, чтобы вы получили хорошее представление о работе модели. Чтобы пост был понятным, я многое упрощу. Мы будем выполнять довольно много вычислений вручную, поэтому снизим размерность модели. Например, вместо эмбеддингов из 512 значений мы используем эмбеддинги из 4 значений. Это позволит упростить понимание вычислений. Мы используем произвольные векторы и матрицы, но при желании вы можете выбрать собственные значения.

Как вы увидите, математика модели не так уж сложна. Сложность возникает из-за количества этапов и количества параметров. Перед прочтением этой статьи я рекомендую прочитать пост Illustrated Transformer (или читать их параллельно) [перевод на Хабре]. Это отличный пост, объясняющий модель трансформера интуитивным (и наглядным!) образом, поэтому я не буду объяснять то, что уже объяснено в нём. Моя цель заключается в том, чтобы объяснить, как работает модель трансформера, а не что это такое. Если вы хотите углубиться в подробности, то изучите известную статью Attention is all you need [перевод на Хабре: первая и вторая части].

Читать далее
Total votes 40: ↑40 and ↓0+40
Comments8

Статистика на примерах с Python #1

Level of difficultyMedium
Reading time5 min
Views15K
Читать далее
Total votes 8: ↑7 and ↓1+10
Comments7

Как ответить на любой вопрос на собеседовании по проектированию систем машинного обучения

Reading time7 min
Views8.2K
Шпаргалка для ответа на любой вопрос о проектировании систем машинного обучения на вашем следующем собеседовании.

Этот шаблон поможет вам ответить практически на любой вопрос о проектировании системы машинного обучения, который вы можете получить на собеседовании. Важно отметить, что этот шаблон намеренно типовой, так что, когда вы найдете новый вопрос по проектированию системы, вам будет легко заполнить каждый раздел.

Ниже приведен обзор шагов, которые необходимо предпринять, когда вы проходите собеседование на тему проектирования системы машинного обучения:

image
Читать дальше →
Total votes 13: ↑12 and ↓1+15
Comments0

Python на Хабре

Reading time7 min
Views452K
Некоторое время назад, в силу определенных причин, мне пришла в голову мысль о том, чтобы начать изучать какой-нибудь новый язык программирования. В качестве альтернатив для этого начинания я определил два языка: Java и Python. После продолжительного метания между ними и сопутствующих нытья и долбежки головой о стену (у меня с новыми языками всегда так — сомнения, раздумья, проблема выбора и т.д.), я все-таки остановился на Python. Окей, выбор сделан. Что дальше? А дальше я стал искать материал для изучения…
Читать дальше →
Total votes 182: ↑162 and ↓20+142
Comments65

Как IT-специалисты помогли выиграть суд у банка

Level of difficultyEasy
Reading time5 min
Views26K

Статья о том, как в суде при помощи разработчиков удалось оспорить кредитный договор, оформленный на человека жуликами.

Автор статьи выражает благодарность разработчикам Роману и Александру. Специалисты проделали огромную и кропотливую работу, нашли выход в безнадежной (с точки зрения юристов) ситуации.

Читать далее
Total votes 160: ↑159 and ↓1+200
Comments102

ML-критерии для A/B-тестов

Reading time24 min
Views21K

Как и в большинстве компаний, наш основной инструмент для принятия решений — это A/B-тесты. Мы уделяем им большое внимание: проверяем на корректность все используемые критерии, пытаемся сделать результаты более интерпретируемыми, а также увеличиваем мощность критериев. В текущем посте я хочу рассказать, как дополнительно увеличить мощность, используя машинное обучение.

Читать далее
Total votes 8: ↑8 and ↓0+8
Comments9

Как улучшить ваши A/B-тесты: лайфхаки аналитиков Авито. Часть 2

Reading time27 min
Views47K

Это вторая часть статьи о том, как улучшить A/B-тесты. Здесь я подробно остановлюсь на методах увеличения мощности: поговорим про CUPED, бутстрап-критерии, стратификацию и парную стратификацию.

Читать далее
Total votes 8: ↑8 and ↓0+8
Comments2

Как улучшить ваши A/B-тесты: лайфхаки аналитиков Авито. Часть 1

Reading time29 min
Views65K

Всем привет! Я Дмитрий Лунин, работаю аналитиком в команде ценообразования Авито. Наш юнит отвечает за все платные услуги площадки. Наша основная задача — сделать цены на них оптимальными. 

Мы не только пытаемся максимизировать выручку Авито, но и думаем про счастье пользователей. Если установить слишком большие цены, то пользователи возмутятся и начнут уходить с площадки, а если сделать цены слишком маленькими, то мы недополучим часть оптимальной выручки. Низкие цены также увеличивают количество «спамовых» объявлений, которые портят поисковую выдачу пользователям. Поэтому нам очень важно уметь принимать математически обоснованные решения — любая наша ошибка напрямую отразится на выручке и имидже компании. 

Одним из инструментов для решения наших задач является A/B-тестирование.

Читать далее
Total votes 10: ↑8 and ↓2+7
Comments15

Моя шпаргалка по pandas

Reading time8 min
Views633K
Один преподаватель как-то сказал мне, что если поискать аналог программиста в мире книг, то окажется, что программисты похожи не на учебники, а на оглавления учебников: они не помнят всего, но знают, как быстро найти то, что им нужно.

Возможность быстро находить описания функций позволяет программистам продуктивно работать, не теряя состояния потока. Поэтому я и создал представленную здесь шпаргалку по pandas и включил в неё то, чем пользуюсь каждый день, создавая веб-приложения и модели машинного обучения.



Нельзя сказать, что это — исчерпывающий список возможностей pandas, но сюда входят функции, которыми я пользуюсь чаще всего, примеры и мои пояснения по поводу ситуаций, в которых эти функции особенно полезны.
Читать дальше →
Total votes 32: ↑30 and ↓2+47
Comments8

С чего начать изучение Go

Level of difficultyEasy
Reading time6 min
Views38K

В этой статье я расскажу про аспекты Golang, на которые стоит обратить внимание в первую очередь, а также приведу ссылки на современные ресурсы для изучения этого языка программирования, которые лучше всего подойдут начинающим разработчикам.

Читать далее
Total votes 18: ↑2 and ↓16-14
Comments6

Математика: полезные книги

Reading time3 min
Views23K

What”s up guys?

Математика — как говорили в школе — царица наук, а ещё очень важный и полезный скилл для программиста.

В этой статье мы поговорим о книгах и ресурсах по изучению математики, которые на мой достаточно полезны.

Читать далее
Total votes 16: ↑6 and ↓10-3
Comments11

Computer Science: книги, от новичка до профи

Reading time4 min
Views29K

What’s up guys?

Computer Science – грубо говоря - наука о компьютерах. Она объединяет всё, что программист должен знать о компьютерах и работе с ними для создания эффективных программ и алгоритмов. Программисты бывают разные, и как правило отличаются только языком, на котором пишут, но всех их объединяет необходимость понимать основы этой науки для понимания того, как работает компьютер.

В этой статье мы поговорим о самых полезных книгах по Computer Science для самых разных уровней, которые дадут вам понимание того, как работают компьютеры и всё, что с этим связанно. Предлагаю незамедлительно начинать, и начнём мы с книг для новичков (по моему мнению).

Читать далее
Total votes 11: ↑6 and ↓5+3
Comments15

10 типов структур данных, которые нужно знать + видео и упражнения

Reading time9 min
Views282K
Екатерина Малахова, редактор-фрилансер, специально для блога Нетологии адаптировала статью Beau Carnes об основных типах структур данных.

«Плохие программисты думают о коде. Хорошие программисты думают о структурах данных и их взаимосвязях», — Линус Торвальдс, создатель Linux.

Структуры данных играют важную роль в процессе разработки ПО, а еще по ним часто задают вопросы на собеседованиях для разработчиков. Хорошая новость в том, что по сути они представляют собой всего лишь специальные форматы для организации и хранения данных.

В этой статье я покажу вам 10 самых распространенных структур данных.
Читать дальше →
Total votes 37: ↑29 and ↓8+21
Comments31

За 25 лет я выучил 30 языков программирования. Хочу поделиться своим опытом

Level of difficultyEasy
Reading time10 min
Views55K

Привет, Хабр! Перевели для вас статью программиста-самоучки, в арсенале которого — три десятка языков программирования. Надеемся, она вдохновит вас поделиться собственными историями становления в кодинге не меньше, чем нас в beeline cloud. Приятного чтения!

Всё началось в далёком 1997 году. С тех пор прошло более 25 лет. Свои первые программы я писал еще под ОС Windows 95 и Windows 98. На тот момент мне было около 12 лет – как раз тот возраст, в котором многие из моего поколения начинали знакомство с программированием. Первым моим языком был Logo, используемый в MicroWorlds от LCSI (Logo Computer Systems Inc). Я получил эту программу от родителей в подарок.

Исчерпав возможности Logo в ограниченной среде MicroWorlds, я перешел на Visual Basic. По очень простой причине — он был мне понятен и к тому же доступен прямо в Microsoft Office. Visual Basic 6 стал первым «настоящим» языком программирования, с которым я познакомился.

Читать далее
Total votes 51: ↑25 and ↓26+7
Comments151

Машинное обучение. Нейронные сети (часть 3) — Convolutional Network под микроскопом. Изучение АПИ Tensorflow.js

Reading time10 min
Views16K

В предыдущих статьях, использовался только один из видов слоев нейронной сети – полносвязанные (dense, fully-connected), когда каждый нейрон исходного слоя имеет связь со всеми нейронами из предыдущих слоев.

Чтобы обработать, например, черно-белое изображение размером 24x24, мы должны были бы превратить матричное представление изображения в вектор, который содержит 24x24 элементов. Как можно вдуматься, с таким преобразованием мы теряем важный атрибут – взаимное расположение пикселей в вертикальном и горизонтальном направлении осей, а также, наверное, в большинстве случаев пиксел, находящийся в верхнем левом углу изображения вряд ли имеет какое-то логически объяснимое влияние друг на друга в большинстве случаев.

Для исключения этих недостатков – для обработки  изображений используют сверточные слои (convolutional layer, CNN).

Основным назначением CNN является выделение из исходного изображения малых частей, содержащих опорные (характерные) признаки, такие как ребра, контуры, дуги или грани. На следующих уровнях обработки из этих ребер можно распознать более сложные повторяемые фрагменты текстур (окружности, квадратные фигуры и др.), которые дальше могут сложиться в еще более сложные текстуры (часть лица, колесо машины и др.).

Например, рассмотрим классическую задачу – распознавание изображения цифр. Каждая цифра имеет свой набор характерных для них фигур (окружности, линии). В тоже самое время каждую окружность или линию можно составить из более мелких ребер (рисунок 1)

Читать далее
Total votes 8: ↑8 and ↓0+8
Comments0

Почему освоить Python невозможно, и почему это нормально | Pydon't

Reading time10 min
Views37K
image

Фото Migle Siauciulyte на Unsplash

Введение


Говорят, что для овладения каким-либо навыком необходимо 10 000 часов. Я не буду спорить, правда это или нет. Я скажу вам, что даже если это правда, я не уверен, что это применимо к Python!

В этой статье я объясню, почему я считаю, что вы не можете по-настоящему освоить Python, но я также скажу вам, почему я считаю, что это нормально. Я дам ряд практических советов, которые вы сможете использовать, чтобы постоянно совершенствовать свои знания Python.
Наконец, в конце я поделюсь небольшим случаем из моего личного опыта работы с Python, подкрепляющий мои тезисы.
Читать дальше →
Total votes 32: ↑18 and ↓14+12
Comments23

Information

Rating
4,508-th
Location
Парголово, Санкт-Петербург и область, Россия
Date of birth
Registered
Activity