Pull to refresh
17
0.2
Максим Леонидович @MaxAkaAltmer

Специализацией не ограничен

Send message

Разработка требований к ПО с помощью Markdown, Git и Obsidian

Level of difficultyMedium
Reading time9 min
Views5.1K

Пошаговое руководство по использованию Git, Obsidian, Markdown и любимого IDE для разработки требований и трассируемого в них программного кода.

Читать далее

Топ нейросетей для создания и редактирования фото

Level of difficultyEasy
Reading time11 min
Views8.3K

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

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

Читать далее

Не корми Яндекс: зачем мы сделали свою метрику

Reading time10 min
Views6.9K
image

Мы любили Яндекс Метрику. Правда, любили. Издалека.

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

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

Тут-то мы и решили: это пора прекратить, надо делать свою метрику, хватит уже этих граблей. Потому что лоб ещё чесался от предыдущих — self-hosted аналитики PostHog, которая нам доставила изрядно танцев с бубнами. Именно оттуда мы, собственно, и перешли на Яндекс Метрику.

И это была ошибка.
Читать дальше →

Еще один взгляд на LLM: рендеринг под другим соусом?

Level of difficultyMedium
Reading time9 min
Views3.5K

Статья написана без использования нейросетей

Любая нейросеть — это black box. Любая LLM — это black box^2. Однако люди смогли их придумать. И если старые нейронные сети, основанные на перцептроне или его производных, базируются на вполне известных биологических процессах, то трансформеры лежат вне представления о работе мозга. Следовательно, возникает вопрос — почему это сделано именно так?

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

Читать далее

Continuous Thought Machine: как Sakana AI научила модель думать тиками

Reading time12 min
Views1.9K

Аналитический центр red_mad_robot продолжает следить за архитектурными прорывами в мире AI. В этот раз — экспериментальная модель от команды Sakana AI, которая предлагает мыслить не в терминах слоёв, а в терминах времени. Их Continuous Thought Machine (CTM) — попытка встроить в нейросеть внутреннюю динамику, вдохновлённую человеческим мозгом.

Разбираем, как устроена архитектура, что такое «внутренние тики» и зачем нейросети синхронизировать собственные мысли — на примерах из CV, сортировки, Q&A и RL.

Читать далее

Реверсивная энергия сознания: пульс вечного алгоритма

Level of difficultyMedium
Reading time5 min
Views1.2K

Современные ИИ-системы стирают детали опыта и расходуют энергию на постоянное переобучение. Мы предлагаем иной путь: обратимые вычисления, которые сохраняют каждую частицу информации, аккумулируют все сенсорные сигналы и минимизируют внутреннюю “свободную энергию”. Объединив принцип Ландауэра, машины Больцмана, Free-Energy Principle Фристона и обратимые нейросети (RevNet), мы формулируем гипотезу цифрового сознания как перманентного цикла, где информация не теряется, а энергия тратится в теоретическом минимуме.Это манифест к новой архитектуре ИИ, способной к истинной памяти и самооптимизации.

Читать далее

«Красная звезда» Александра Богданова: техноутопия 1908 года с пришельцами, заговорами и электронными сетями

Level of difficultyEasy
Reading time11 min
Views6.1K

Серебристые космические корабли с бортовыми ЭВМ используют антигравитацию и атомную энергию. Мощные вычислительные центры управляют через электронные сети процессами производства и обеспечения жизни целой планеты. Прикидывающиеся людьми инопланетные пришельцы с большими головами и глазами тайно влияют на ход человеческой истории — и их намерения могут иметь весьма зловещую подоплёку. Казалось бы, такой текст никак не мог появиться в мировой литературе раньше 60-х годов ХХ века. Однако научно-фантастический роман Александра Богданова «Красная звезда» был напечатан в Санкт-Петербурге в 1908 году — и по ряду причин оказался надолго забыт. Впрочем, есть мнения, что некоторые из крупнейших советских фантастов читали этот текст и развили некоторые из его идей в своих произведениях.
Читать дальше →

Устанавливаем Qt на Windows без регистрации и vpn (почти). Часть 2. В мире зеркал

Level of difficultyEasy
Reading time4 min
Views5K

Последние время установка фреймворка Qt через официальный qtinstaler у пользователей из России несколько осложнена. Однако, существует ряд альтернативных вариантов получения необходимых библиотек (методы отсортированы от сложного и долгого к простому и быстрому):

Читать далее

Эта молекула возвращает ясность ума. Как при обычном старении, так и при деменции

Level of difficultyEasy
Reading time4 min
Views5K

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

Читать далее

Подборка игр с низкоуровневым программированием

Level of difficultyEasy
Reading time5 min
Views39K

TL;DR

Игры от Zachtronics:

TIS-100, EXAPUNKS, SHENZHEN I/O

Про создание процессора от логических элементов и до написания кода на ассемблере: браузерная бесплатная nandgame.com, более продвинутая Turing complete.

Если Вам нравится какая-то игра из перечисленных - наверно, и остальные тоже подойдут. В каждую из них я наиграл по 30+ часов, получил кучу удовольствия и научился чему-то новому.

Подробности

Использование алгоритма Бойера-Мура-Хорспула в Java с примером решения задачи с LeetCode

Level of difficultyEasy
Reading time4 min
Views3.4K

Алгоритм Хорспула используется для нахождения подстроки в строке. Например, у нас есть строка «The game is over» и подстрока «over». Алгоритм Хорспула вернет значение первого вхождения подстроки «over» в строку «The game is over», а именно 12. 

