Россия
УДК 621.7.015 Качество обработанной поверхности
УДК 004.032.26 Нейронные сети
Рост требований к обеспечению качества изделий, в частности качества поверхности, особенно в условиях цифрового производства, диктует необходимость нетривиальной доработки даже хорошо зарекомендовавших себя методов его оценивания. Одним из подходов к повышению достоверности оценивания могут стать фотографии поверхностей изделий, полученных, например, методами оптической или электронной микроскопии, и использование аппарата искусственных нейронных сетей для их анализа. Представлена технология проведения такого оценивания, при разработке которой решены задачи существенного количественного дополнения данных, полученных на основе применения специальным образом созданного алгоритма, и их принципиально иного качественного наполнения с целью повышения эффективности обучения (тренировки) сети в направлении наделения ее способностью к корректному обобщению информации; целенаправленной доработки структуры сети за счет ее дополнения несколькими новыми слоями (усреднения, дропаута и полносвязного); коррекции алгоритма обучения сети с использованием тренировочного и тестового наборов данных в направлении реализации возможностей такой подстройки параметров под введенную информацию, которая позволит корректно обобщать ее с целью повышения точности за счет подавления эффекта переподгонки; устранения возможных ошибок распознавания параметров качества поверхности за счет усреднения вычисленных сетью значений; практического применения сети к оцениванию качества поверхности – оценки максимальной точности работы сети в аспекте определения необходимого для этого количества изображений поверхности. На примере шероховатости поверхности показано, что применение технологии обеспечивает 100 % точность распознавания значения ее параметра Ra не только для тестового набора, но и для всего имеющегося набора изображений.
изделие, качество поверхности, параметр шероховатости, оценивание, фотография, искусственная нейронная сеть, технология
Постоянный рост требований к обеспечению качества изделий, в частности качества поверхности, особенно в условиях цифрового производства [1, 2], диктует необходимость доработки даже хорошо зарекомендовавших себя методов его оценивания [3 – 5] в направлении повышения уровня достоверности.
Одним из подходов к повышению достоверности оценивания могут стать результаты изучения возможности использования для его проведения фотографий поверхностей изделий, полученных, например, методами оптической или электронной микроскопии, и аппарата искусственных нейронных сетей для их анализа [6, 7].
Необходимо, однако, отметить, что оценивание качества поверхности по фотографиям является нетривиальной задачей и не всегда дает положительный результат ввиду невозможности в ряде случаев отличить фотографии даже визуально. В качестве примера представлены фотографии поверхностей двух образцов, имеющих шероховатость по Ra 0,66 мкм
(рис. 1, а) и 0,055 мкм (рис. 1, б). Очевидной является сложность распознавания этих значений (несмотря на то, что они отличаются в
12 раз) в рамках традиционных методов как создания, так и обучения сети.
Сформируем подход к решению задачи эффективного распознавания значений этих параметров. Исходными данными для решения являются 50 фотографий поверхности каждого образца с диапазонами изменения по высоте 52…57 пикселей и по ширине – 135…141 пикселей. Каждый пиксел на фотографии представлен тремя каналами, соответствующими красному, зеленому и синему цветам. Следовательно, в памяти компьютера фотография представлена в виде трехмерного массива img[height, width, 3]. Каждый цвет кодируется
8 битами, т.е. числом от 0 до 255.
Очевидным является тот факт, что имеющихся фотографий недостаточно для создания нейронной сети с нуля, поэтому будем использовать процедуру трансферного обучения (transfer learning), суть которой состоит в том, что за основу берется уже готовая глубокая сеть, разработанная для классификации изображений и натренированная на очень большом наборе данных. Такую сеть дополняют несколькими новыми слоями и дообучают на имеющемся наборе данных. Этот метод работает потому, что натренированная глубокая нейронная сеть умеет эффективно выделять существенные признаки на изображениях и тогда остается только добавить к ней слои, которые будут на основе этих признаков определять, к какой поверхности относится изображение.
За основу для построения сети взята предварительно обученная на большом наборе входных данных ImageNet глубокая сеть MobileNetV2, разработанная специально для использования в мобильных устройствах с помощью программного пакета tensorflow, свободно распространяемого Google [8]. Сеть содержит порядка 50 слоев и несколько миллионов тренируемых параметров, поэтому способна хорошо распознавать изображения.
Для тренировки сети использовалась модель трансферного обучения, описанная в [9]. Исходный комплект фотографий был разделен на тренировочный и тестовый наборы: тренировочный набор использовался в процессе обучения сети, тестовый для оценки качества ее обучения, т.е. для решения задачи оценивания.
Известно, что для работы с любой сетью входные данные должны быть определенного размера. В случае сети MobileNetV2 на вход необходимо подавать квадратные изображения с размером стороны, кратным 32, начиная с 96 на 96. Если работают с обычными фотографиями, их просто перемасштабируют, задействуя интерполяцию или усреднение. В данном случае этого делать нельзя, поскольку будет искажена тонкая структура шероховатости поверхности, которую необходимо распознать. Очевидное решение состоит в том, чтобы дополнять нулями имеющиеся фотографии до квадрата размера 160 на 160 (160 делится на 32 и такой размер хорошо подходит для работы с сетью MobileNetV2). Однако результаты тестирования показали, что, даже применяя трансферное обучение, не удается получить сколько-нибудь хорошего результата. Это связано с отмеченными ранее количественными и качественными характеристиками фотографий. Сеть очень быстро выходила на 100 % точность, работая на тренировочном наборе, но при этом на тестовом наборе точность оставалась на уровне 50 %. Этот эффект называется переподгонка (overfitting). Сеть, имея очень большое количество (несколько миллионов) настраиваемых параметров, просто запоминает все тренировочные примеры, тогда как для правильного обучения необходимо, чтобы она научилась делать обобщения – выделять ключевые признаки изображений разных значений Ra и делать на их основе предсказания.
Для решения проблемы переподгонки была разработана следующая пошаговая процедура.
1. Бралась исходная фотография и на ней выделялись фрагменты размером 2 на
2 пикселя. Левый верхний угол первого фрагмента выбирался в левом верхнем углу исходного изображения: img[0:2, 0:2]. Второй фрагмент выделялся, начиная с точки (0, 1): img[0:2, 1:3], затем бралась точка (0, 2): img[0:2, 2:4] и так далее. Говоря иначе, выделялись фрагменты с перекрытием, что обеспечивало получение их максимально большого количества.
2. Из сформированного набора случайным образом выбирались разные фрагменты и укладывались один рядом с другим, компонуя новое изображение. Строились изображения минимально допустимого размера 96 на
96 пикселей. Для увеличения количества вариантов перед укладкой фрагменты случайным образом переворачивались по вертикали, горизонтали или поворачивались на 90 º. После того, как изображение нужного размера было собрано, случайным образом, но очень незначительно, изменялись его яркость, насыщенность и оттенок. Для этого изображение конвертировалось в цветовую схему HVS. Компоненты Hue, Value и Saturation случайным образом корректировались и затем изображение восстанавливалось. Это давало еще некоторое увеличение количества вариантов (заметим, что метод расширения набора данных за счет внесения случайных изменений в исходные изображения широко применяется в задачах машинного обучения и называется аугментацией).
3. Для каждой из 100 исходных фотографий создавалось 100 новых изображений, что позволило увеличить количество элементов в исходном наборе до 10000. Для тренировки использовалось по 40 фотографий каждого значения Ra, и на их основе генерировался набор изображений из 2´40´100 = 8000 изображений. Тестовый набор состоял из 10 фотографий каждого значения Ra и по ним генерировался набор данных из 2´10´100 = 2000 изображений.
4. Для построения модели трансферного обучения сеть MobileNetV2 загружалась без последнего слоя, осуществляющего непосредственно классификацию. Вместо него были добавлены новые слои – усреднение, дропаут и полносвязный слой с единственным выходом. Состояние этого выхода сообщает информацию о принятом решении. Отрицательное число соответствует одному параметру Ra, положительное другому.
5. Для тренировки к сети добавлялась целевая функция (функция потерь, loss function). Цель тренировки – поиск минимума целевой функции. В качестве целевой функции в задачах классификации, когда имеются, как в данном случае, всего два класса, использовалась так называемая бинарная кросс-энтропия. Также качество тренировки оценивалось при помощи функции точности, под которой понимался процент правильных ответов сети.
6. Тренировочные данные передавались сети; для них на каждом шаге тренировки вычислялся градиент целевой функции и на его основе корректировались параметры сети. Тестовые данные для вычисления новых значений параметров сети не использовались. После выполненной коррекции параметров значения целевой функции и функции точности вычислялись как для тренировочного подмножества данных, так и для тестового. Тренировка происходила корректно, если тренировочные и тестовые значения оставались близкими. Это означает, что сеть не просто подстраивалась под тренировочный набор и запоминала его, а выполняла корректное обобщение информации. Благодаря этому, сеть приобретала способность правильно классифицировать
не только те данные, на которых она тренировалась, но и данные, которые не использовались непосредственно для подстройки ее параметров.
В качестве комментариев к представленной процедуре отметим следующее.
1. На практике типичной является ситуация, в которой полный набор данных является достаточно большим и полностью не умещается в оперативной памяти компьютера. Поэтому для подстройки параметров сети нельзя задействовать сразу весь тренировочный набор. В этом случае его разбивают на небольшие фрагменты, которые называют бачами (от английского batch). Бачи поочередно передаются сети, для них вычисляется градиент целевой функции, и ищутся поправки для параметров. Одна эпоха обучения соответствует перебору всех бачей тренировочного набора данных. В данном случае использовались бачи из 32 элементов.
2. Поиск минимума целевой функции осуществлялся методом, в основе которого лежит метод градиентного спуска. Идея метода состоит в том, что если нужно найти минимум функции многих переменных, то ищется вектор градиента этой функции (в данном случае целевой функции) по параметрам (в данном случае весовым коэффициентам слоев сети). Затем в пространстве параметров сети делается шаг в направлении, заданным вычисленным вектором градиента. Главный вопрос состоит в выборе величины этого шага (learning rate). Если он слишком велик, то можно проскочить минимум, а если слишком мал, то тренировка будет слишком медленной. Существует несколько способов адаптивной подстройки шага. Наилучший на сегодняшний день алгоритм – ADAM, поэтому для обучения сети использовался именно он.
С учетом изложенного процесс обучения сети был разбит на два этапа. На первом замораживались параметры базовой сети MobileNetV2 и тренировались только параметры слоев, которые были к ней добавлены (усреднение, дропаут и полносвязный). Такое обучение длилось 100 эпох. Затем размораживались веса базовой сети, и тренировка продолжалась еще 100 эпох. Результаты обучения показаны на
рис. 2; красные кривые на нем отражают тренировочные данные, синие – тестовые. Видно, что после разморозки параметров базовой сети качество обучения резко возрастало и его точность достигала единицы. Отметим также, что кривая, построенная на тестовых данных, показывает лучшее поведение: для целевой функции ее значения меньше, для функции точности ближе к единице. Это объясняется тем, что тестовая кривая вычислялась с незадействованными слоями дропаута, которые были добавлены к сети для подавления эффекта переподгонки. В результате тренировки был получен файл модели в формате hdf5.
Точность модели на тренировочном и тестовом наборах достигала единицы. Применение модели к предварительно зарезервированному тестовому набору данных, которые сеть ни разу не видела, давало значение точности 0,9595, то есть 95,95 %. Так как при генерации наборов данных из исходных фотографий были задействованы случайные операции, то, повторив всю процедуру заново, мы не получим строго такие же числа. Но, как показали несколько проверок, перевычисляя наборы данных и тренируя сеть заново, можно получить примерно одинаковые уровни точности.
Завершая рассмотрение вопросов, связанных с формированием подхода к оцениванию качества поверхности изделий, отметим, что наборы используемых до сих пор данных – это изображения, сгенерированные на основании исходных фотографий и перемешанные так, что отсутствует информация о том, какой фотографии соответствует то или иное изображение. Это значит, что для практического применения сети к определению качества поверхности необходимо разработать специальную процедуру. Выглядит она следующим образом.
Вначале для одной анализируемой фотографии по описанному выше методу, генерируется набор изображений в количестве 33 штук (выделяются фрагменты и случайным образом складываются из них 33 изображения). Число 33 берется в значительной степени произвольно. Затем этот набор передается в сеть и получаются 33 значения, среди которых могут быть 0 или 1 (напомним, что 0 означает отнесение сетью изображения к параметру Ra = 0,055 мкм, а 1 к параметру Ra = 0,66 мкм). Так как заранее известно, что все изображения набора получены из одной и той же исходной фотографии, то в идеале ответ сети должен содержать только 0 или только 1. Но возможны ошибки. Для их устранения вычисляется среднее значение из выданных сетью ответов. Если оно окажется меньше 0,5, то сеть предсказала для исходной фотографии класс 0, если больше 0,5, то класс 1. Чтобы никогда не выпадало строго 0,5, необходимо брать нечетное число элементов.
Применение этой процедуры к тестовому набору фотографий (напомним, что они не участвовали в тренировке сети) дало 100 % точность предсказания правильного значения параметра Ra. Также 100 % точность предсказаний получается и для всего набора исходных фотографий.
Было также проверено, какой будет точность оценивания, если генерировать больше или меньшее 33 изображений. Результаты показали, что если брать только 11 изображений, то на тестовом наборе точность остается равной 100 %, а при проходе всего исходного набора фотографий (в данном случае 100) одна-две из них могут быть распознаны неверно. С другой стороны, увеличение количества генерируемых фотографий больше 33 ничего не дает.
В целом, полученные и представленные результаты позволяют рассматривать сформированный подход как технологию оценивания качества поверхности изделий, практическая реализация которой в виде программного продукта [10] будет способствовать получению информации, обладающей более высокой степенью достоверности. Учет этой информации позволит повысить эффективность решения задач мониторинга и управления качеством за счет принятия более обоснованных решений [11, 12], в том числе с использованием цифровых двойников (постоянно меняющихся цифровых профилей, которые содержат наиболее актуальные данные как о самих изделиях, так и о процессах их производства [13]), и на этой основе сокращать сроки производства, т.е. не только повысить конкурентоспособность механической обработки, но и вывести ее на новый качественный уровень.
Выводы
1. Сформирован подход к оцениванию качества поверхности изделия по ее фотографии с помощью аппарата искусственных нейронных сетей. При разработке подхода решены задачи существенного количественного дополнения данных для повышения эффективности обучения (тренировки) сети, целенаправленной доработки ее структуры, коррекции алгоритма обучения, устранения возможных ошибок распознавания параметров качества поверхности, а также практической реализации и применения. В совокупности это позволяет рассматривать подход как технологию оценивания.
2. На примере шероховатости поверхности показано, что применение технологии обеспечивает 100 % точность распознавания значения ее параметра Ra не только для тестового набора, но и для всего имеющегося набора изображений.
1. Григорьев С.Н., Грибков А.А., Захарченко Д.В. Тенденции развития мирового станкостроения // СТИН. 2013. № 1. С. 2–4.
2. Зарубин С.Г., Деев К.А. Разработка процессной модели цифрового машиностроительного производства // СТИН. 2017. № 3. С. 2–7.
3. Миркин Б.Г. Базовые методы анализа данных: учебник и практикум для вузов. М.: Юрайт, 2025. 297 с.
4. Healy K. Data visualization: a practical introduction. Princeton University Press, 2024. 271 p.
5. Тюрин Ю.Н., Макаров А.А. Анализ данных на компьютере. М.: ИНФРА-М, 2002. 528 с.
6. Бржозовский Б.М., Зинина Е.П., Кочкуров Л.А., Мартынов В.В. Оценка микрорельефа наноструктурированной поверхности металлорежущего инструмента методами обработки изображений // Упрочняющие технологии и покрытия. 2024. Т. 20. № 7. С. 331–336.
7. Khorasani A.M., Yazdi, M.R.S. Development of a dynamic surface roughness monitoring system based on artificial neural networks (ANN) in milling operation // Int. J. Adv. Manuf. Technol. 2017. 93. Pp. 141–151.
8. An end-to-end platform for machine learning. URL: https://www.tensorflow.org (дата обращения 23.12.2025). Текст электронный.
9. Transfer learning and fine-tuning. URL: https://www.tensorflow.org/tutorials/images/transfer_learning (дата обращения 23.12.2025). Текст электронный.
10. Купцов П.В., Мартынов В.В., Бровкова М.Б. Создание датасета на основе сделанных во внелабораторных условиях фотографий шероховатостей с применением ресегментации и аугментации // Свидетельство о государственной регистрации программы для ЭВМ № 2020667034. Дата государственной регистрации: 21 декабря 2020.
11. Лютов А.Г., Рябов Ю.В. Применение интеллектуального управления для обеспечения качества производственных процессов // СТИН. 2015. № 7. С. 2–4.
12. Albers A., Gladysz B., Pinner T., Butenko V., Sturmlinger T. Procedure for Defining the System of Objectives in the Initial Phase of an Industry 4.0 Project Focusing on Intelligent Quality Control Systems // Procedia CIRP. 2016. 52. Pp. 262–267.
13. Кокорев Д.С., Юрин А.А. Цифровые двойники: понятие, типы и преимущества для бизнеса // Colloquium-journal. 2019. № 10 (34). С. 31–35.



