RB ML Studio
?

Инструкция по работе с RB ML Studio

От первого знакомства с машинным обучением до готовой модели для модема RB-Modem: что означают понятия, какие способы создания моделей существуют, что куда нажимать на каждом экране и полный разбор реального проекта от А до Я.

1 Как работает машинное обучение на сигналах (простыми словами)

Обычно при программировании контроллера или модема человек сам пишет правило: «если ток больше 10 мА — насос качает». Но в реальной жизни сигнал дрожит, на разных объектах базовый уровень отличается, а сложные режимы (например, кавитацию, сухой ход насоса или помеху связи) невозможно описать одним простым порогом.

В машинном обучении мы поступаем наоборот:

  1. Собираем записи сигнала с датчика или модема.
  2. Подписываем их (даём метки) — указываем, что на самом деле происходило в каждый момент.
  3. Отдаём эти примеры студии, и компьютер сам находит закономерности — строит математическую модель.

Вся работа в студии разбита на 6 понятных шагов, которые отображаются вверху экрана в виде шестиугольных сот:

1
Данные
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: загрузка записей
Шаг 1 «Данные»: панель шагов, сводка и форма загрузки файлов

Что куда нажимать:

  • ① Панель сот (шаги 1–6) — ваш маршрут по проекту. Галочка ✓ означает, что шаг уже выполнен; закрашенная красная сота — шаг, который нужно сделать сейчас. Справа над сотами есть кнопка «Настройки проекта».
  • ② Сводные цифры — сколько записей уже в проекте, сколько это минут сигнала и сколько разных меток (классов) вы добавили.
  • ③ Спойлер «Что можно записать с модема» — нажмите, чтобы посмотреть подсказку: какие датчики и внутренние параметры умеет считывать модем RB-Modem.
  • ④ Выбор формата («С модема» или «Таблица CSV»):
    • «С модема» — если вы выгрузили с модема файлы архива временного ряда /ts/имя.old и /ts/имя.cur;
    • «Таблица CSV» — если ваши данные сохранены в виде обычной таблицы .csv (из Excel или другого прибора). При выборе CSV студия сама прочитает шапку таблицы и подставит столбцы с числами.
  • ⑤ Кнопка «Выбрать файлы» — укажите файлы на компьютере. Чуть ниже проверьте «Тип чисел» (обычно целые 2 байта или дробные float).
  • ⑥ Поле «Что происходит в этих записях» — сюда вписывается метка (правильный ответ):
    • Если во всём загружаемом файле происходит что-то одно (например, весь файл насос только качал), напишите здесь качает.
    • Если внутри одной длинной записи режимы менялись (сначала стоял, потом разогнался, потом качал), оставьте это поле пустым — вы удобно разметите участки мышкой прямо на графике!
    • Для задачи поиска аномалий нормальную работу всегда подписывайте словом normal.
  • ⑦ Поле «Где и чем записано» и «Куда положить»:
    • В поле «Где и чем записано» полезно указать объект или номер устройства в формате site=насосная 1 (зачем это нужно — увидим на шаге 2);
    • В списке «Куда положить» оставьте в обучение.
  • ⑧ Кнопка «Загрузить записи» — нажмите, чтобы добавить файлы в проект.

Как проверить баланс данных и управлять таблицей записей

Шаг 1: баланс меток и таблица записей
Шаг 1 «Данные»: баланс классов и таблица загруженных записей

На что обратить внимание и куда нажимать:

  • ① Столбчатый график «Сколько примеров каждой метки»:
    Совет начинающим Старайтесь, чтобы для каждого режима (метки) было собрано хотя бы по 30–50 примеров (окон), а столбики на этом графике не отличались в десятки раз. Если какого-то режима совсем мало, модель будет реже его замечать.
  • ② Поля поиска и фильтрации — позволяют быстро отфильтровать таблицу по названию, метке или выборке.
  • ③ Выпадающий список «С выбранными» — если отметить несколько записей галочками ④, через это меню можно разом дать им метку (подписать), указать площадку (указать площадку и прочее), временно выключить из обучения (отключить), переложить на экзамен или удалить.
  • ⑤ Название записи (красная ссылка) — нажмите на имя любой записи, чтобы открыть её график и разметить по кусочкам.
  • ⑥ Кнопка «Перейти к шагу 2: окно» — когда все записи загружены и подписаны, нажмите эту кнопку.

