Как стать автором
Обновить
9
0
Александр Соболев @10s

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

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

Курс лекций «Основы цифровой обработки сигналов»

Время на прочтение12 мин
Количество просмотров193K
Всем привет!

Часто ко мне обращаются люди с вопросами по задачам из области цифровой обработки сигналов (ЦОС). Я подробно рассказываю нюансы, подсказываю нужные источники информации. Но всем слушателям, как показало время, не хватает практических задач и примеров в процессе познания этой области. В связи с этим я решил написать краткий интерактивный курс по цифровой обработке сигналов и выложить его в открытый доступ.

Большая часть обучающего материала для наглядного и интерактивного представления реализована с использованием Jupyter Notebook. Предполагается, что читатель имеет базовые знания из области высшей математики, а также немного владеет языком программирования Python.


Читать дальше →
Всего голосов 100: ↑100 и ↓0+100
Комментарии97

Audio AI: выделяем вокал из музыки с помощью свёрточных нейросетей

Время на прочтение12 мин
Количество просмотров60K
Взлом музыки для демократизации производного контента

Отказ от ответственности: вся интеллектуальная собственность, проекты и методы, описанные в этой статье, раскрыты в патентах US10014002B2 и US9842609B2.

Вот бы вернуться в 1965 год, постучать в парадную дверь студии «Эбби-Роуд» с пропуском, зайти внутрь — и услышать настоящие голоса Леннона и Маккартни… Что ж, давайте попробуем. Входные данные: MP3 среднего качества песни «Битлз» We Can Work it Out. Верхняя дорожка — входной микс, нижняя дорожка — изолированный вокал, который выделила наша нейросеть.

Читать дальше →
Всего голосов 69: ↑68 и ↓1+67
Комментарии27

Трехмерный движок на формулах Excel для чайников

Время на прочтение9 мин
Количество просмотров70K


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

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

Также я сделал небольшое веб-приложение, где можно потренироваться в создании формул для произвольных фигур и сгенерировать свой файл Excel.

Осторожно: 19 картинок и 3 анимации под катом.
Читать дальше →
Всего голосов 211: ↑209 и ↓2+207
Комментарии54

Компоненты электровелосипеда: мотор

Время на прочтение6 мин
Количество просмотров53K
Приветствую снова!

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



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

Надеюсь, это кому то покажется интересным. Обозревать буду только трехфазные двигатели постоянного тока — ибо остальные не исследовал, да и относительно редки эти остальные
в наше время.
Читать дальше →
Всего голосов 56: ↑51 и ↓5+46
Комментарии77

Обзор техник реализации игрового ИИ

Время на прочтение55 мин
Количество просмотров58K
image

Введение


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

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

Что же такое «игровой ИИ»?


Игровой ИИ в основном занимается выбором действий сущности в зависимости от текущих условий. В традиционной литературе по ИИ называет это управлением "интеллектуальными агентами". Агентом обычно является персонаж игры, но это может быть и машина, робот или даже нечто более абстрактное — целая группа сущностей, страна или цивилизация. В любом случае это объект, следящий за своим окружением, принимающий на основании него решения и действующий в соответствии с этими решениями. Иногда это называют циклом «восприятие-мышление-действие» (Sense/Think/Act):

  • Восприятие: агент распознаёт — или ему сообщают — информацию об окружении, которая может влиять на его поведение (например, находящиеся поблизости опасности, собираемые предметы, важные точки и так далее)
  • Мышление: агент принимает решение о том, как поступить в ответ (например, решает, достаточно ли безопасно собрать предметы, стоит ли ему сражаться или лучше сначала спрятаться)
  • Действие: агент выполняет действия для реализации своих решений (например, начинает двигаться по маршруту к врагу или к предмету, и так далее)
  • … затем из-за действий персонажей ситуация изменяется, поэтому цикл должен повториться с новыми данными.
Читать дальше →
Всего голосов 67: ↑66 и ↓1+65
Комментарии15

Как устроен поиск

Время на прочтение15 мин
Количество просмотров40K
Привет, юзернейм! Каждый день мы сталкиваемся с поиском различных данных. Почти на каждом веб-сайте с большим количеством информации сейчас есть поиск. Поиск есть в домашних компьютерах, в мобильных телефонах, в различного рода программном обеспечении. Конечно, если спросить любого разработчика про поиск с точки зрения технологий, на ум сразу придет elasticsearch, lucene или sphinx. Сегодня я хочу заглянуть с тобой «под капот» полнотекстового поиска и разобраться в первом приближении, как же он работает, на примере hh.ru.

image
Читать дальше →
Всего голосов 56: ↑54 и ↓2+52
Комментарии11

Реверс-инжиниринг прошивки устройства на примере мигающего «носорога». Часть 1

Время на прочтение16 мин
Количество просмотров44K

26 апреля 2018 года компания ИНФОРИОН провела конференцию для студентов МГТУ им. Баумана SMARTRHINO-2018. Специально для конференции было подготовлено небольшое устройство на базе микроконтроллера STM32F042.

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

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

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

Осторожно, под катом мигающий носорог и его прошивка!
Читать дальше →
Всего голосов 52: ↑52 и ↓0+52
Комментарии26

Реверсим паяльную станцию HI-END класса

Время на прочтение16 мин
Количество просмотров67K


У нас было несколько фотографий основной печатной платы, видео из YouTube с осциллограммами напряжений на стоках мосфетов, комментарий на форуме с перечислением ёмкостей резонансных конденсаторов, а также несколько видеозаписей распаковок со съёмками процесса разогрева жала. Особое беспокойство вызывало видео с измерением пиковой потребляемой мощности при разогреве. Нет ничего более грустного, чем сгоревший свежекупленный на амазоне картридж стоимостью четыре тысячи рублей. Но… давайте начнём всё с начала.
Читать дальше →
Всего голосов 116: ↑115 и ↓1+114
Комментарии89

Магнитный редуктор для бесколлекторного мотора

Время на прочтение5 мин
Количество просмотров50K
image

В данной статье я расскажу о магнитном редукторе, разработанном нами. Данный редуктор планируется использовать в связке с бесколлекторным мотором. В статье будет рассказано о возможной области применения данного редуктора, о его плюсах и минусах по сравнению с обычными редукторами.
Всего голосов 112: ↑111 и ↓1+110
Комментарии122

Обучаемый Telegram чат-бот с ИИ в 30 строчек кода на Python

Время на прочтение6 мин
Количество просмотров354K
image

Сегодня мне в голову пришла мысль: «А почему бы не написать Telegram чат-бота с ИИ, которого потом можно будет обучать?»

Читать дальше →
Всего голосов 82: ↑68 и ↓14+54
Комментарии106

Применение искусственного интеллекта в синтетической химии

Время на прочтение19 мин
Количество просмотров18K


Интервью с профессором Игорем Баскиным, доктором физико-математических наук, ведущим научный сотрудник физического факультета МГУ.

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

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

В этом состоит фундаментальное отличие от стандартных задач, решаемых при помощи нейронных сетей, например, распознавания изображений. Действительно, то, что цифра 8 изображается в виде двух соприкасающихся окружностей, не является следствием каких-либо законов природы – это просто предмет соглашений между людьми. А вот римляне в свое время решили, что для них лучше изображать это же число как VIII. Поскольку такие соглашения делаются ради удобства, их форма выбирается такой, чтобы естественные нейронные сети в голове у человека очень легко на подсознательном уровне их распознавали.

Читать дальше →
Всего голосов 15: ↑14 и ↓1+13
Комментарии21

Материалы открытого курса OpenDataScience и Mail.Ru Group по машинному обучению и новый запуск

Время на прочтение9 мин
Количество просмотров148K

Недавно OpenDataScience и Mail.Ru Group провели открытый курс машинного обучения. В прошлом анонсе много сказано о курсе. В этой статье мы поделимся материалами курса, а также объявим новый запуск.



UPD: теперь курс — на английском языке под брендом mlcourse.ai со статьями на Medium, а материалами — на Kaggle (Dataset) и на GitHub.


Кому не терпится: новый запуск курса — 1 февраля, регистрация не нужна, но чтоб мы вас запомнили и отдельно пригласили, заполните форму. Курс состоит из серии статей на Хабре (Первичный анализ данных с Pandas — первая из них), дополняющих их лекций на YouTube-канале, воспроизводимых материалов (Jupyter notebooks в github-репозитории курса), домашних заданий, соревнований Kaggle Inclass, тьюториалов и индивидуальных проектов по анализу данных. Главные новости будут в группе ВКонтакте, а жизнь во время курса будет теплиться в Slack OpenDataScience (вступить) в канале #mlcourse_ai.

Всего голосов 80: ↑79 и ↓1+78
Комментарии24

Как правильно читать состав косметики

Время на прочтение8 мин
Количество просмотров82K


Ингредиенты перечисляются по понижению массовой доли: что ближе к началу, того больше по массе. Вещества, которых в составе менее 1% считаются равнозначными для этого списка, и их можно указывать после основных в любом порядке. В РФ по закону указывается всё без исключения (нет ситуации, когда при малом содержании можно пропускать вещество), и на практике это соблюдается. Почему — чуть ниже.

Нельзя писать «консервант» без указания, что это именно такое, нельзя писать «минеральный комплекс кислот» без детализации, что это такое, но можно писать коммерческие названия. То есть регистрируете свой минеральный комплекс кислот или консервант как товарный знак — и пишете уже его. Можно писать химические наименования или торговые, причём можно и латиницей, и на русском. В непонятных веществах, например, часто прячут то, что мнительные женщины не хотят увидеть на этикетке.
Читать дальше →
Всего голосов 84: ↑84 и ↓0+84
Комментарии115

Криптография русского крестьянина

Время на прочтение5 мин
Количество просмотров34K

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

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

Умножение методом русских крестьян


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

Общее описание метода просто, но не слишком информативно. Тем не менее, давайте начнём с него.
Читать дальше →
Всего голосов 80: ↑79 и ↓1+78
Комментарии15

Невероятно эффектная цветомузыка на Arduino и светодиодах

Время на прочтение4 мин
Количество просмотров165K
С наступающим! Приближается Новый год, а значит, пора срочно создавать настроение! Ну и как всегда в это время года рождаются десятки электронных схем различных цветомузыкальных установок.

Чего только самобытные мастера не придумают. От трехцветных моргалок до лазерных многолучевых установок с управлением по MIDI интерфейсу.



Как большой поклонник, так называемых адресных светодиодов, хочу показать вам очень простую и удивительную цветомузыку. Я вообще такой ни разу не видел. Пока не собрал за один вечер. Итак, визуализатор звука!
Всего голосов 51: ↑46 и ↓5+41
Комментарии116

Трёхмерная графика с нуля. Часть 1: трассировка лучей

Время на прочтение42 мин
Количество просмотров133K
image


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

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

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


Читать дальше →
Всего голосов 90: ↑90 и ↓0+90
Комментарии53

Освещение растений белыми светодиодами

Время на прочтение13 мин
Количество просмотров268K
Интенсивность фотосинтеза под красным светом максимальна, но под одним только красным растения гибнут либо их развитие нарушается. Например, корейские исследователи [1] показали, что при освещении чистым красным масса выращенного салата больше, чем при освещении сочетанием красного и синего, но в листьях значимо меньше хлорофилла, полифенолов и антиоксидантов. А биофак МГУ [2] установил, что в листьях китайской капусты под узкополосным красным и синим светом (по сравнению с освещением натриевой лампой) снижается синтез сахаров, угнетается рост и не происходит цветения.


Рис. 1 Леанна Гарфилд, Tech Insider — Aerofarms

Какое нужно освещение, чтобы при умеренном энергопотреблении получить полноценно развитое, большое, ароматное и вкусное растение?
Читать дальше →
Всего голосов 54: ↑52 и ↓2+50
Комментарии287

Выращивание искусственного интеллекта на примере простой игры

Время на прочтение4 мин
Количество просмотров37K


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

Результатом работы стало то, что ИИ, не зная правил, самостоятельно освоил игру крестики-нолики и нашел слабости ботов, которые играли против него. Но начал я с еще более простой задачи.
Читать дальше →
Всего голосов 24: ↑23 и ↓1+22
Комментарии30

Руководство по материалам электротехники для всех. Часть 1

Время на прочтение15 мин
Количество просмотров114K
Привет гиктаймс! Я решил опубликовать по частям свое руководство по материалам, используемым не только в электротехнике, но и вообще в технике, в том числе самодельщиками. С описанием, примерами применения, заметками по работе. Руководство написано максимально просто, и будет понятно всем, от школьника до пенсионера.

В этой части начинаем разбирать проводники — Серебро, Медь, Алюминий.

image

Добро пожаловать под кат (ТРАФИК)
узнать о материалах
Всего голосов 95: ↑94 и ↓1+93
Комментарии161

Нейронные сети для начинающих. Часть 1

Время на прочтение7 мин
Количество просмотров1.6M
image

Привет всем читателям Habrahabr, в этой статье я хочу поделиться с Вами моим опытом в изучении нейронных сетей и, как следствие, их реализации, с помощью языка программирования Java, на платформе Android. Мое знакомство с нейронными сетями произошло, когда вышло приложение Prisma. Оно обрабатывает любую фотографию, с помощью нейронных сетей, и воспроизводит ее с нуля, используя выбранный стиль. Заинтересовавшись этим, я бросился искать статьи и «туториалы», в первую очередь, на Хабре. И к моему великому удивлению, я не нашел ни одну статью, которая четко и поэтапно расписывала алгоритм работы нейронных сетей. Информация была разрознена и в ней отсутствовали ключевые моменты. Также, большинство авторов бросается показывать код на том или ином языке программирования, не прибегая к детальным объяснениям.

Поэтому сейчас, когда я достаточно хорошо освоил нейронные сети и нашел огромное количество информации с разных иностранных порталов, я хотел бы поделиться этим с людьми в серии публикаций, где я соберу всю информацию, которая потребуется вам, если вы только начинаете знакомство с нейронными сетями. В этой статье, я не буду делать сильный акцент на Java и буду объяснять все на примерах, чтобы вы сами смогли перенести это на любой, нужный вам язык программирования. В последующих статьях, я расскажу о своем приложении, написанном под андроид, которое предсказывает движение акций или валюты. Иными словами, всех желающих окунуться в мир нейронных сетей и жаждущих простого и доступного изложения информации или просто тех, кто что-то не понял и хочет подтянуть, добро пожаловать под кат.
Читать дальше →
Всего голосов 70: ↑60 и ↓10+50
Комментарии64
1
23 ...

Информация

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