Edge Analytics

Диагностика технического состояния шарикоподшипников по данным вибрации

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

Необходимо:

  • Базовая задача: определить состояние подшипника (исправный либо дефектный).

  • Дополнительная: определить тип дефекта (дефект внешней обоймы, дефект внутренней обоймы).

 

Данные:

  1. Обучающая выборка (размеченная, для обучения).
    3 папки по типу состояния подшипника (H, IR, OR) в каждой из которых в каждой набор файлов (массивы numpy - “.npy”), содержащие оцифрованный сигнал виброускорения (1 секунда, частота 64 кГц, диапазон напряжений -5В…+5В, 16 бит), измеренный вблизи диагностируемого подшипника при различных условиях.

  2. Тестовая выборка (не размеченная, для оценки результата).
    Папка test, содержащая набор файлов (массивы numpy - “.npy”), содержащие оцифрованный сигнал виброускорения (1 секунда, частота 64 кГц, диапазон напряжений -5В…+5В, 16 бит), измеренный вблизи диагностируемого подшипника.

По окончании хакатона команда присылает куратору csv файл с результатами классификации тестовой выборки предложенным алгоритмом. По присланному файлу вычисляется точность алгоритма и выставляются соответствующие баллы. Формат представления результата: csv файл формата “<имя файла из тестовой выборки>,<метка>”. Метка - строка:

  • “H” - исправный, 

  • “OR” - дефект внешней обоймы, 

  • “IR” - дефект внутренней обоймы.

При определении точности для базовой задачи метки OR и IR считаются эквивалентными. Пример файла: https://yadi.sk/d/R8sAKgggbWPuWQ 

Команда также имеет возможность получить промежуточную оценку точности в процессе выполнения задания. 

 

Рекомендации:

  • Для упрощения обмена результатами работы, проверки работоспособности решения, поиска ошибок: использование оболочки Jupyter Notebook и платформы Google Colaboratory, либо работа в docker-контейнере.

  • Возможные методы: 

    • сверточные нейронные сети (анализ “сырого” сигнала, либо спектров, спектрограмм), 

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

 

Критерии оценки (0-24 балла):

  1. Точность на тестовой выборке при определении состояния подшипника (базовая задача - “исправный либо дефектный”) 0-12 баллов (0-100%).

  2. Точность на тестовой выборке при определении типа дефекта 0-5 баллов (0-100%).

  3. Оригинальность реализации 0-2:

    1. 0 - метод и реализация заимствованы, 

    2. 1 - заимствован только метод, реализация собственная, 

    3. 2 - метод и реализация собственные.

Заимствованным считается метод, для которого использованы заимствованные откуда-либо параметры (конфигурация нейронной сети, набор признаков и параметры обучения модели и т.д.). Заимствование общей концепции (например, использование сверточной сети для анализа спектрограмм) не считается заимствованием.

  1. Оценка ресурсоемкости предложенного решения (на ПК без GPU) 0-3 балла:

    1. время выполнения алгоритма Trun меньше, чем длительность обрабатываемого сигнала Tsample:

      1. Trun <  (Tsample/10) - 2 балла,

      2. Trun <  (Tsample/1) - 1 балл;

    2. использование ОЗУ (при обработке 1 фрагмента сигнала):

      1. менее 250 МБ - 1 балл.

  2. Оценка портируемости предложенного решения на переферийные и мобильные устройства интернета вещей 0-2.
    Оценивается либо теоретически на основе экспертного мнения, аргументации при защите проекта (команда указывает возможные периферийные устройства (стоимость и энергопотребление также учитываются), инструменты развертывания, трудозатраты на развёртывание), либо практически: демонстрация работоспособности метода на периферийном устройстве (Raspberry Pi, Arduino, Kendryte K210 или ещё чём-то) - 2 балла.

 


Модератор: Перминов Валентин Валерьевич, младший научный сотрудник, программист Центра искусственного интеллекта

Задание #2