Предлагаю вашему вниманию полный перевод статьи об алгоритме нейронной сети на основе теоремы Колмогорова Арнольда, опубликованной исследователями из Massachusetts Institute of Technology, California Institute of Technology, Northeastern University и The NSF Institute for Artificial Intelligence and Fundamental Interactions.
В настоящее время в на просторах интернета есть лишь посты на основе данной статьи с интригующими названиями типа «Новый убийца нейросетей? Сеть Колмогорова Арнольда (KANs)» или «Исследователи разработали принципиально новую архитектуру нейросетей, которая работает лучше персептрона» и т. п. Для лучшего понимания это темы обратимся к первоисточнику, опубликованному не так давно — в апреле 2024 года.
User
Simba: Симуляция десятков тысяч частиц в потенциале Леннарда-Джонса на чистом Python с GPU-ускорением
Добрый день, уважаемые хабровчане.
Примерно год назад я начал проект симулятора динамики частиц на Python, используя библиотеку Numba для проведения параллельных расчетов на видеокарте. Сейчас, добравшись до определенной вехи в его развитии, я решил открыть исходный код и выложить его на GitHub для всех, кому интересны подобного рода эксперименты.
Самостоятельно потыркать проект можно вот тут: https://github.com/r-aristov/simba-ps
В этой статье я кратко опишу суть проекта, пройдусь по прилагающимся к нему примерам и расскажу почему вообще начал работу над ним.
Электросмачивание как интересный эффект для применения в самоделках и не только
Существует весьма любопытный эффект, который в данный момент уже применяется во множестве направлений, и суть его заключается в изменении взаимодействия жидкости с поверхностью вследствие приложенной разницы потенциалов между жидкостью и поверхностью.
Сфера применения этого эффекта весьма широка и позволяет использовать его как профессиональных целей, так и для разнообразных самоделок.
Импортозамещение ПО в авиации. Почему не взлетаем?
Продолжаем образовательные истории быдлокодера, который никак не может стать миллионером. Сейчас будет трогательная и крайне поучительная история, как мы начали импортозамещать MATLAB в авиации, когда нас об этом никто не просил, и еще до того, как это стало модно, и молодежно!
Прочитав этот текст, вы поймете как нужно правильно оценивать себя, свое ПО и потенциальных партнеров по опасному бизнесу. В тексте описыватеся только реальный личный опыт автора, поэтому все события выдуманы и совпадения случайны.
Как я уже рассказывал, американская коррупция превратила физика-ядерщика в былдокодера, но далеко от ядерных реакторов у меня оторваться сразу не получилось, несмотря на всю мою оторванность. Поэтому первые коммерчески успешные проекты у нашей копании были связанны технологиями «говна и пара», как на флоте называют ядерный реактор атомных подводных лодок. Не спрашивайте почему реактор ядерный, а подлодка атомная, это науке не известно. Но в итоге наше ПО начало применяться для проектирования систем управления АПЛ: сначала в качестве системы моделирования, потом для автоматической генерации управляющего ПО, дальше – больше, и уже наш код стоит непосредственно в системе управления.
О простых вещах-сложно. Письмо химика 3D-печатнику. Растворители для пластмасс и защита от них
Одним из наиболее часто задаваемых вопросов в моей консультационной практике являются вопросы связанные с растворением/склейкой пластмасс с помощью всевозможных органических растворителей. В последнее время произошел настоящий всплеск интереса к химии высокомолекулярных соединений, связанный с появлением доступных 3D принтеров и необходимостью ориентироваться в «чернилах» для них (т.е. полимерных нитях-филаментах). Лишний раз убеждаюсь в том, что ни один, даже самый продвинутый «музей науки» с эффектным шоу не может так заставить IT-шника интересоваться пластмассами, как собственный 3D-принтер. Так что, читатель, если тебе хоть раз приходилось думать чем склеить пластмассу, которую не клеил default-ный суперклей, если мучали сомнения по поводу растворения поддержек свежеотпечатанной детали, да и просто интересно, чем можно отмыть клей от магазинного ценника на подарке — прошу под кат. Также настоятельно рекомендую страницу отправить в закладки не только тем, кто часто занимается склеиванием пластмасс, но и всем тем, кому часто приходится работать с различными растворителями/разбавителями. Делалось для себя — подарено Хабру!
Как я разработал квадрокоптер на ESP32 с нуля (ушло 4 года)
При сборке квадрокоптеров и других БПЛА обычно используют готовую плату полетного контроллера, содержащую все необходимые датчики и периферию, и готовую полетную прошивку, например, Betaflight, ArduPilot или PX4. Полетный контроллер управляет моторами квадрокоптера и обеспечивает стабильный полет.
Занимаясь БПЛА с 2016 года, я решил разобраться в устройстве полетных контроллеров максимально глубоко и создать квадрокоптер с нуля, не используя готовый полетный контроллер и готовый софт. Спустя долгое время разработки мне удалось это сделать. Я написал прошивку с максимально простым исходным кодом и выложил ее на GitHub. В этой статье я расскажу о теории и практике разработки полетного софта для квадрокоптера и проиллюстрирую это на примере своего дрона на базе микроконтроллера ESP32, который можно увидеть на картинке выше.
Полулегальный радиоконструктор с Aliexpress
Сегодня мы соберём комплект из двух простых ультракоротковолновых трансиверов на транзисторах. Это старая добрая классика, полностью аналоговая, без микросхем и даже без кварцев или пьезокерамических фильтров.
Для любителей электроники и радио такой конструктор — отличная возможность подарить детям незабываемые позитивные моменты и привить интерес к технике. Но есть и нюансы. Впрочем, как и всегда.
Подбор оптимальной геометрии в компас 3d с помощью fluid x3d
Подбор оптимальной геометрии на основе расчета воздушных потоков API компас 3d и fluid x3d на основе тороидальных винтов.
Поговорим с мышами? Или Soft USB HOST на Esp32
Esp32 весьма мощный контроллер, подходящий для эмуляции различных ретро систем, таких как Spectrum, Commodore, NES, IBM PC-XT и т.д. Есть возможность сгенегировать VGA или AV - TV композитный сигнал, подключить различные компактные LCD дисплеи. Он умеет разговаривать с SD картами по SPI & SD протоколу. Вот только с USB клавиатурами, мышами и джойстиками - не умеет. Попробуем научить его говорить с ними. Есть конечно новый вариант ESP32-S3 с одним USB host контроллером, а мне нужно подключить хотя бы 3 девайса и без хаба...
Рисование медью и другие нестандартные технологии, интересные для изготовления печатных плат
Мы все в той или иной степени сталкивались или сталкиваемся с потребностью в изготовлении печатных плат.
И в этой статье будет рассказ про альтернативные технологии (и не только), которые могут помочь в этом.
Ультразвуковые излучатели
Ультразвуком называются различные волновые колебания, частота которых находится выше слышимости человеческого слуха (15/16 кГц, а по некоторым источникам — 20 кГц).
Природа всех звуковых колебаний одинакова, и, по большому счёту, звук и ультразвук отличаются только тем (с точки зрения человека), может ли он слышать такой диапазон звуков или нет.
В этой статье мы рассмотрим ряд довольно любопытных излучателей ультразвука, некоторые из которых могут быть незнакомы широкой публике.
“Сигма дельта” или как сделать хорошую звуковую карту из STM32F401
Жене мешают смотреть последние новости из телефона и телевизора, приходящие поесть (первично ?) и поиграть на компьютере (вторично?) внуки. Она их конечно любит , но звуки их взаимодействия с компьютером ее сильно раздражают. Пришлось надеть на внуков наушники. А звуковой выход у компа в неудобном месте и каждый хочет со своей громкостью. Ну пришлось разработать внешнюю 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 ...
Сделаем GCC C++ для AVR и Arduino лучше?
Привет хабраплюсплюсовцам!
Хочу разобрать проблему компилятора avr-g++, из-за которой в разных дискуссиях про AVR и Arduino звучит «С++ — это не для микроконтроллеров, C++ жрёт память, C++ генерирует раздутый код — пишите на голом C, а лучше на ASM».
Для начала давайте разберёмся, в чём же преимущество C++ перед C. Концепций, которые добавляет C++ много, но самая значимая и самая эксплуатируемая — это поддержка ООП. Что такое ООП?
- Инкапсуляция
- Наследование
- Полиморфизм
Использование первых двух пунктов в C++ «бесплатно». Никакого преимущества программа на чистом C перед программой на C++ с инкапсуляцией и наследованием не имеет. Картина меняется, когда мы подключаем к действу полиморфизм. Полиморфизм бывает разным: compile-time, link-time, run-time. Я говорю о классическом run-time, т.е. о виртуальных функциях. Как только в своих классах вы начинаете добавлять виртуальные методы, чудесным образом растёт потребление как Flash-памяти, так и SRAM.
Почему так происходит и, что с этим можно было бы сделать, расскажу под катом.
Ускоряем анализ данных в 170 000 раз с помощью Python
В статье «Ускоряем анализ данных в 180 000 раз с помощью Rust» показано, как неоптимизированный код на Python, после переписывания и оптимизации на Rust, ускоряется в 180 000 раз. Автор отмечает: «есть множество способов сделать код на Python быстрее, но смысл этого поста не в том, чтобы сравнить высокооптимизированный Python с высокооптимизированным Rust. Смысл в том, чтобы сравнить "стандартный-Jupyter-notebook" Python с высокооптимизированным Rust».
Возникает вопрос: какого ускорения мы могли бы достичь, если бы остановились на Python?
Под катом разработчик Сидни Рэдклифф* проходит путь профилирования и итеративного ускорения кода на Python, чтобы выяснить это.
*Обращаем ваше внимание, что позиция автора может не всегда совпадать с мнением МойОфис.
Зачем Программисту Микроконтроллеров Численные Методы?
В программировании микроконтроллеров иногда прямо в коде приходится решать уравнения. Порой решение не получается выразить аналитически.
В математике бывают такие случаи, когда есть функция, которая просто выражается элементарными функциями. А вот обратную функцию выразить аналитически либо очень трудно, либо вообще невозможно.
В тексте показано как применять бинарный поиск для вычисления значений сложной тригонометрической обратной функций.
Дозиметр для Серёжи. Часть II. «столетние трубки» vs мирный атом
Солнечный Навигатор (или Фоторезистор = Навигатор)
Наверное сложно поверить, что такой косный электротехнический компонент как фоторезистор может в какой-то мере заменить дорогущий цифровой санкционный навигационный приемник. Но это в самом деле так.
Если взять микроконтроллер, к ADC пину подключить фоторезистор, целый день непрерывно записывать на SD карту показания солнечной освещенности с вкраплениями временных отметок из часов реального времени RTC, то спустя 24 часа можно оценить широту (длительность светового дня) и долготу (фаза светового дня).
Попробуем понять, работает ли эта идея.
Запускаем кодек OPUS на микроконтроллере
Исходные данные – есть контроллер STM32 с очень ограниченной памятью, а мы хотим записывать на нем звук. Допустим, что примеров с подключением выбранного нами микрофона гора и маленькая тележка. В итоге имеем контроллер, который умеет выдавать нам WAV-подобный сигнал. Хотелось бы этот WAV-сигнал куда-то записать или передать. Таких данных будет очень много, есть ненулевая вероятность, что мы не влезем по полосе пропускания используемого канала или заполним память до того, как получим нужную информацию. На помощь нам спешит компрессия!
Как я с 0 поднял свой уровень английского до B2 и подтвердил этот уровень на экзамене IELTS Academic
Привет, Хабр!
В этой статье я расскажу о своем опыте изучения английского языка и поделюсь вещами которые работали и не работали для меня. Процесс изучения языка очень индивидуален, и никогда нельзя утверждать что верный какой-то один метод / схема (хотя некоторые статьи на Хабре прямо говорят: вот этот метод правильный, а вот этот нет).
Начнем с бекграунда и причин.
Я – инженер машиностроитель (мой профиль – торцевые уплотнения вращающихся валов). Я начал работать в своей отрасли сразу после бакалавра, параллельно заканчивая магистратуру, и как только я начал работать, я стал стараться впитать как можно больше теоретических знаний по моей специальности из академических источников. Достаточно бысто я понял, что последняя серьезная книга по моей специальности на русском языке была написана в 1978 году. И спустя больше чем 40 лет технологии сильно поменялись, а вот их описание на русском языке отсутствовает. Зато я нашел на reddit людей работающих в штатах в моей же отрасли. Они мне насоветовали кучу классной литературы. Разумееется, она вся на английском, и русского перевода не имеет.
Начал свой путь изучения языка я в январе 2022 года с около нулевого уровня. В всех моих школах преподование английского языка было не на самомом высоком уровне, а в университете было достаточно выучить 30 предложений наизусть чтобы получить достойную оценку на экзамене.
Конечно, перед началом обучения я прочитал много статей на хабре о том как люди учат языки. Некоторые из них поражали скоростью овладения материалом (что-то вроде с нуля до fluent за 4 месяца). Но одна вещь была неизменна – у всех был какой-то план изучения языка.
8 профилировщиков потребляемой мощности для embedded и IoT систем
От переводчика. Вниманию читателей предлагается обзорная статья в которой автор рассматривает восемь устройств из очень интересной и специфической области — профилирования энергопотребления embedded и IoT устройств.
Для тех, кто занимается разработкой энергоэффективных устройств на микроконтроллерах это будет интересная и полезная информация — в обзоре присутствуют как довольно дорогие девайсы ($800), так и приборы с вполне демократичной ценой $55–$120, которые может позволить себе любой любитель электроники.
Information
- Rating
- Does not participate
- Registered
- Activity