Обновить
199.05

Алгоритмы *

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

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

Достаточно надёжный и научно обоснованный алгоритм проверки текста на LLM

Время на прочтение5 мин
Охват и читатели15K

Кажется, я изобрёл алгоритм, при помощи которого можно достаточно надёжно отличить авторский текст от LLM‑текста.
Помимо надёжности, алгоритм очень нетребователен к вычислительным ресурсам и способен эффективно работать даже на 8‑битных микроконтроллерах в связке с W5100.

Суть его в следующем. Ваше вычислительное устройство открывает web‑страницу и ищет на ней четырёхзначные числа. Если таких чисел нет или если на странице попадается хотя бы одно число, большее чем 2023, такая web‑страница с вероятностью 50% LLM‑сгенерирована.
Если же все найденные четырёхзначные числа меньше, либо равны 2022, то вероятность AI‑генерации данной страницы равна 1%.

Ниже я расскажу, как мне пришла в голову идея столь простого, но в тоже время эффективного алгоритма.

распознать LLM с первого взгляда

Новости

АУСН: налоговый оазис или цифровой концлагерь для бизнеса?

Уровень сложностиПростой
Время на прочтение6 мин
Охват и читатели7.8K

Автоматизированную упрощённой систему налогообложения (АУСН) подают как максимально простой и удобный режим: никаких деклараций, минимум отчётности, автоматический расчёт налогов. Но с другой стороны, может возникнуть ощущение, что речь идёт не просто о новом специальном налоговом режиме, а о принципиально иной модели налогового контроля.

Я хочу посмотреть на АУСН именно с этой точки зрения: как на систему, к которой государство целенаправленно стремится, и которая, по сути, может стать (а по моим наблюдением уже становится) будущим налогового администрирования для малого бизнеса, а в перспективе и для среднего.

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

Читать далее

Что такое фандинг арбитраж и как сделать автоматический поиск спредов

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

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

Одна из таких стратегий - арбитраж ставок финансирования (funding rate arbitrage). Это безопасная стратегия с небольшим количеством рисков, которая доступна каждому. Из навыков тут при наличии автоматической системы тут нужно лишь умение открывать позиции на разных биржах.

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

Читать далее

Математика парадоксов

Уровень сложностиСредний
Время на прочтение11 мин
Охват и читатели14K

Есть магия: взять число, разделить на ничто, умножить на ничто — и получить исходное. Не иллюзия, а математика уровней. Paradox библиотека — проводник в мир, где ноль бесконечно глубок, бесконечность структурирована, а запретные операции ведут не к краху, а к новым измерениям. Заклинание на C++ прилагается.

Читать далее

Как я пытался создать «конструктор налоговых проверок» для повышения эффективности работы ФНС

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

Для начала — немного контекста. Я не программист и не разработчик. Последние 12 лет я проработал в Федеральной налоговой службе. Начинал с низов, занимался выездными и камеральными проверками (проводил лично и курировал). Два месяца назад я уволился, завел свой телеграм‑канал и теперь работаю в налоговом консалтинге.

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

Читать далее

Скрытые сигналы: как модели учатся тому, чего нет в данных

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

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

Авторы называют этот эффект сублиминальным обучением. Мы можем удалить метки, отфильтровать инструкции и проверить датасет вручную, и всё равно передать модели поведение, которое не планировали передавать.

Читать далее

Почему большинство ритейл-алготрейдеров теряет деньги. Я полез разбираться

Уровень сложностиСредний
Время на прочтение6 мин
Охват и читатели11K

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

Читать далее

Построение иерархии классов для множества объектов информационной модели

Уровень сложностиСредний
Время на прочтение6 мин
Охват и читатели4.9K

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

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

Читать далее

OI‑сигналы и автоматический трейдинг: пишем трейдинг телеграм бота

Уровень сложностиСредний
Время на прочтение6 мин
Охват и читатели9.1K

Цель этой статьи — максимально подробно и практично разобрать реальный Python‑проект автоматического трейдинга. Это рабочий бот, который непрерывно анализирует рынок Binance Futures, ищет сигналы по открытому интересу (Open Interest), применяет набор защитных фильтров, работает с множеством пользователей одновременно, управляется через Telegram‑интерфейс, и при необходимости открывает реальные сделки через API биржи BingX.

Я последовательно разберу всю логику и все функции основного файла main.py, объясняя, как и зачем они реализованы именно так.

Читать далее

«Математика технического долга: как графики в MATLAB показывают накопление скрытых издержек в IT-экономике 2026 года»

Уровень сложностиСложный
Время на прочтение13 мин
Охват и читатели7.5K

Аннотация

Финансовые операции в региональном банке обрабатывает PHP-скрипт 2003 года. Интернет-банк держится на HTML-фреймах, давно исключённых из стандартов. Это не архив веб-технологий — это продакшен 2026 года, полный «технического долга». Статья «Археология кода» на Хабре показала: это не баги, которые можно пофиксить, а скрытая мина замедленного действия под бизнесом. Каждый день работы такой системы — это не явный счёт на рефакторинг, а постоянная утечка денег: на замедление разработки, на исправление неочевидных сбоев, на упущенные возможности.

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

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

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

