Pull to refresh
4
0
Send message

KAN: Kolmogorov–Arnold Networks

Level of difficultyHard
Reading time75 min
Views6.9K

Предлагаю вашему вниманию полный перевод статьи об алгоритме нейронной сети на основе теоремы Колмогорова Арнольда, опубликованной исследователями из Massachusetts Institute of Technology, California Institute of Technology, Northeastern University и The NSF Institute for Artificial Intelligence and Fundamental Interactions.
В настоящее время в на просторах интернета есть лишь посты на основе данной статьи с интригующими названиями типа «Новый убийца нейросетей? Сеть Колмогорова Арнольда (KANs)» или «Исследователи разработали принципиально новую архитектуру нейросетей, которая работает лучше персептрона» и т. п. Для лучшего понимания это темы обратимся к первоисточнику, опубликованному не так давно — в апреле 2024 года.

Читать далее
Total votes 33: ↑31 and ↓2+35
Comments1

Simba: Симуляция десятков тысяч частиц в потенциале Леннарда-Джонса на чистом Python с GPU-ускорением

Reading time9 min
Views19K

Добрый день, уважаемые хабровчане.

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

Самостоятельно потыркать проект можно вот тут: https://github.com/r-aristov/simba-ps

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

В глубины симуляции
Total votes 136: ↑136 and ↓0+136
Comments78

Электросмачивание как интересный эффект для применения в самоделках и не только

Level of difficultyMedium
Reading time10 min
Views9.4K
Картинка — youtube-канал GaudiLabs, University of Cincinnati, Etulipa, Image Sensors World

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

Сфера применения этого эффекта весьма широка и позволяет использовать его как профессиональных целей, так и для разнообразных самоделок.
Читать дальше →
Total votes 59: ↑58 and ↓1+84
Comments10

Импортозамещение ПО в авиации. Почему не взлетаем?

Level of difficultyEasy
Reading time13 min
Views51K

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

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

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

Читать далее
Total votes 146: ↑136 and ↓10+157
Comments220

О простых вещах-сложно. Письмо химика 3D-печатнику. Растворители для пластмасс и защита от них

Reading time15 min
Views103K
DIY посвящается...

Одним из наиболее часто задаваемых вопросов в моей консультационной практике являются вопросы связанные с растворением/склейкой пластмасс с помощью всевозможных органических растворителей. В последнее время произошел настоящий всплеск интереса к химии высокомолекулярных соединений, связанный с появлением доступных 3D принтеров и необходимостью ориентироваться в «чернилах» для них (т.е. полимерных нитях-филаментах). Лишний раз убеждаюсь в том, что ни один, даже самый продвинутый «музей науки» с эффектным шоу не может так заставить IT-шника интересоваться пластмассами, как собственный 3D-принтер. Так что, читатель, если тебе хоть раз приходилось думать чем склеить пластмассу, которую не клеил default-ный суперклей, если мучали сомнения по поводу растворения поддержек свежеотпечатанной детали, да и просто интересно, чем можно отмыть клей от магазинного ценника на подарке — прошу под кат. Также настоятельно рекомендую страницу отправить в закладки не только тем, кто часто занимается склеиванием пластмасс, но и всем тем, кому часто приходится работать с различными растворителями/разбавителями. Делалось для себя — подарено Хабру!

Читать дальше →
Total votes 115: ↑114 and ↓1+113
Comments194

Как я разработал квадрокоптер на ESP32 с нуля (ушло 4 года)

Level of difficultyMedium
Reading time12 min
Views57K

При сборке квадрокоптеров и других БПЛА обычно используют готовую плату полетного контроллера, содержащую все необходимые датчики и периферию, и готовую полетную прошивку, например, Betaflight, ArduPilot или PX4. Полетный контроллер управляет моторами квадрокоптера и обеспечивает стабильный полет.

Занимаясь БПЛА с 2016 года, я решил разобраться в устройстве полетных контроллеров максимально глубоко и создать квадрокоптер с нуля, не используя готовый полетный контроллер и готовый софт. Спустя долгое время разработки мне удалось это сделать. Я написал прошивку с максимально простым исходным кодом и выложил ее на GitHub. В этой статье я расскажу о теории и практике разработки полетного софта для квадрокоптера и проиллюстрирую это на примере своего дрона на базе микроконтроллера ESP32, который можно увидеть на картинке выше.

Читать далее
Total votes 312: ↑312 and ↓0+371
Comments132

Полулегальный радиоконструктор с Aliexpress

Level of difficultyEasy
Reading time11 min
Views64K


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

Для любителей электроники и радио такой конструктор — отличная возможность подарить детям незабываемые позитивные моменты и привить интерес к технике. Но есть и нюансы. Впрочем, как и всегда.
Читать дальше →
Total votes 42: ↑38 and ↓4+42
Comments36

Поговорим с мышами? Или Soft USB HOST на Esp32

Reading time4 min
Views15K