Как разметить длинную запись прямо на графике

Когда вы нажимаете на название записи в таблице, открывается окно просмотра и разметки сигнала:

Редактор записи и разметка отрезков на графике
Просмотр записи и интерактивная разметка участков мышкой

Что куда нажимать:

  • ① График сигнала с цветными зонами — если во время записи режим менялся, просто зажмите левую кнопку мыши на графике и проведите вправо по нужному участку. Всплывёт окошко «Что происходит с ... по ... с?» — введите название режима (например, сухой ход), и участок сразу окрасится в свой цвет!
  • ② Галочка «показать окна» — включите её, чтобы увидеть в нижней части графика красные кирпичики — это те самые окна, на которые студия нарежет вашу запись.
  • ③ Поле «Что происходит во всей записи» — общая метка на всю запись целиком (если нет отдельных кусков).
  • ④ Поле «Куски с другими метками» — сюда автоматически попадают все выделенные вами мышкой участки (формат: начало_в_отсчётах конец_в_отсчётах метка). При желании числа можно подправить вручную.
  • ⑤ Поле «Где и чем записано» — площадка или устройство (например, site=насосная 1).
  • ⑥ Кнопка «Сохранить запись» — обязательно нажмите её после разметки!
  • ⑦ Кнопка «Проверить моделью» — когда вы обучите модель на шаге 4, этой кнопкой можно в один клик проверить работу модели на данной записи.

5 Шаг 2 «Окно»: как нарезать сигнал и отложить честный экзамен

Зачем нужны «окна»?

Когда модель работает внутри модема в реальном времени, она не может ждать окончания суток — она должна каждые несколько секунд смотреть на последний короткий отрезок сигнала (окно) и сразу говорить ответ. Кроме того, нарезая одну длинную запись на перекрывающиеся окна, мы из одной записи получаем десятки обучающих примеров для модели!

Шаг 2: выбор длины и шага окна
Шаг 2 «Окно»: настройка длины и шага скользящего окна

Что куда нажимать при выборе окна:

  • ① Быстрые кнопки («Короткое событие, 1 с», «Жест или скачок, 2 с», «Медленный процесс, 10 с») — если не знаете, какие числа вписать, нажмите подходящую по смыслу кнопку, и студия сама посчитает отсчёты.
  • ② Поле «Длина окна, отсчётов» — сколько измерений помещается в одно окно. Окно должно быть таким, чтобы человек, глядя только на этот кусочек графика, сам мог понять, что происходит. Например, если разгон насоса длится 4–5 секунд, окно в 5 с (25 отсчётов по 200 мс) увидит его целиком.
  • ③ Поле «Шаг окна, отсчётов» — насколько сдвигается окно для следующего ответа. Обычно шаг берут в 2–5 раз меньше длины окна (например, длина 25, шаг 5): тогда окна перекрываются, мы получаем больше примеров для обучения, а модем даёт свежий ответ каждую секунду.
  • ④ График с окнами — показывает, как выбранные окна (красные полоски внизу и розовая область первого окна) ложатся на ваш реальный сигнал.
  • ⑤ Блок «Если в одной записи несколько меток» — определяет, какую метку дать окну, если оно попало на границу двух режимов:
    • Метка в конце окна — подходит почти всегда (модель отвечает, какое состояние наступило к концу окна);
    • Метка большинства отсчётов окна — подходит для плавных режимов (какого состояния в окне больше, так его и называем);
    • Метка из списка, если есть в окне / занимает долю окна — выбирайте, когда нужно поймать короткую аварию или удар, даже если он занял лишь часть окна.
  • ⑥ Кнопка «Сохранить окно» — нажмите, чтобы сохранить длину и шаг окна.

