Недавно я начал изучать machine learning. Начал с прекрасного, на мой взгляд, курса от Andrew Ng. И чтобы не забыть, а так же повторить выученное решил создать репозиторий Machine Learning in Octave. В нем я собрал математические формулы для гипотез, градиентных спусков, "cost function"-ов, сигмоидов и прочих фундаментальных для машинного обучения "штук". Так же добавил туда упрощенные и доработанные примеры реализации некоторых популярных алгоритмов (нейронная сеть, линейная/логистическая регрессия и пр.) для MatLab/Octave. Надеюсь эта информация будет полезна для тех из вас, кто планирует начать изучение machine learning-а.
Рубрика «Matlab» - 4
Машинное обучение в MatLab-Octave: примеры алгоритмов, подкрепленные формулами
2018-10-31 в 15:52, admin, рубрики: artificial intelligence, data science, machine learning, Matlab, neural network, neural networks, искусственный интеллект, машинное обучение, ПрограммированиеОсобенности оконной фильтрации на ПЛИС
2018-10-23 в 10:56, admin, рубрики: Altera, c++, cordic, fpga, Matlab, Verilog, vhdl, vivado, vivado hls, windows, xilinx, Алгоритмы, математика, ПЛИС, программирование микроконтроллеровВсем привет!
В этой статье речь пойдет об одной важной части цифровой обработки сигналов — оконной фильтрации сигналов, в частности на ПЛИС. В статье будут показаны способы проектирования классических окон стандартной длины и «длинных» окон от 64K до 16M+ отсчетов. Основной язык разработки — VHDL, элементная база — современные кристаллы FPGA Xilinx последних семейств: это Ultrascale, Ultrascale+, 7-series. В статье будет показана реализация CORDIC — базового ядра для конфигурации оконных функций любой длительности, а также основных оконных функций. В статье рассмотрен метод проектирования с помощью языков высокого уровня С/C++ в Vivado HLS. Как обычно, в конце статьи вы найдете ссылку на исходные коды проекта.
КДПВ: типичная схема прохождения сигнала через узлы ЦОС для задач анализа спектра.
Читать полностью »
Data-driven decision на примере выбора цвета для покраски стен
2018-08-30 в 23:01, admin, рубрики: humor, machine learning, Matlab, predictive analytics, statistical data processing, визуализация данных, Занимательные задачки, машинное обучение, ремонт квартирНачав выбирать себе цвет для покраски стены в комнате, я столкнулся с интересной вещью. Весь этот процесс с самого начала начал напоминать работу над каким-нибудь IT-ML-Blah-blah-blah-аналитическим проектом.
Тут есть и заказчик, который не очень понимает, что именно он хочет, но хочет, чтобы все было хорошо и ему нравилось. Еще есть несколько заинтересованных лиц со стороны заказчика, которые не могут договориться по вопросу, что такое «хорошо». Есть какие-то переформулировки задачи, которые под большим вопросом релевантны этому самому «хорошо», но по-крайней мере как-то решаемы. Есть подбор методов решения и попытки их реализовывать. Есть итеративность, которая имплицитно, но монотонно, ведет к какому-то решению, которое бы всех устроило. И есть некоторые странные выводы, которые бы с трудом можно было бы сделать в «реальном» проекте, потому что из-за общей нервозности и участия в процессе денег фокус внимания редко останавливается на этих местах процесса.