Читать далее

Новогодний детокс для мозга: почему мы пишем «2025» в 2026-м? (и Matlab-эксперимент)

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

Аннотация

Сегодня 2 января 2026 года . Вы снова написали в дате «2025».
Прекратите себя ругать. Вы только что стали участником массового эксперимента по когнитивной инерции. Ваш мозг — не совершенный процессор, а система с памятью и трением, и он физически не может мгновенно переключиться на новую временную парадигму.

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

В этой короткой статье я покажу, как с помощью нескольких строк кода в Matlab можно описать и наглядно увидеть, как ваше сознание с запаздыванием адаптируется к 2026 году. Бонусом вы получите инструмент для самоанализа: вычислите свой коэффициент «новогодней инерции» и сравните его с гипотетической нормой.

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

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

Но у календаря — иная природа. Он дискретен. Ночь с 31 декабря на 1 января — не плавный переход, а чёткий рубеж, математическая «ступенька». Наш когнитивный аппарат, настроенный на непрерывность, по инерции «проезжает» эту точку разрыва. Мы совершаем классическую ошибку: продолжаем тренд там, где нужен мгновенный пересмотр.

Читать далее

Оптимизируем программный декодер JPEG для архитектуры RISC-V

Уровень сложностиСредний
Время на прочтение7 мин
Охват и читатели9.8K

Графический формат JPEG уменьшает размер изображений без особо заметной для глаза потери качества — упрощая тем самым их хранение и передачу. Студенты из БГУИР — Артём Подгайский, Сергей Буйвид, Юрий Наскевич и Дмитрий Степанчук — в  в рамках Зимней школы RISC-V YADRO изучили работу декодера JPEG для архитектуры RISC-V, нашли пути для его оптимизации и далее расскажут о своем проекте.

Читать далее

Математика постпраздничного выживания: оптимизируем личные финансы и силы после Нового Года с помощью MATLAB

Уровень сложностиСложный
Время на прочтение16 мин
Охват и читатели9.8K

Аннотация

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

2 января 2026 года — не время для паники или пустых обещаний. Это идеальный момент для холодного, математического аудита последствий. Проблема не в отсутствии силы воли, а в одновременной атаке двух системных «врагов»:

Финансовый провал. Ваша функция Budget(t) достигла локального (а для кого-то и глобального) минимума. Остаток стремится к нулю или ушёл в отрицательную область, а входящий поток средств пока не восстановился.

Энергетическая яма. Ваша функция Energy(t) находится в глубоком провале. Режим сна сбит, когнитивные способности притуплены праздничной энтропией, а мотивация асимптотически приближается к оси абсцисс.

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

Сегодня мы не будем заниматься самокопанием или ставить эмоциональные цели. Мы поступим как инженеры и математики. Мы построим в MATLAB простую, но наглядную динамическую модель двойного восстановления. Её цель — наглядно показать, как разные стратегии управления расходами Spend(t) проводят нас из начальной точки [B(0) ≈ 0, E(0) << 1] к целевой области «финансовая стабильность + работоспособность» за минимальное время и с наименьшими психологическими потерями.

Мы промоделируем три сценария, найдем компромиссную кривую и получим математически обоснованный ответ на вопрос: «Как правильно выходить из праздников?».

Читать далее

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

Алтимат фрисби: планируем тренировки в любительской спортивной команде

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

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

Читать далее

Cross-chain консенсус с использованием пороговой подписи FROST ED25519

Уровень сложностиСложный
Время на прочтение14 мин
Охват и читатели9.7K

Всех приветствую. Меня зовут Алексей и я блокчейн инженер.

В этой статье я хотел бы немного рассказать о сложностях построения безопасных cross-chain протоколов и поделиться тем, как мы реализовали собственный механизм консенсуса.

Вкратце: мы разработали децентрализованный протокол, обеспечивающий передачу сообщений и ассетов между блокчейнами TON и Cosmos-EVM блокчейном TAC.

Все cross-chain сообщения, циркулирующие между блокчейнами TON и TAC, “упаковываются” в merkle-дерево, после чего в контрактах консенсуса хранится только merkle-root, который позволяет верифицировать сразу множество сообщений одним значением.

Читать далее

2026: Битик Свободы. Как теорема Мучника предсказывает точку сингулярности данных

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

Аннотация

31 декабря. Тишина. Год 2025, отзвучавший каскадом данных, укладывается в архив. Мы стоим на пороге, за которым — не просто новый год, а точка сингулярности. Точка, математически предсказанная 75 лет назад в тишине кабинета советского математика А.А.Мучника.

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

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

2026-й станет годом, когда мы всем миром упрёмся в этот предел. Годом, когда ценность сместится от умения всё сжать к искусству грамотно потратить этот единственный дарованный бит. Это статья-предупреждение и статья-пророчество. Зажгите экран. Откройте среду. Выполните доказательство.

И встретьте Новый год, зная точный адрес того, что в нём будет по-настоящему новым.

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

Читать далее