Зачем откладывать «экзамен» и как это сделать правильно?

Шаг 2: разделение записей на обучение и экзамен
Шаг 2 «Окно»: отделение экзаменационной выборки
Почему нельзя проверять модель на тех же записях, на которых она училась? Представьте школьника, которому перед экзаменом дали выучить ответы ровно на те задачи, которые будут в билете. Он получит «отлично», но новую задачу решить не сможет — в машинном обучении это называется переобучением («зубрёжкой»). Поэтому студия делит записи на три части:
  1. Обучение (train) — по этим окнам модель учится;
  2. Контроль (val) — по ним студия следит во время учёбы, не начала ли модель зубрить;
  3. Экзамен (test) — эти записи прячутся до самого конца (шага 5), чтобы честно проверить модель на незнакомых данных.

Что куда нажимать:

  • ① Выберите один из трёх способов отложить экзамен:
    • «Самые свежие записи — на экзамен» — берёт конец записей каждого класса. Выбирайте, если все данные записаны на одном стенде или одном устройстве;
    • «Случайно, но площадками целиком» — если у вас записи с нескольких объектов или модемов (site или device), студия отправит на экзамен отдельные объекты целиком, чтобы куски одной и той же записи не попали одновременно и в учёбу, и в тест;
    • «Выбранные площадки — на экзамен» — вы сами указываете в поле ④, какой объект (например, насосная 4) оставить для проверки.
  • ② Поля «На экзамен, %» и «Для контроля во время обучения, %» — оставьте стандартные 20–25 % на экзамен и 15 % для контроля.
  • ③ Список «Что считать площадкой» — выберите ключ site или device (если указывали его на шаге 1).
  • ⑤ Кнопки «Показать, как поделится» и «Разделить записи» — нажмите «Разделить записи», чтобы применить деление.
  • ⑥ Счётчики окон и ⑦ График разделения — убедитесь, что и в столбике обучение, и в столбике тест присутствуют все цвета (все ваши метки), и нажмите «Перейти к шагу 3: признаки».

6 Шаг 3 «Признаки»: как выделить главное из сигнала и увидеть данные в 3D

Что такое «признаки» и зачем нужен блок обработки?

В одном окне сигнала может быть 50, 100 или 500 отдельных точек-измерений. Если подать их в модель «как есть», модели придётся самой разбираться в сотнях чисел. Но часто вместо сотни сырых точек гораздо лучше посчитать по окну несколько главных характеристик — признаков (например, среднее значение, размах или силу дрожания на разных частотах). Это называется извлечением признаков.

Шаг 3: выбор блока обработки
Шаг 3 «Признаки»: выбор и настройка блока обработки сигнала

Как новичку выбрать блок обработки (①)?

Блок обработки в студииКак работает простыми словамиКогда выбирать
Сырые отсчёты
Raw Data
Ничего не сжимает — отдаёт модели все точки окна подряд. Когда важна точная форма изгиба во времени: жест ручкой вверх/вниз, форма импульса или скачка.
Статистики окна
Flatten
Сжимает всё окно в несколько простых сводных чисел: среднее, минимум, максимум, разброс (СКО). В 70% промышленных задач: ток насоса, давление, уровень в баке, температура, показания счётчиков, качество связи LTE.
Частоты (спектр)
Spectral Analysis
Раскладывает сигнал как эквалайзер в музыке: считает, сколько энергии на низких, средних и высоких частотах. Когда сигнал дрожит, вибрирует или пульсирует с разной частотой (вибрация подшипника, кавитация в трубе).
Спектрограмма
Spectrogram
Режет окно на короткие кадры и для каждого считает частоты — видно, как частота менялась по ходу окна. Когда частота плавно растёт или падает внутри окна (разгон и торможение двигателя).

