Актуальность задачи автоматизации в любой сфере народного хозяйства с каждым годом приобретает все большее значение, поскольку это позволяет:
- сведение к минимуму количества ошибок при проведении исследований и обработке данных;
- ускорение исследований и повышение эффективности использования оборудования;
- снижение финансовых расходов и уменьшение затрат рабочего времени персонала при подготовке текущей и отчетной документации;
- обеспечение оперативного доступа к результатам исследований и соблюдение требований информационной безопасности.
Что нового могут дать современные методы машинного обучения и нейронные сети, в частности? Известно, что решение задачи автоматизации может быть осуществлено на нескольких уровнях. Хотя это разделение условно и не имеет четких границ, однако оно существует, и логически обоснованно.
Первый уровень автоматизации – автоматизация низкого уровня, при которой автоматизировано только оформление технологической документации.
Второй уровень автоматизации – автоматизация среднего уровня, который достигается, когда базы данных частично сформированы и начинают работать поисковые и расчетные модули.
Третий уровень автоматизации – автоматизация высокого уровня, который достигается при заполнении базы данных. В этом случае становится возможным автоматизированное решение сложных логических задач, связанных, например, с выбором структуры технологического процесса и операций, назначением технологических баз и т.п.
Существующие решения, основанные на линейных алгоритмах, позволяют решать задачи на первом и втором уровнях. Что же касается третьего уровня, то здесь имеют место решения, основанные на способности программы устанавливать взаимосвязь между слабо коррелирующими данными, что называется логическим мышлением.
На данный момент задача искусственного интеллекта пока не решена, и тест Тьюринга [1] еще не скоро будет пройден. Но современные методы машинного обучения и анализа больших массивов данных (big data), на самом деле, могут решать подобные задачи в узко специализированном диапазоне определенной проблемы. Переходя к конкретной задаче, целесообразно разобрать пример, решение которого было представлено на первом Украинском AI Hackathon, прошедшем в Киеве в апреле 2016 года, где был предложен проект для диагностирования заболеваний без прямого участия врача [2]. Суть в том, что задача диагностики заболеваний не может решаться при помощи простого линейного алгоритма. Более того, одни и те же симптомы, как известно, могут означать множество абсолютно не связанных друг с другом заболеваний. Поэтому для начала задача была сужена до диагностики заболеваний пищеварительного тракта. При этом была использована технология Design Tree (дерево решений) [3]. Для того чтобы модель начала давать прогноз, сначала ее нужно было обучить. В связи с этим решалась вторая часть задачи – агрегация обучающей базы. Готовых баз анамнезов в открытом доступе на данный момент не существует. Поэтому было решено заняться синтезом данных.
На этапе синтеза были сгенерированы данные об анамнезах двумя путями: 1) Путем добавления шума в существующую незначительную базу реальных анамнезов.
2) Путем генерации данных из медицинских источников (справочных таблиц заболеваний и симптомов).
На этапе агрегации из полученных результатов создавали пары векторов данных, первый из которых соответствовал бит-маске симптомов (0 – отсутствует, 1 – присутствует), а второй вектор – бит-маске с заболеваниями.
Этап обучения заключается в подаче полученных данных на вход модуля принятия решений, то есть – Design Tree. Реализация данной технологии использовалась на базе библиотеки sciPy, языка Python.
Для верификации использовались реальные данные анамнезов. В результате удалось решить задачу диагностики на третьем уровне автоматизации в столь, казалось бы, сложной проблеме.
Переходя к вопросу диагностики материалов и конструкций, следует отметить, что данная задача имеет интересное решение в рамках применения нейронных сетей, как механизма распознавания образов. Формализуя задачу, и вводя на вход данные о материале, или конкретной конструкции, например, толстостенного промышленного котла, необходимо понять, выходит ли его состояние за пределы допустимых значений, с учетом совокупного влияния всех факторов и параметров. С этой целью раннее была рассмотрена задача диагностики заболеваний, ибо, как и в приведенном случае, здесь так же необходимо учесть влияние всех факторов, количество которых может быть достаточно велико. В этом случае пользоваться вектором данных не представляется возможным по той причине, что при появлении каждого нового параметра (фактора), будет меняться формат данных для обучения. Преодолеть трудности при этом удастся, если воспользоваться qr-кодом, поскольку он допускает одновременное введение порядка 7089 факторов (цифр). Теперь все наши данные с помощью простого алгоритма классификации можно перевести в qr-код (рис. 1).
Рисунок 1. Пример qr—code
Из этого становится понятным, почему выше шла речь о нейросетях. Полученный qr-код можно передать в нейросеть, как материал для обучения, а на выход – для создания механизма обратной связи, предотвращающей проникновение и распространение ошибки, подать такой же qr-код, составленный специалистами, и отвечающий требованиям нормативных документов.
Суть задачи сводится к тому, чтобы система научилась распознавать и сравнивать qr-код реального состояния конструкции и qr-код требуемого состояния, определенного специалистами (рис. 2).
Рисунок 2. Схематическое изображения нейронной сети
Если мы обратимся к начальным тезисам данной статьи, то увидим, что в случае удачной реализации этой идеи, мы также получаем способы удобного компактного хранения и передачи отчетов о диагностике.
В рамках развития предложенной идеи планируется:
- провести эксперимент на конкретных данных и абстрактных моделях для прохождения полного цикла жизни полученного решения;
- извлечь обучающую выборку из существующих открытых архивов с помощью автоматизированных механизмов распознавания текста и дальнейшего лексического анализа полученной оцифрованной информации;
- использовать модульную библиотеку PyBrain, предназначенную для реализации различных алгоритмов машинного обучения на языке Python.
Список литературы:
- Тьюринг А. Вычислительные машины и разум [Электронный ресурс] – Режим доступа:
https://ru.wikipedia.org/wiki/%D0%A2%D0%B5%D1%81%D1%82_%D0%A2%D1%8C%D1%8E%D1%80%D0%B8%D0%BD%D0%B3%D0%B0
- [Электронный ресурс] – Режим доступа:
https://www.slideshare.net/DigiFuture/docassist
- [Электронный ресурс] – Режим доступа:
type=»book» name=»ПРИМЕНЕНИЕ ТЕХНОЛОГИЙ МАШИННОГО ОБУЧЕНИЯ В ДИАГНОСТИКЕ» description=»Цель – изучение возможностей использования нейросетевого метода оценки количественных характеристик применительно к диагностике различных сис¬тем. На основании положительных результатов, полученных в области медицин¬ской диагностики, сформулирована концепция создания автоматизированной обучающей системы в сфере технической диагностики. Предложена ориенти¬ровочная дорожная карта действий для выполнения задач автоматизации в диагностике материалов и конструкций.» author=»Мельницкий Артем Александрович, Нетребский Михаил Александрович, Рабкина Марьяна Даниловна» publisher=»Басаранович Екатерина» pubdate=»2016-12-07″ edition=»euroasia-science_30_22.09.2016″ ebook=»yes» ]