Esp32 весьма мощный контроллер, подходящий для эмуляции различных ретро систем, таких как Spectrum, Commodore, NES, IBM PC-XT и т.д. Есть возможность сгенегировать VGA или AV - TV композитный сигнал, подключить различные компактные LCD дисплеи. Он умеет разговаривать с SD картами по SPI & SD протоколу. Вот только с USB клавиатурами, мышами и джойстиками - не умеет. Попробуем научить его говорить с ними. Есть конечно новый вариант ESP32-S3 с одним USB host контроллером, а мне нужно подключить хотя бы 3 девайса и без хаба...

Нам понадобится:
Total votes 33: ↑33 and ↓0+33
Comments6

Рисование медью и другие нестандартные технологии, интересные для изготовления печатных плат

Level of difficultyMedium
Reading time11 min
Views12K
Картинка WangXiNa, Freepik

Мы все в той или иной степени сталкивались или сталкиваемся с потребностью в изготовлении печатных плат.

И в этой статье будет рассказ про альтернативные технологии (и не только), которые могут помочь в этом.
Читать дальше →
Total votes 52: ↑50 and ↓2+66
Comments70

Ультразвуковые излучатели

Level of difficultyMedium
Reading time13 min
Views15K
Картинка Kjpargeter, Lookstudio, Freepik

Ультразвуком называются различные волновые колебания, частота которых находится выше слышимости человеческого слуха (15/16 кГц, а по некоторым источникам — 20 кГц).

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

В этой статье мы рассмотрим ряд довольно любопытных излучателей ультразвука, некоторые из которых могут быть незнакомы широкой публике.
Читать дальше →
Total votes 42: ↑39 and ↓3+57
Comments17

“Сигма дельта” или как сделать хорошую звуковую карту из STM32F401

Reading time5 min
Views17K

Жене мешают смотреть последние новости из телефона и телевизора, приходящие поесть (первично ?) и поиграть на компьютере (вторично?) внуки. Она их конечно любит , но звуки их взаимодействия с компьютером ее сильно раздражают. Пришлось надеть на внуков наушники. А звуковой выход у компа в неудобном месте и каждый хочет со своей громкостью. Ну пришлось разработать внешнюю USB звуковую карточку. Хочется и красиво и качественно. Впрочем, внуки скорее , только повод для поностальгировать по своей старой специальности радиоконструктора и вообще, так как последние двадцать с лишним лет я далеко от нее и пишу заклинания программы реконструкции изображений для медицинских томографов в больших и не очень фирмах , то есть энжинер-погромист по специальности. Хотел написать статью на эту очень интересную и важную тему (компьютерная томография), но выяснилось что мне нельзя по условиям контракта ...

Итак вернемся к нашим баранам внукам и звуковым карточкам, у нас есть в нескольких экземплярах(овер дофига,купил пока были дешевые) модули из Китая:

1. Stm32f401ccu6 black pill – сейчас $3 за штучку

2. I2S DAC Decoder GY-PCM5102 ->$3.5 за штучку

3 .SPI display ips 1.3 inch 240x240 (controller st7789) ->$7 за два

Сначала построим максимальную конфигурацию из двух экранов и I2S GY-PCM5102.

Конфигурируем куб, разбавляем его говно код своим г. кодом, добавляем ФАПЧ ( фазовой автоматической подстройки частоты или PLL на ихнем ) , для согласования скоростей приходящих от компьютера данных и выдачи на i2s внешний ЦАП (DAC). Хмм , звучит очень неплохо, явно лучше большинства встроенных звуковушек. PCM5102 – весьма и весьма качественный ЦАП за свою цену в пару- тройку долларов за модуль с чипом. Добавляем отображение индикаторов уровня на паре неплохих дисплеев st7789 ...

Итак вернемся
Total votes 31: ↑30 and ↓1+40
Comments71

Сделаем GCC C++ для AVR и Arduino лучше?

Reading time5 min
Views25K


Привет хабраплюсплюсовцам!

Хочу разобрать проблему компилятора avr-g++, из-за которой в разных дискуссиях про AVR и Arduino звучит «С++ — это не для микроконтроллеров, C++ жрёт память, C++ генерирует раздутый код — пишите на голом C, а лучше на ASM».

Для начала давайте разберёмся, в чём же преимущество C++ перед C. Концепций, которые добавляет C++ много, но самая значимая и самая эксплуатируемая — это поддержка ООП. Что такое ООП?
  • Инкапсуляция
  • Наследование
  • Полиморфизм


Использование первых двух пунктов в C++ «бесплатно». Никакого преимущества программа на чистом C перед программой на C++ с инкапсуляцией и наследованием не имеет. Картина меняется, когда мы подключаем к действу полиморфизм. Полиморфизм бывает разным: compile-time, link-time, run-time. Я говорю о классическом run-time, т.е. о виртуальных функциях. Как только в своих классах вы начинаете добавлять виртуальные методы, чудесным образом растёт потребление как Flash-памяти, так и SRAM.

Почему так происходит и, что с этим можно было бы сделать, расскажу под катом.
Читать дальше →
Total votes 31: ↑29 and ↓2+27
Comments14

Ускоряем анализ данных в 170 000 раз с помощью Python

Level of difficultyMedium
Reading time15 min
Views19K