Что куда нажимать на шаге 3:

  • ① Выберите блок обработки — кликните по подходящей карточке из четырёх.
  • ② Настройки блока — для блока «Статистики окна» отметьте галочками нужные характеристики (обычно достаточно среднее, минимум, максимум, разброс (СКО)). Для частотных блоков здесь же можно включить фильтр от шума или медленного дрейфа.
  • ③ Галочка «выровнять признаки по масштабу» — рекомендуется всегда включать! Она приводит большие числа (например, тысячи микроампер) и маленькие числа к одному масштабу, чтобы модели было легко учиться.
  • ④ Кнопки «Готовые рецепты» — быстрые заготовки настроек в один клик (например, «Только форма сигнала» сама вычтет средний уровень из окна, чтобы модель смотрела только на форму скачка).
  • ⑤ Кнопка «Сохранить и показать окна в 3D» — нажмите её, чтобы рассчитать признаки и построить 3D-облако ниже.

Как читать 3D-облако признаков и рейтинг важности

Шаг 3: 3D-облако признаков и важность признаков
Шаг 3 «Признаки»: 3D-облако окон и оценка важности признаков

Зачем нужен этот 3D-график (④)? Каждая цветная точка в кубе — это одно ваше окно после обработки. Цвет точки — это её метка:

  • Хороший знак: точки одного цвета собрались в свои отдельные «островки» (облака) и почти не перемешиваются с другими цветами. Значит, выбранный блок обработки отлично подходит, и даже самая маленькая и быстрая модель легко научится их различать!
  • Плохой знак: все цвета свалены в одну общую кучу в центре. Значит, этих признаков недостаточно — попробуйте другой блок обработки (например, «Частоты» вместо «Статистик») или увеличьте длину окна на шаге 2.

Что куда нажимать:

  • ① «Как разложить», ② «Вид», ③ «Цвет точки» — можно поменять способ проекции (главные направления PCA, похожие рядом t-SNE или три признака на выбор), переключить объёмный (3D) / плоский (2D) вид и покрутить куб мышкой. При клике на любую точку откроется запись, из которой взято это окно.
  • ⑤ Раздел «Что помогает больше всего» — нажмите кнопку «Посчитать важность признаков». Студия покажет красными полосками, какие именно числа сильнее всего помогают отличать один режим от другого. Затем нажмите «Перейти к шагу 4: обучение».

7 Шаг 4 «Обучение»: способы создания моделей и запуск тренировки

На четвёртом шаге студия создаёт и обучает саму математическую модель.

Шаг 4: настройка и запуск обучения
Шаг 4 «Обучение»: выбор алгоритма, архитектуры и запуск тренировки

Какие способы создания моделей есть в студии и чем они отличаются?

В зависимости от задачи студия предлагает несколько классов алгоритмов машинного обучения. Вот как они устроены простыми словами:

А. Для задач «Что происходит?» (классификация) и «Сколько?» (регрессия)

  1. Нейронные сети («Классификация» / «Регрессия»)
    • Как работает: сеть состоит из слоёв маленьких вычислителей — нейронов, которые умножают входные признаки на подобранные веса и складывают их. Сеть тренируется за десятки проходов по данным (эпох), постепенно уменьшая ошибку.
    • Размеры сетей в студии (③):
      • Простейшая модель (без скрытых слоёв) — самая крошечная, проводит прямые плоские границы между классами;
      • Маленькая сеть (16 нейронов) и Средняя сеть (32 нейрона) — универсальный выбор для большинства задач;
      • Большая сеть (два слоя: 64 и 32 нейрона) — для сложных зависимостей и больших наборов записей;
      • Свёрточная сеть (Conv1D) — специальная сеть, которая скользит коротким «фильтром» вдоль окна и ищет характерные формы зубцов и волн. Идеальна для блоков «Сырые отсчёты» и «Спектрограмма».
  2. Деревья решений («Деревья решений»: Случайный лес, Бустинг, XGBoost, LightGBM)
    • Как работает: модель строит цепочки простых вопросов вида «Средний ток больше 10 мА? → Да → СКО меньше 200? → Нет → Сухой ход». Одно дерево может ошибиться, поэтому студия строит целый ансамбль из 10–50 деревьев:
    • Случайный лес (Random Forest) — деревья учатся независимо и голосуют большинством. Идеальный выбор для начинающих, когда на шаге 3 выбраны «Статистики окна» или «Частоты»: учится за 1–2 секунды и почти не требует настройки!
    • Бустинг / XGBoost / LightGBM — каждое следующее дерево специально учится исправлять ошибки предыдущих. Часто даёт максимальную точность на табличных признаках.
  3. Метод опорных векторов («Опорные векторы (SVM)»)
    • Как работает: ищет самую широкую разделительную полосу между облаками точек разных классов. С линейным ядром проводит прямую границу (крошечная int8-модель), а с ядром RBF умеет плавно огибать сложные изогнутые облака (когда записей немного, до нескольких сотен окон).

Б. Для задачи «Всё ли в порядке?» (поиск аномалий)

Когда мы обучаем модель только на нормальной работе (normal), в студии доступны три способа запомнить «норму»:

  1. Автоэнкодер («Аномалии: автоэнкодер») — нейросеть, которую учат сжимать нормальное окно и восстанавливать его обратно. Нормальные сигналы она восстанавливает точно, а когда приходит незнакомая авария — восстановить не может, ошибка резко подскакивает и звучит тревога. Лучший выбор для «Сырых отсчёты» и сложной формы сигнала.
  2. Кластеры («Аномалии: кластеры K-means») — находит центры «кучек» нормальных режимов (например, 3 скорости вентилятора). Если новое окно оказалось далеко от всех центров — это аномалия.
  3. Облака («Аномалии: облака GMM») — похоже на кластеры, но учитывает, что в одном режиме сигнал может быть ровным (узкое облако), а в другом — сильно скакать (широкое облако).

Что куда нажимать на шаге 4:

  • ① Таблица-подсказка — шпаргалка, какой алгоритм выбрать под ваши данные.
  • ② Выбор блока обучения — выберите алгоритм (обратите внимание на красную плашку подходит этому примеру, если вы открыли учебный проект).
  • ③ Настройка размера сети или параметров деревьев — выберите размер сети (или вид деревьев, их количество и глубину).
  • ④ Поле «Название модели» — можно оставить пустым, студия сама подпишет модель по её типу и размеру окна.
  • ⑤ Спойлер «Для опытных» — здесь спрятаны тонкие настройки (число эпох, скорость обучения, Dropout от зубрёжки и искусственное размножение примеров с шумом — аугментация). Начинающим менять их не нужно.
  • ⑥ Кнопка «Начать обучение» — нажмите для старта! Для нейросетей появится живой график с двумя линиями ошибки: красной (обучение) и серой (контроль). Когда обе линии идут вниз — модель успешно учится. Как только обучение завершится (студия сама переведёт модель в формат модема int8), появится кнопка «Посмотреть, как модель сдала экзамен».

8 Шаг 5 «Проверка»: как оценить качество модели и найти её ошибки

Таблица сравнения моделей

Вы можете вернуться на шаг 4 или шаг 3, обучить несколько разных моделей (например, нейросеть и случайный лес), и все они соберутся в таблице на шаге 5:

Шаг 5: таблица обученных моделей
Шаг 5 «Проверка»: сводная таблица обученных моделей

Что куда нажимать:

  • ① Название модели и плашка лучшая — студия сама отмечает лучшую модель среди тех, которые помещаются в память модема. Нажмите на название модели, чтобы открыть подробный разбор её ответов.
  • ② Оценка на экзамене:
    • для классификации (Что происходит?) — сколько окон из 100 модель угадала правильно на отложенных экзаменационных записях (оценка выше 90 из 100 — отличный результат);
    • для регрессии (Сколько?) — на сколько единиц в среднем ошибается модель (чем меньше, тем лучше);
    • для аномалий (Всё ли в порядке?) — какую долю поломок находит (Находит аномалий) и как часто ошибочно пугается нормы (Ложных тревог).
  • ③ Столбец «Помещается в модем» — показывает да и объём оперативной памяти в КБ, который займёт модель на модеме.
  • ④ Кнопка «Проверить на записи» — позволяет прогнать модель по любой длинной записи и увидеть её ответы во времени.
  • ⑤ Кнопка «Перейти к шагу 6: на модем» — ведёт к скачиванию готового пакета.

Страница подробного разбора модели

При клике на имя модели открывается её полный отчёт:

Детальная страница модели: матрица ошибок и 3D-облако
Подробный отчёт модели: ресурсы модема, матрица ошибок и 3D-разбор

Как понять, где и почему ошибается модель:

  • ① Карточки ресурсов — проверка совместимости с модемом, память в КБ, размер файла модели и время одного ответа в миллисекундах.
  • ② Кнопка «Забрать эту модель на модем» — переход к выгрузке именно этой модели.
  • ③ Кнопка «Проверить на записи» — живая проверка на графике сигнала.
  • ④ Таблица-теплокарта «Где модель путается» (матрица ошибок):
    • По горизонтали — что ответила модель, по вертикали — что было на самом деле.
    • Ярко-красные клетки по диагонали — это правильные ответы модели!
    • Числа вне диагонали показывают путаницу: например, цифра 6 на пересечении строки качает и столбца разгон означает, что в 6 окнах насос уже качал, а модель подумала, что ещё идёт разгон.
  • ⑤ Таблица «Как модель узнаёт каждую метку» — показывает процент угадывания по каждому режиму отдельно.
  • ⑥ 3D-график «Как модель видит окна» — если в списке «Цвет» выбрать верно или ошибка, все правильные точки станут серыми, а ошибки вспыхнут ярко-красным. Кликните мышкой по красной точке — откроется та самая запись, и вы сразу поймёте, почему модель ошиблась (часто оказывается, что на границе режимов человек сам неточно разметил участок!).
  • ⑦ График «Как модель училась» — история уменьшения ошибки по эпохам обучения.

Живая проверка модели на длинной записи

Если нажать кнопку «Проверить на записи», откроется экран покадрового тестирования:

Живая проверка модели скользящим окном по записи
Живая проверка модели скользящим окном по выбранной записи

Что куда нажимать:

  • ① Выберите «Модель» и ② выберите «Запись» (обязательно берите запись с пометкой тест, которую модель не видела во время обучения!).
  • ③ Нажмите «Прогнать модель».
  • ④ Изучите двойной график:
    • Сверху — реальный сигнал с датчика и цветные зоны правильных режимов;
    • Снизу — цветные линии уверенности модели (от 0 до 1) в каждый момент времени. Какая линия поднялась к 1, тот ответ и даёт модем. Здесь отлично видно, как модель переключает свой ответ вслед за реальным сигналом!

9 Шаг 6 «На модем»: как забрать готовую модель в работу

Когда вы выбрали лучшую модель, переходите на шаг 6:

Шаг 6: скачивание пакета модели для модема
Шаг 6 «На модем»: выгрузка ZIP-пакета для RB-Modem

