Как стать автором
Обновить
17
0
Максим @MaximML

Machine Learning

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

3D моделирование в Python

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

Допустим, вам потребовалось на языке программирования python, построить трёхмерную модель некоторого объекта, затем визуализировать его, или подготовить файл для печати на 3D принтере. Существует несколько библиотек, помогающих в решении этих задач. Поговорим о том, как строить трёхмерные модели из точек, граней и примитивов в python. Как выполнять элементарные приемы 3D моделирования: перемещение, поворот, объединение, вычитание и другие.

Читать далее
Всего голосов 21: ↑21 и ↓0+21
Комментарии26

100 вопросов для подготовки к собесу Data Science

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

Доброго времени суток!

Представляю вашему вниманию чек-лист из 100 вопросов по Data Science. Вопросы покрывают 5 областей: SQL, Python, Machine Learning, статистику и собственно саму DS.

Кому это вообще может быть полезно?

Читать далее
Всего голосов 17: ↑15 и ↓2+13
Комментарии10

Простой и удобный шаблон для bash-скриптов выполняемых по расписанию

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров22K

Хочу поделиться с сообществом простым и полезным шаблоном скрипта-обёртки на bash для запуска заданий по cron (а сейчас и systemd timers), который моя команда повсеместно использует много лет.

Сначала пара слов о том зачем это нужно, какие проблемы решает. С самого начала моей работы системным администратором linux, я обнаружил, что cron не очень удобный планировщик задач. При этом практически безальтернативный. Чем больше становился мой парк серверов и виртуальных машин, тем больше я получал абсолютно бесполезных почтовых сообщений "From: Cron Daemon". Задание завершилось с ошибкой - cron напишет об этом. Задание выполнено успешно, но напечатало что-нибудь в STDOUT/STDERR - cron всё равно напишет об этом. При этом даже нельзя отформатировать тему почтового сообщения для удобной автосортировки. Сначала были годы борьбы с использованием разных вариаций из > /dev/null, 2> /dev/null, > /dev/null 2>&1, | mail -E -s '<Subject>' root@.

Читать далее
Всего голосов 61: ↑58 и ↓3+55
Комментарии4

Sovietwave и Sovietpunk: как романтика несбывшегося переплавила ностальгию по СССР в новый жанр? Часть 3

Уровень сложностиПростой
Время на прочтение9 мин
Количество просмотров12K

В первой части мы рассказали о зарождении неосоветской эстетики, во второй — о её роли в развитии музыки и кино нулевых, популярности в ЖЖ «развесистой клюквы» и даже таких феноменов, как маскоты Двача и увлечение меланхоличной эстетикой городских окраин. Теперь же поговорим о том, как всё это дошло до современных зрелых форм, включая целый музыкальный жанр.
Читать дальше →
Всего голосов 112: ↑106 и ↓6+100
Комментарии34

Дообучение ruGPT-3.5 13B с LoRA

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

Добрый день, уважаемые читатели и авторы Хабра!

Сегодня я рад представить вам подробное руководство по обучению модели ruGPT-3.5 13B с использованием датасетов модели Saiga-2/GigaSaiga, технологии Peft/LoRA и технологии GGML. Эта статья призвана стать полезным и практичным ресурсом для всех, кто интересуется машинным обучением, искусственным интеллектом и глубоким обучением, а также для тех, кто стремится глубже понять и освоить процесс обучения одной из самых мощных и перспективных русскоязычных моделей.

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

Читать далее
Всего голосов 30: ↑30 и ↓0+30
Комментарии27

Битва русов и ящеров за воду Байкала: как пародия на неоязычество покорила Рунет?

Уровень сложностиПростой
Время на прочтение10 мин
Количество просмотров40K

