Pull to refresh
29
0
Алексей @MarkWatney

Пользователь

Send message

Важнейшая модель теории вероятностей

Level of difficultyMedium
Reading time14 min
Views14K

Что объединяет частицу в воде, биржевой курс и кота Барсика, бродящего по району в поисках ларька с рыбой?


Всё это — примеры случайного блуждания. Эта простая модель из теории вероятностей помогает описывать самые разные явления: от диффузии молекул до принятия решений и работы алгоритмов. Она кажется интуитивной — но за ней скрывается множество нетривиальных и красивых свойств.

Мы начнём с истории открытия броуновского движения — от наблюдений Роберта Броуна до формулы Альберта Эйнштейна, которая связала наблюдаемое явление с атомной гипотезой. Покажем, как идея случайного движения превратилась из гипотезы в надёжный инструмент научного анализа.

Затем перейдём к математической модели случайных блужданий, разберём, как она устроена и где используется. Научимся с ней работать: найдём среднюю скорость удаления, обсудим задачу о разорении игрока и вернёмся к нашему коту Барсику.

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

В финале — красивая задача для самостоятельного решения: её можно решить математически или запрограммировать симуляцию. Выбирайте способ по вкусу.

Читать далее

Релятивистская трассировка лучей

Level of difficultyHard
Reading time14 min
Views13K

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

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

Читать далее

DiffSplat: генерация 3D-объектов с помощью диффузионных моделей изображений

Level of difficultyMedium
Reading time7 min
Views2.2K

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

Авторы DiffSplat предлагают подход, который решает эти проблемы элегантно и, что более важно, быстро! Вместо того чтобы создавать 3D-модели с нуля, создатели используют уже предобученные text-to-image модели. И просто «перепрофилируют» их для работы с 3D-гауссовыми сплатами.  

Читать далее

Машинное обучение: Наивный байесовский классификатор. Теория и реализация. С нуля

Level of difficultyEasy
Reading time17 min
Views5.6K

В этой статье я привел основные сведения о трех основных видах НБК и показал реализацию каждого.

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

Читать далее

Решаем проблему устаревания кэширующих серверов. Смотрим на телевизоре. Не VPN

Reading time3 min
Views106K

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

В качестве нашего «кэширующего» сервера будем использовать дешевый одноплатный компьютер MangoPi MQ-Quad (или другой аналогичный), стоимостью не более $29.

Читать далее

Пишем свою Diffusion модель с нуля

Level of difficultyMedium
Reading time12 min
Views16K

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

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

Если вам тоже интересно, то читайте дальше

Читать далее

Рендеринг текста без текстур

Reading time9 min
Views5.3K

Иногда все, что требуется — быстро вывести какой‑то текст в Renderpass. Традиционно отрисовка текста требует отрендерить все возможные символы шрифта в атлас, затем привязать полученный атлас как текстуру и затем отрендерить каждый глиф, рисуя треугольники, каждый из которых должен соотноситься с нужным глифом из текстуры атласа шрифта.

Так делает imgui, равно как и все, кто использует stb_truetype. Сам процесс приятно напоминает процесс наборного производства на физических станках.

Причудливо, правильно, но в то же время напряжно.

Если нам нужно просто вывести какое‑то сообщение для дебага? Нет ли какого‑либо более простого метода?

В данной статье я опишу метод бестекстурной отрисовки дебаг‑текста. Вдобавок, отрисовка будет производиться в один вызов draw.

Читать далее

Cтатистика Байеса в ML для самых маленьких

Level of difficultyEasy
Reading time19 min
Views10K

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

🔜 Как вы будете рекомендовать девушек в анкетах знакомств, если не вычислите статистическую вероятность симпатии от огонечков на шести сторисах?

🔜 Как вы будете подсчитывать успех кражи внутренних данных компании в обход NDA?

🔜 Может ограбить банк не такая уж плохая идея с вашими вводными данными?

Байес — это палочка-выручалочка.

По статистике 90% мужчин и девушек, что знают метод МСМС, лучше пахнут и получают на 100% больше взаимных симпатий.

Хотите также? — читайте нашу статью по Байесовской статистике в ML для самых маленьких.

Читать далее

50 оттенков линейной регрессии, или почему всё, что вы знаете об A/B тестах, помещается в одно уравнение

Reading time18 min
Views27K

Всем привет! A/B тестирование уже давно стало стандартом в проверке гипотез и улучшении продуктов в X5. Но, как ни странно, многие из «модных» техник, которые применяются в A/B тестировании, на самом деле, не что иное, как вариации старой доброй линейной регрессии. 

Основная идея здесь проста: правильное добавление новых переменных в модель помогает лучше контролировать внешние факторы и уменьшать шум в данных. Это позволяет точнее оценить эффект от воздействия и объединить разные статистические подходы, которые обычно рассматриваются отдельно. Но почему это работает? Почему всё сводится к тому, что добавление переменных помогает объединить, казалось бы, разрозненные техники? 