В статье «Ускоряем анализ данных в 180 000 раз с помощью Rust» показано, как неоптимизированный код на Python, после переписывания и оптимизации на Rust, ускоряется в 180 000 раз. Автор отмечает: «есть множество способов сделать код на Python быстрее, но смысл этого поста не в том, чтобы сравнить высокооптимизированный Python с высокооптимизированным Rust. Смысл в том, чтобы сравнить "стандартный-Jupyter-notebook" Python с высокооптимизированным Rust».

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

Под катом разработчик Сидни Рэдклифф* проходит путь профилирования и итеративного ускорения кода на Python, чтобы выяснить это.

*Обращаем ваше внимание, что позиция автора может не всегда совпадать с мнением МойОфис.

Читать далее
Total votes 51: ↑50 and ↓1+56
Comments3

Зачем Программисту Микроконтроллеров Численные Методы?

Level of difficultyEasy
Reading time4 min
Views9.1K

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

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

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

Читать далее
Total votes 21: ↑19 and ↓2+20
Comments33

Дозиметр для Серёжи. Часть II. «столетние трубки» vs мирный атом

Reading time27 min
Views61K
В первой части своего повествования я рассказал о производителях, без сомнения, ТОП-овых белорусских дозиметров. Несмотря на все их достоинства, основные недостатки — отсутствие в розничной продаже и высокая цена даже на вторичном рынке — сводят полезность упомянутых приборов для рядового пользователя к нулю. Основная претензия к оборудованию для контроля радиационного фона со стороны обывателя — должно быть просто и дешево. Поэтому сегодня я попробую описать свое видение простых, сделанных на коленке сигнализаторов радиоактивности. Никаких там сцинцилляторов за сотни и тысячи долларов, намотки трансформаторов и травления печатных плат. Сегодня под катом то, что под силу каждому человеку обладающему стандартным уровнем технической грамотности.

Читать дальше →
Total votes 86: ↑82 and ↓4+78
Comments176

Солнечный Навигатор (или Фоторезистор = Навигатор)

Level of difficultyEasy
Reading time17 min
Views13K

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

Если взять микроконтроллер, к ADC пину подключить фоторезистор, целый день непрерывно записывать на SD карту показания солнечной освещенности с вкраплениями временных отметок из часов реального времени RTC, то спустя 24 часа можно оценить широту (длительность светового дня) и долготу (фаза светового дня).

Попробуем понять, работает ли эта идея.

Читать далее
Total votes 67: ↑62 and ↓5+83
Comments128

Запускаем кодек OPUS на микроконтроллере

Level of difficultyEasy
Reading time13 min
Views4K

Исходные данные – есть контроллер STM32 с очень ограниченной памятью, а мы хотим записывать на нем звук. Допустим, что примеров с подключением выбранного нами микрофона гора и маленькая тележка. В итоге имеем контроллер, который умеет выдавать нам WAV-подобный сигнал. Хотелось бы этот WAV-сигнал куда-то записать или передать. Таких данных будет очень много, есть ненулевая вероятность, что мы не влезем по полосе пропускания используемого канала или заполним память до того, как получим нужную информацию. На помощь нам спешит компрессия!

Читать далее
Total votes 14: ↑14 and ↓0+14
Comments10

Как я с 0 поднял свой уровень английского до B2 и подтвердил этот уровень на экзамене IELTS Academic

Level of difficultyEasy
Reading time10 min
Views164K

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

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

Начнем с бекграунда и причин.

Я – инженер машиностроитель (мой профиль – торцевые уплотнения вращающихся валов). Я начал работать в своей отрасли сразу после бакалавра, параллельно заканчивая магистратуру, и как только я начал работать, я стал стараться впитать как можно больше теоретических знаний по моей специальности из академических источников. Достаточно бысто я понял, что последняя серьезная книга по моей специальности на русском языке была написана в 1978 году. И спустя больше чем 40 лет технологии сильно поменялись, а вот их описание на русском языке отсутствовает. Зато я нашел на reddit людей работающих в штатах в моей же отрасли. Они мне насоветовали кучу классной литературы. Разумееется, она вся на английском, и русского перевода не имеет.

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

Конечно, перед началом обучения я прочитал много статей на хабре о том как люди учат языки. Некоторые из них поражали скоростью овладения материалом (что-то вроде с нуля до fluent за 4 месяца). Но одна вещь была неизменна – у всех был какой-то план изучения языка.

Читать далее
Total votes 150: ↑146 and ↓4+165
Comments220

8 профилировщиков потребляемой мощности для embedded и IoT систем

Level of difficultyEasy
Reading time7 min
Views6.3K


От переводчика. Вниманию читателей предлагается обзорная статья в которой автор рассматривает восемь устройств из очень интересной и специфической области — профилирования энергопотребления embedded и IoT устройств.

Для тех, кто занимается разработкой энергоэффективных устройств на микроконтроллерах это будет интересная и полезная информация — в обзоре присутствуют как довольно дорогие девайсы ($800), так и приборы с вполне демократичной ценой $55–$120, которые может позволить себе любой любитель электроники.
Читать дальше →
Total votes 30: ↑30 and ↓0+30
Comments19
1

Information

Rating
Does not participate
Registered
Activity