В конце 2023 года русскоязычные соцсети внезапно заполонили мемы про древних русов и ящеров. Виной всему стали видеолекции сгенерированного с помощью нейросетей «профессора Багирова», в которых байки конспирологов-неоязычников о «тайной истории Руси» доводились до восхитительного абсурда. Вскоре пранк вышел из-под контроля: как про Медведа в старые добрые времена, про мемы о ящерах и русах стали писать крупные федеральные порталы и модные журналы, а теперь энтузиасты ещё и анонсировали игру. Почему русы и ящеры так «зашли» именно сейчас, что именно и как они стебут, и чем оказались так интересны и симпатичны аудитории Рунета?
Читать дальше →
Всего голосов 106: ↑91 и ↓15+76
Комментарии48

Как сделать свой AnythingGPT, отвечающий на вопросы так, как вам это необходимо (Python, OpenAI Embeddings, ChatGPT API)

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

Всем привет! Недавно я на практике применил одно интересное решение, которое давно хотел попробовать, и теперь готов рассказать, как своими руками такое можно сделать для любой другой аналогичной задачи. Речь пойдет о создании своей кастомизированной версии ChatGPT, которая отвечает на вопросы, учитывая большую базу знаний, которая по длине не ограничивается размером промта (то есть вы бы не смогли просто добавить всю информацию перед каждым вопросом к ChatGPT). Для этого будем использовать контекстные эмбеддинги от OpenAI (для действительно качественного поиска релеватных вопросов из базы знаний) и сам СhatGPT API (для оборачивания ответов в натуральный человеческие ответы). При этом, также предполагается, что ассистент может отвечать не только на прямо указанные в Q&A вопросы, но и на такие вопросы, на которые смог бы отвечать человек, который ознакомился с Q&A. Кому интересно научиться делать простых ботов, отвечающих по большой базе знаний, добро пожаловать под кат.

Под кат
Всего голосов 12: ↑12 и ↓0+12
Комментарии15

Использование нейросетей для вашей рекомендательной системы

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

Глубокое обучение (Deep learning. DL) - это современное решение многих проблем машинного обучения, таких как компьютерное зрение или недостатки естественного языка, и превосходит альтернативные методы. Последние тенденции включают применение методов DL в рекомендательных системах. Многие крупные компании, такие как AirBnB, Facebook, Google, Home Depot, LinkedIn и Pinterest, делятся своим опытом использования DL для рекомендательных систем.

Недавно NVIDIA и команда RAPIDS.AI выиграли три соревнования с использованием DL: ACM RecSys2021 Challenge, SIGIR eCom Data Challenge и ACM WSDM2021 Booking.com Challenge.

Область рекомендательных систем сложна. В этом посте я сосредоточусь на архитектуре нейронной сети и ее компонентах, таких как эмбеддинг и полностью связанные слои, рекуррентные ячейки нейронной сети (LSTM или GRU) и блоки трансформеров. Я расскажу о популярных сетевых архитектурах, таких как Wide и Deep от Google и Deep Learning Recommender Model (DLRM) от Facebook.

Читать далее
Всего голосов 10: ↑8 и ↓2+6
Комментарии0

Физика в Python с использованием Pymunk

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

Физика. Кто-то её любит, кто-то нет, но определённо это неотъемлемая часть нашего существования. В этой статье мы рассмотрим как самому создавать физические симуляции используя всего 2 библиотеки Python.
К концу статьи мы сделаем интерактивную симуляцию взаимодействия тел и поймём основы использования библиотеки Pymunk.

В этом туториале вы сможете создать симуляцию тел как на гифке сверху!

Читать далее
Всего голосов 41: ↑41 и ↓0+41
Комментарии10

DIY: передаем данные на километры с помощью контроллера Micro::Bit и радиомодуля EBYTE LoRa (Часть 1)

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

Если посмотреть, на какой базе сегодня обучают школьников в кружках робототехники, то окажется, что в большинстве своем это Лего-подобные наборы с контроллером Arduino. Однако в этой статье мы рассмотрим контроллер micro::bit — узнаем, чем он хорош, и создадим учебный проект системы сбора данных.

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

Как я участвовал в соревновании по машинному обучению и занял второе место (и почему не первое)

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

