Как стать автором
Обновить
13
0
Антон Дробышев @Dekakhrone

Руководитель проектов по машинному обучению

Отправить сообщение

Как проводить код-ревью: главное из вебинара

Время на прочтение12 мин
Количество просмотров3.2K

В декабре Яндекс Практикум провёл открытый вебинар о том, как устроен процесс код-ревью в коммерческой разработке и образовании. Руководитель отдела разработки поисковых интерфейсов в Яндексе Сергей Бережной и старший код-ревьюер на курсе «Веб-разработчик» Айгуль Маликова рассказали о полезных инструментах для ревью кода и поделились кейсами из своей практики. 

Видеозапись вебинара доступна по ссылке. Для тех, кому удобнее воспринимать информацию в текстовом формате, мы сделали конспект.

Читать далее
Всего голосов 11: ↑8 и ↓3+6
Комментарии1

Краткий справочник по «всем-всем» командам Linux

Уровень сложностиСредний
Время на прочтение74 мин
Количество просмотров165K

Периодически меня на начальном курсе просят дать "список всех-всех команд с кратким описанием что делает"... Ну прям "всех-всех". И ведь если искать в интернете "такие" справочники существуют - либо про "20-30 команд, но самых важных", либо с неточностями и устаревшей информацией. Так что предлагаю вашему вниманию свою версию такого "краткого" справочника (на 300, 515, 612, 716, 842, 1005, 1110 команд) с ссылками на wiki-описание и на cheat.sh-примеры наиболее важных команд.

Справочник по всем-всем командам LINUX
Всего голосов 105: ↑102 и ↓3+120
Комментарии114

Современная микросервисная архитектура: принципы проектирования

Время на прочтение7 мин
Количество просмотров25K

Первые упоминания о практическом использовании микросервисной архитектуры появились в 2010-х годах. Но сейчас она стала стандартом для отрасли. Ведущий архитектор Группы «Иннотех» Александр Соляр рассказал о некоторых нюансах микросервисов, а также принципах их использования.

Читать далее
Всего голосов 14: ↑7 и ↓70
Комментарии5

Клиновоздушные ракетные двигатели — будущее ракетостроения

Время на прочтение5 мин
Количество просмотров29K

Всё чаще можно заметить этот тезис в статьях, докладах, мнениях о ракетостроении. И действительно, в глобальном плане это так, новые возможности, характеристики вжимать из реактивных двигателей становится всё сложнее, а те же тяги по большому счёту не увеличиваются уже давно, самые тяговитые монстры двигателестроения были созданы во 2 половине 20 века, и современные движки от них недалеко ушли, хоть и прокачали другие характеристики и возможности. Например, F1, настоящий монстр, поднимавший в небо лунную ракету Сатурн V имел тягу 6,77 меганьютон, а самый современный Raptor от корабля Starship и ускорителя Super Heavy имеет тягу всего...2000 килоньютон. И он считается мощным двигателем. Ситуация складывается печальная. Можно ли как то улучшить ситуацию, сделать двигатели мощнее, экономичнее? Можно, и об этом статья.

Читать далее
Всего голосов 38: ↑30 и ↓8+31
Комментарии47

В IT в 30. Как я стал solo Kaggle Grandmaster, устроился на работу, но так и не стал программистом

Время на прочтение10 мин
Количество просмотров73K

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

Читать далее
Всего голосов 87: ↑80 и ↓7+87
Комментарии74

Что читать разработчику C++

Время на прочтение6 мин
Количество просмотров28K

В этой подборке — не только классические рекомендации книг для C++ программистов. Обычно советуют издания про паттерны, развитие стандарта или успехи большой компании. Но за всем этим изобилием «экспертных советов» и best practices теряется одна простая мысль: язык программирования — это средство выражения мысли от одного разработчика другому, а также средство описания пользовательского API в самом широком смысле.

Повышая градус ответственности за миллисекунды алгоритмов или чистоту архитектуры, лиды ужимают значимость способов мышления. И никакие метрики производства не показывают шоры у самого синьерного синьера.

