Обновить
206.93

Алгоритмы *

Все об алгоритмах

Сначала показывать
Порог рейтинга
Уровень сложности

Придумал расширение для Chrome и устранил шахматных читеров

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

Поисковая выдача по запросу «chrome extension for cheating in chess» переполнена. Инструментов для нечестной игры — десятки.

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

Удивительный дисбаланс, не правда ли?

Обо всем по порядку

Этические аспекты использования искусственного интеллекта в промышленности

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

Аннотация. Статья посвящена анализу этически вызовов, возникающих при интеграции систем искусственного интеллекта (ИИ) в промышленность. На основе ключевых международных и национальных документов — Рекомендации по этике ИИ ЮНЕСКО, Спецификации этики искусственного интеллекта нового поколения Китая, Закона Европейского Союза об искусственном интеллекте и российского Кодекса этики в сфере ИИ — рассматриваются основные риски и принципы, которые должны лежать в основе проектирования, внедрения и эксплуатации промышленных ИИ-систем на всех этапах их жизненного цикла. Особое внимание уделяется вопросам безопасности, прозрачности, объяснимости и подконтрольности человеку промышленных ИИ-систем в контексте Индустрии 4.0.

Читать далее

[Алгоритмы, Задачки] Элегантно и идиоматично обходим двоичное дерево поиска на Python 3

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

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

Читать далее

GigaMemory: научи ИИ «помнить всё» с AI Journey Contest 2025

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

Мы всё чаще делегируем ИИ-ассистентам рабочую рутину и бытовые вопросы. Но во взаимодействии с ними есть существенная проблема: модели не помнят пользователя. Между сессиями теряются имя, контекст работы, желаемые ограничения и предпочтения, значительно влияющие на то, что и как стоит ответить пользователю. В итоге диалог каждый раз начинается «с нуля», а ответы звучат усреднённо. Это снижает эффективность и подрывает доверие: когда ассистент не помнит важное о вас, он превращается в поисковик с красивыми фразами.

Мы в команде RnD для B2C SberAI хотим это исправить. Представляем вашему вниманию задачу GigaMemory: global memory for LLM. Мы предлагаем участникам построить долгосрочную персональную память для языковой модели — систему, которая хранит, обновляет и надёжно извлекает знания о конкретном пользователе. Привычки, предпочтения, ограничения и прочие факты о пользователе, которые могут пригодиться в дальнейшем общении.

Цель — научить ИИ отвечать не «в среднем по больнице», а исходя из вашего реального контекста: от прошлых задач на работе до семейных дат и спортивных планов.

Читать далее

Бенчмарк lakehouse-движков, часть 1: StarRocks и Doris падают под нагрузкой, Presto аутсайдер, CedrusData быстрее всех

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

В этой статье мы детально рассмотрим поведение аналитических движков при выполнении отдельного TPC-DS запроса на одном узле.

Это глубоко технический текст, в котором мы увидим, как (1) три родственных движка (Impala, StarRocks и Doris) с трудом справляются с конкурентной нагрузкой, (2) разработчики StarRocks и Doris затачивают дефолты своих движков под бенчмарки, (3) Trino реализует эффективный шедулер запросов, но имеет ряд дефектов, ухудшающих производительность, (4) Presto строит хорошие планы запросов, но демонстрирует катастрофически плохую производительность из-за отсутствия буквально одной фичи. Ну а победит, конечно, наш движок CedrusData.

Хочу, чтобы подгорело

И в дождь, и в снег: как мы детектируем загрязнения на лидарах автономного транспорта

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

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

Читать далее

Рендеринг трёхмерных фрактальных множеств: от губки Менгера до Мандельбокса, часть 2

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

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

Меня всё также зовут Андрей Гринблат, и в первой части я начал рассказывать о такой технологии, как ray marching, и о нормированных пространствах. В этой части начнём с построения простых геометрических фракталов — губки Менгера и тетраэдра Серпинского, затем построим IFS-фракталы, рассмотрим технику орбитальных ловушек, и в завершение построим фрактал «Ящик Мандельброта», или Мандельбокс.

Читать далее

Как перестать верить в сказки и начать доставлять вовремя?

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

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

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

Как доставлять вовремя

Предобусловливание и импульс в оптимизации: взгляд на алгоритмы PHB/PN от исследователей Яндекса

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

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

Для ускорения сходимости широко применяются методы с механизмом импульса (momentum): классический метод Поляка — Heavy Ball (HB) — и метод Нестерова (ускоренный градиент). Оба эти метода используют идею накапливать «инерцию» градиента, благодаря чему могут двигаться по направлению оптимума быстрее обычного градиентного спуска. 

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