Привет, меня зовут Данил Астафуров, я стажёр в команде лаборатории машинного обучения в Альфа-Банке, работаю над кредитным скорингом. В этом году я поучаствовал в соревнованиях «Цифровой прорыв: сезон искусственного интеллекта», на котором занял второе место. Это единственный технологический проект от АНО «Россия — страна возможностей». 

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

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

Пишем веб сервис на Python с помощью FastAPI

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

Знаю, знаю, наверное вы сейчас думаете «что, опять?!».

Да, на Хабре уже неоднократно писали о фреймворке FastAPI. Но я предлагаю рассмотреть этот инструмент немного подробнее и написать API своего собственного мини Хабра без кармы и рейтингов, зато с блэкджеком и с тестами, аутентификацией, миграциями и асинхронной работой с БД.
Читать дальше →
Всего голосов 24: ↑23 и ↓1+22
Комментарии27

Самообучающийся трекер объектов: как отслеживать цель в изменчивых условиях сцены

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

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

Есть один подход к трекингу, широко известный на западе, но о котором мало пишут по-русски: Incremental Visual Tracker (IVT). Это трекер объектов на основе модифицированного метода главных компонент: он самообучается на ходу и адаптируется к изменчивым условиям.

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

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

OpenCat — создай своего робокотика

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

Если вы фанат робо-собаки от Boston Dynamics и хотели бы завести дома его маленькую копию, вам в помощь OpenCat. Это платформа четвероногих роботов-питомцев на основе Arduino и Raspberry Pi с открытым исходным кодом. Разработчики предлагают всем попробовать создать своего собственного робота-любимца.

Читать далее
Всего голосов 74: ↑72 и ↓2+70
Комментарии13

Параллельные вычисления в Apache Spark

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

Всем привет!

Иногда кажется, что для решения проблемы недостаточно простого выполнения расчётов в Spark и хочется более эффективно использовать доступные ресурсы. Меня зовут Илья Панов, я инженер данных в продукте CVM5 (Customer Value Management торговой сети Пятёрочка) группы X5, и хочу поделиться некоторыми подходами параллельных вычислений в Apache Spark.

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

Ускорение MicroPython

Время на прочтение4 мин
Количество просмотров25K
MicroPython — реализация языка программирования Python для микроконтроллеров, даёт возможность аудитории этого языка, используя знакомый синтаксис и принципы программирования работать с небольшими вычислительными устройствами.

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

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

Но в некоторых аспектах, скорость работы и время реакции важно и встаёт вопрос о целесообразности использования MicroPython. Поэтому я провел небольшое исследование, на которое меня вдохновило видео с выступления создателя MicroPython Damien George. Мне стало интересно как быстро программа, написанная на Micropython будет реагировать на входное воздействие.

Подопытным устройством будет микроконтроллер ESP8266, на плате NodeMcu с MicroPython версии esp8266-2018511-v1.9.4 на борту.


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

Сортировка моих носков с помощью глубокого обучения

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

Можно ли найти пару для носка с помощью машинного обучения? Оказывается, можно. Это небольшой проект по обучению и развертыванию модели распознавания объектов на оборудовании AWS DeepLens для идентификации моих носков.

Читать далее
Всего голосов 7: ↑6 и ↓1+5
Комментарии20

Drag-and-Drop на Python+OpenCV

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

В данной статье расскажу про простой Drag-and-Drop на Python+OpenCV.

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

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

Token Pruning или «Первое слово съела корова»

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

Начнем повествование с приевшейся, шаблонной, клишированной фразы, мотивирующей сжатие нейронных сетей:

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

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

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

Поехали!
Всего голосов 5: ↑5 и ↓0+5
Комментарии0

Поиск объектов на видео с помощью Python

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

В данной статье хочу рассказать про поиск объектов на видео с помощью Python и OpenCV. Помимо обычных видео, можно использовать и камеры.

Полный код и все исходники можно найти на моем Github.

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

Читать далее
Всего голосов 7: ↑6 и ↓1+5
Комментарии4

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность