Пользователь
Must-have алгоритмы машинного обучения
Меня зовут Рушан, и я автор Telegram‑канала Нейрон. Не забудьте поделиться с коллегами или просто с теми, кому интересны такие статьи. Этот пост — краткий обзор общих алгоритмов машинного обучения. К каждому прилагается краткое описание, гайды и полезные ссылки.
Метод главных компонент (PCA)/SVD
Это один из основных алгоритмов машинного обучения. Позволяет уменьшить размерность данных, потеряв наименьшее количество информации. Применяется во многих областях, таких как распознавание объектов, компьютерное зрение, сжатие данных и т. п. Вычисление главных компонент сводится к вычислению собственных векторов и собственных значений ковариационной матрицы исходных данных или к сингулярному разложению матрицы данных.
SVD — это способ вычисления упорядоченных компонентов.
Полезные ссылки:
Вводный гайд:
Вычисляемое видео в 755 мегапикселей: пленоптика вчера, сегодня и завтра
Какое-то время назад автору довелось читать лекцию во ВГИК, и в аудитории было много людей с операторского факультета. Аудитории был задан вопрос: «С каким максимальным разрешением вы снимали?», и дальше выяснилось, что примерно треть снимала 4К или 8 мегапикселей, остальные — не более 2К или 2 мегапикселя. Это был вызов! Мне предстояло рассказать про камеру с разрешением 755 мегапикселей (raw разрешением, если быть точным, поскольку конечное у нее 4К) и какие феерические возможности это дает для профессиональной съемки.
Сама камера выглядит так (этакий маленький слоник):
Причем, открою страшную тайну, чтобы сделать этот снимок искали ракурс получше и человека покрупнее. Мне доводилось щупать эту камеру вживую, скажу, что она выглядит намного крупнее. Снимок ниже с Йоном Карафином, с которым мы примерно одного роста, более точно передает масштабы бедствия:
Кому интересны принципиально возможности вычисляемого видео о которых редко пишут — вся правда под катом! )
Алексей Савватеев: Как бороться с коррупцией при помощи математики (Нобелевская премия по экономике за 2016 год)
Номинация: За проработку теории контрактов в неоклассической экономике. Неоклассическое направление подразумевает рациональность экономических агентов, широко использует теорию экономического равновесия и теорию игр.
Оливер Харт и Бенгт Хольмстрём.
Контракт. Что это такое? Я работодатель, у меня несколько сотрудников, я говорю им как будет устроена их зарплата. В каких случаях и что они будут получать. Эти случаи могут включать и поведение их коллег.
Приведу пять примеров. Три из них иллюстрируют, как попытка вмешательства привела к ухудшению ситуации.
Безумие и успех кода Oracle Database
Победителем в номинации «лавкрафтовские ужасы» заслуженно стал рассказ бывшего разработчика Oracle, который работал над Oracle Database в период разработки версии 12.2. Объем кодовой базы СУБД на тот момент составлял 25 миллионов строк на языке C — и стоило вам изменить лишь одну из этих строк, как ломались тысячи написанных ранее тестов.
За прошедшие годы над кодом успело потрудиться несколько поколений программистов, которых регулярно преследовали жесткие дедлайны — и благодаря этому код смог превратиться в настоящий кошмар. Сегодня он состоит из сложных «кусков» кода, отвечающих за логику, управление памятью, переключение контекстов и многое другое; они связаны друг с другом при помощи тысяч различных флагов. Весь код связан между собой загадочным макросом, который невозможно расшифровать, не прибегая к помощи тетради, в которую приходится записывать, чем занимаются релевантные части макроса. В итоге, у разработчика может уйти день или два только на то, чтобы разобраться, чем же в действительности занимается макрос.
Нейросети и глубокое обучение, глава 4: визуальное доказательство того, что нейросети способны вычислить любую функцию
- Глава 1: использование нейросетей для распознавания рукописных цифр
- Глава 2: как работает алгоритм обратного распространения
- Глава 3:
- Глава 4: визуальное доказательство того, что нейросети способны вычислить любую функцию
- Глава 5: почему глубокие нейросети так сложно обучать?
- Глава 6:
- Послесловие: существует ли простой алгоритм для создания интеллекта?
Один из наиболее потрясающих фактов, связанных с нейросетями, заключается в том, что они могут вычислить вообще любую функцию. То есть, допустим, некто даёт вам какую-то сложную и извилистую функцию f(x):
Ученые впервые показали реальное «фото» черной дыры
Спроси любого человека на улице, как выглядит черная дыра, и он вам обязательно об этом расскажет. Еще бы, ведь все помнят красочные симуляции этих космических объектов из различных фантастических фильмов. Поэтому в это трудно поверить, что до сих пор никто на самом деле не видел, как же черные дыры выглядят в реальности!
10 апреля ученые показали первое реальное изображение черной дыры. Здесь стоит оговориться, что на самом деле полученный снимок представляет собой изображение аккрецио́нного диска, явления происходящего в непосредственной близи от еще видимых границ материи, притягиваемой черной дырой, у горизонта событий. И полученное изображение удивительно напоминает нам до боли знакомые кадры из фильма Интерстеллар!
Посвященная этому событию пресс-конференция сейчас транслируется в прямом эфире:
Мифы современной популярной физики
Я решил сформировать список наиболее часто встречающихся неправд и полуправд. Итак, самое частое это…
Большой взрыв
Его изображают примерно так:
Где покупать радиодетали и компоненты? Часть I: Россия
а) которые заточены под любителей DIY и делают свои собственные крутые продукты: конструкторы, модули, обучающие курсы и т.д.;
б) для профи, с широкой номенклатурой электронных компонентов.
Продолжение: Часть II: зарубежные магазины
Оценивание пространственной ориентации, или Как не бояться фильтров Махони и Маджвика
О чём речь
Появление на Хабре поста о фильтре Маджвика было по-своему символическим событием. Видимо, всеобщее увлечение дронами возродило интерес к задаче оценивания ориентации тела по инерциальным измерениям. При этом традиционные методы, основанные на фильтре Калмана, перестали удовлетворять публику — то ли из-за высоких требований к вычислительным ресурсам, неприемлемых для дронов, то ли из-за сложной и неинтуитивной настройки параметров.
Пост сопровождался весьма компактной и эффективной реализацией фильтра на C. Однако судя по комментариям, физический смысл этого кода, а равно и всей статьи, для кого-то остался туманным. Что ж, признаем честно: фильтр Маджвика — самый замысловатый из группы фильтров, основанных в общем-то на очень простых и элегантных принципах. Эти принципы я и рассмотрю в своём посте. Кода здесь не будет. Мой пост — не рассказ о какой-то конкретной реализации алгоритма оценивания ориентации, а скорее приглашение к изобретению собственных вариаций на заданную тему, которых может быть очень много.
Как я Keras на C++ запускал
Не так давно передо мной встала производственная задача – запустить обученную модель нейронной сети Kesas
на нативном C++
коде. Как ни странно, решение оказалось вообще не тривиальным. В результате чего появилась собственная библиотека, дающая такую возможность. О том, как же это – нейросети на чистых крестах и будет сегодняшняя небольшая статья.
Тем, кому не терпится – вот тут репозитарий на github, с подробным описанием использования. Ну а всех остальных прошу под кат…
Теория счастья. Статистика, как научный способ чего-либо не знать
• Случайности случайны?
• Головокружительный полёт бутерброда с маслом
• Статистика, как научный способ чего-либо не знать
• Закон арбузной корки и нормальность ненормальности
• Закон зебры и чужой очереди
• Проклятие режиссёра и проклятые принтеры
• Термодинамика классового неравенства
Речь в этой главе пойдёт о статистике, о погоде и даже о философии. Не пугайтесь, совсем чуть-чуть. Не более того, что можно использовать для tabletalk в приличном обществе.
Физические итоги 2018 года
Новогодние праздники подходят к концу, а значит самое время подвести итоги года вместе с Американским физическим сообществом. Год выдался интересным по всем фронтам – и фундаментальными открытиями, и техническими достижениями.
Хурма 2.0 Инструкция по употреблению
«Всё — яд, всё — лекарство; то и другое определяет доза»
Парацельс
Удивительно, но после публикации статьи Заметки фитохимика. Хурма мой facebook ЛС-ящик просто взорвался от десятков сообщений. Для меня это стало настоящим открытием, то что так велик и многонационален "клуб почитателей хурмы". Одними из самых часто встречающихся вопросов были "Кому нельзя есть хурму? Сколько можно есть хурмы детям? Что за закупорка может быть от хурмы ?" и т.п. Собравшись силами я написал очередную статью, в которой постарался развернуто ответить на эти вопросы. Кроме того, если интересно как "вяжущий вкус" хурмы связан с рыбой, что лечат дубильными веществами и почему можно не бояться "желудочного камня" — традиционно прошу под кат.
Simulation theory: взаимосвязь квантово-химических расчётов и Реальности
Введение
О чём этот текст
Если человек услышит о «симуляции реальности», то в наиболее вероятно ему в голову придут или разные научно-фантастические произведения (типа Матрицы, Темного города, или Теоремы Зеро), или компьютерные игры. В случае людей, чьи головы засорены инженерным образованием, возможно всплывут пакеты типа
А ведь есть ещё один уровень Реальности, который окажется незаслуженно забытым: тот, на котором происходит вся химия — это уровень атомов и молекул. Его тоже можно вполне успешно моделировать на компьютере. Поскольку в данном срезе Реальности всем заведует квантовая механика, то подобные расчёты часто называют квантовой химией. И вот о её связи с Реальностью, изучаемой экспериментальными методами, мы и поговорим.
Этот текст будет об элементарнейших вещах. Но, практика чтения научных журналов и слушания различных докладов показывает, что об этом надо постоянно напоминать.
Текст рассчитан на людей понимающих и/или интересующихся тем, как живут атомы и молекулки.
Взято из xkcd.com
Реализация алгоритма Левенберга-Марквардта для оптимизации нейронных сетей на TensorFlow
Это tutorial по библиотеке TensorFlow. Рассмотрим её немного глубже, чем в статьях про распознавание рукописных цифр. Это tutorial по методам оптимизации. Совсем без математики здесь не обойтись. Ничего страшного, если вы её совершенно забыли. Вспомним. Не будет никаких формальных доказательств и сложных выводов, только необходимый минимум для интуитивного понимания. Для начала небольшая предыстория о том, чем этот алгоритм может быть полезен при оптимизации нейронной сети.
Полгода назад друг попросил показать, как на Python сделать нейросеть. Его компания выпускает приборы для геофизических измерений. Несколько различных зондов в процессе бурения измеряют набор сигналов, связаных с параметрами окружающей скважину среды. В некоторых сложных случаях точно вычислить параметры среды по сигналам долго даже на мощном компьютере, а необходимо интерпретировать результаты измерений в полевых условиях. Возникла идея посчитать на кластере несколько сот тысяч случаев, и на них натренировать нейронную сеть. Так как нейросеть работает очень быстро, её можно использовать для определения параметров, согласующихся с измеренными сигналами, прямо в процессе бурения. Детали есть в статье:
Kushnir, D., Velker, N., Bondarenko, A., Dyatlov, G., & Dashevsky, Y. (2018, October 29). Real-Time Simulation of Deep Azimuthal Resistivity Tool in 2D Fault Model Using Neural Networks (Russian). Society of Petroleum Engineers. doi:10.2118/192573-RU
Одним вечером я показал, как keras реализовать простую нейронную сеть, и друг на работе запустил обучение на насчитанных данных. Через пару дней обсудили результат. С моей точки зрения он выглядел перспективно, но друг сказал, что нужны вычисления с точностью прибора. И если средняя квадратичная ошибка (mean squared error) получилась в районе 1, то нужна была 1е-3. На 3 порядка меньше. В тысячу раз.
Фильтр Маджвика
Предисловие от переводчика
Здесь представлен один из новейших методов расчёта ориентации в пространстве по показаниям датчиков акселерометра, гироскопа и компаса — фильтр Маджвика, который, по словам автора, даёт результат лучший, чем применение фильтра на основе метода Калмана в результатах и производительности. Автор — Себастьян Маджвик (его интернет-магазин). Метод описан в статье на английском. Данная работа защищена в Университете г. Бристоля Перевода я не нашёл. Переводчик из меня так себе, особенно таких сложных текстов. Но нам же интересно, что за метод?
Кое-где буду от себя добавлять — там текст выделен курсивом. Мною найдено более 10 опечаток в оригинальном тексте. Вообще было довольно трудно, поэтому помощь приветствуется — пишите в комментариях, где перефразировать нужно, в общем, где что не так.
Trust Me, I know what I'm doing: самостоятельная адаптация модульного робота под среду выполнения задачи
Невозможно представить научно-фантастический мир будущего без роботов. Будь то андроиды из вселенной Чужих, антропоморфные роботы-машины из Трансформеров, робопес по кличке Аксель или огромный робот-убийца ED-209 фильма «Робокоп», который многим зрителям напоминал цыпленка. Но что общего между ними? Помимо силы, скорости, выносливости и прочих, так сказать, физических особенностей? Интеллект. А что есть интеллект? Умение думать, анализировать данные и принимать решения, если говорить утрировано и в двух словах. Сегодня мы с вами будем знакомиться с первым в мире модульным роботом, который способен анализировать обстановку в полевых условиях, перестраиваясь для достижения поставленной задачи. Как ученым удалось научить робота быстро думать и принимать верные решения, как этот робот работает и насколько хорошо? Все это исследовательская группа описывает в своем докладе, в который мы и погрузимся. Поехали.
Написание ОС: Многозадачность
Доброго времени суток, дорогой читатель, скорее всего, ты видел мою предыдущую статью о том, что самому можно написать работоспособную ОС за достаточно короткий срок. Что же, сегодня мы поговорим о реализации многозадачности в моей ОС.
Информация
- В рейтинге
- Не участвует
- Зарегистрирован
- Активность