Обновить
39
0
sysprg@sysprg

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

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

Системный абсурд: как бюрократия и алгоритмы подменяют смысл

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

«Системы логичны, но не разумны» 

Про конфликт между рациональностью системы и человечностью её участников, абсурдные правила, бунт и то можно ли без правил и регламентов обойтись. От опыта взаимодействия с HR и бюрократией корпоративной- до Камю и Кафеки.

Читать далее

Дизеринг в графике и вычислениях: математическая элегантность сеток с низким расхождением

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

На хабре уже пару раз упоминался дизеринг, но в довольно узком ключе. Здесь, я хоть и буду делать упор на применение дизеринга в графике, я хочу продемонстрировать его недооценённость, из-за чего его снова и снова переизобретают.

Читать далее

Логистическая и Softmax-регрессии. Основная идея и реализация с нуля на Python

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

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

Читать далее

Метод Уэлфорда и многомерная линейная регрессия

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

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


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


Читать дальше →

Линейная регрессия. Основная идея, модификации и реализация с нуля на Python

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

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

Читать далее

Увидеть и понять цвет

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

Можно ли белый свет собрать из двух монохроматических источников? Может ли цвет быть относительным? Умеет ли зрение вычитать цвета? Если типов колбочек три, почему цветовое пространство плоское? Можно ли «на глаз» оценить цветопередачу белого света?

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

Читать далее

Незаявленные проблемы микросхемы SG3525

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

Приветствую уважаемые читатели. В ходе своей основной деятельности часто приходится проектировать различные DC/DC преобразователи на разные напряжения и мощности. Одной из самых распространенных микросхем помимо TL494 является разработанная фирмой Texas Instruments микросхема SG3525.

Немного информации о данной микросхеме...

Читать далее

Метод Монте-Карло в алгоритме обратного распространения ошибок с параллельными вычислениями

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

Был проведён эксперимент для проверки, можно ли существенно уменьшить объём вычислений в алгоритме обратного распространения ошибок с параллельными вычислениями за счёт использования на каждом шаге обучения только части обучающих образцов, выбранных случайным образом, а также определение того, какой выигрыш по времени даст использование языка Ассемблера в самых внутренних циклах (в программе, написанной на языке C++).

За основу был взят классический персептрон и алгоритм обратного распространения ошибок, основанный на методе градиента, который объяснялся на курсе Mashine Learning Стэнфордского университета. Он был доработан, чтобы можно было использовать параллельные вычисления. Была написана программа на языке C++ для Linux, её функции (создание, обучение нейронной сети, распознавание данных, закачка больших файлов на сервер и т. п.) вызываются из программ, написанных на любых языках программирования, по протоколу Socket.

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

Читать далее

Обратное распространение ошибки… на пальцах… без формул

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

Общая суть метода «обратного распространения ошибки» от простого примера до создания полносвязной нейронной сети.

Читать далее

Не вздумайте переписывать код? В смысле?

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

В очередной раз кто-то на ЛинкедИне решил подурачиться. Говорит, мол, Илон Маск решил переписать программное обеспечение службы соцобеспечения США на новый лад. Ай-яй-яй, какой же он дурень дуболомный — не переписывайте ничего, что работает уже 40 с лишним лет.

Действительно, код службы соцобеспечения написан на COBOL, и чтобы найти программистов, которые его могут поддерживать, надо долго и упорно их искать, выплачивая им по пол-ляма в год.

Но у нас на дворе сейчас 2025 год.

Читать далее

Библиотека для кэширования Caffeine: анализ кода

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

То и дело, прожигая время за чтением reddit, я натыкаюсь на очередной пост, в котором упоминается метод S3 FIFO и говорится, что он лучше LRU (вытеснение реже всего используемых значений) — потому, что даёт более низкий процент промахов кэша. Видные компании, в частности, RedPandas, Rising Wave и Cloudflare уже внедрили S3 FIFO у себя на различных мощностях, что только подогрело мой интерес к нему. Кэши — чертовски интересная тема, а по работе мне приходится сильно полагаться на работу с кэшами при обслуживании нескольких сервисов. Так что я был уверен, что рано или поздно мне потребуется протестировать S3 FIFO или, как минимум, удостовериться, что я понимаю ключевые идеи, заложенные в этой технологии.

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

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

