Pull to refresh
72
0
Artem Vorozhtsov @greck

ML Engineer

Send message

Новые инструменты для работы c ML-моделями и обзор MLOps от CERN

Level of difficulty Medium
Reading time 7 min
Views 4.1K

Привет всем, кто работает с ML-моделями и занимается аналитикой данных! В новом дайджесте для вас много интересных обзоров по инструментам — как говорится, ни ClearML и Airflow едиными. Рынок решений стремительно развивается, и наши подборки помогут вам держать руку на пульсе. Еще больше полезных текстов по DataOps и MLOps публикуем в Telegram-сообществе «MLечный путь».

Как вам, кстати, ренессансная GPU на обложке, которую сгенерила нейросеть для блога Andreesen and Horowitz? Что тут сказать — просто поделитесь промтом.
Читать дальше →
Total votes 40: ↑40 and ↓0 +40
Comments 1

Machine Learning for price optimization

Level of difficulty Medium
Reading time 27 min
Views 5.6K

This is a translated and adopted article I wrote for the Aha'22 (30 May 2022) conference. It describes an approach to a marketplace prices optimisation. Here I've outlined some important definitions and tried to define the scopes and roles of ML, algorithms, and humans in optimal pricing. Although the article covers rather basic things, still, you can find out some new formulas and ideas, because these basics are somewhat "well-known only in a very closed clubs", and besides, the real gem found here is the detailed recipe for ML engineers how to build optimal pricing systems.

Read more
Total votes 3: ↑3 and ↓0 +3
Comments 0

3. Теория информации и ML. Прогноз

Reading time 31 min
Views 7K

Понятие Mutual Information (MI) связано с задачей прогноза. Собственно, задачу прогноза можно рассматривать как задачу извлечения информации о сигнале из факторов. Какая-то часть информации о сигнале содержится в факторах. И если вы напишите функцию, которая по факторам вычисляет число близкое к сигналу, то это и будет демонстрацией того, что вы смогли извлечь MI между сигналом и факторами.

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

Троян-снаряд против крипто-брони. Трагедия в трёх актах

Reading time 14 min
Views 20K

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

А случилось презанимательнейшее: итальянские полицейские смотрели улицы в небольшом испанском городке через Google Street View по своим полицейским (или не очень) делам и увидели там человека, в котором узнали… сбежавшего 20 лет назад итальянского мафиозо, осужденного на пожизненный срок за убийство и наркоторговлю! Если добавить к этому факт, что лица в Google Street View заблюриваются, то становится абсолютно ясно, что не обошлось без вмешательства самой Пресвятой Девы Марии! Получив такую божественную наводку, полицейские проверили фотографии из Фейсбука с геотегами поблизости от этого места, и выяснили, что наш мафиозо-рецидивист-убийца-наркоторговец уже давно самоисправился в шеф-повара небольшого ресторанчика La Cocina de Manu и владельца бакалейного магазинчика El Huertode Manu.

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

Читать далее
Total votes 100: ↑96 and ↓4 +92
Comments 41

Методы приближенного поиска ближайших соседей

Reading time 11 min
Views 49K


Довольно часто программисты и специалисты из области data science сталкиваются с задачей поиска похожих профилей пользователей или подбора схожей музыки. Решения могут сводиться к преобразованию объектов в векторную форму и поиску ближайших.


Мы тоже столкнулись с необходимостью поиска ближайших соседей в задаче распознавания лиц. Там мы формируем векторные представления лиц при помощи нейросети и ищем ближайшие векторы уже известных людей. Изначально для поиска мы выбрали Annoy, как хорошо известный и проверенный алгоритм, используемый в том числе в Spotify. Но быстро поняли, что с его аппетитами по памяти мы либо не вмещаемся в RAM, либо сильно теряем в точности. Это привело к небольшому исследованию. О результатах которого пойдет речь ниже.

Читать дальше →
Total votes 53: ↑53 and ↓0 +53
Comments 5

Клуб использованных техлидов

Reading time 8 min
Views 49K

Меня зовут Сергей. Я – использованный техлид. Долго думал, что я такой один – невезучий, потерявший всякий интерес к любимому делу, работающий от звонка до звонка. Оказалось, нет.

