Pull to refresh
1
0
Send message

Новый прорыв приближает умножение матриц к идеалу

Level of difficultyMedium
Reading time7 min
Views41K

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

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

Возьмем, к примеру, умножение матриц или массивов чисел. В 1812 году французский математик Жак Филипп Мари Бине разработал базовый набор правил, которым мы до сих пор обучаем студентов. Это работает прекрасно, но другие математики нашли способы упростить и ускорить процесс умножения матриц.

Читать далее
Total votes 56: ↑47 and ↓9+53
Comments58

В остаточном потоке трансформеров представлена геометрия состояний их убеждений

Level of difficultyMedium
Reading time15 min
Views1.2K

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

Читать далее
Total votes 3: ↑3 and ↓0+4
Comments6

Разглядывая JTAG: самый быстрый программный JTAG на Arduino

Level of difficultyMedium
Reading time26 min
Views9.5K

В предыдущих статьях цикла был приведен пример реализации ведомого модуля JTAG на Verilog. Я предположил, что количество инженеров, знающих Verilog, меньше, чем количество инженеров, которым требуется понимание принципов работы JTAG. Поэтому, помимо реализации на Verilog, модуль JTAG был также реализован на Си.

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

Субъективно, практическое применение программного JTAG мне по‑прежнему видится не вполне оправданным.
Но, во‑первых, это хороший повод рассмотреть предельные возможности микроконтроллеров.
А во‑вторых, есть формальная причина сказать, что в данной статье предлагается Решение Прикладной Задачи :)

Итак, сегодня мы поговорим про прерывания, поллинг и прочее. А протокол JTAG станет фоном для повествования.

jmp start
Total votes 40: ↑40 and ↓0+55
Comments28

Туториал по Tokio. 1/2

Level of difficultyMedium
Reading time35 min
Views7.4K



Hello world!


Представляю вашему вниманию первую часть туториала по Tokio.



Tokio — это асинхронная среда выполнения (runtime) кода Rust. Она предоставляет строительные блоки, необходимые для разработки сетевых приложений любого размера.

Читать дальше →
Total votes 27: ↑27 and ↓0+37
Comments2

Реализация Streebog256 и Streebog512 на языке RUST

Level of difficultyEasy
Reading time18 min
Views2.5K

Как и планировалось, следом за реализацией семейства хэш-функций SHA, появляется Стрибог и тоже в двух версиях, для 256 и 512 бит на выходе. Надеюсь эта статья будет полезна другим студентам. Более опытные разработчики в комментариях приветствуются.

Весь код сохранен в репозитории GitVerse.

Читать далее
Total votes 16: ↑13 and ↓3+12
Comments14

Ансамблевое обучение для самых маленьких

Level of difficultyMedium
Reading time13 min
Views2.8K

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

Читать далее
Total votes 4: ↑4 and ↓0+6
Comments2

Учёные связали органические молекулы с гидротермальными источниками на Энцеладе

Reading time5 min
Views1.4K

Несмотря на огромное расстояние между нами и сверкающим спутником Сатурна Энцеладом, этот ледяной спутник с океаном является главной целью в наших текущих поисках внеземной жизни. Он выбрасывает в космос водяной пар и крупные органические молекулы через трещины в своей ледяной оболочке, которая относительно тонка по сравнению с другими ледяными океаническими спутниками, такими как Европа Юпитера. Хотя она всё ещё находится вне пределов досягаемости, научный доступ к её океану не так сложен, как у Европы, ледяная оболочка которой гораздо толще.

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

Читать далее
Total votes 5: ↑4 and ↓1+5
Comments1

AlphaFold 3 предсказывает структуру и взаимодействие всех молекул жизни

Level of difficultyMedium
Reading time6 min
Views1.8K

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

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

Читать далее
Total votes 5: ↑5 and ↓0+9
Comments0

Интуитивное понимание пространств и ядер в машинном обучении: Часть 1

Level of difficultyHard
Reading time9 min
Views8.1K