Пространство состояний в задачах проектирования систем оптимального управления
2018-04-16 в 19:42, admin, рубрики: LQR контроллер, Matlab, python, Анализ и проектирование систем, математика, пространство состояний, разработка под windows, система оптимального управления
Введение
Исследование системы управления во временной области с помощью переменных состояния широко используется в последнее время благодаря простоте проведения анализа.
Состоянию системы соответствует точка в определённом евклидовом пространстве, а поведение системы во времени характеризуется траекторией, описываемой этой точкой.
При этом математический аппарат включает готовые решения по аналоговому и дискретному LQR и DLQR контролерам, фильтра Калмана, и всё это с применением матриц и векторов, что и позволяет записывать уравнения системы управления в обобщённом виде, получая дополнительную информацию при их решении.
Целью данной публикации является рассмотрение решения задач проектирования систем оптимального управления методом описания пространства состояний с использованием программных средств Python.
Читать полностью »
Дескрипторная графика в MATLAB: вторая горизонтальная ось
2018-03-10 в 11:57, admin, рубрики: Matlab, графики, дескрипторная графика, диаграммы, интерфейсы, подготовка графиков, ПрограммированиеПри изучении дескрипторной графики в MATLAB обнаружилась нехватка «юзер френдли» функционала, а именно отсутствие стандартной команды позволяющей добавить дополнительную горизонтальную ось.
Добавление дополнительной вертикальной оси, командой plotyy предусмотрено и в help к ней, в разделе topics, есть пример добавления дополнительной оси x, однако данный пример, как и сама команда, не без недостатков, что любезно сообщает нам сам разработчик фразой:
plotyy is not recommended
Виртуальное проектирование и настройка автомобильной аудиосистемы: опыт компании HARMAN
2017-11-14 в 5:50, admin, рубрики: COMSOL, Harman, Matlab, автоматизация расчетов, автомобильные аудиосистемы, Автомобильные гаджеты, акустика, Блог компании COMSOL, виртуальная разработка, геометрическая акустика, громкоговорители, звук, моделирование, параметры Тиля-Смолла, проектирование сабвуферов, физикаСовременные автомобили оснащаются информационно-развлекательными мультимедийными системами со множеством функций: от подключения смартфонов до интерактивных сенсорных дисплеев и выдвижных экранов. Неизменным же и наиболее используемым компонентом подобного оборудования остается акустическая подсистема, и качество её звучания — одна из основополагающих и капризных характеристик. Акустическая картина в салоне зависит от целого спектра различных деталей и нюансов: расположения и направления динамиков, их монтажа, геометрических особенностей внутренней отделки и свойств материалов, выбранных при изготовлении автомобиля в целом.
Для каждой модели автомобиля требуется своя уникальная конфигурация, и специалисты по акустике и моделированию компании HARMAN — одного из лидеров данного рынка в премиальном сегменте — учитывают это в процессе разработки и тонкой настройки различных компонентов автомобильной акустики. Использование сочетания натурных физических экспериментов с численным моделированием на базе комбинации программных пакетов COMSOL® и MATLAB® позволяет инженерам компании ускорить разработку конечного решения, а также дает возможность испытывать прототипы аудиосистемы виртуально, до создания дорогостоящих физических образцов. Такой подход позволяет воплощать в жизнь все разумные требования заказчика и производить высококачественное кастомизированное акустическое оборудование в максимально сжатые сроки.
Инженеры отдела виртуальной разработки HARMAN поделились с нами некоторыми деталями своего рабочего процесса и рядом примеров разработок с экспериментальной валидацией результатов акустического моделирования.
Текстонезависимая идентификация по голосу
2017-08-28 в 7:41, admin, рубрики: dsp, Matlab, mfcc, nnet, speaker identification, SVM, Алгоритмы, машинное обучение, ПрограммированиеЯ люблю истории про апокалипсис, про то, как нашу планету порабощают пришельцы, обезьяны или терминаторы, и с детства мечтал приблизить последний день человечества.
Однако, я не умею строить летающие тарелки или синтезировать вирусы, а потому речь пойдет про терминаторов, а точнее о том как этим трудягам помочь отыскать Джона Коннора.
Мой рукодельный терминатор будет несколько упрощён — он не сможет ходить, стрелять, говорить "I'll be back". Единственное на что он будет способен — распознать голос Коннора, ежели он его услышит (ну или, например, Черчилля, если его тоже надо будет найти).
Бинарная сегментация изображений методом фиксации уровня (Level set method)
2017-07-09 в 10:39, admin, рубрики: level set method, Matlab, Алгоритмы, компьютерная графика, математика, машинное зрение, метод фиксации уровня, обработка изображений, сегментация, фильтрацияСегментация изображений является задачей разбиения цифрового изображения на одну или несколько областей, представляющих интерес. Это фундаментальная проблема в области компьютерного зрения, которая решается многими различными способами, каждый из которых обладает своими преимуществами и недостатками.
В этой статье я кратко рассмотрю понятие метода фиксации уровня и неявно заданных динамических поверхностей (level set method). Также рассмотрю роль этого метода в бинарной сегментации с введением и определением математических конструкций, таких как SDT (Signed Distance Transforms), маркированной карты расстояний.
Слева — исходное изображение, справа — сегментированное
Читать полностью »
Линеаризованная расходная характеристика паровой турбины. Часть 2. Пример построения для турбины ПТ-80 в MATLAB
2017-05-22 в 18:01, admin, рубрики: Geektimes, Matlab, Научно-популярное, паровая турбина, пример, Энергия и элементы питанияПредисловие к первой части
Моделирование паровых турбин — повседневная задача сотен людей в нашей стране. Вместо слова модель принято говорить расходная характеристика. Расходные характеристики паровых турбин используют при решении таких задач, как вычисление удельного расхода условного топлива на электроэнергию и тепло, производимые ТЭЦ; оптимизация работы ТЭЦ; планирование и ведение режимов ТЭЦ.
Мною разработана новая расходная характеристика паровой турбины — линеаризованная расходная характеристика паровой турбины. Разработанная расходная характеристика удобна и эффективна в решении указанных задач. Однако на текущий момент она описана лишь в двух научных работах:
- Оптимизация работы ТЭЦ в условиях оптового рынка электроэнергии и мощности России;
- Вычислительные методы определения удельных расходов условного топлива ТЭЦ на отпущенную электрическую и тепловую энергию в режиме комбинированной выработки.
И сейчас в своем блоге мне бы хотелось:
- во-первых, простым и доступным языком ответить на основные вопросы о новой расходной характеристике (см. Линеаризованная расходная характеристика паровой турбины. Часть 1. Основные вопросы);
- во-вторых, предоставить пример построения новой расходной характеристики, который поможет разобраться и в методе построения, и в свойствах характеристики (см. ниже);
- в-третьих, опровергнуть два известных утверждения относительно режимов работы паровой турбины (см. Линеаризованная расходная характеристика паровой турбины. Часть 3. Развенчиваем мифы о работе паровой турбины).
Построение графиков с двумя независимыми осями в Matlab
2017-05-07 в 15:37, admin, рубрики: Matlab, графики и диаграммы, Программирование, СофтСтатья будет полезна тем, кто оформляет графики в среде Matlab.
При подготовке графиков для публикации статей в научных журналах и различного рода отчетов, я довольно часто сталкивался с необходимостью построения нескольких кривых, относящихся каждая к своей оси — чтобы не перегружать статью графиками и не выходить за их лимит. Но для этого в Matlab до версии R2014a была лишь команда plotyy(X1,Y1,X2,Y2), которая имеет ряд неприятных особенностей, из-за которых приходилось пользоваться другими программами и делать все вручную, что во-первых, усложняет этот процесс с точки зрения единой стилистики, во-вторых требует большого количества времени, а в-третьих не позволяет оперативно вносить изменения. Читать полностью »