Читать далее

Более быстрые хеш-таблицы: претенденты на место SwissTable

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

24 ноября 2021 года на сайте ArXiv.org была опубликована научная статья «Крошечные указатели» (Tiny Pointers) с описанием новой структуры данных — «крошечных» указателей, которые указывают путь к фрагменту хранимых данных и занимают меньше памяти, чем традиционные указатели.

Осенью 2021 года эту статью заметил Андрей Крапивин (Andrew Krapivin), студент Ратгерского университета в Нью-Джерси, и не придал ей особого значения, пишет Quanta Magazine, журнал о последних достижениях в математике (перевод статьи на Хабре). Только через два года он нашёл время, чтобы внимательно ознакомиться с материалом. И понял, насколько это прорывное изобретение, если применить его для оптимизации хеш-таблиц.

Данная тема уже упоминалась на Хабре, но заслуживает более подробного обсуждения.
Читать дальше →

Измерительный мост Уитстона — электронные весы

Уровень сложностиПростой
Время на прочтение8 мин
Охват и читатели7.8K
Наверняка вы видели на принципиальных схемах характерную ромбовидную структуру. Схема электрического моста содержит в себе элегантную красоту. А содержащийся в ней технический принцип достоин отдельной статьи. Пару лет назад, когда я разобрался и понял суть, случилось мини-озарение, волшебством которого хочу поделиться с вами.


Посмотрите на схему, левая и правая части электрически эквивалентны. Измерительный мост, или мост Уитстона, состоит из двух параллельно включённых резистивных делителей напряжения. На анимации показан случай, при котором потенциалы двух средних точек обоих плечей моста равны. Равновесное состояние достигается при равенстве соотношений R2/R1 и R4/R3.

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

Феномен BYD. Как китайский профессор вырастил автомобильного монстра

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

За 30 лет BYD прошёл путь от небольшого производителя аккумуляторов до главной автомобильной компании Китая. BYD растёт в полтора раза каждый год, обогнал Tesla и дышит в спину Toyota и Volkswagen. Разбираемся, за счет чего этот китаец так разогнался.

Читать далее

Луна почти такая же старая, как и Земля

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

Удар, в результате которого образовалась Луна, поразил практически новорожденную Землю.

Новые исследования пород, доставленных Аполлонами, отодвигают формирование Луны более чем на 100 миллионов лет назад.

20.03.2025, Пол Вусен, science.org (журнал Science)

Читать далее

Go 1.24 — swiss tables новая реализация map

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

В Go 1.24 встроенная реализация map была полностью переработана и теперь основана на Swiss Table. В этой статье мы рассмотрим, какие преимущества даёт Swiss Table по сравнению с традиционными хеш-таблицами.

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

Читать далее

Мой 16-месячный эксперимент с теанином

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

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

Многие люди пробуют теанин и сообщают, что он вау, отлично помогает при СДВГ, излечил мою (социальную) тревожность или меняет мою жизнь. И это не только сообщество энтузиастов эффекта плацебо. Эта ветка на Hacker News полна положительных отзывов, а Гверн Брэнвен регулярно его использует.

Далее

Как создать универсальную лазерную установку, излучающую луч ВСЕХ длин волн?

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

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

Однако что, если я скажу вам, что абсолютно реальна универсальная лазерная установка, которая может излучать вообще все* возможные диапазоны длин волн?! О_о

Причём, что интересно, управление тем, какую длину волны излучать, производится всего лишь электрическим током и больше ничем, что очень привлекательно…
Читать дальше →

Проектирование корпуса для электронной самоделки

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

Хочу поделиться подходом к проектированию корпуса для электронной самоделки.

Вам потребуется немного свободного времени, установленные OpenSCAD, Kicad и доступ к 3D принтеру чтобы материализовать результат.

Читать далее

Информация

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