Нас таких много. Начало, первые счастливые годы, безумный интерес к своему делу – у всех техлидов похожи. Середина – пик, душевный подъём, работа без устали сутки напролёт – один в один. Послушаешь любого техлида про его золотые годы, и скажешь – «во-во, у меня так же было!». Красная нить тех счастливых времён – невероятная востребованность, от которой буквально кружится голова.

Чем больше сложных задач решаешь, тем больше их становится. Чем качественнее, оптимальнее, эффектнее создаёшь, тем больше новых вызовов получаешь. Чем лучше помогаешь другим программистам – молодым, но уже увлечённым – тем сильнее хочется жить, работать, развиваться.

Ну а потом… Приходит умный эффективный дядя, который говорит: экой тут у нас талантище! Да зазря погибает в своём пыльном углу! Не годится. Не эффективно.

Надо его использовать.

Читать далее
Total votes 123: ↑100 and ↓23 +77
Comments 82

Как мы сделали матчер: тайтлы, БЕРТы и две сестры

Reading time 10 min
Views 6K

Всем привет! Меня зовут Андрей Русланцев, я — Senior Machine Learning Engineer в команде матчера в AliExpress Россия. Я расскажу о том, как мы сделали матчер: какие проблемы нам пришлось решить, какие модели мы использовали, как выглядит наш текущий пайплайн, и почему наш матчинг действительно супер.

Читать далее
Total votes 18: ↑18 and ↓0 +18
Comments 17

2. Теория информации + ML. Mutual Information

Reading time 10 min
Views 6K

В этой части я рассказываю про Взаимную Информацию – концепцию, которая открывает двери в помехоустойчивое кодирование, алгоритмы сжатия, а также даёт новый взгляд на задачи регрессии и Machine Learning.

Это необходимая компонента, чтобы в следующей части перейти к задачам ML как к задачам извлечения взаимной информации между факторами и прогнозируемой величиной.

Здесь будет три важных картинки.

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

Между делом мы докажем упрощённый вариант теоремы Шаннона-Хартли о максимальной пропускной способности канала с шумом. Погнали!

Читать далее
Total votes 11: ↑8 and ↓3 +5
Comments 0

Как убрать посторонние шумы с фото документов с помощью PyTorch

Reading time 9 min
Views 6.2K

Привет, Хабр!

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

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

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

Успешное АБ-тестирование: о чём говорили на Data Driven Meetup #2

Reading time 2 min
Views 2.2K

Всем привет! Недавно X5Tech провела митап, где эксперты компании говорили о том, как работают над проектами по Big Data. Делимся записью выступлений и презентациями спикеров.

Читать далее
Total votes 4: ↑3 and ↓1 +2
Comments 0

1. Теория информации + ML. Энтропия

Reading time 9 min
Views 16K

Теория Информации и Machine Learning мне видятся как интересная пара областей, глубокая связь которых часто неизвестна ML инженерам, и синергия которых раскрыта ещё не в полной мере.

Начнём с базовых понятий Энтропии, Информации в сообщении, Mutual Information, пропускной способности канала. Далее будут материалы про схожесть задач максимизации Mutual Information и минимизации Loss-а в регрессионных задачах. Затем будет часть про метрику Фишера, геодезические и градиентные методы, и их связь с гауссовскими процессами.

Читать далее
Total votes 14: ↑14 and ↓0 +14
Comments 1

История зарождения Linux — как это было?

Reading time 5 min
Views 19K


25 августа 1991 года, ровно 31 год назад, в USENET-конференции comp.os.minix появилось сообщение от молодого человека по имени Линус Бенедикт Торвальдс о том, что он создал бесплатную операционную систему для 386 и 486-совместимых ПК, с отдельным примечанием: в качестве хобби, новинка не претендует на лавры серьезного профессионального проекта вроде GNU. Так началась история Linux. Официальные источники гласят, что к творчеству Торвальдса сподвигли лицензионные и функциональные ограничения ОС MINIX, в которой он тогда работал. Кое-где даже упоминается, что он вдохновлялся книгой создателя MINIX профессора Эндрю Таненбаума «Операционные системы: разработка и реализация» (Operating Systems: Design and Implementation). Однако изучая историю Linux, я случайно наткнулся на воспоминания однокурсника Торвальдса — Ларса Вирзениуса, вовлеченного в разработку Linux с самых первых дней существования этого проекта. Ларс рассказывал эту историю из «первых рук», причем излагал ее немного не так, как она описана в «Википедии».
Читать дальше →
Total votes 63: ↑59 and ↓4 +55
Comments 46