Что куда нажимать:

  • ① Выберите модель из списка (лучшая модель уже отмечена автоматически).
  • ② Нажмите большую красную кнопку «Скачать пакет модели» — на компьютер скачается ZIP-архив.
  • ③ Кнопка «Открыть описание model.json» — позволяет посмотреть техническое описание модели в браузере.
  • ④ Состав скачанного архива:
    • имя.tflite — сама сжатая нейросеть (или дерево решений) для загрузки в папку /models/ на модеме;
    • имя.model.json — файл-инструкция для помощника rb-modem-assistant, в котором записаны длина окна, формулы расчёта признаков и контрольные примеры для самопроверки;
    • имя.passport.md — текстовый паспорт модели с её точностью и характеристиками.
  • ⑤ Что делать со скачанным архивом — распакуйте архив и передайте его в rb-modem-assistant (скопируйте готовую фразу из пункта 2 на экране): ассистент сам напишет Lua-сценарий для модема и проверит, что модем считает точь-в-точь как студия.

10 Каталог блоков (справочник и свои блоки на Python)

Открывается ссылкой «Каталог блоков» в самой верхней шапке сайта:

Каталог блоков и редактор пользовательского блока на Python
Каталог блоков обработки и обучения и редактор пользовательских блоков
  • ① Справочник блоков обработки и ② Справочник блоков обучения — здесь удобно прочитать описания всех алгоритмов и рекомендации «Когда выбрать».
  • ③–⑥ Раздел «Свой блок» (для продвинутых пользователей, знакомых с Python) — позволяет нажать кнопку «Шаблон блока обработки» или «Шаблон блока обучения» (④), вписать свою формулу или архитектуру Keras в поле ⑤ и нажать «Сохранить блок» (⑥).

11 Практический пример от А до Я: создаём и сравниваем модели в проекте «Качество связи LTE»

Давайте закрепим всё на практике и пройдём полный путь создания модели на примере реальной задачи диагностики сотовой связи модема — «Качество связи LTE».

Постановка задачи

Модем каждые 10 секунд (10000 мс) измеряет три собственных показателя сигнала сотовой сети:

  • rsrp — мощность принимаемого сигнала (дБм);
  • rsrq — качество принимаемого сигнала (дБ);
  • sinr — отношение сигнал/шум (дБ).

Мы хотим, чтобы модем сам определял одно из 4 состояний связи (задача «Что происходит?» — классификация):

  1. хорошо — связь стабильная;
  2. слабая антенна — низкий уровень сигнала (rsrp сильно просел);
  3. помеха — уровень сигнала хороший, но отношение сигнал/шум (sinr) плохое и прыгает;
  4. перегрузка соты — базовая станция перегружена (rsrq периодически проваливается).

Шаг А. Открываем проект и проверяем данные (Шаг 1)

  1. На главной странице «Мои проекты» находим карточку «Качество связи LTE» (в разделе «Примеры с характеристик самого модема») и нажимаем красную кнопку «Открыть пример».
  2. Студия создаёт проект и открывает Шаг 1 «Данные». Мы видим, что в проект уже загружены 32 записи с 8 разных модемов (device=модем 1 … модем 8), по 4 состояния на каждый модем, все 4 класса представлены поровну. Нажимаем «Перейти к шагу 2: окно».

Шаг Б. Настраиваем окно в 5 минут и делим модемы на экзамен (Шаг 2)

На шаге 2 мы видим подсказку справа (①) и график сразу с тремя цветными линиями — rsrp, rsrq и sinr (④):

Пример «Качество связи LTE»: настройка окна на шаге 2
Проект «Качество связи LTE»: выбор окна в 30 отсчётов (5 минут) с шагом 6 отсчётов (1 минута)
  1. Почему окно 30 отсчётов (②)? Качество связи меняется не мгновенно, а на протяжении нескольких минут. При опросе раз в 10 секунд окно длиной 30 отсчётов охватывает 300 секунд (5 минут) истории связи.
  2. Почему шаг 6 отсчётов (③)? Сдвиг окна на 6 отсчётов означает, что модем будет обновлять свой диагноз каждую минуту (60 с).
  3. Нажимаем «Сохранить окно» (⑤).
  4. Прокручиваем ниже к разделу «Экзамен для модели»: здесь выбран способ «Случайно, но площадками целиком» с группировкой по полю device. Это значит, что записи с одних модемов целиком пойдут в обучение, а записи с других модемов — на экзамен. Нажимаем «Перейти к шагу 3: признаки».