Всем привет! Меня зовут Степан Трифонов, я аналитик‑разработчик в Яндекс Пэй. Недавно мы с коллегами, Леонидом Левиным и Савелием Чежеговым, опубликовали научную статью Incorporating Preconditioning into Accelerated Approaches: Theoretical Guarantees and Practical Improvement, где ввели предобусловленные версии классических ускоренных методов — Preconditioned Heavy Ball (PHB) и Preconditioned Nesterov (PN) — и доказали для них оценки сходимости при весьма общих допущениях на предобусловливающую матрицу. Также мы провели численные эксперименты, которые продемонстрировали практический выигрыш новых алгоритмов по сравнению с обычными (непредобусловленными) методами HB и Нестерова.

Читать далее

Наука для бизнеса: что внедрять завтра (анализ 134 195 научных работ 2025 года)

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

Чтобы понять, какие технологии будут определять рынок завтра, компании опираются на прогнозы/отчёты аналитиков или анализируют патенты. Но есть источник, который часто опережает и патенты – научные публикации. Далее о том, как я проанализировала 134195 научных статей 2025 года, чтобы ответить на вопрос, на какие технологии делать ставку прямо сейчас.

Читать далее

Python шпильки: как заменить многоэтажные if-else на изящный словарь функций

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

Блог Михаила | Python | Разработка | Best Practices

"Всем привет! Меня зовут Михаил, я веду Telegram-канал «Python Шпильки», где делюсь изящными приемами программирования. Сегодня хочу показать один из самых полезных паттернов..."

Читать далее

TorusCSIDH: постквантовая криптография для Bitcoin уже сегодня

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

Мы представляем TorusCSIDH — полностью реализуемую постквантовую криптосистему на основе изогений суперсингулярных кривых. Она совместима с Bitcoin, не требует хардфорка и защищена не только алгеброй, но и оригинальным геометрическим критерием, основанным на структуре графа изогений.

Читать далее

TorusCSIDH: постквантовый аналог ECDSA с топологическим критерием безопасности

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

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

Читать далее

Ближайшие события

Как написать собственный класс линейной регрессии для маленьких

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

В этой статье показан простой способ создания собственного класса линейной регрессии с использованием стохастического градиентного спуска. Будет представлен легкий и понятный код с реализацией основных методов: fit, predict и score. Статья будет полезна тем, кто хочет вкратце разобраться, как работает класс LinearRegression из библиотеки sklearn. Также материал подходит для участников курса программирования "Школа 21".

Читать далее

Внедрить ИИ-ть или рассказать, доказать и показать

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

Очень многие хотят начать именно с предиктивных моделей — ведь всем хочется знать, что будет впереди, чтобы сделать правильный выбор сегодня.
Но здесь кроется опасность: люди часто довольствуются теми данными, которые у них есть, считая, что этого достаточно для прогноза. А на самом деле — это иллюзия.
Построить адекватную предиктивную модель на исторических данных за 2 года — практически невозможно. Особенно если данные разреженные, неполные или не покрывают полный цикл.
Даже если модель покажет высокую точность (например, 95% accuracy), она может быть неадекватной — то есть не отражать реальную картину. Придумал этот термин для пояснения глубины предиктивных исследований (предиктивный происходит от английского predict – «предсказывать, пророчить)
Что значит «адекватная точность»? Это...

Это когда модель не просто точно ...

Scaled Rank Fusion — объединяет значения из нескольких списков с учётом масштаба

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

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

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

Rank Fusion широко применяется в информационном поиске, мультимедийном поиске, гибридных системах поиска, системах на основе модели Retrieval Augmented Generation (RAG), а также в задачах ансамблевого обучения.

В статье описан новый алгоритм семейства Rank Fusion, а может и не новый, дайте знать.

Читать далее

Вышел Python 3.14. Насколько он быстр?

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

В ноябре 2024 года я написал пост «Действительно ли Python такой медленный?», в котором протестировал множество версий Python и отметил стабильный прогресс производительности языка.

Сегодня девятое октября 2025 года, прошла всего пара дней после официального релиза Python 3.14. Давайте снова запустим бенчмарки, чтобы проверить, насколько быстра новая версия Python!

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

Читать далее

Делим кастрюлю компота на ноль. Что получится? Спойлер: ничего хорошего

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

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

Представим, что у нас есть кастрюля компота объемом 10 литров (10 000 мл):

Читать далее

Регулярная катастрофа и как её избежать. Подход к регулярным выражениям

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

Салют, Хабр!

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

Читать далее

Seedream v4 — платный конкурент Nano Banana. Зачем он тогда нужен? И как использовать бесплатно + Гайды

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

Да, Seedream v4 от ByteDance - доступен только платно. Тогда зачем он нужен, если есть Nano Banana? Разбираемся!

Читать далее

Вклад авторов