Чтобы разобраться в этом, для начала вспомним основы линейной регрессии, после чего перейдём к различным статистическим методам снижения дисперсии и покажем, как они сводятся к линейной регрессии. Затем объединим все техники вместе и на примере покажем, как они работают на практике.

Читать далее

Импортозамещение по-русски на 146%. AR-очки

Level of difficultyEasy
Reading time6 min
Views14K

Меня зовут Илья Зеленский. Помните басню Крылова «мартышка и очки»? Смысл басни был, как важно владеть знаниями и правильно применять их. Поэтому я хочу поделиться своим опытом запуска действительно сложного продукта.

Читать далее

Оптический поток: укрощение движения с помощью математики

Level of difficultyMedium
Reading time7 min
Views6.3K

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

Читать далее

Plane-based геометрическая алгебра для описания движения тел

Level of difficultyHard
Reading time20 min
Views6.4K

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

Читать далее

Надежный обход блокировок в 2024: протоколы, клиенты и настройка сервера от простого к сложному

Level of difficultyMedium
Reading time46 min
Views341K

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

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

Читать далее

Нейронные сети для планирования движения беспилотных автомобилей

Reading time16 min
Views19K

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

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

Под катом — детальный разбор логики движения беспилотника, примеры свёрточных и трансформерных архитектур моделей для предсказания движения и много формул для расчёта вероятных траекторий других машин и пешеходов. А ещё я расскажу, в чём преимущества машинного обучения перед эвристиками и чем может помочь Reinforcement Learning.

Читать далее

Как утереть нос NumPy с помощью двумерного БПФ

Reading time5 min
Views10K

Двумерное преобразование Фурье — один из важнейших алгоритмов компьютерной науки этого столетия. Он нашел широкое применение в нашей повседневной жизни — от фильтров Instagram до обработки MP3-файлов.

Наиболее частой реализацией, используемой рядовым пользователем, иногда даже неосознанно, является адаптация из NumPy. Однако, несмотря на популярность, их алгоритм не является самым эффективным. С помощью нескольких простых манипуляций и статьи 2015 года мы обошли алгоритм NumPy по производительности аж на 30-60%. Основная проблема этой реализации заключается в том, что она изначально основана на слабом с точки зрения производительности алгоритме.

По своей сути алгоритм, реализуемый NumPy, является поочередным применением обычного одномерного БПФ (FFT) к двум измерениям, что очевидно не может быть оптимальным решением.

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

Читать далее

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

Level of difficultyEasy
Reading time26 min
Views309K

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

Читать далее

От логики и риторики до теории множеств и матанализа. Полезные материалы по Data Science и машинному обучению

Level of difficultyMedium
Reading time21 min
Views15K

Привет, Хабр! Меня все еще зовут Ефим, и я все еще MLOps-инженер в отделе Data- и ML-продуктов Selectel. В предыдущей статье я кратко рассказал про основные ресурсы, которые могут помочь начинающему специалисту ворваться в бурлящий котел Data Science. Но после выхода материала я понял, что задача систематизации знаний гораздо сложнее, чем казалось. Настолько, что проиллюстрировать ее можно только табличкой ниже:


В этом тексте хочу исправиться: разбить знания по Data Science и машинному обучению на несколько теоретических блоков и дать больше полезных материалов. Подробности под катом!
Читать дальше →

Собираем русскоязычный лонгформер шаг за шагом

Reading time8 min
Views9K

Привет, меня зовут Андрей Казначеев, я NLP engineer в компании MTS AI. В этой статье я расскажу, как создал лонгформер для русского языка. Все началось с того, что мне подкинули задачу по классификации длинных диалогов. Тексты длинные, а большинство популярных моделей имеют строгое ограничение по длине входной последовательности. Хотелось сделать решение умнее, чем просто побить текст на куски, однако ничего готового для русского языка не нашел. Тогда я задумался, а так ли сложно сделать свою собственную версию лонгформера под русский язык? Оказалось, совсем не сложно.

Читать далее

Generative AI. Как программистам держать нос по ветру

Level of difficultyMedium
Reading time11 min
Views14K

Вряд ли найдётся тот, кто ещё не знаком с ChatGPT, Midjourney, StableDiffusion - такая популярность говорит сама за себя. Хайп вокруг генеративного искусственного интеллекта (далее - ИИ) не утихает и уже начинает немного надоедать. Но мы, как разработчики, должны оставаться в курсе событий и принимать реальность такой, какая она есть.

А реальность такова:

• Использование Copilot и его аналогов, ChatGPT и других генеративных нейросетей увеличивает вашу продуктивность.

• Бизнес активно ищет возможности оптимизировать процессы или внедрить новые фичи на основе генеративного ИИ.

Давайте разберём каждое из этих утверждений.

Читать далее

Information

Rating
Does not participate
Location
Санкт-Петербург, Санкт-Петербург и область, Россия
Registered
Activity