Первые 5 книг этой подборки — в меньшей степени про технику, в большей степени об осознанности деятельности C++ программистов любого уровня. Остальные — «золотой фонд» классической литературы для C++ разработчиков.

Читать далее
Всего голосов 95: ↑85 и ↓10+76
Комментарии16

Еще один гайд по переходу с Linux на Mac

Время на прочтение15 мин
Количество просмотров20K

Вот вот начнется продажа ноутбуков Apple с чипами M2. Для кого-то этот факт будет сигналом к обновлению рабочей машинки. Наверняка, найдутся и те, кто впервые пересядит за мак. И среди пересевших на мак обязательно будет какая-то небольшая доля линуксоидов. Решил написать небольшой обзор актуальных инструментов, поделиться опытом перехода. Знаю, по теме на Хабре есть десятки статей. Где-то повторюсь, где-то раскрою тему хуже коллег, но я уверен, каждый читатель найдет для себя что-то новое.

Читать далее
Всего голосов 55: ↑36 и ↓19+24
Комментарии68

Как стать тимлидом, или Что вас ждет по другую сторону разработки?

Время на прочтение10 мин
Количество просмотров17K

Привет Хабр! 

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

Читать далее
Всего голосов 12: ↑11 и ↓1+14
Комментарии0

Книги, которые повлияли на меня как на разработчика и управленца

Время на прочтение6 мин
Количество просмотров12K

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

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

Читать далее
Всего голосов 22: ↑19 и ↓3+24
Комментарии3

Сжимаем трансформеры: простые, универсальные и прикладные способы cделать их компактными и быстрыми

Время на прочтение6 мин
Количество просмотров5.4K

transformer_press


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


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


Тем не менее у self-attention модуля есть ряд плюсов: (i) относительная простота при правильной реализации (ii) простота квантизации (iii) относительная эффективность на коротких (до нескольких сотен элементов) последовательностях и (iv) относительная популярность (но большая часть имплементаций имеет код раздутый раз в 5).


Также есть определенный пласт статей про улучшение именно асимптотических свойств self-attention модуля (например Linformer и его аналоги). Но несмотря на это, если например открыть список пре-тренированных языковых моделей на основе self-attention модулей, то окажется, что "эффективных" моделей там буквально пара штук и они были сделаны довольно давно. Да и последовательности длиннее 500 символов нужны не очень часто (если вы не Google).


Попробуем ответить на вопрос — а как существенно снизить размер и ускорить self-attention модуль и при этом еще удовлетворить ряду production-ready требований:

Читать дальше →
Всего голосов 19: ↑19 и ↓0+19
Комментарии13

Рисуем звук

Время на прочтение3 мин
Количество просмотров22K
Пять лет назад на Хабре была опубликована статья «Печать и воспроизведение звука на бумаге» — о системе создания и проигрывания спектрограмм. Затем, полтора года назад Meklon опубликовал квест, в котором такая чёрно-белая логарифмическая спектрограмма стала одним из этапов. По авторскому замыслу, её надо было распечатать на принтере, отсканировать смартфоном с приложением-проигрывателем, и воспользоваться таким образом «надиктованным» паролем.


У меня в тот момент не было в досягаемости ни принтера, ни смартфона, так что меня заинтересовали два аспекта задачи:

  1. Как проще всего расшифровать спектрограмму без дополнительных устройств и без дополнительного софта — желательно, прямо в браузере?
  2. Можно ли её расшифровать вообще без софта — «на глаз»?

Читать дальше →
Всего голосов 25: ↑25 и ↓0+25
Комментарии14

Как превратить скрипт на Python в «настоящую» программу при помощи Docker

Время на прочтение4 мин
Количество просмотров64K
Никого не интересует, умеете ли вы разворачивать связанный список — всем нужно, чтобы можно было легко запускать ваши программы на их машине. Это становится возможным благодаря Docker.