При изучении темы ядер (kernel) в ML/DS программы вузов, роадмэпы и видео на YouTube обычно рассматривают её через призму SVM, не говоря уже о всеми любимых курсах:). Казалось бы, это неплохо: вот тебе краткое объяснение и модель, которая использует ядра. Но, увы, в этих областях желательно понимать многие процессы интуитивно, так сказать — «тяжело в учении, легко в бою». К тому же, эта тема нечто большее, чем просто метод; она позволяет связать многие вещи в машинном обучении в единую картину через пространство, что я и хочу показать в этой статье.

Читать далее
Total votes 20: ↑18 and ↓2+20
Comments12

КодоГенератор Линейных Отображений (как ускорить создание ASIC драйвера)

Level of difficultyEasy
Reading time5 min
Views1.8K

В программировании микроконтроллеров на Си часто приходится писать драйверы для умных и навороченных ASIC чипов с управлением по I2C/SPI/MDIO интерфейсам.

Обычно перед запуском эти чипы надо правильным образом сконфигурировать.

Такие чипы всегда оперируют с реальными физическими величинами. Одновременно с этим ячейки памяти этих ASIC чипов - дискретные, двоичные. Поэтому все производители микросхем кодируют эти переменные бинарными кодами разной разрядности.

В этом тексте я показал как можно делать интерпретаторы этих величин.

Читать далее
Total votes 7: ↑4 and ↓3+1
Comments31

За гранью возможного: создание полимерных электродов, способных восстановить зрение

Reading time5 min
Views5.1K

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

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

 Подробнее об исследовании далее в статье! Приятного прочтения :)

Читать далее
Total votes 24: ↑23 and ↓1+25
Comments7

DIY для шпиона: использование обнаружения объектов с помощью YOLOv8 в рамках военных стратегий

Reading time8 min
Views8.7K

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

В рамках глобальной системы мониторинга, известной как «The Machine». , функционируют разнообразные элементы. Данная система объединяет множество устройств, распределенных по всему земному шару, что обеспечивает комплексное наблюдение. Это позволяет государственным органам осуществлять мониторинг за индивидуальными лицами, анализировать общественные поведенческие тенденции и контролировать военные объекты на международном уровне. Геопространственная разведка (GEOINT) занимает центральное место в этой системе.

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

Читать далее
Total votes 27: ↑23 and ↓4+24
Comments2

Создаем собственные линтеры в Rust с DyLint

Level of difficultyMedium
Reading time5 min
Views1.4K

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

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

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

Читать далее
Total votes 9: ↑9 and ↓0+12
Comments0

Почему для меня так важен алгоритм CORDIC

Level of difficultyMedium
Reading time8 min
Views17K

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

Перейду сразу к делу и скажу, почему я так сильно люблю этот алгоритм, а затем займёмся изучением принципов его работы. По сути, фактические операции CORDIC весьма просты — как я уже сказал, это сдвиги и сложение — но выполняет он их путём комбинирования векторной арифметики, тригонометрии, доказательств сходимости и продуманных техник компьютерных наук. Лично я считаю, что именно это имеют ввиду, описывая его природу, как «элегантную».
Читать дальше →
Total votes 87: ↑87 and ↓0+113
Comments27

Мощный инструмент для работы с GCOV покрытием кода C/C++

Level of difficultyMedium
Reading time6 min
Views3.4K

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

Скорее всего то, о чем я сейчас расскажу, уже было реализовано и не единожды.

Но пусть это все равно лежит здесь, возможно эта статья будет кому-то полезна в качестве методического материала или HOWTO. Все, сказанное ниже является продуктом моего текущего опыта разработки и не претендует на идеальное решение.

Читать далее
Total votes 6: ↑6 and ↓0+9
Comments15

Коммивояжер на GPU

Level of difficultyMedium
Reading time8 min
Views3.7K

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

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

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

Читать далее
Total votes 7: ↑7 and ↓0+10
Comments58