Есть ещё выдающиеся программисты, кроме Торвальдса, Беллара и Дина? Знакомьтесь — Джастин Танни

Level of difficulty Easy
Reading time 6 min
Views 43K
Программистам не дают Нобелевские премии. Хотя некоторые заслуживают. В нашей отрасли есть настоящие герои с выдающимися достижениями. Эти люди не строят карьеру, перепрыгивая с одной должности на другую, прокачивая зарплату. Создаётся впечатление, что им карьера вообще не важна. В силу высокого интеллекта, врождённой любознательности и особого характера эти люди не способны выполнять скучные, рядовые задания. Только интересные или важные. И только по своей воле, не по указанию сверху.

На Хабре рассказывали про «чак норрисов» от программирования, таких как Линус Торвальдс, Фабрис Беллар и Джефф Дин. Конечно, есть и другие феноменальные таланты, их много. Зачастую эти люди далеки от публичности, никогда не давали интервью и известны только по никам. Но их объединяет одно — выдающиеся индивидуальные разработки, которые разрывают шаблон и выделяются из общей массы.

Мы собирали этот список несколько лет. Начнём с последних строчек своебразного хит-парада… Знакомьтесь — Джастин Танни (Justine Tunney), хакерша и гений системного программирования.
Читать дальше →
Total votes 146: ↑132 and ↓14 +118
Comments 88

Как спорить про результаты A/B тестирования

Reading time 8 min
Views 3.4K

Спорить плохо, но раз уж всё равно все спорят, то почему бы не делать это конструктивно и продуктивно :)

Лайфхак как успешно убеждать датасайентистов по результатам A/B тестирования. Работают такие аргументы:

Читать далее
Total votes 1: ↑1 and ↓0 +1
Comments 3

А слабо сделать нормального чат-бота для банка? — challenge accepted

Reading time 9 min
Views 7.4K


Сначала оказалось, что простые эвристики не работают. Ну вот совсем. То есть тупой чат-бот, который умеет распознавать с десяток жёстких тематик или показывать клавиатуру вроде «Нажмите 1, чтобы узнать свой баланс», несильно экономит время контакт-центру. Люди как не читали инструкции, так и не читают, а при виде такого сразу стремятся выйти на живого оператора.

То есть бот должен быть реально полезным. Таким, чтобы пользователь чувствовал, что диалог с ним — это не конкурс «обойти железного идиота», а что-то всё же даёт.

Здесь ждут следующие грабли: предположим, вы собрали всю базу диалогов контакт-центра с 2002 года. Разметили её и даже обучили на ней бота. Дальше произойдёт следующее:

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

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

Ниже я хочу рассказать про те не совсем очевидные вещи в поддержке чат-бота, которые могут очень сильно уронить качество его работы. Ну или не дать до этого качества дорасти вообще, если архитектура не совсем правильная.
Читать дальше →
Total votes 36: ↑35 and ↓1 +34
Comments 31

ML для оптимизации цен на основе эластичности по цене

Reading time 25 min
Views 16K

Кривая эластичности спроса по цене – это то, как продажи зависят от цены.Чем меньше цена, тем больше продаж и наоборот.

В этой статье рассказывается про ML методы получения кривых спроса сразу для сотен тысяч товаров (нейросети, pyTorch), а также как, имея кривые спроса, решать бизнес задачу про баланс оборота и прибыли – в этом нам поможет метод множителей Лагранжа. Что первично – ограничение на прибыль или множитель Лагранжа? Как инженерам объяснить, что такое kvi-товары и товары-герои? Это и многое другое

Читать далее
Total votes 9: ↑8 and ↓1 +7
Comments 18

Грабли, на которые не стоит наступать

Reading time 5 min
Views 80K
От переводчика: Это перевод статьи авторства Джоэля Спольски (Joel Spolsky). Через 2 года эта статья уже сможет получить автомобильные права в США, а еще через два — и не только там. Да, ей 14 лет (а точнее 14 лет и 11 дней), но актуальности она не потеряла ни грамма. Я регулярно вижу, как программисты (да и я сам, временами) порываются наступить на эти грабли. Тот факт, что я не нашел ее перевода на Хабре, вполне может свидетельствовать о том, что я плохо искал. Об ошибках перевода прошу сообщать в ЛС