Фактически, данный алгоритм является упрощенным алгоритмом Бойера-Мура, который, считается работает лучше, чем стандартный алгоритм на случайных текстах, но в худшем случае его скорость равна |needle| * |haystack| вместо 3 х |haystack|. 

Тем не менее, для восприятия, на мой взгляд, он гораздо проще.

Итак, погнали.

Условие задачи с leetcode: https://leetcode.com/problems/find-the-index-of-the-first-occurrence-in-a-string/description/

Как работает алгоритм?

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

Для примера возьмем строку: «aabcdadbc» и подстроку «adb»

Совмещаются строки следующим образом (слева направо):

Читать далее

Сколько стоит 3D-принтер по металлу?

Reading time6 min
Views21K

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

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

Читать далее

Игрушечная имплементация чисел с фиксированной точкой в C++

Level of difficultyMedium
Reading time6 min
Views2.3K

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

Прежде чем писать код, давайте повторим мат. часть, а именно о представление чисел в типах uint8_t, int8_t и особенностях арифмитических операциях над ними. Итак, сложенение двух uint8_t происходит по модулю 256, то есть 1+2 = 3, но 1 + 255 = 0, для int8_t отрицательные значения можно ввести следущим образом: отрицательные числа соответсвуют тем безнаковым числам из uint8_t которые складываясь по модулю 256 дадут ноль, то есть -1 будем в памяти выглядить как 255 (FF). Границы типа int8_t -128...+127, для отрицательных чисел старший бит всегда равен 1. При умножении двух int8_t получаем результат типа int16_t, частное от деления int16_t на uint8_t будет иметь тип uint8_t. Все эти сведения носят аболютно тривиальный характер, но, они необходимы для дальнейшего понимания статьи.

Итак, перейдём к основной идее: что если мы мысленно возьмем значение типа int8_t и скажем, что теперь это не число единиц, а скажем, число 1/4 (проговорим словами: это число показывает сколько четвертых частей в исходном числе)? После чего инкапсулируем эту перменную в поле класса и перегрузим для него основные арифмитичекие операторы и напишем свой operator string() для правильного вывода таких чисел. Ниже, можно посмотреть, что получается из этой идеи.

Смотреть код

Случайные блуждания: связь с резистивным расстоянием (часть 3)

Level of difficultyEasy
Reading time11 min
Views884

Вот мы и добрались до написания программ.
В этой статье напишем скрипты для расчётов резистивного расстояния и для моделирования случайных блужданий. В качестве ЯП был выбран Octave (всё-таки математикой занимаемся).

Читать далее

Расслоение Хопфа и квантовая механика

Level of difficultyMedium
Reading time4 min
Views6.9K

В математике существует очень интересная тема, которая носит название "расслоение Хопфа". В 1931 году Хайнц Хопф опубликовал свою работу об открытой им в топологии конструкции, получившей в истории название "Hopf fibration" - расслоение Хопфа. Суть этой конструкции, была основана на геометрических разработках Уильяма Кингдона Клиффорда.

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

В данной небольшой статье рассмотрены некоторые основные моменты связанные с моим сайтом на котором рассматривается визуализация расслоения Хопфа.

Читать далее

Метод главных компонент (PCA). Принцип работы и реализация с нуля на Python

Level of difficultyHard
Reading time8 min
Views31K

Метод главных компонент (Principal Component Analysis или же PCA) — алгоритм обучения без учителя, используемый для понижения размерности и выявления наиболее информативных признаков в данных. Его суть заключается в предположении о линейности отношений данных и их проекции на подпространство ортогональных векторов, в которых дисперсия будет максимальной.

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

Читать далее

DIY клавиатура из фанеры

Level of difficultyEasy
Reading time8 min
Views16K

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

Читать далее

Минималистическая модель живой клетки в браузере

Reading time8 min
Views3.9K

Вы когда-нибудь задумывались, как действуют клетки — элементарные единицы живой материи? Я программист, но одновременно увлекаюсь клеточной биологией. Поэтому я решил смоделировать работу простейшей клетки на TypeScript. Вообще, клетки невероятно сложны; по оценкам учёных, человеческая клетка в среднем содержит 100 триллионов атомов. По-прежнему очень мало известно о том, как все эти биомолекулы взаимодействуют в клетке, поэтому в точности смоделировать работу клетки невозможно.

Размышляя на эту тему, я нашёл статью Fundamental behaviors emerge from simulations of a living minimal cell (Фундаментальные виды поведения возникают на основе моделирования простейшей живой клетки). Опираясь на кинетические параметры, авторы статьи создали модель взаимодействия молекул и химических реакций между ними в простейшей известной клетке. Затем эта симуляция запускается, и на её  основе можно наблюдать такие процессы как репликация ДНК, метаболизм и синтез белков.

Читать далее

Baldur и Thor снова в игре: Путь к совершенному ПО

Level of difficultyMedium
Reading time16 min
Views2.3K

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

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

Baldur превосходит все существующие подходы, он может самостоятельно полностью за раз доказывать 47.9% теорем, и даже этот результат – не предел.

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

Приятного прочтения :)

Читать далее

Multipath TCP в Go

Level of difficultyEasy
Reading time4 min
Views5.7K

По данным mptcp.io на 1 ноября 2023 года в глобальной сети функционируют около 350 тысяч ресурсов с поддержкой Multipath TCP (далее - MPTCP).

И можно еще добавить легко и непринужденно.

Далее под катом
1

Information

Rating
3,506-th
Location
Россия
Registered
Activity