Pull to refresh
1
0
Георгий Мамедалиев @gerchik

User

Send message

Ускоряем анализ данных в 170 000 раз с помощью Python

Level of difficultyMedium
Reading time15 min
Views19K

В статье «Ускоряем анализ данных в 180 000 раз с помощью Rust» показано, как неоптимизированный код на Python, после переписывания и оптимизации на Rust, ускоряется в 180 000 раз. Автор отмечает: «есть множество способов сделать код на Python быстрее, но смысл этого поста не в том, чтобы сравнить высокооптимизированный Python с высокооптимизированным Rust. Смысл в том, чтобы сравнить "стандартный-Jupyter-notebook" Python с высокооптимизированным Rust».

Возникает вопрос: какого ускорения мы могли бы достичь, если бы остановились на Python?

Под катом разработчик Сидни Рэдклифф* проходит путь профилирования и итеративного ускорения кода на Python, чтобы выяснить это.

*Обращаем ваше внимание, что позиция автора может не всегда совпадать с мнением МойОфис.

Читать далее
Total votes 51: ↑50 and ↓1+56
Comments3

Как мы заработали 1700000 руб на Telegram-боте для создания фотокниг с помощью нейросети. Фейлы и выводы

Level of difficultyEasy
Reading time5 min
Views75K

Решил сэкономить вам 2 года, и разобрать фейлы, которые мы допустили на этапе запуска и продвижения продукта. Будет полезно, если думаете запустить свой IT продукт.

Читать далее
Total votes 127: ↑110 and ↓17+111
Comments132

Как объяснить градиентный спуск вашей маме: простое руководство

Level of difficultyEasy
Reading time7 min
Views21K

Градиентный спуск лежит в основе большинства методов AI/ML. Звучит как-то странно и пугающе. Спуск? Блин, надеюсь, мне не придется прыгать с парашютом...😒

Не волнуйтесь, возможно, все же придется прыгнуть, но только если вы этого захотите. Это объяснение способен понять даже ваш 10-летний племянник.

Читать далее
Total votes 24: ↑22 and ↓2+22
Comments13

Просто о Stable Diffusion: никакой магии

Level of difficultyEasy
Reading time15 min
Views12K

Если вы не провели последние два года на ферме в Сибири, вы, вероятно, слышали о Stable Diffusion или пробовали генерировать изображения с помощью моделей, вроде Dall-e или Midjourney. Они становятся все лучше каждый день, и по качеству уже сравнимы с людьми, а во многих аспектах даже лучше (например, им не нужно платить).

Исследования в области создания видео уже идут полным ходом во многих лабораториях и компаниях, так что это лишь вопрос времени, когда генеративные модели сместят людей с очередного столпа на котором держится наше общества — порно. Я не вижу чтобы кто то поднимал тревогу об огромном количестве людей, которые потеряют работу из-за этого. Я не такой бессердечный, поэтому, прежде чем наступил этот печальный момент, я решил принять меры и создать базовое руководство, которое даже работник индустрии для взрослых сможет понять и использовать, чтобы оставаться в игре. Давайте посмотрим, что к чему.

Читать далее
Total votes 44: ↑34 and ↓10+33
Comments28

Создаем запросы для «картиночных» нейросетей: 4 помощника

Reading time3 min
Views3.3K

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

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

Работаете с микросервисами? Идём в сторону Go

Level of difficultyEasy
Reading time4 min
Views7K

Разработчики приложений с микросервисной архитектурой обращаются к Golang не только как к основному языку, но и как к вспомогательному — в дополнение к другим, более сложным. А мы решили обратиться к спикеру курса «Golang-разработчик» Виталию Лихачеву, Senior Software Engineer в Avito, чтобы он нам рассказал, почему лично он выбрал бы Go. 

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

Чатботиус Полезниус: 5 толковых сценариев для чат-бота, которые не раздражают, а очень даже помогают

Level of difficultyMedium
Reading time8 min
Views2.3K

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

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

Запускаем локальный ML-процесс в облаке с помощью DataSphere Jobs

Level of difficultyEasy
Reading time7 min
Views2.5K

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

Помочь в решении этих задач могут инструменты для удалённого исполнения кода в ML. Сегодня на конкретном примере покажу, как устроен и как работает один из таких инструментов, созданный нами для пользователей облака, — DataSphere Jobs. А в следующий раз вместе с моими коллегами рассмотрим опенсорс-инструменты для подобных задач.

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

Топ необходимых Linux-команд для разработчика [Шпаргалка]

Level of difficultyEasy
Reading time9 min
Views34K

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

Цель этой статьи - ближе познакомить пользователей с основными командами, которые разработчики используют в повседневной работе.

Читать далее
Total votes 32: ↑21 and ↓11+13
Comments35

Kubernetes: шпаргалка для собеседования

Level of difficultyEasy
Reading time10 min
Views43K
Всем привет! Меня зовут Олег, я работаю исполнительным директором по разработке в Газпромбанке. На разных этапах карьеры я участвовал во многих собеседованиях, а в настоящее время сам собеседую кандидатов на должность инженеров DevOps и системных администраторов в Газпромбанке, вследствие чего у меня сформировалось некоторое представление о вопросах, которые могут быть заданы соискателям. И сейчас я хочу остановиться на разделе вопросов про Kubernetes.

image

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

Вопросы по Kubernetes достаточно часты на собеседованиях на инженерные вакансии, связанные с администрированием и эксплуатацией. Они могут варьироваться от базовых, рассчитанных на механическую проверку теоретических знаний («объясните, что такое service») до более сложных и комплексных, требующих глубинного понимания внутренних принципов Kubernetes и работы (каким образом опубликовать приложение, развёрнутое в Kubernetes). Давайте пойдём от базы в направлении возрастания сложности.
Читать дальше →
Total votes 19: ↑18 and ↓1+20
Comments12