Wasm на весь стек — движемся от клиента к серверу с использованием Leptos, Rust и Spin

Level of difficultyHard
Reading time9 min
Views4.8K


Leptos – интересное пополнение в ряду веб-фреймворков для Rust. Помимо того, что Leptos может обеспечить быстрые обновления на стороне браузера через клиентскую часть WebAssembly, а также детализированные отклики на сигналы в ходе реактивной коммуникации, он ещё и чрезвычайно удобен для взаимодействия с серверными службами через изоморфные серверные функции. Таким образом, выполнять удаленные вызовы к API оказывается не сложнее, чем вызывать функции Rust. Именно благодаря интеграции с серверной частью Leptos так привлекателен для использования совместно со Spin. Если вам интересно, как это выглядит, или же вы хотите погоревать над весьма неказистым пользовательским интерфейсом, то читайте дальше.
Читать дальше →
Total votes 21: ↑21 and ↓0+32
Comments4

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

Level of difficultyMedium
Reading time30 min
Views18K

Имеет ли сознание квантовую природу? Мозг - детерминированная биохимическая машина или квантовый компьютер? Как долго в нервной ткани сохраняется квантовая суперпозиция? Могут ли случайные квантовые события вызывать активацию нейронов и влиять на работу нейросетей? Или квантовые эффекты всегда нивелируются тепловыми колебаниями атомов и молекул, разрушающими квантовую когерентность на разумных пространственно-временных масштабах? Что о роли квантовой физики в функционировании нашего организма может сказать квантовая биология?

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

Читать далее
Total votes 21: ↑17 and ↓4+18
Comments181

Методы оптимизации в машинном и глубоком обучении. От простого к сложному

Level of difficultyHard
Reading time29 min
Views11K

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

Читать далее
Total votes 23: ↑22 and ↓1+29
Comments6

Реликтовое гравитационное излучение — ключ к тайнам Вселенной

Level of difficultyMedium
Reading time6 min
Views10K

Участники хабра проявляли большой интерес к космологии пульсирующей Вселенной (https://habr.com/ru/articles/396601/; https://habr.com/ru/articles/371363/; https://habr.com/ru/articles/777028/), поэтому всех заинтересованных хочу обрадовать новостью, что издательство «Питер» в июне этого года выпускает массовым тиражом второе издание книги «Пульсирующая Вселенная» с дополнениями и улучшениями. Получасовую презентацию книги (и космологической теории, которая в ней излагается) от редактора «Питера» и от меня можно посмотреть на ю-тубе: https://www.youtube.com/watch?v=QyVAPTdPC4Y

            На одном космологическом моменте хочется остановиться детальнее – на реликтовых гравитационных волнах. В начале 60-х годов разразилась большая битва между тремя космологическими теориями: теорией постоянного роста Вселенной Бонди-Голда-Хойла (без Большого Взрыва, а Вселенная просто пухнет по непонятным причинам); теорией изначально холодной Вселенной Зельдовича, и теорией горячей ранней Вселенной Гамова, в рамках которой были предсказаны Большой Взрыв, химсостав ранней Вселенной и наличие вокруг реликтового излучения с температурой в несколько кельвинов (излучение очень горячей ранней Вселенной растянулось к нашему времени так, что остыло до температуры жидкого гелия).

            В эстонском городе Тарту, 7-13 июля 1962 года проходил семинар, материалы которого были опубликованы в сборнике «Вопросы космогонии» (1963). В статье «Дозвездная эволюция вещества» Я. Б. Зельдович разбирает теорию горячей Вселенной Гамова-Альфера-Хермана, попытки которых получить наблюдаемый химический состав космической среды, он считает «наивными». Зельдович пишет, что в этой модели «эффективная температура электромагнитного излучения (света) равна 23К» (откуда ЯБ взял это значение вместо нескольких градусов – неясно, возможно из какой-то самой неточной работе группы Гамова).

Читать далее
Total votes 40: ↑39 and ↓1+53
Comments35

Information

Rating
Does not participate
Registered
Activity