Шаг В. Сжимаем окно в статистики и смотрим 3D-облако (Шаг 3)

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

  1. Поэтому на шаге 3 мы выбираем блок обработки «Статистики окна» и отмечаем 4 галочки: среднее, минимум, максимум и разброс (СКО).
  2. Так как у нас 3 величины (rsrp, rsrq, sinr) и по каждой считаются 4 статистики, модель получает на вход 3 × 4 = 12 понятных чисел.
  3. Оставляем включённой галочку «выровнять признаки по масштабу» и нажимаем «Сохранить и показать окна в 3D».
  4. Прокручиваем страницу вниз и нажимаем кнопку «Посчитать важность признаков»:
Пример «Качество связи LTE»: 3D-облако и важность признаков
Проект «Качество связи LTE»: 3D-облако из 832 окон и рейтинг важности 12 признаков
  • На 3D-облаке (①) мы видим 832 окна: синие (хорошо), оранжевые (слабая антенна), красные (перегрузка соты) и тёмно-серые (помеха) точки разошлись по четырём чётким облакам!
  • На графике важности (②) видно, что сильнее всего состояния связи различаются по признакам sinr.min (минимальный сигнал/шум), rsrp.mean (средний уровень сигнала) и rsrq.min (провалы качества).
  • Нажимаем «Перейти к шагу 4: обучение» (③).

Шаг Г. Обучаем две разные модели: Случайный лес и Нейросеть (Шаг 4)

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

Модель №1 — Деревья решений (Случайный лес): когда признаков немного (у нас их 12) и каждый имеет понятный физический смысл, отлично работают деревья решений:

Пример «Качество связи LTE»: обучение случайного леса на шаге 4
Проект «Качество связи LTE»: обучение случайного леса из 10 деревьев
  1. Выбираем блок обучения «Деревья решений» (①) → «Случайный лес» (②).
  2. Оставляем Сколько деревьев: 10 (③) и Глубину дерева: 5 (④).
  3. Нажимаем «Начать обучение» (⑤). Всего через 2 секунды в журнале (⑦) появляется запись готово: лес из 10 деревьев обучен и переведён в int8!

Модель №2 — Маленькая нейронная сеть:

  1. На этой же странице шага 4 переключаем блок обучения на «Классификация» (нейросеть).
  2. В разделе «Размер сети» выбираем «Маленькая сеть» (16 нейронов) и снова нажимаем «Начать обучение».
  3. Когда нейросеть доучится, нажимаем красную кнопку «Посмотреть, как модель сдала экзамен» (⑥) (или кликаем на соту «5. Проверка»).

Шаг Д. Сравниваем модели на экзамене и забираем лучшую на модем (Шаги 5 и 6)

Открываем Шаг 5 «Проверка» и видим обе наши модели в одной таблице (①):

Пример «Качество связи LTE»: сравнение моделей на шаге 5
Проект «Качество связи LTE»: сравнение нейросети (96 из 100) и случайного леса (100 из 100)
  1. Сравниваем результаты:
    • Маленькая сеть угадала 96 из 100 окон на экзамене и требует 4.0 КБ памяти;
    • Лес из 10 деревьев угадал 100 из 100 окон на экзамене и требует 5.0 КБ памяти (при бюджете 32 КБ).
  2. Студия автоматически присвоила плашку лучшая (②) модели «Лес из 10 деревьев».
  3. Нажимаем кнопку «Перейти к шагу 6: на модем» (③) и на странице шага 6 нажимаем «Скачать пакет модели».
  4. Готово! Архив lte_quality-*.zip со сжатой моделью .tflite, описанием model.json и паспортом .passport.md скачан и готов к передаче в rb-modem-assistant для запуска на модеме.