Мультиплексирование потоков данных Node.js Streams: пошагово программируем и разбираем задачу

Уровень сложностиПростой
Время на прочтение27 мин
Охват и читатели9.8K

Мне очень нравится идея потоков данных в Node.js - data streams. Они используются всюду: чтение файлов, сетевые запросы, архивирование файлов.

Не путать с потоками выполнения процессов - threads! Это совсем другое!

Есть много хороших статей по философии, теории и применении потоков, Хабр не стал исключением:
Ментальная модель потоков в Node.js

Много раз я сталкивался с необходимостью реализовывать свои потоки данных. И каждый раз я путался с кучей методов: write, push, _write, _read, с кучей событий - end, close, finish. В чем отличие write от _write?! Буквально почти все время, когда я имею дело с потоками у меня открыты доки Node.js - https://nodejs.org/api/stream.html.

Недавно, в моей статье про кастомный транспорт для ShadowSocks мне потребовался функционал передачи разных потоков данных по одному потоку (каналу)данных. Это задача мультиплексирования данных.

Я думаю, что эта задача является хорошей практикой для новичков в Node.js и программистов, любящих кодить всякие алгоритмы.
Во время программирования я встретился с несколькими "программистскими задачами" aka "подводными камнями", которые мне пришлось решить, и это было увлекательно, что и вылилось в данную статью.

Читать далее

И еще немного о QR кодах

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

Изначально я хотел написать статью про коды Рида-Соломона с иллюстрацией на примере работы QR кодов, в процессе подготовки сделал инструмент для визуализации промежуточных этапов построения QR кодов и обнаружил что у меня уже есть достаточно отсутствующего на хабре материала, в связи с чем немного поменял план. Кому не интересно читать, QR с КДПВ сгенерированы с помощью qr-verbose

pip install qr-verbose

Документация (англ.)

Про QR коды на хабре писали много, например одна из самых популярных статей за всё время "Читаем QR код" и куча переводных статей. К сожалению у этих статей есть кое-что общее: если вы попытаетесь прочитать код версии 4 и больше а также некоторые коды версии 3 следуя описанию из статей, то потерпите фиаско. Не верите? Попробуйте прочитать нижний код с КДПВ.

В статье напомню как устроен QR код и какие проблемы начинаются с версии 3, а также надеюсь, что qr-verbose поможет разобраться тем, кто еще не разобрался.

Читать далее

Матрицы и векторы: вычисление обратной матрицы

Время на прочтение7 мин
Охват и читатели10K

Вычисление обратной матрицы, а именно, вычисление алгебраических дополнений и определителя матрицы займёт большое количество машинных ресурсов при квадратной матрицы высокого порядка. В статье описывается решение и приводятся результаты обращения квадратной матрицы методом решения системы AX = E, где A, X, E - квадратные матрицы порядка n, X - обратная A матрица, E - единичная матрица, E_{ij} = \begin{cases}1 & i = j\\0 & i \neq j\end{cases} и методом LU декомпозиции.

Читать далее

Машина, которая никогда не останавливается: как одно предложение поставило предел человеческому познанию

Уровень сложностиСложный
Время на прочтение17 мин
Охват и читатели18K

В 1936 году Алан Тьюринг, пытаясь формализовать пределы вычислений, сформулировал вопрос, навсегда изменивший не только компьютерную науку, но и наше понимание границ познания. Этот вопрос — известная как «Проблема остановки» — звучит обманчиво просто: можно ли создать алгоритм, который, анализируя код любой программы и её входные данные, заранее и безошибочно определит, завершится ли её работа или же она уйдёт в бесконечный цикл? Казалось бы, речь идёт о чисто технической задаче, мечте каждого программиста об идеальном отладчике. Однако ответ Тьюринга, уместившийся в элегантное и почти язвительное доказательство от противного, оказался оглушительным: нет, такой алгоритм принципиально невозможен. В этой статье мы не только разберём суть этого гениального доказательства, которое построено на самореференции и логическом парадоксе, подобном «лжецу», но и визуализируем его ход с помощью наглядного кода в MATLAB, превратив абстрактную логику в динамическую демонстрацию. Мы увидим, как гипотетическая «всезнающая» программа H неминуемо запутывается в сетях, расставленных специально сконструированной программой-провокатором P, приводя к неразрешимому противоречию в любом исходе. Это открытие — не просто академическая курьёзность. Оно устанавливает фундаментальный, алгоритмический предел: существуют чётко поставленные вопросы, на которые мы никогда не получим однозначный «да» или «нет» от любой вычислительной машины. Мы проследим глубокую связь этого результата с теоремой Гёделя о неполноте, обсудим другие неразрешимые проблемы, такие как проблема соответствия Поста, и затронем трезвые последствия для современной разработки, верификации программ и даже для мечтаний о создании всесильного искусственного интеллекта. Эта история — о том, как осознание непреодолимой границы стало одним из самых мощных интеллектуальных достижений человечества, чётко очертив то, что мы можем знать, и указав на бескрайние области того, что мы знать не в силах.

Читать далее
1
23 ...

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