Инструкция по работе с RB ML Studio
От первого знакомства с машинным обучением до готовой модели для модема RB-Modem: что означают понятия, какие способы создания моделей существуют, что куда нажимать на каждом экране и полный разбор реального проекта от А до Я.
1 Как работает машинное обучение на сигналах (простыми словами)
Обычно при программировании контроллера или модема человек сам пишет правило: «если ток больше 10 мА — насос качает». Но в реальной жизни сигнал дрожит, на разных объектах базовый уровень отличается, а сложные режимы (например, кавитацию, сухой ход насоса или помеху связи) невозможно описать одним простым порогом.
В машинном обучении мы поступаем наоборот:
- Собираем записи сигнала с датчика или модема.
- Подписываем их (даём метки) — указываем, что на самом деле происходило в каждый момент.
- Отдаём эти примеры студии, и компьютер сам находит закономерности — строит математическую модель.
Вся работа в студии разбита на 6 понятных шагов, которые отображаются вверху экрана в виде шестиугольных сот:
Данные 2
Окно 3
Признаки 4
Обучение 5
Проверка 6
На модем
Три вида задач: какой вопрос мы задаём модели?
Прежде чем создавать проект, нужно понять, на какой из трёх вопросов должна отвечать ваша будущая модель:
| Вопрос в студии | Как называется в ML | Что делает модель | Жизненные примеры |
|---|---|---|---|
| Что происходит? | Классификация | Выбирает один вариант (класс) из заранее известного списка ваших меток. | • Насос: стоит, разгон, качает, сухой ход• Двигатель: пуск, работа, останов• Связь LTE: хорошо, слабая антенна, помеха |
| Сколько? | Регрессия | Называет непрерывное число (количество, уровень, расход). | • Уровень воды в баке в метрах (1.45 м) при болтанке волны• Оценка расхода или нагрузки по косвенному датчику |
| Всё ли в порядке? | Поиск аномалий | Учится только на нормальной работе (normal) и выдаёт тревогу, когда видит что-то непохожее на норму. |
• Поломка насоса или вентилятора, которую мы ещё ни разу не видели и не можем записать заранее • Необычное энергопотребление |
2 Вход и регистрация в сервисе
Когда вы открываете страницу студии в браузере, вас встречает экран входа. У каждого пользователя в студии свой личный кабинет: ваши проекты и загруженные данные видите только вы.
Что куда нажимать:
- ① Вкладка «Создать аккаунт» — нажмите сюда, если вы зашли в студию впервые (если аккаунт уже есть, оставайтесь на вкладке «Войти»).
- ② Поле «Имя» — придумайте логин из латинских букв и цифр (не короче 3 символов, можно использовать точку, дефис или подчёркивание, например
ivan.petrov). - ③ Поля «Пароль» и «Пароль ещё раз» — введите пароль (не короче 6 знаков) и повторите его ниже.
- ④ Кнопка «Создать аккаунт» — нажмите, чтобы сразу войти в студию.
3 Главная страница, создание и настройки проекта
После входа вы попадаете на главную страницу «Мои проекты».
Как устроена главная страница:
- ① Верхняя панель навигации:
- «Мои проекты» — в любой момент возвращает вас на эту главную страницу;
- «Каталог блоков» — справочник всех способов обработки и обучения моделей;
- «Документация» — открывает эту подробную инструкцию;
- «Выйти» — выход из учётной записи.
- ② Таблица «Мои проекты» — список всех созданных вами проектов. Нажмите на красное название проекта, чтобы открыть его ровно на том шаге, где вы остановились. Кнопка «Удалить» справа удаляет проект.
- ③ Галерея готовых примеров — в студию встроено 9 учебных проектов, в которые уже загружены записи сигналов:
- Примеры с интерфейсов модема (напряжение 0–40 В, токовая петля 4–20 мА, частота импульсов, счётчик по RS-485);
- Примеры с характеристик самого модема (качество связи LTE: RSRP, RSRQ, SINR).
- ④ Кнопка «Открыть пример» — лучший способ познакомиться со студией! Нажмите её на любой карточке, и студия создаст для вас копию этого проекта с подробными пояснениями «В этом примере» на каждом из 6 шагов.
Как создать свой проект с нуля
Когда вы начинаете работу со своей собственной задачей, прокрутите главную страницу в самый низ до блока «Своя задача» и задайте начальные параметры проекта:
Что заполнить и куда нажать:
- ① «Название проекта» — напишите понятное название, например
Контроль насоса котельной. - ② «Какой вопрос» — выберите один из трёх типов задач (Что происходит?, Сколько? или Всё ли в порядке?).
- ③ «Откуда сигнал» — выберите из списка, к какому входу модема подключён датчик (например,
Токовая петля 4–20 мАилиВход напряжения 0–40 В). Это поможет потом автоматически сформировать программу для модема. - ④ «Как часто модем снимает значение, мс» — укажите шаг времени между соседними измерениями в миллисекундах (1 секунда = 1000 мс):
50мс (20 раз в секунду) — для быстрых скачков, движений и вибрации;200–1000мс — для тока насоса, давления, расхода;10000мс (раз в 10 секунд) — для медленных процессов: температуры или качества связи.
- ⑤ «Какие величины в одном отсчёте» — если вы записываете одно число (например, только ток), напишите
ток. Если в каждом измерении сразу несколько чисел (например, три показателя связи или обороты и ток), перечислите их через запятую:rsrp, rsrq, sinr. - ⑥ Кнопка «Создать проект» — нажмите, чтобы создать проект.
Настройки проекта: полные параметры сигнала и ограничения модема
Сразу после создания проекта (а также в любой момент работы) вы можете открыть полные «Настройки проекта» по ссылке в правом верхнем углу экрана (над шестиугольными сотами шагов). Здесь собраны все базовые параметры вашей задачи, от которых зависит дальнейшая загрузка данных и проверка модели:
Что можно настроить перед загрузкой данных:
- ① Название и описание проекта — здесь можно изменить название проекта и записать пояснение для себя или коллег (какой объект, какой датчик, какие режимы мы ищем).
- ② «Имя модели на модеме» — короткое имя латинскими буквами и подчёркиваниями (например,
pump_modes). Под этим именем модель потом сохранится в память модема (/models/pump_modes.tflite). - ③ «Откуда сигнал» и «Единица измерения» — выбранный интерфейс модема и подпись единиц измерения (например,
мкА,мВ,дБм). Эта единица измерения будет подписываться на всех графиках сигнала. - ④ Параметры оцифровки («Шаг между отсчётами, мс», «Умножать значения при загрузке на», «Величины в одном отсчёте»):
- «Шаг между отсчётами, мс» — период опроса датчика (должен совпадать с тем, как модем записывает сигнал);
- «Умножать значения при загрузке на» — удобный коэффициент пересчёта при импорте файлов (по умолчанию
1.0; например, если модем пишет микроамперы, а вы хотите видеть на графиках миллиамперы, можно поставить0.001).
- ⑤ Блок «Сколько можно занять на модеме» — технические рамки модема RB-Modem (по умолчанию уже выставлены оптимальные значения: Память
32 КБ, Файл модели96 КБ, Время на один ответ50 мс). На шаге 5 студия автоматически сверит каждую обученную модель с этими числами и предупредит, если модель окажется слишком тяжёлой. - ⑥ Кнопка «Сохранить настройки» — нажмите, чтобы сохранить изменения и перейти к шагу 1.
4 Шаг 1 «Данные»: как загрузить и подписать собранные записи
На первом шаге мы показываем студии собранные записи сигнала и объясняем ей, что на них изображено (размечаем метками).
Как загрузить файлы записей
Что куда нажимать:
- ① Панель сот (шаги 1–6) — ваш маршрут по проекту. Галочка
✓означает, что шаг уже выполнен; закрашенная красная сота — шаг, который нужно сделать сейчас. Справа над сотами есть кнопка «Настройки проекта». - ② Сводные цифры — сколько записей уже в проекте, сколько это минут сигнала и сколько разных меток (классов) вы добавили.
- ③ Спойлер «Что можно записать с модема» — нажмите, чтобы посмотреть подсказку: какие датчики и внутренние параметры умеет считывать модем RB-Modem.
- ④ Выбор формата («С модема» или «Таблица CSV»):
- «С модема» — если вы выгрузили с модема файлы архива временного ряда
/ts/имя.oldи/ts/имя.cur; - «Таблица CSV» — если ваши данные сохранены в виде обычной таблицы
.csv(из Excel или другого прибора). При выборе CSV студия сама прочитает шапку таблицы и подставит столбцы с числами.
- «С модема» — если вы выгрузили с модема файлы архива временного ряда
- ⑤ Кнопка «Выбрать файлы» — укажите файлы на компьютере. Чуть ниже проверьте «Тип чисел» (обычно целые 2 байта или дробные
float). - ⑥ Поле «Что происходит в этих записях» — сюда вписывается метка (правильный ответ):
- Если во всём загружаемом файле происходит что-то одно (например, весь файл насос только качал), напишите здесь
качает. - Если внутри одной длинной записи режимы менялись (сначала стоял, потом разогнался, потом качал), оставьте это поле пустым — вы удобно разметите участки мышкой прямо на графике!
- Для задачи поиска аномалий нормальную работу всегда подписывайте словом
normal.
- Если во всём загружаемом файле происходит что-то одно (например, весь файл насос только качал), напишите здесь
- ⑦ Поле «Где и чем записано» и «Куда положить»:
- В поле «Где и чем записано» полезно указать объект или номер устройства в формате
site=насосная 1(зачем это нужно — увидим на шаге 2); - В списке «Куда положить» оставьте
в обучение.
- В поле «Где и чем записано» полезно указать объект или номер устройства в формате
- ⑧ Кнопка «Загрузить записи» — нажмите, чтобы добавить файлы в проект.
Как проверить баланс данных и управлять таблицей записей
На что обратить внимание и куда нажимать:
- ① Столбчатый график «Сколько примеров каждой метки»:
Совет начинающим Старайтесь, чтобы для каждого режима (метки) было собрано хотя бы по 30–50 примеров (окон), а столбики на этом графике не отличались в десятки раз. Если какого-то режима совсем мало, модель будет реже его замечать.
- ② Поля поиска и фильтрации — позволяют быстро отфильтровать таблицу по названию, метке или выборке.
- ③ Выпадающий список «С выбранными» — если отметить несколько записей галочками ④, через это меню можно разом дать им метку (
подписать), указать площадку (указать площадку и прочее), временно выключить из обучения (отключить), переложитьна экзаменилиудалить. - ⑤ Название записи (красная ссылка) — нажмите на имя любой записи, чтобы открыть её график и разметить по кусочкам.
- ⑥ Кнопка «Перейти к шагу 2: окно» — когда все записи загружены и подписаны, нажмите эту кнопку.
Как разметить длинную запись прямо на графике
Когда вы нажимаете на название записи в таблице, открывается окно просмотра и разметки сигнала:
Что куда нажимать:
- ① График сигнала с цветными зонами — если во время записи режим менялся, просто зажмите левую кнопку мыши на графике и проведите вправо по нужному участку. Всплывёт окошко «Что происходит с ... по ... с?» — введите название режима (например,
сухой ход), и участок сразу окрасится в свой цвет! - ② Галочка «показать окна» — включите её, чтобы увидеть в нижней части графика красные кирпичики — это те самые окна, на которые студия нарежет вашу запись.
- ③ Поле «Что происходит во всей записи» — общая метка на всю запись целиком (если нет отдельных кусков).
- ④ Поле «Куски с другими метками» — сюда автоматически попадают все выделенные вами мышкой участки (формат:
начало_в_отсчётах конец_в_отсчётах метка). При желании числа можно подправить вручную. - ⑤ Поле «Где и чем записано» — площадка или устройство (например,
site=насосная 1). - ⑥ Кнопка «Сохранить запись» — обязательно нажмите её после разметки!
- ⑦ Кнопка «Проверить моделью» — когда вы обучите модель на шаге 4, этой кнопкой можно в один клик проверить работу модели на данной записи.
5 Шаг 2 «Окно»: как нарезать сигнал и отложить честный экзамен
Зачем нужны «окна»?
Когда модель работает внутри модема в реальном времени, она не может ждать окончания суток — она должна каждые несколько секунд смотреть на последний короткий отрезок сигнала (окно) и сразу говорить ответ. Кроме того, нарезая одну длинную запись на перекрывающиеся окна, мы из одной записи получаем десятки обучающих примеров для модели!
Что куда нажимать при выборе окна:
- ① Быстрые кнопки («Короткое событие, 1 с», «Жест или скачок, 2 с», «Медленный процесс, 10 с») — если не знаете, какие числа вписать, нажмите подходящую по смыслу кнопку, и студия сама посчитает отсчёты.
- ② Поле «Длина окна, отсчётов» — сколько измерений помещается в одно окно. Окно должно быть таким, чтобы человек, глядя только на этот кусочек графика, сам мог понять, что происходит. Например, если разгон насоса длится 4–5 секунд, окно в
5 с(25отсчётов по200мс) увидит его целиком. - ③ Поле «Шаг окна, отсчётов» — насколько сдвигается окно для следующего ответа. Обычно шаг берут в 2–5 раз меньше длины окна (например, длина
25, шаг5): тогда окна перекрываются, мы получаем больше примеров для обучения, а модем даёт свежий ответ каждую секунду. - ④ График с окнами — показывает, как выбранные окна (красные полоски внизу и розовая область первого окна) ложатся на ваш реальный сигнал.
- ⑤ Блок «Если в одной записи несколько меток» — определяет, какую метку дать окну, если оно попало на границу двух режимов:
- Метка в конце окна — подходит почти всегда (модель отвечает, какое состояние наступило к концу окна);
- Метка большинства отсчётов окна — подходит для плавных режимов (какого состояния в окне больше, так его и называем);
- Метка из списка, если есть в окне / занимает долю окна — выбирайте, когда нужно поймать короткую аварию или удар, даже если он занял лишь часть окна.
- ⑥ Кнопка «Сохранить окно» — нажмите, чтобы сохранить длину и шаг окна.
Зачем откладывать «экзамен» и как это сделать правильно?
- Обучение (train) — по этим окнам модель учится;
- Контроль (val) — по ним студия следит во время учёбы, не начала ли модель зубрить;
- Экзамен (test) — эти записи прячутся до самого конца (шага 5), чтобы честно проверить модель на незнакомых данных.
Что куда нажимать:
- ① Выберите один из трёх способов отложить экзамен:
- «Самые свежие записи — на экзамен» — берёт конец записей каждого класса. Выбирайте, если все данные записаны на одном стенде или одном устройстве;
- «Случайно, но площадками целиком» — если у вас записи с нескольких объектов или модемов (
siteилиdevice), студия отправит на экзамен отдельные объекты целиком, чтобы куски одной и той же записи не попали одновременно и в учёбу, и в тест; - «Выбранные площадки — на экзамен» — вы сами указываете в поле ④, какой объект (например,
насосная 4) оставить для проверки.
- ② Поля «На экзамен, %» и «Для контроля во время обучения, %» — оставьте стандартные
20–25 %на экзамен и15 %для контроля. - ③ Список «Что считать площадкой» — выберите ключ
siteилиdevice(если указывали его на шаге 1). - ⑤ Кнопки «Показать, как поделится» и «Разделить записи» — нажмите «Разделить записи», чтобы применить деление.
- ⑥ Счётчики окон и ⑦ График разделения — убедитесь, что и в столбике
обучение, и в столбикетестприсутствуют все цвета (все ваши метки), и нажмите «Перейти к шагу 3: признаки».
6 Шаг 3 «Признаки»: как выделить главное из сигнала и увидеть данные в 3D
Что такое «признаки» и зачем нужен блок обработки?
В одном окне сигнала может быть 50, 100 или 500 отдельных точек-измерений. Если подать их в модель «как есть», модели придётся самой разбираться в сотнях чисел. Но часто вместо сотни сырых точек гораздо лучше посчитать по окну несколько главных характеристик — признаков (например, среднее значение, размах или силу дрожания на разных частотах). Это называется извлечением признаков.
Как новичку выбрать блок обработки (①)?
| Блок обработки в студии | Как работает простыми словами | Когда выбирать |
|---|---|---|
| Сырые отсчёты Raw Data |
Ничего не сжимает — отдаёт модели все точки окна подряд. | Когда важна точная форма изгиба во времени: жест ручкой вверх/вниз, форма импульса или скачка. |
| Статистики окна Flatten |
Сжимает всё окно в несколько простых сводных чисел: среднее, минимум, максимум, разброс (СКО). | В 70% промышленных задач: ток насоса, давление, уровень в баке, температура, показания счётчиков, качество связи LTE. |
| Частоты (спектр) Spectral Analysis |
Раскладывает сигнал как эквалайзер в музыке: считает, сколько энергии на низких, средних и высоких частотах. | Когда сигнал дрожит, вибрирует или пульсирует с разной частотой (вибрация подшипника, кавитация в трубе). |
| Спектрограмма Spectrogram |
Режет окно на короткие кадры и для каждого считает частоты — видно, как частота менялась по ходу окна. | Когда частота плавно растёт или падает внутри окна (разгон и торможение двигателя). |
Что куда нажимать на шаге 3:
- ① Выберите блок обработки — кликните по подходящей карточке из четырёх.
- ② Настройки блока — для блока «Статистики окна» отметьте галочками нужные характеристики (обычно достаточно
среднее,минимум,максимум,разброс (СКО)). Для частотных блоков здесь же можно включить фильтр от шума или медленного дрейфа. - ③ Галочка «выровнять признаки по масштабу» — рекомендуется всегда включать! Она приводит большие числа (например, тысячи микроампер) и маленькие числа к одному масштабу, чтобы модели было легко учиться.
- ④ Кнопки «Готовые рецепты» — быстрые заготовки настроек в один клик (например, «Только форма сигнала» сама вычтет средний уровень из окна, чтобы модель смотрела только на форму скачка).
- ⑤ Кнопка «Сохранить и показать окна в 3D» — нажмите её, чтобы рассчитать признаки и построить 3D-облако ниже.
Как читать 3D-облако признаков и рейтинг важности
Зачем нужен этот 3D-график (④)? Каждая цветная точка в кубе — это одно ваше окно после обработки. Цвет точки — это её метка:
- Хороший знак: точки одного цвета собрались в свои отдельные «островки» (облака) и почти не перемешиваются с другими цветами. Значит, выбранный блок обработки отлично подходит, и даже самая маленькая и быстрая модель легко научится их различать!
- Плохой знак: все цвета свалены в одну общую кучу в центре. Значит, этих признаков недостаточно — попробуйте другой блок обработки (например, «Частоты» вместо «Статистик») или увеличьте длину окна на шаге 2.
Что куда нажимать:
- ① «Как разложить», ② «Вид», ③ «Цвет точки» — можно поменять способ проекции (
главные направленияPCA,похожие рядомt-SNE илитри признака на выбор), переключитьобъёмный(3D) /плоский(2D) вид и покрутить куб мышкой. При клике на любую точку откроется запись, из которой взято это окно. - ⑤ Раздел «Что помогает больше всего» — нажмите кнопку «Посчитать важность признаков». Студия покажет красными полосками, какие именно числа сильнее всего помогают отличать один режим от другого. Затем нажмите «Перейти к шагу 4: обучение».
7 Шаг 4 «Обучение»: способы создания моделей и запуск тренировки
На четвёртом шаге студия создаёт и обучает саму математическую модель.
Какие способы создания моделей есть в студии и чем они отличаются?
В зависимости от задачи студия предлагает несколько классов алгоритмов машинного обучения. Вот как они устроены простыми словами:
А. Для задач «Что происходит?» (классификация) и «Сколько?» (регрессия)
- Нейронные сети («Классификация» / «Регрессия»)
- Как работает: сеть состоит из слоёв маленьких вычислителей — нейронов, которые умножают входные признаки на подобранные веса и складывают их. Сеть тренируется за десятки проходов по данным (эпох), постепенно уменьшая ошибку.
- Размеры сетей в студии (③):
Простейшая модель(без скрытых слоёв) — самая крошечная, проводит прямые плоские границы между классами;Маленькая сеть(16 нейронов) иСредняя сеть(32 нейрона) — универсальный выбор для большинства задач;Большая сеть(два слоя: 64 и 32 нейрона) — для сложных зависимостей и больших наборов записей;Свёрточная сеть(Conv1D) — специальная сеть, которая скользит коротким «фильтром» вдоль окна и ищет характерные формы зубцов и волн. Идеальна для блоков «Сырые отсчёты» и «Спектрограмма».
- Деревья решений («Деревья решений»: Случайный лес, Бустинг, XGBoost, LightGBM)
- Как работает: модель строит цепочки простых вопросов вида «Средний ток больше 10 мА? → Да → СКО меньше 200? → Нет → Сухой ход». Одно дерево может ошибиться, поэтому студия строит целый ансамбль из 10–50 деревьев:
- Случайный лес (Random Forest) — деревья учатся независимо и голосуют большинством. Идеальный выбор для начинающих, когда на шаге 3 выбраны «Статистики окна» или «Частоты»: учится за 1–2 секунды и почти не требует настройки!
- Бустинг / XGBoost / LightGBM — каждое следующее дерево специально учится исправлять ошибки предыдущих. Часто даёт максимальную точность на табличных признаках.
- Метод опорных векторов («Опорные векторы (SVM)»)
- Как работает: ищет самую широкую разделительную полосу между облаками точек разных классов. С линейным ядром проводит прямую границу (крошечная
int8-модель), а с ядром RBF умеет плавно огибать сложные изогнутые облака (когда записей немного, до нескольких сотен окон).
- Как работает: ищет самую широкую разделительную полосу между облаками точек разных классов. С линейным ядром проводит прямую границу (крошечная
Б. Для задачи «Всё ли в порядке?» (поиск аномалий)
Когда мы обучаем модель только на нормальной работе (normal), в студии доступны три способа запомнить «норму»:
- Автоэнкодер («Аномалии: автоэнкодер») — нейросеть, которую учат сжимать нормальное окно и восстанавливать его обратно. Нормальные сигналы она восстанавливает точно, а когда приходит незнакомая авария — восстановить не может, ошибка резко подскакивает и звучит тревога. Лучший выбор для «Сырых отсчёты» и сложной формы сигнала.
- Кластеры («Аномалии: кластеры K-means») — находит центры «кучек» нормальных режимов (например, 3 скорости вентилятора). Если новое окно оказалось далеко от всех центров — это аномалия.
- Облака («Аномалии: облака GMM») — похоже на кластеры, но учитывает, что в одном режиме сигнал может быть ровным (узкое облако), а в другом — сильно скакать (широкое облако).
Что куда нажимать на шаге 4:
- ① Таблица-подсказка — шпаргалка, какой алгоритм выбрать под ваши данные.
- ② Выбор блока обучения — выберите алгоритм (обратите внимание на красную плашку
подходит этому примеру, если вы открыли учебный проект). - ③ Настройка размера сети или параметров деревьев — выберите размер сети (или вид деревьев, их количество и глубину).
- ④ Поле «Название модели» — можно оставить пустым, студия сама подпишет модель по её типу и размеру окна.
- ⑤ Спойлер «Для опытных» — здесь спрятаны тонкие настройки (число эпох, скорость обучения,
Dropoutот зубрёжки и искусственное размножение примеров с шумом — аугментация). Начинающим менять их не нужно. - ⑥ Кнопка «Начать обучение» — нажмите для старта! Для нейросетей появится живой график с двумя линиями ошибки: красной (обучение) и серой (контроль). Когда обе линии идут вниз — модель успешно учится. Как только обучение завершится (студия сама переведёт модель в формат модема
int8), появится кнопка «Посмотреть, как модель сдала экзамен».
8 Шаг 5 «Проверка»: как оценить качество модели и найти её ошибки
Таблица сравнения моделей
Вы можете вернуться на шаг 4 или шаг 3, обучить несколько разных моделей (например, нейросеть и случайный лес), и все они соберутся в таблице на шаге 5:
Что куда нажимать:
- ① Название модели и плашка
лучшая— студия сама отмечает лучшую модель среди тех, которые помещаются в память модема. Нажмите на название модели, чтобы открыть подробный разбор её ответов. - ② Оценка на экзамене:
- для классификации (
Что происходит?) — сколько окон из 100 модель угадала правильно на отложенных экзаменационных записях (оценка выше 90 из 100 — отличный результат); - для регрессии (
Сколько?) — на сколько единиц в среднем ошибается модель (чем меньше, тем лучше); - для аномалий (
Всё ли в порядке?) — какую долю поломок находит (Находит аномалий) и как часто ошибочно пугается нормы (Ложных тревог).
- для классификации (
- ③ Столбец «Помещается в модем» — показывает
даи объём оперативной памяти в КБ, который займёт модель на модеме. - ④ Кнопка «Проверить на записи» — позволяет прогнать модель по любой длинной записи и увидеть её ответы во времени.
- ⑤ Кнопка «Перейти к шагу 6: на модем» — ведёт к скачиванию готового пакета.
Страница подробного разбора модели
При клике на имя модели открывается её полный отчёт:
Как понять, где и почему ошибается модель:
- ① Карточки ресурсов — проверка совместимости с модемом, память в КБ, размер файла модели и время одного ответа в миллисекундах.
- ② Кнопка «Забрать эту модель на модем» — переход к выгрузке именно этой модели.
- ③ Кнопка «Проверить на записи» — живая проверка на графике сигнала.
- ④ Таблица-теплокарта «Где модель путается» (матрица ошибок):
- По горизонтали — что ответила модель, по вертикали — что было на самом деле.
- Ярко-красные клетки по диагонали — это правильные ответы модели!
- Числа вне диагонали показывают путаницу: например, цифра
6на пересечении строкикачаети столбцаразгонозначает, что в 6 окнах насос уже качал, а модель подумала, что ещё идёт разгон.
- ⑤ Таблица «Как модель узнаёт каждую метку» — показывает процент угадывания по каждому режиму отдельно.
- ⑥ 3D-график «Как модель видит окна» — если в списке «Цвет» выбрать
верно или ошибка, все правильные точки станут серыми, а ошибки вспыхнут ярко-красным. Кликните мышкой по красной точке — откроется та самая запись, и вы сразу поймёте, почему модель ошиблась (часто оказывается, что на границе режимов человек сам неточно разметил участок!). - ⑦ График «Как модель училась» — история уменьшения ошибки по эпохам обучения.
Живая проверка модели на длинной записи
Если нажать кнопку «Проверить на записи», откроется экран покадрового тестирования:
Что куда нажимать:
- ① Выберите «Модель» и ② выберите «Запись» (обязательно берите запись с пометкой
тест, которую модель не видела во время обучения!). - ③ Нажмите «Прогнать модель».
- ④ Изучите двойной график:
- Сверху — реальный сигнал с датчика и цветные зоны правильных режимов;
- Снизу — цветные линии уверенности модели (от
0до1) в каждый момент времени. Какая линия поднялась к1, тот ответ и даёт модем. Здесь отлично видно, как модель переключает свой ответ вслед за реальным сигналом!
9 Шаг 6 «На модем»: как забрать готовую модель в работу
Когда вы выбрали лучшую модель, переходите на шаг 6:
Что куда нажимать:
- ① Выберите модель из списка (лучшая модель уже отмечена автоматически).
- ② Нажмите большую красную кнопку «Скачать пакет модели» — на компьютер скачается ZIP-архив.
- ③ Кнопка «Открыть описание model.json» — позволяет посмотреть техническое описание модели в браузере.
- ④ Состав скачанного архива:
имя.tflite— сама сжатая нейросеть (или дерево решений) для загрузки в папку/models/на модеме;имя.model.json— файл-инструкция для помощника rb-modem-assistant, в котором записаны длина окна, формулы расчёта признаков и контрольные примеры для самопроверки;имя.passport.md— текстовый паспорт модели с её точностью и характеристиками.
- ⑤ Что делать со скачанным архивом — распакуйте архив и передайте его в rb-modem-assistant (скопируйте готовую фразу из пункта 2 на экране): ассистент сам напишет Lua-сценарий для модема и проверит, что модем считает точь-в-точь как студия.
10 Каталог блоков (справочник и свои блоки на Python)
Открывается ссылкой «Каталог блоков» в самой верхней шапке сайта:
- ① Справочник блоков обработки и ② Справочник блоков обучения — здесь удобно прочитать описания всех алгоритмов и рекомендации «Когда выбрать».
- ③–⑥ Раздел «Свой блок» (для продвинутых пользователей, знакомых с Python) — позволяет нажать кнопку «Шаблон блока обработки» или «Шаблон блока обучения» (④), вписать свою формулу или архитектуру Keras в поле ⑤ и нажать «Сохранить блок» (⑥).
11 Практический пример от А до Я: создаём и сравниваем модели в проекте «Качество связи LTE»
Давайте закрепим всё на практике и пройдём полный путь создания модели на примере реальной задачи диагностики сотовой связи модема — «Качество связи LTE».
Постановка задачи
Модем каждые 10 секунд (10000 мс) измеряет три собственных показателя сигнала сотовой сети:
rsrp— мощность принимаемого сигнала (дБм);rsrq— качество принимаемого сигнала (дБ);sinr— отношение сигнал/шум (дБ).
Мы хотим, чтобы модем сам определял одно из 4 состояний связи (задача «Что происходит?» — классификация):
хорошо— связь стабильная;слабая антенна— низкий уровень сигнала (rsrpсильно просел);помеха— уровень сигнала хороший, но отношение сигнал/шум (sinr) плохое и прыгает;перегрузка соты— базовая станция перегружена (rsrqпериодически проваливается).
Шаг А. Открываем проект и проверяем данные (Шаг 1)
- На главной странице «Мои проекты» находим карточку «Качество связи LTE» (в разделе «Примеры с характеристик самого модема») и нажимаем красную кнопку «Открыть пример».
- Студия создаёт проект и открывает Шаг 1 «Данные». Мы видим, что в проект уже загружены 32 записи с 8 разных модемов (
device=модем 1…модем 8), по 4 состояния на каждый модем, все 4 класса представлены поровну. Нажимаем «Перейти к шагу 2: окно».
Шаг Б. Настраиваем окно в 5 минут и делим модемы на экзамен (Шаг 2)
На шаге 2 мы видим подсказку справа (①) и график сразу с тремя цветными линиями — rsrp, rsrq и sinr (④):
- Почему окно 30 отсчётов (②)? Качество связи меняется не мгновенно, а на протяжении нескольких минут. При опросе раз в 10 секунд окно длиной 30 отсчётов охватывает 300 секунд (5 минут) истории связи.
- Почему шаг 6 отсчётов (③)? Сдвиг окна на 6 отсчётов означает, что модем будет обновлять свой диагноз каждую минуту (60 с).
- Нажимаем «Сохранить окно» (⑤).
- Прокручиваем ниже к разделу «Экзамен для модели»: здесь выбран способ «Случайно, но площадками целиком» с группировкой по полю
device. Это значит, что записи с одних модемов целиком пойдут в обучение, а записи с других модемов — на экзамен. Нажимаем «Перейти к шагу 3: признаки».
Шаг В. Сжимаем окно в статистики и смотрим 3D-облако (Шаг 3)
Для оценки уровня и разброса параметров связи не нужна точная форма зубцов — важны средний уровень, провалы и скачки.
- Поэтому на шаге 3 мы выбираем блок обработки «Статистики окна» и отмечаем 4 галочки:
среднее,минимум,максимумиразброс (СКО). - Так как у нас 3 величины (
rsrp,rsrq,sinr) и по каждой считаются 4 статистики, модель получает на вход 3 × 4 = 12 понятных чисел. - Оставляем включённой галочку «выровнять признаки по масштабу» и нажимаем «Сохранить и показать окна в 3D».
- Прокручиваем страницу вниз и нажимаем кнопку «Посчитать важность признаков»:
- На 3D-облаке (①) мы видим 832 окна: синие (
хорошо), оранжевые (слабая антенна), красные (перегрузка соты) и тёмно-серые (помеха) точки разошлись по четырём чётким облакам! - На графике важности (②) видно, что сильнее всего состояния связи различаются по признакам
sinr.min(минимальный сигнал/шум),rsrp.mean(средний уровень сигнала) иrsrq.min(провалы качества). - Нажимаем «Перейти к шагу 4: обучение» (③).
Шаг Г. Обучаем две разные модели: Случайный лес и Нейросеть (Шаг 4)
Чтобы увидеть разницу между способами создания моделей, обучим два разных алгоритма подряд!
Модель №1 — Деревья решений (Случайный лес): когда признаков немного (у нас их 12) и каждый имеет понятный физический смысл, отлично работают деревья решений:
- Выбираем блок обучения «Деревья решений» (①) → «Случайный лес» (②).
- Оставляем Сколько деревьев:
10(③) и Глубину дерева:5(④). - Нажимаем «Начать обучение» (⑤). Всего через 2 секунды в журнале (⑦) появляется запись
готово: лес из 10 деревьев обучен и переведён вint8!
Модель №2 — Маленькая нейронная сеть:
- На этой же странице шага 4 переключаем блок обучения на «Классификация» (нейросеть).
- В разделе «Размер сети» выбираем «Маленькая сеть» (16 нейронов) и снова нажимаем «Начать обучение».
- Когда нейросеть доучится, нажимаем красную кнопку «Посмотреть, как модель сдала экзамен» (⑥) (или кликаем на соту «5. Проверка»).
Шаг Д. Сравниваем модели на экзамене и забираем лучшую на модем (Шаги 5 и 6)
Открываем Шаг 5 «Проверка» и видим обе наши модели в одной таблице (①):
- Сравниваем результаты:
- Маленькая сеть угадала 96 из 100 окон на экзамене и требует
4.0 КБпамяти; - Лес из 10 деревьев угадал 100 из 100 окон на экзамене и требует
5.0 КБпамяти (при бюджете 32 КБ).
- Маленькая сеть угадала 96 из 100 окон на экзамене и требует
- Студия автоматически присвоила плашку
лучшая(②) модели «Лес из 10 деревьев». - Нажимаем кнопку «Перейти к шагу 6: на модем» (③) и на странице шага 6 нажимаем «Скачать пакет модели».
- Готово! Архив
lte_quality-*.zipсо сжатой моделью.tflite, описаниемmodel.jsonи паспортом.passport.mdскачан и готов к передаче в rb-modem-assistant для запуска на модеме.
Готовы попробовать на практике? Начните с готового учебного примера или создайте свою задачу на главной странице.
Перейти к проектам →