Для кого предназначена эта статья?


Вам когда-нибудь передавали код или программу, дерево зависимостей которой напоминает запутанную монтажную плату?


Как выглядит управление зависимостями

Без проблем, я уверен, что разработчик любезно предоставил вам скрипт установки, чтобы всё работало. Итак, вы запускаете его скрипт, и сразу же видите в оболочке кучу сообщений логов ошибок. «У меня на машине всё работало», — обычно так отвечает разработчик, когда вы обращаетесь к нему за помощью.

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

В частности, мы рассмотрим скрипты, которые должны работать как фоновый процесс.
Читать дальше →
Всего голосов 37: ↑27 и ↓10+27
Комментарии40

Банки ультимативно лезут к нам в ш̶т̶а̶н̶ы̶ личную жизнь

Время на прочтение5 мин
Количество просмотров132K

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

Банковские приложения и сами банки ведут себя очень наглым образом. Уже при установке они запрашивают права доступа, которые им необязательны или совсем не нужны для работы. Например, приложение Сбербанка сразу требует доступ к звонкам и фоткам. Я категорически против. Отказываю. А приложение не хочет работать при таком раскладе.

Читать далее
Всего голосов 160: ↑149 и ↓11+187
Комментарии428

Квантование эмбеддингов: что это, зачем оно нужно и как его правильно готовить

Время на прочтение8 мин
Количество просмотров12K
Привет, меня зовут Женя. Сегодня я расскажу, что такое квантование эмбеддингов, какие бывают способы квантования и как с их помощью мы в Яндекс.Дзене смогли сократить использование памяти, рейта записи и сетевого трафика в четыре раза. Будет совсем немного математики, умеренно размышлений о machine learning, highload и big data и много разноцветных картинок.

Что такое эмбеддинги?


Эмбеддинг — числовой вектор, который каким-то (в общем случае непонятным на глаз) образом характеризует интересы пользователя или контент. Например, эмбеддинги могут быть такими.



У каждого пользователя и карточки может быть несколько эмбеддингов разных типов. В основном используются два вида эмбеддингов.
Читать дальше →
Всего голосов 29: ↑28 и ↓1+36
Комментарии6

Синтез речи виртуальных ассистентов Салют: как мы отошли от классических научных статей, чтобы сделать его человеческим

Время на прочтение12 мин
Количество просмотров18K

Автор исходного изображения: Blue Flourishes/Shutterstock.com

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

Согласно нашей «библии ассистентов», Сбер — энергичный гик, Афина — взрослая и деловая, а Джой — дружелюбная и веселая. Они отличаются не только уникальными характерами, обращением на «ты»/«вы» и предпочтениями в шутках. Мы попытались сделать так, чтобы их личности отражались и в голосах, которыми они разговаривают.


Персонажей озвучили телеведущая Анастасия Чернобровина (Афина) и актёры дубляжа Даниил Щебланов и Татьяна Ермилова (Сбер и Джой). Виртуальных ассистентов можно услышать в приложениях Сбер Салют, СберБанк Онлайн, нашем колл-центре по номеру 900, а также в устройствах SberBox и SberPortal. Всё, что вы услышите, — это синтез речи, реализованный с помощью нейросетей. Он работает на связке Tacotron 2 и LPCNet.

Но, чтобы было понятно, что, зачем и почему, — немного теории и истории

Читать далее
Всего голосов 35: ↑34 и ↓1+45
Комментарии30

Человейник, тебе меня не сломить! Анализ жилья в мегаполисе

Время на прочтение13 мин
Количество просмотров106K
Вчера на них никто не обращал внимание, а сегодня они повсюду. Человейники атакуют! Официально они именуются ЖК эконом-класса, а по сути являются гигантскими бетонными коробками из дешевых материалов. Москва задает моду на уплотнительную застройку и возведение целых районов человейников. И вот уже из Питера, Новосибирска и других зон поражения раздается безысходное «понастроили тут». Как всегда, под ударом простой народ. В красной зоне риска — люди, созревшие для покупки или аренды квартир.

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