UPD: Оказывается перевод статей Джоэля, в т. ч и этой, есть еще в бумажном издании «Джоэл о программировании»

Наконец выходит первая публичная бета-версия Netscape 6.0. Версии 5.0 не существует. Предыдущий мажорный релиз — версия 4.0 — был выпущен почти три года назад. Три года — это невероятно большой срок в мире интернета. Все это время в Netscape сидели и беспомощно наблюдали за тем, как уменьшается их доля рынка.

Это немного подло с моей стороны критиковать их за столь долгое ожидание между релизами. Они ведь не специально это сделали, правда?
Читать дальше →
Total votes 146: ↑143 and ↓3 +140
Comments 68

Наша космическая промышленность. Взгляд на проблемы отрасли с позиции рядового разработчика

Reading time 14 min
Views 93K
Я работал в нашей космической промышленности достаточно долго (1983-1995, 2008-2012 годы). Когда читаешь статьи о наших неудачах, в них часто не видны основные действующие механизмы создания проблем.

Итак, я хотел бы начать это рассмотрение с принципа «фактической негативной селекции». Кому интересно – прошу под кат (много букв и никаких картинок).
Читать дальше →
Total votes 264: ↑245 and ↓19 +226
Comments 337

ИИ от Google обучил дочерний ИИ, который превосходит все ИИ, созданные человеком

Reading time 3 min
Views 73K


В мае 2017 года исследователи из Google Brain представили проект AutoML, который автоматизирует проектирование моделей машинного обучения. Эксперименты с AutoML показали, что эта система может генерировать маленькие нейросети с очень хорошими показателями — вполне сравнимые с нейросетями, которые спроектированы и обучены экспертами-людьми. Однако поначалу возможности AutoML были ограничены маленькими научными наборами данных вроде CIFAR-10 и Penn Treebank.

Инженеры Google задумались — а что если поставить перед генератором ИИ более серьёзные задачи? Способна ли эта система ИИ сгенерировать другую ИИ, которая будет лучше созданного человеком ИИ в какой-нибудь важной задаче вроде классификации объектов из базы ImageNet — самого известного из крупномасштабных наборов данных в машинном зрении. Так появилась нейросеть NASNet, созданная практически без участия человека.
Читать дальше →
Total votes 68: ↑66 and ↓2 +64
Comments 271

Полусинтетический организм с шестью основаниями ДНК теперь умеет размножаться

Reading time 3 min
Views 27K
По крайней мере с момента появления последнего общего предка всего живого на Земле примерно 3,5 млрд лет назад генетическая информация хранится в четырёхбуквенном алфавите, который распространяется и считывается в виде двух базовых пар. Это четыре азотно-углеродно-водородные основания: аденин (А), тимин (Т), цитозин (С) и гуанин (G). В силу своего химического состава они связываются в базовые пары в строгом порядке, не допускающем вариантов: только A-T и С-G. В такой четверичной системе закодирована вся жизнь на Земле.

Главная цель синтетической биологии как науки — создание новых жизненных форм и новых функций у существующих организмов. Логичный путь к достижению этой цели — разработка полусинтетических организмов с расширенным набором базовых пар. Кроме четырёх оснований живой природы они могут содержать пару синтетических оснований, образующих третью искусственную базовую пару: X-Y.

Предыдущие попытки создать такой полусинтетический организм достигли апогея в 2016 году. Тогда генетикам удалось вывести штамм Escherichia coli, которая извлекала необходимые синтетические трифосфаты из окружающей среды и использовала их для репликации плазмид с синтетическим основанием. Это был первый случай репликации полусинтетической ДНК, но всё-таки такой полусинтетический организм был не совсем полноценным. Просто хранения и передачи синтетической базовой пары недостаточно. Чтобы нести какую-то пользу, она должна быть полностью функциональной, то есть способной в конечном итоге через РНК на экспрессию белков. И это будут белки, создать которые не способна ни одна естественная форма жизни в четверичной системе.
Читать дальше →
Total votes 44: ↑44 and ↓0 +44
Comments 97

Information

Rating
Does not participate
Location
London, England - London, Великобритания
Date of birth
Registered
Activity