Разговор с директором по ИИ «Яндекс Рекламы» Алексеем Штоколовым о применении ИИ, AI‑тренерах и рутинных задачах

Level of difficultyEasy
Reading time7 min
Views2.6K

В конце ноября 2023 года информационная служба Хабра сходила на #Reconfa — конференцию «Яндекс Рекламы». Неформат для Хабра, но в этот раз на конференции обсуждалось применение ИИ и нейросетей, поэтому я решил сходить, посмотреть. Об этом есть отдельный материал. Там же мне удалось поймать директора по искусственному интеллекту (ИИ) «Яндекс Рекламы» Алексея Штоколова. Я задал ему несколько вопросов про ИИ и использование его в рекламе. Плавно разговор перетёк в обсуждение профессии AI‑тренера и возможности автоматизации рутинных задач. Приятного чтения!

Читать далее
Total votes 12: ↑8 and ↓4+17
Comments3

Дифференциальная приватность в машинном обучение

Level of difficultyEasy
Reading time4 min
Views1.9K

Привет!

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

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

Надоело настраивать кластер? Используйте Ray Lightning

Reading time7 min
Views2.7K

PyTorch Lightning позволяет распараллелить Deep Learning на GPU, но настраивать и объединять процессоры в сеть сложно даже в управляемом кластере SLURM. Проблему решает пакет Ray Lightning, обзором которого делимся к старту потока курса по Data Science.

Читать далее
Total votes 5: ↑4 and ↓1+3
Comments1

Вихрь — семейство переведенных русскоязычных LLM

Level of difficultyMedium
Reading time5 min
Views24K

Мы русифицировали Mistral и он работает лучше(по бенчмаркам) чем закрытые русскоязычные LLM. Как мы это сделали, ссылки на модели и бенчмарки - в статье.

Читать далее
Total votes 38: ↑34 and ↓4+36
Comments34

10 самых распространенных проблем при линтинге Dockerfile'ов

Level of difficultyEasy
Reading time8 min
Views12K

Весной 2023 года разработчики Depot добавили в свой сервис возможность проверять Dockerfile'ы при каждой сборке.

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

Читать далее
Total votes 30: ↑29 and ↓1+34
Comments4

Делаем двоичные файлы Rust меньше по умолчанию

Level of difficultyMedium
Reading time6 min
Views5.4K

Вы когда-нибудь пробовали компилировать program helloworld на Rust в режиме --release? Если да, то видели, какой размер двоичного файла получается? Достаточно сказать, что он не очень маленький. Или, по крайней мере, не был таким до недавнего времени. В этом посте я расскажу, как узнал об этой проблеме и попытался устранить её в Cargo.

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

Теория игр за 15 минут

Level of difficultyEasy
Reading time15 min
Views64K

Многие из вас, я уверен, слышали о теории игр в какой-то момент своей жизни. Если вы хотите выглядеть умным и произвести впечатление на свою девушку — просто упомяните «игру с нулевой суммой» или «эволюционную стратегию», и ваши шансы отвести её домой сегодня вечером только что подскочили на 50%. Или вы можете использовать теорию игр, чтобы принимать решения в инвестировании своих денег (чтобы их полностью потерять и разориться) или, например решая, на какой девушке жениться (что также очень вероятно вас разорит). Как видите, это очень полезная теория.

Чтобы казаться умным - достаточно выучить эти пару выражений, но чтобы на самом деле что-то понимать - придется разобраться. Оказывается, это не так уж сложно и довольно интересно. Давайте посмотрим.

Читать далее
Total votes 92: ↑89 and ↓3+103
Comments30

Почему новым сотрудникам платят больше, чем работающим давно?

Reading time7 min
Views119K

Один из самых поучительных моментов в моей карьере случился, когда я узнал, что новый коллега зарабатывает больше меня. Однажды я без задней мысли спросил его: «Какая у тебя зарплата?» Когда я услышал, что она на 40 тысяч долларов в год больше моей, то ощутил обиду, ревность и недооценённость. Как человек, имеющий ту же должность и тот же опыт, может получать на 40% больше меня? После этого открытия я начал раньше уходить из офиса, оправдывая это тем, что мне не платят справедливо. В конце концов, несколько месяцев спустя я ушёл из компании. Она предложила мне контроффер, пообещав повышение и увеличение зарплаты, но тогда я чувствовал себя оскорблённым.

Так почему же компании так поступают? Они намеренно стремятся вызвать у своих сотрудников недовольство? Они действительно думают, что работники не узнают об этой ситуации? Или они считают, что мы всё равно останемся, ведь они одни из самых лучших работодателей в мире? Позже я поработал какое-то время в отделе оплаты труда и увидел, «как делают колбасу», так что хочу поделиться размышлениями о том, почему новым работникам платят больше и почему лучший способ добиться улучшения зарплаты — перейти в новое место.
Читать дальше →
Total votes 110: ↑106 and ↓4+141
Comments274

Сказ о том, как я за год решил более 600 leetcode задач

Level of difficultyEasy
Reading time7 min
Views104K

Всем салют!

Хочу рассказать вам историю о том, как я начинал с уровня — «не могу решить даже 1 easy задачу из 10» до уровня — «могу решить каждую вторую medium задачу» и прошел несколько coding сессий в таких компаниях как Meta, Booking, Careem, Avito...

Читать далее
Total votes 121: ↑112 and ↓9+129
Comments407

Сложность алгоритмов. Разбор Big O

Level of difficultyMedium
Reading time14 min
Views86K

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

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

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

Information

Rating
Does not participate
Location
Dallas, Texas, США
Date of birth
Registered
Activity