Человейники Гонконга. Интересно, можно ли будет сделать такую фотку в Москве лет через 30?
Читать дальше →
Всего голосов 124: ↑120 и ↓4+151
Комментарии766

Эффективные методы сжатия данных при тренировке нейросетей. Лекция в Яндексе

Время на прочтение33 мин
Количество просмотров13K
Не так давно в Яндекс приезжал Геннадий Пехименко — профессор Университета Торонто и PhD Университета Карнеги-Меллон. Он прочитал лекцию об алгоритмах кодирования, которые позволяют обходить проблему ограничения памяти GPU при обучении глубоких нейронных сетей.


— Я вхожу в несколько групп Университета Торонто. Одна из них — Computer Systems and Networking Group. Есть еще моя собственная группа — EcoSystem Group. Как видно из названий групп, я не специалист непосредственно в машинном обучении. Но нейронные сети сейчас достаточно популярны, и людям, которые занимаются компьютерной архитектурой и сетями, компьютерными системами, приходится сталкиваться с этими приложениями на постоянной основе. Поэтому последние полтора-два года этой темой я тоже плотно занимаюсь.
Всего голосов 41: ↑41 и ↓0+41
Комментарии7

Сверхэффективная нейронная сеть или гиперсеть

Время на прочтение20 мин
Количество просмотров15K


Что нужно чтобы создать искусственный интеллект? По какому пути идти до этой цели? Многие с уверенностью ответят, что научное сообщество уже полным ходом движется на этом пути. Что со следующими нейросетевыми моделями с еще большим количеством параметров, с еще более мощными нейроморфными компьютерами, и еще более масштабными датасетами на все случаи жизни, мы ворвёмся в эпоху мыслящих машин. На мой взгляд, это похоже на гонку за морковкой и скорее очевидным для всех такое положение дел станет тогда когда количество настраиваемых параметров в моделях, станет больше чем связей в человеческом мозгу, но ожидаемого эффекта не будет достигнуто.
В этой статья я обозначу путь выхода из порочного бега за морковкой, и расскажу о своём пути и наработках в своих исследованиях.
Всего голосов 18: ↑18 и ↓0+18
Комментарии58

Статья, на которую можно ссылаться: что такое блокчейн

Время на прочтение9 мин
Количество просмотров81K
В 2017 году блокчейн стал предметом научного интереса, когда в Торонто открылся первый институт исследований блокчейна. Около 30 ведущих экспертов приступили к разработке различных проектов, связанных с этой технологией.



Блокчейн — это надёжный способ хранения данных о сделках, контрактах, транзакциях, обо всём, что необходимо записать и проверить. Сегодня блокчейн проник практически во все сферы жизнедеятельности, готов в корне изменить финансовую систему государства и в разы упростить работу среднего и крупного бизнеса. Блокчейн не секретная технология: в сети огромное количество статей о том, как он устроен и по какому принципу работает. Мы собрали самые интересные и нужные факты в одну статью, на которую можно давать ссылку, когда вас спросят: «Что же такое блокчейн?»
Читать дальше →
Всего голосов 68: ↑53 и ↓15+38
Комментарии23

57 отборных репозиториев для всех разработчиков Python

Время на прочтение8 мин
Количество просмотров26K
Специально к старту нового потока курса «Python для веб-разработки» представляем подборку из 57 репозиториев, которые будут полезны как начинающему, так и опытному разработчику: это репозитории с ответами на вопросы собеседований, репозитории с книгами, небольшие, но полезные консольные инструменты и проекты, которые вдохновят вас написать красивый, работающий и полезный код.


Приятного чтения!
Всего голосов 20: ↑17 и ↓3+16
Комментарии15

Информация

В рейтинге
Не участвует
Откуда
Москва, Москва и Московская обл., Россия
Зарегистрирован
Активность

Специализация

Data Scientist
Lead
Python
Linux
C++
Neural networks
Natural language processing