Journal of the Korean Institute of Industrial Engineers
[ Article ]
Journal of the Korean Institute of Industrial Engineers - Vol. 51, No. 1, pp.25-35
ISSN: 1225-0988 (Print) 2234-6457 (Online)
Print publication date 15 Feb 2025
Received 19 Jul 2024 Revised 19 Oct 2024 Accepted 05 Nov 2024
DOI: https://doi.org/10.7232/JKIIE.2025.51.1.025

조립품의 부품 식별과 탐지를 지원하는 기계학습 모델과 데이터셋 통합 제품 자료 모델 개발

도남철
경상국립대학교 산업시스템공학부
Development of An Integrated Product Data Model with Machine Learning Models and Datasets to Facilitate Part Identification and Detection of Assembly Products
Namchul Do
Department of Industrial and Systems Engineering, Gyeongsang National University, ERI

Correspondence to: 도남철 교수, 52828 경상국립대학교 산업시스템공학부 경남 진주시 진주대로 501, Tel : 055-772-1703, Fax : 055-772-1699, E-mail : dnc@gnu.ac.kr

© 2025 KIIE

Abstract

To effectively use machine learning (ML), virtual ML applications that take into account aspects particular to an ML application domain are required. This paper presents a product data model that incorporates ML objects to assist ML applications for the part detection among components of a given assembly product during product development. The proposed product data model combines ML model and dataset objects during the ML life cycle, as well as item, technical document, product structure and engineering change objects over the product life cycle. The ML objects in the product data model are tightly connected with product structures and support production routings, which are the domain of ML applications in product development. Furthermore, they apply transfer learning approaches to repurpose previously learned ML models to create new ML models for engineering changed products. To evaluate the feasibility of the proposed product data model, a test application of the part detection ML is implemented utilizing an existing information system for product development and manual operations.

Keywords:

Product Development, Machine Learning, Product Data Model, Transfer Learning, ML Model, ML Dataset

1. 서 론

최근 심층 신경망(Deep Neural Network: DNN) 기반 기계학습(Machine Learning: ML) 방법인 Deep Learning(DL)이 다양한 분야에 활발히 적용되고 있다. 대부분의 DL 연구는 독립된 DNN 기반 ML 모델이나 데이터셋(Dataset) 구축에 집중되었다. 최근 ML의 실제 운영을 위해 수명 주기 관점에서 ML 모델과 데이터셋의 효과적 관리와 적용을 고려하는 Machine Learning Operations(MLOps)가 출현하였다(SIG MLOps, 2024). 실질적 MLOps를 위해 각 응용 분야의 특성을 고려한 수직적 ML 응용(Vertical ML Application) 체계에 관한 연구가 요구된다.

제품 개발(Product Development)이란 제품 설계(Product Design)를 기반으로 제품의 출시에 필요한 생산과 고객 지원 준비까지 포함하는 기업의 핵심 활동이다(Do, 2022). 복잡한 제품 정보와 공학 기술 지식 기반 활동인 제품 개발에 ML 적용이 유효할 것으로 예측된다. 하지만 제품 개발의 ML 응용은 다음과 같은 제품 개발 과정의 특성을 반영한 수직적 ML 응용이 고려되어야 한다.

첫째, ML에 적용되는 훈련 데이터셋(Training Dataset)이 특정 제품에 관련된 자료로 한정된다. 예로 특정 자동차 회사의 제품 개발에 적용되는 Computer Vision ML은 적용 대상이 일상 객체를 식별하는 COCO 모델(COCO, 2024)과 다르게 자사가 개발하는 제품과 구성 부품에 한정된 훈련 데이터셋이 필요하다(Cohen et al., 2020; Ge et al., 2020). 둘째, 일반 ML 모델 훈련에 사용할 수 있는 공개된 대량의 데이터셋을 사용하는 대신, 지적 재산 보호 등을 고려하여 기업 내부에서 모델 훈련에 필요한 데이터셋을 준비해야 한다. 그러므로 운영 기업은 ML 모델과 데이터셋의 효과적 생성과 관리 능력을 확보해야 한다. 마지막 셋째, 제품 개발 과정 중 효과적 ML 적용을 위하여 제품 개발 과정을 구성하는 신제품 개발(New Product Development)과 설계 변경(Engineering Changes)(Do, 2018)에 통합된 ML 모델과 데이터셋을 구축해야 한다.

대부분 기업은 복잡하고 신뢰도 높은 제품을 짧은 시간에 개발하기 위하여 오랫동안 컴퓨터 기반 정보 시스템을 구축하고 운영해 왔다. 특히 제품 개발 지원 정보 시스템 분야는 1980년대 도입된 CAD 파일 호환을 확장하여 1988년부터 통합된 제품 자료를 교환하기 위한 ISO STEP 표준화(ISO, 2024)를 진행하였다. 제품 개발 지원 정보 시스템은 STEP 표준을 기반으로 대표적인 상용 제품 수명 주기 관리 시스템(Product Life cycle Management System: PLM System) 시장을 형성하는 등 일반적인 제품 자료 모델과 그 응용을 구체화하였다. 그러므로 제품 개발에 수직적 ML 응용을 위해 기존 일반화된 제품 자료 모델을 기반으로 ML 모델과 데이터셋을 효과적으로 관리할 수 있는 컴퓨터 기반 정보 시스템이 유효할 것으로 예측된다.

본 연구는 제품 개발 과정에서 조립품의 부품 식별(Part Identification)과 부품 탐지(Part Detection)를 위한 ML의 효과적 적용을 지원하는 제품 자료 모델(Product Data Model)을 제안한다. 제품 자료 모델은 제품 개발을 위한 제품 자료를 표현하는 객체와 객체 사이 관계의 모임을 뜻하며, 제품 개발 지원 정보 시스템에 기본 자료 구조를 제공한다. 제품 자료 모델은 기존 제품 개발 과정과 지원 정보 체계를 기반으로 신제품 개발과 설계 변경 그리고 협동 제품 개발을 지원한다. 그러므로 ML 적용을 지원하는 제품 자료 모델은 기존 제품 개발 과정에 ML 모델과 데이터셋의 통합 관리와 효과적 재사용을 가능하게 한다.

현재 ML은 광범위하고 빠르게 발전하고 있으며 제품 개발에 대한 ML 응용은 기업 내부 정보를 다루므로 그 보고 사례가 부족하다. 이와 같은 상황을 고려하여 본 연구는 첫째, 연구 사례 기반의 제품 개발을 지원하는 소규모 제품 자료 모델을 개발한다(3절). 둘째, 사례를 통해 개발된 제품 자료 모델을 일반화하여 조립품의 부품을 식별하거나 탐지하는 ML 모델과 데이터셋이 통합된 제품 자료 모델을 제안한다(4.1절). 마지막 셋째, 기존 제품 개발 지원 정보 시스템과 수작업 과정(4.3절)을 통해 제안된 제품 자료 모델의 적용 가능성을 확인(5절)한다.

본 연구가 제공하는 ML 모델과 데이터셋 관리를 위한 제품 자료 모델은 다음 의의가 있다. 첫째, 제품 개발 분야 응용을 지원하는 수직적 ML 응용 방법을 제공한다. 둘째, 제품 개발을 위한 협동 작업 대상에 부품 리스트, 제품 구조 그리고 CAD 모델 등의 기존 제품 자료 외에 ML 모델과 데이터셋을 포함한다. 마지막 셋째, 제품 개발을 위한 지식 자산으로서 ML 모델과 데이터셋을 체계적으로 관리한다.

본 연구의 제2장은 관련 연구를 살펴본다. 제3장은 기존 제품 자료 모델과 이를 ML의 수직적 응용을 위해 확장한 모델을 두 개의 연구 예를 통해 살펴본다. 제4장은 제3장의 연구를 통해 일반화된 제품 자료 모델을 구성하고 이를 기존 정보 시스템과 수작업을 통해 시험한다. 제5장은 제4장의 결과를 토론하고 결론을 정리한다.


2. 관련 연구

2.1 일반적인 제품 자료 모델 정립과 확장 연구

ISO STEP(ISO, 2024)은 1980년대 말에 시작하여 3D CAD 모델 호환의 국제 표준뿐만 아니라 일반적인 제품 자료 모델(General Product Data Model)을 정립하였다. 형식적으로 ISO STEP은 제품 자료 구조와 제약 조건을 표현할 수 있는 EXPRESS 언어와 생성 자료를 데이터베이스 방식으로 표현한 P21 표준을 제공한다. EXPRESS는 제품 자료 모델을 유연하고 체계적으로 표현할 수 있게 하였고 P21은 파일 뿐만 아니라 데이터베이스 구현을 가능하게 하였다.

내용 측면에서 ISO STEP은 첫째, 제품 형상뿐만 아니라 아이템, 기술 문서, 제품 구조, 워크플로 그리고 설계 변경 등의 제품 개발 전반에 걸친 제품 자료를 포함한다. 둘째, 기반 표준과 이를 공유하여 정의된 산업별 표준을 계층화하여 제정하였다. 그러므로 ISO STEP 표준은 일반적인 제품 자료 모델을 제공한다. 셋째, 3D CAD 호환 표준에 제품 형상뿐만 아니라 제품 구조 정보도 함께 포함하므로 제품 구조를 중심으로 제품 자료를 통합 표현할 수 있게 한다.

PDM Schema(PLM Implementor Forum, 2002)는 제품 개발 지원 정보 시스템인 PLM의 제품 자료 모델을 구현하기 위하여 ISO STEP 표준 중에 관련 Entity 등을 편집한 제품 자료 모델이다. 당시 PLM은 3D CAD 파일을 이용하여 제품 형상 정보를 관리했기 때문에 PDM Schema는 형상 표준을 제외한 제품 자료 모델을 제공한다. 그러므로 PDM Schema는 국제 표준 활동의 결과를 통합한 제품 개발을 지원하는 일반적인 제품 자료 모델을 제공한다. 본 연구는 PDM Schema에서 제공하는 Entity를 단순화시킨 아이템, 제품 구조, 기술 문서 그리고 설계 변경 객체로 구성된 일반적인 제품 자료 모델을 기준 모델로 사용한다.

ISO STEP 활동을 통해 정립된 일반적인 제품 자료 모델을 기반으로 조립과 로봇 계획 등의 생산 준비 활동을 지원하는 제품 자료 모델 확장 연구가 진행되었다.

Zha et al.(2002)은 설계와 조립계획(Design and Assembly Planning)을 통합 지원하는 STEP 기반 자료 구조를 제안하였다. 해당 연구는 EXPRESS 언어를 이용하여 제품의 조립 구조와 조립 과정이 연계된 객체 구조를 제안하였다. 객체 구조는 제품 형상에 대한 정보 없이 제품 조립 구조와 제품 조립을 위한 속성과 관계가 추가되었다. 또한 조립품과 구성품 관계를 표현하는 일종의 Bill of Material(BOM)인 제품 계층 관계와 조립 공정 객체가 제안되었다.

Horvath et al.(2001, 2002, 2004)은 제품 구조 기반의 제품 모델을 적용한 로봇 제어 체계를 제안하였다. 연구는 제품 형상과 제품 구조가 통합된 제품 모델과 특징 형상을 이용하여 로봇 조립계획을 지원하는 체계를 제안하였다. 하지만 제안된 체계를 지원하는 객체 수준의 통합된 제품자료 모델이나 이를 구현한 연구를 찾아볼 수 없다.

Do et al.(2021, 2023a, 2023b)은 일반적인 제품 자료 모델을 확장하여 자동 로봇 조립계획을 위한 제품 자료 모델을 제시하였다. 연구는 로봇 조립계획 각 과정에 연계된 제품 자료를 관리하기 위하여 생산 관점의 BOM 확장을 통해 조립 순서를 표현하고, 프로세스 BOM 확장을 통해 로봇 조립 계획 단계를 표현하였다.

2.2 부품 식별과 탐지 ML 연구

부품 식별과 탐지는 일반적인 물건을 식별하고 탐지하는 객체 식별과 탐지 기술을 제품 개발과 제조 환경에 적용한 것이다. 객체 식별과 탐지는 주어진 이미지 안에 존재하는 객체를 구별하는 객체 식별(Object Identification)과 식별된 객체의 이미지상 위치까지 결정하는 객체 탐지(Object Detection)로 나눌 수 있다. 인공 뉴런을 여러 층으로 겹쳐 생성한 심층 신경망(Deep Neural Network)과 대량의 공개 데이터셋을 이용한 ML이 자동 객체 식별과 탐지에서 높은 인식 성공률을 보임으로써 ML 기반 객체 식별과 탐지가 다양한 분야에 응용되었다(Munappy et al., 2022).

이미지 기반 객체 식별과 탐지에 심층 신경망 방법 중 특성 맵을 이용한 Convolutional Neural Network(CNN) 방식(LeCun et al., 2015)이 효과적인 것으로 알려져 있다(Krizhevsky et al., 2012). 객체 탐지를 지원하는 CNN은 크게 두 가지 방식으로 발전하고 있다. 하나는 객체 탐지를 두 단계에 나누어 처리하는 R-CNN 방식(Girshick et al., 2014)이고, 다른 하나는 한 번에 인식과 탐지를 모두 처리하는 You Only Look Once(YOLO) 방식(Redmon et al., 2015)이다. 부품 식별과 탐지 연구나 응용도 대부분 R-CNN이나 YOLO 방식의 ML 모델을 사용한다.

부품 식별과 탐지는 공정 자동화의 요소 모듈이나 불량품을 식별하는 품질 검사 모듈로 사용된다(Vu et al., 2023; Basamakis et al., 2022). 본 연구는 로봇 조립 계획 과정 중 조립품의 부품을 탐지하는 ML에 관심을 가지므로 공정 자동화를 위한 부품 식별과 탐지 응용에 속한다. 공정 자동화를 위한 부품 식별과 탐지 연구는 해당 분야의 특성을 고려한 객체 탐지용 ML 모델 응용 연구가 주를 이룬다. 응용 연구는 효과적 제품 데이터셋 생성 연구와 특정 제조 분야에 특성을 고려한 응용 연구로 나눌 수 있다.

제품 데이터셋의 효율적 생성에 관한 연구는 CAD 모델을 이용한 합성 데이터셋 생성 방법이 주를 이룬다(Sampaio et al., 2021; Cohen et al., 2020). 이 연구는 이미지 데이터셋을 효과적으로 생성하는데 3D CAD 모델을 사용하는 방법을 제안하였으나 제품 개발은 고려하지 않았다. 부품 식별과 탐지 ML 모델을 지원하는 3D CAD 모델 데이터셋 관련 연구(Chang et al., 2015)에서 제품 자료 모델의 구성 요소인 제품 구조와 부품간 연결 자료를 포함하였다. 이 연구는 데이터셋의 부품 분류를 위해 WordNet(WordNet, 2024), 형상 분류를 위해 ImageNet (ImageNet, 2024)과 연동하였다. 대규모 공개 데이터셋과 연동은 기업이 특정 형상이나 분류 체계를 가진 경우 적합하지 않을 수 있다.

특정 제조 환경을 고려한 ML 응용 사례 연구로 Johan and Prabuwono(2011)는 인공 신경망을 이용하여 컨베이어 벨트로 이동하는 볼트와 너트의 실시간 인식에 관한 연구를 수행하였다. Drost et al.(2017)은 공업용 고해상도 카메라와 3D 스캐너를 사용하는 제조 환경을 고려한 데이터셋 확보와 ML 응용에 관해 연구하였다. Kruger et al.(2019)은 재제조 산업 적용에서 분류되어야 할 부품 수와 준비되어야 할 image의 수에 대한 지침 제공을 위해 3,000개 부품으로 이루어진 데이터셋과 ML 모델 적용 결과를 보고하였다. 이 연구는 제품 자료 중 무게 등 비시각적 특성을 함께 사용하는 방법을 시도하였다. Huang et al.(2019)은 조립품과 구성 부품을 R-CNN 모델을 이용하여 검사하여 부품 누락과 정렬 문제를 해결하였다. Ge et al.(2020)은 송전탑의 절연체 조사를 위해 객체 탐지 기술을 사용하였다. Ramesh et al.(2024)는 조립 공정에서 필요한 나사나 볼트와 같은 체결 부품 탐지를 위한 R-CNN과 YOLO 모델 결과를 비교 연구하였다.

2.3 제품 개발에 ML을 지원하는 제품 자료 모델 연구

기반 제품 자료 모델 측면에서 본 연구는 현재 가용한 가장 일반적인 모델인 PDM Schema를 기준으로 채택함으로써 기존 제품 개발 지원 정보 시스템을 이용한 구현이 수월하게 하였다. 또한 특정 산업에 치우치지 않고 일반적 제품 개발에 적용할 수 있는 유연한 제품 자료 모델을 제공한다.

제품 자료 모델 확장 측면에서 아직 본 연구와 같이 제품 자료 모델에 ML 객체를 통합하는 접근을 발견하지 못하였다. 제품 자료 모델은 발전하는 정보 기술을 제품 개발에 수용하기 위하여 관련 객체를 추가해 나가는 방식으로 진화하였다. 최근 ML이 정보 기술 개발과 운영의 틀을 바꾸는 중요한 요소이므로 제품 자료 모델에 ML 객체 추가는 제품 개발에 ML을 적용하는 중요 단계로 볼 수 있다.

서론에서 제시한 제품 개발에 ML 응용을 위한 요구 측면에서 기존 부품 식별과 탐지 ML 연구는 첫째 요구인 특정 제품에 관련된 훈련 데이터셋 제한과 둘째 기업 내부의 ML 모델과 데이터셋 준비를 부분적으로 만족시킨다. 기존 부품 식별과 탐지 ML 연구들은 응용 환경과 대상의 특성을 고려하여 기존 CNN 기반 객체 탐지 ML 모델을 적용하였다. 하지만 대부분의 연구는 ML 모델과 데이터셋 구축 자체에 집중하고 MLOps 관점에서 재사용을 포함한 ML 모델과 데이터셋의 효율적 관리를 고려하지 않았다. 셋째 요구 사항인 제품 개발 과정에 통합된 ML 모델과 데이터셋에 관한 연구는 발견할 수 없었다.

본 연구는 제품 개발 시 부품 식별과 탐지 ML 응용을 효율화하고, ML 모델과 데이터셋을 기업의 새로운 지적 자산으로 공유하고 관리하는 목적을 가진다. 이를 위하여 제품 개발을 전사적으로 지원하는 정보 시스템의 기반인 제품 자료 모델을 확장하고 이를 제품 개발 협동 작업과 설계 변경 과정에 적용하는 방법을 제안하였다.

제안된 제품 자료 모델은 ML 모델과 데이터셋을 기업 기준 정보인 아이템에 연동하여 관리함으로 자료를 일관되게 관리 할 수 있을 뿐만 아니라 기업 내 제품 개발 참여자가 공유하고 협동 작업이 가능해지게 하였다. 제안된 제품 자료 모델은 생산 BOM의 조립품에 ML 모델과 데이터셋을 연결함으로써 조립품이 대응하는 공정에 적용되는 데이터셋의 효율적 준비와 ML 모델 훈련이 가능하게 하였다. 조립품에 연결된 ML 모델과 데이터셋은 설계 변경에 전이 학습(Transfer Learning)을 적용하여 기존 자원을 재사용하고 효율적 ML 모델 개발을 가능하게 하였다.

그러므로 본 연구는 ML 모델과 데이터셋의 기술적 문제에 집중한 기존 방법과 달리 ML 모델과 데이터셋 객체를 통합한 제품 자료 모델을 제안함으로써 기존의 전사적 제품 개발 과정을 통해 효율적으로 ML 모델을 생성하고 응용하며 기업의 지식 자산으로서 관리할 수 있도록 하였다.


3. 제품 자료 모델 확장

3.1 기존 제품 자료 모델을 이용한 제품 표현

현재 사용하고 있는 제품 자료 모델은 제품 구조를 기반으로 제품 개발에 필요한 일관된 통합 제품 자료를 제공한다. 또한 제품 자료 모델은 제품 개발을 지원하는 정보 시스템의 자료 구조 역할을 한다. 독자의 이해를 위하여 예를 통해 현재 제품 자료 모델을 소개하고 이를 기반으로 통합 ML 응용을 지원하는 제품 자료 모델을 소개한다.

현재 제품 개발을 위한 제품 자료 모델을 구성하는 주요 객체는 Item, Document, Constituent Relationship(이후 Rel) 그리고 Engineering Change(EC) 이다(Do, 2019). <Figure 1>은 Base, Cylinder, Spring 그리고 Top 구성 부품으로 이루어진 Asm C 조립품과 Asm C의 Top 부품을 Top —A 부품으로 설계 변경한 Asm C —A 조립품을 제품 자료 객체로 표현한 예이다.

Figure 1.

An Example Product Data Using Existing Product Data Objects

Item 객체는 부품, 반제품 그리고 완제품 등의 제품에 참여하는 모든 구성품을 표현한다. <Figure 1>에서 직사각형으로 표시되며 조립품을 구성하는 부품인 Base를 예로 들 수 있다. Document는 Item 객체의 형상 등의 상세 정보를 포함한 전자 문서를 표현하는 객체로서 Item이 연관되어 있다. <Figure 1>에서 Base 아이템에 곡선으로 연결된 3D 형상을 예로 들 수 있다. Rel 객체는 두 부품 간의 구성 관계(Constituent Relationship)를 뜻하며 그림에는 두 Item 객체 사이를 연결한 선으로 표시되어 있다. Rel 객체는 방향성이 있어 위쪽 Item이 조립품을, 아래쪽 Item이 구성 부품을 뜻한다. <Figure 1>에서 Rel 객체는 Asm C 조립품과 Base 구성 부품 사이의 실선으로 표현되며, 두 Item 사이의 구성 관계를 표현한다. 제품 구조는 서로 연결된 구성 관계로 형성된 네트워크(Network) 구조를 뜻한다. <Figure 1>의 Asm C는 4개의 구성 부품과 제품 구조를 이루고 있다.

본 연구의 대상인 조립품의 부품 식별이란 특정 조립품에 제품 구조를 통해 포함된 구성 부품군에서 각각의 부품을 구별하는 기능이다. 부품 탐지란 조립품에 포함된 부품의 식별과 함께 위치도 파악하는 기능이다. 조립품의 부품 식별과 탐지에 적용되는 제품 구조는 제품을 제작하는 방법의 순서인 공정을 표현한다. <Figure 1>의 예에서 조립품 Asm C의 제품 구조는 조립 공정을 표현한다. Asm C는 조립 공정의 결과이고 제품 구조를 통해 표현된 구성 부품인 Base, Cylinder, Spring 그리고 Top은 조립 공정의 입력이다. 제품 개발에서 공정을 자동화하기 위하여 ML이 사용되며 공정의 적용 단위는 조립품이 된다. 조립품의 부품 식별과 탐지 ML 모듈은 공정에 적용되는 자동화 프로시저를 구성하는 기반 모듈이다.

EC 객체는 생산 중 제품의 변화를 표현하기 위하여 변경 이전 제품 구조와 이후 제품 구조를 연결한다. 제품 구조를 연결하기 위해 제품 구조의 최상위 아이템을 연결한다. <Figure 1>에서 EC 객체는 두 객체 사이의 화살표로 이전 부품으로서 Asm C와 이후 부품으로서 Asm C —A를 연결하였다. 두 Item은 각각 제품 구조의 최상위 부품으로 변경 이전과 이후의 제품 구조를 대표한다.

현재 제품 자료 모델이 제공하는 4개의 주요 객체는 ISO STEP에서 제공하는 제품 자료 모델(PDM Implementor Forum, 2002)의 핵심 구성 요소이며 이를 확장하여 제품 형상 관리(Product Configuration Management)나 다중 제품 관점(Product View)을 통한 통합 BOM 관리 등의 제품 개발을 위한 종합적인 응용을 지원한다(Do, 2019).

3.2 ML을 위한 제품 자료 모델 확장

(1) ML 수명 주기와 제품 자료 모델

제품 개발이나 생산에 ML 적용이 활성화됨에 따라 제품 수명 주기 중 동일 조립품이나 부품에 여러 종류의 ML 모델이 응용되는 경우가 발생한다. 그러므로 ML 수명 주기 관점에서 제품 자료와 통합된 ML 응용을 관찰할 필요가 있다. <Figure 2>는 ML 수명 주기상에 <Figure 1>의 Item, Rel 그리고 Document 객체와 ML 객체를 통합하여 표현하였다.

Figure 2.

ML Process with ML and Product Data Objects

ML 수명 주기는 <Figure 2>에 화살표로 나타낸 Prepare, Training 그리고 Predict 3개 단계로 나눌 수 있다. 첫째 Prepare는 원천 자료로부터 학습 데이터셋을 준비하는 단계이다. 둘째 Training은 훈련 데이터셋을 이용하여 준비된 ML 모델을 훈련하여 신뢰할 수 있는 ML 모델을 만드는 단계이다. 마지막 셋째 Predict는 훈련된 모델에 관심 자료를 입력하여 답을 예측하는 단계이다.

Prepare 단계에 참여하는 Data Source 객체는 데이터셋을 만들기 위해 모은 원천 자료를 표현한다. 원천 자료는 자료 수집 방법인 현장 수집, 실험 혹은 합성 속성값을 가진다. 데이터셋은 ML 모델을 훈련하기 위해 사용되는 샘플(Sample)의 집합으로 분류(Class) 값을 나타내는 레이블을 가질 수 있다. Dataset 객체는 학습 데이터셋의 자료형을 표시하는 레코드, 이미지, 동영상, 음성/음향 혹은 텍스트 값과 용도를 표현하는 훈련, 검증 혹은 시험 값 그리고 분류에 대한 속성을 가진다.

Training 단계의 ML Model 객체는 ML을 위한 DNN 모델을 표현한다. ML Model 객체는 모델을 정의한 Model Specification과 학습된 모델을 저장한 Trained Model 속성을 가진다. Model Specification은 모델을 정의하는 코드와 Hyper Parameter를 포함한다. ML Model 객체는 객체의 기본적인 식별자 외에 이전 이후 ML 모델과 연결된 Version 속성을 가진다. 이외에도 ML 모델의 Validation/Verification 정보를 표현하는 Validation 속성과 ML 모델의 적용 환경과 적용 후 상태를 표현하는 Model Deploy 속성을 가진다.

ML Model 객체와 연관된 객체는 Data Source, Dataset 그리고 모델이 적용될 조립품 제품 구조를 대표하는 Item 객체이다. Item 객체는 ML에 참여하는 제품 구조를 대표하기 위하여 관련 제품 구조의 최상위 Item을 선택한다. 이는 <Figure 1>의 EC 객체가 설계 변경 전후 제품 구조를 최상위 Item으로 연결하는 방식과 동일하다. ML을 위해 제품 구조에 포함되는 구성 부품 Item 정보가 사용될 수 있으며, 이때 각 Item에 연결된 CAD 모델을 포함한 Document 객체가 상세 정보를 제공할 수 있다. 그러므로 ML Model 객체에 연결된 Item 객체는 ML이 적용되는 제품을 표현하기 위한 Item, 참여 부품을 표현하기 위한 Rel 그리고 부품 관련 상세 정보를 제공하기 위한 Document 객체를 제공한다.

Predict 단계에서 기존 ML Model 객체와 연결된 Item 자료를 입력으로 Item에 관련된 예측값을 제공한다. 이때 추가 입력 자료가 필요할 수 있다. 이 과정에 두 종류의 프로시저가 참여한다. ML Application Module은 ML 모델에 필요한 자료를 입력하고 그 결과를 예측하는 프로시저이다. Application Module에 입력으로 훈련된 ML 모델, 대상 조립품 Item 그리고 외부 입력(External Input)이 포함된다. 그러므로 Application Module은 ML을 적용하는 직접적인 응용(Application)으로 볼 수 있다. 반면 External Module은 Application Module의 예측 결과를 입력으로 이용하는 프로시저이다.

서론에서 밝혔듯이 본 연구는 구체적인 연구 사례를 통해 ML 관리에 필요한 자료 객체를 고안하고 이를 일반화하여 제품 자료 모델을 구현하는 과정을 거친다. 연구 사례는 CAD와 BOM 데이터베이스 기반 자동 로봇 조립계획 응용(Do et al., 2023)에서 동일 제품에 2개의 서로 다른 ML이 적용된 경우이다. 자동 로봇 조립계획은 3D CAD에서 제품 형상(Shape)과 제품 구조 정보를 입력받아 부품 조립 순서와 로봇 조립계획을 자동 작성하는 Computer-Aided Process Planning 응용이다. 자동 로봇 조립계획에서 대상 제품에 적용되는 두 개의 서로 다른 ML 응용 중 하나는 자동 조립을 위한 시각적 부품 탐지이고, 다른 하나는 부품의 조립 가능 방향(Candidate Assembly Directions)을 결정하기 위한 특징 형상(Form Features) 분류이다.

(2) 부품 탐지 ML

시각적 부품 탐지 ML 응용은 흩어져 있는 부품을 촬영하여 부품을 탐지하고 해당 부품을 조립 순서에 맞게 집어 자동 조립할 수 있게 한다. 부품 탐지는 이미지상의 부품 식별과 위치를 동시에 제공한다. <Figure 3>은 <Figure 1>의 Asm C에 대한 부품 탐지 ML 응용 예를 보여준다.

Figure 3.

A ML Application for the Part Detection

Prepare 단계에서 Data Source는 서로 다른 세 가지 방법을 사용하여 준비할 수 있다. 첫째는 실제 부품을 촬영한 이미지를 이용하는 방법이다. 둘째는 각 부품의 형상에서 특징 속성(Features)을 추출하여 벡터(Vector)화하는 방법이다. 마지막 셋째는 각 부품의 CAD 모델 등을 이용한 합성 데이터셋을 개발하는 방법이다. 예는 첫째 2D 이미지를 촬영하는 방법을 사용하였다. 모델을 훈련하기 위하여 각 이미지 분류에 대응하는 레이블을 작성한다. 분류 값은 각 부품의 정보 시스템에서 식별자인 부품 번호를 사용하여 정보 시스템 간 연결과 통합을 할 수 있게 한다.

이 예제는 Training 단계에서 준비된 훈련 데이터셋을 이용하여 ML 모델을 훈련한다. ML 모델은 객체 탐지를 지원하는 CNN의 일종인 YOLO v8(Ultralytics, 2024)을 사용한다. CNN Model Specification과 Trained CNN은 각각 모델을 정의한 Code와 훈련된 모델 파일이 대응된다. 훈련된 모델은 부품의 사진을 입력받아 해당 부품 번호와 위치를 예측한다.

Predict 단계에서 카메라에서 입력된 이미지에서 부품을 탐지하는 Part Detection Application Module을 실행한다. 이때 해당 로봇 조립계획의 대상 조립품인 Asm C가 입력되며, Application Module은 조립품 아이템에 연결된 ML 모델을 사용하여 조립품의 하위 부품인 Base, Cylinder, Spring 그리고 Top의 부품 번호를 분류 클래스로 사용한다. Part Detection Application Module의 결과인 각 부품의 식별과 위치는 로봇 조립 실행 시스템인 Robot Execution Module의 입력으로 사용된다.

(3) 조립 가능 방향 결정을 위한 특징 형상 분류 ML 응용

대상 자동 로봇 조립계획 시스템은 부품의 형상 정보로부터 특징 형상과 조립 가능 방향을 분류하고 이를 기반으로 추가 과정을 거쳐 로봇 조립계획을 자동 생성한다(Do et al., 2023). <Figure 4>는 <Figure 1>의 Asm C를 조립하기 위해 부품의 특징 형상과 조립 가능 방향을 분류하는 ML 적용 예를 보여준다.

Figure 4.

A ML Application to Form Feature Classifications

Prepare 단계에서 특징 형상 분류를 위한 3차원 학습 자료는 서로 다른 세 가지 방식으로 준비할 수 있다. 첫째, 3차원 CAD 자료를 3차원 공간 점유 정보인 Voxel로 변환할 수 있다. 둘째, 여러 방향의 3차원 CAD 외부 형상이나 단면 정보를 사용한 2차원 자료를 사용할 수 있다. 셋째, 3차원 CAD에서 특징 형상을 대표할 수 있는 벡터 모델을 개발하여 벡터값을 추출할 수 있다. ML 적용 예는 3D CAD 정보를 Voxel로 변환하는 방법을 사용한다(Do et al., 2024).

특징 형상을 구분하는 Data Source 객체를 준비하기 위해 특징 형상별 CAD 모델을 프로그램으로 변화시켜 다수의 Voxel 자료를 생성하는 합성 데이터셋 생성 방법을 사용한다. 이처럼 Form Feature ML은 분류 대상을 특정 조립품의 구성 부품으로 한정하지 않고 일반적인 특징 형상으로 구성한다. 그러므로 <Figure 3>의 Part Detection ML과 달리 ML Model과 특정 Item의 제품 구조와는 특별한 연관 관계가 없다.

Training 단계에서 예의 ML Model은 부품의 3차원 Voxel 데이터셋으로부터 특징 형상을 결정하고 조립 가능 방향을 분류하는 3D CNN(Keras, 2024)을 사용한다. 훈련된 3D CNN은 부품의 형상 정보가 Voxel 형식으로 입력되면 Cylinder, Blind Hole 혹은 Boss 등과 같은 해당 부품의 특징 형상 종류와 조립 가능 방향인 ±X, ±Y, ±Z의 집합을 출력한다.

Predict 단계에서 특징 형상 예측의 입력으로 조립품을 사용한다. 응용 프로그램은 현재 조립하는 조립품의 Item을 입력으로 받고 그 부품의 3D CAD를 Voxel로 변환시킨 후 각 부품의 특징 형상과 조립 방향을 예측한다. 예에서 Feature Recognition Application Module은 입력된 Asm C 조립품의 제품 구조를 따라 4개의 구성 부품 Item 객체의 CAD 파일을 가진 Document 객체에 접근한다. 프로시저는 CAD 파일을 Voxel 형식으로 전환하여 훈련된 3D CNN에 입력하여 각 구성 부품의 특징 형상과 조립 가능 방향을 결정한다. 이 결과는 로봇 조립계획 시스템의 Robot Assembly Planning 모듈에 전달된다. 서술한 Form Feature ML의 구체적 내용과 검증 결과는 Do et al.(2024)에서 확인할 수 있다.

(4) Part Detection과 Form Feature ML의 비교

Part Detection과 Form Feature ML은 동일 조립품인 Asm C에 적용된 ML이지만 ML 모델과 조립품 사이의 연관 관계에 차이가 있다. Part Detection ML은 조립품의 구성 부품 식별자가 훈련 데이터셋의 클래스 값이 되며 이를 통해 훈련된 ML 모델과 직접적인 연관 관계를 맺는다. 만일 다른 조립품에 Part Detection ML을 적용한다면 해당 조립품의 구성 부품 식별자로 클래스값을 변경시키며, 해당 부품의 형상 데이터셋으로 다시 훈련된 ML 모델을 적용해야 한다. 반면, Form Feature ML은 Cylinder, Boss 혹은 Blind Hole 같은 조립품의 부품이 속하는 일반적 특징 형상 정보가 데이터셋의 샘플 정보와 클래스값이 된다. 이처럼 Form Feature ML은 훈련 데이터셋과 ML 모델이 조립품과 직접적 연관 관계가 없으므로 ML에 적용되는 조립품이 변경되어도 ML 모델을 다시 훈련시킬 필요가 없다. Form Feature ML을 위해 조립품과 독립적으로 Data Source를 준비하고 ML 모델을 훈련한다.

Part Detection에 사용하는 데이터셋과 ML 모델의 대상을 각각의 조립품에 연계하지 않고, 기업 내 모든 부품으로 확장하여 하나의 데이터셋과 ML 모델로 관리할 수 있다. 이 경우 데이터셋과 모델의 절대 크기가 커지고, ML에 참여하지 않는 부품도 포함될 수 있다. 또한 ML 과정에 현재 공정에 적용되는 조립품 이외의 불필요한 부품 정보가 포함되어 처리 속도와 정확도가 떨어진다. 특히 새로운 부품이 추가 될 때마다 전체 ML 모델을 다시 학습시켜야 하는 부담을 가진다.

본 연구에서 제안하는 공정 적용 단위인 조립품에 부품 식별과 탐지 ML 모델을 연동하면 데이터셋과 모델의 크기가 작아지고, 필요한 공정에 입력되는 조립품에 관련된 데이터셋과 ML 모델만 구축하게 된다. 또한 ML 모델에 클래스 수가 적어져 처리 속도와 정확도가 높아진다. 특히 새로운 부품이 추가될 경우, 설계 변경과 전이 학습을 이용하여 ML 모델을 효과적으로 재사용할 수 있다. 그러므로 본 연구는 Item과 연관된 부품 식별과 탐지 ML 모델을 제품 자료 모델에 포함한다. 조립품과 직접적 연관이 없는 Form Feature ML과 같은 모델은 제안하는 제품 자료 모델의 ML 객체 통합 대상에서 제외한다.

3.3 ML을 위한 설계 변경 자료 관리 확장

ML Model 객체가 Item 객체와 연계될 때 설계 변경 시 기존 ML 모델을 재사용하여 새로운 아이템의 ML 모델을 개발할 수 있다. <Figure 5>는 Asm C를 설계 변경한 Asm C—A의 Part Detection ML 모델을 생성하는 과정을 보여준다.

Figure 5.

A ML Application for EC Support

Prepare 단계에서 Asm C —A에 추가된 Top —A 부품의 사진을 확보하여 데이터셋을 준비한다. 역시 데이터셋의 클래스 값으로 Top —A의 부품 식별자를 사용한다. Training 단계에서 전이 학습을 위하여 설계 변경 전 Item인 Asm C의 훈련된 ML 모델을 복사하여 DNN 계층의 일부분을 고정한 ML 모델을 준비한다. 준비된 ML 모델을 새로운 부품 Top —A의 데이터셋으로 추가 훈련한 ML 모델을 생성한다. 만일 설계 변경이 부품을 제거한 경우만 있다면 기존 모델을 그대로 사용할 수 있다. 그러므로 Predict 단계에 Asm C —A에 연계된 ML 모델은 설계 변경으로 새로 추가된 구성 부품 Top —A도 인식할 수 있다.


4 통합 제품 자료 모델 제안과 확인

4.1 통합 제품 자료 모델

지금까지 설명한 ML 객체와 통합된 제품 자료 모델을 <Figure 6>의 Class Diagram으로 정리하였다.

Figure 6.

The Product Data Model Integrating ML Model and Dataset Objects

제품의 구성 요소를 나타내는 Item 객체는 식별자로서 part_no와 아이템을 설명하는 part_name 속성을 가진다. Doc 객체는 기술 문서를 표현하며, attached 속성을 통해 문서가 설명하고 있는 대상 Item에 연결되어 있다. REL 객체는 아이템 간의 구성 관계를 표현하며 조립품을 연결하는 relating과 구성 부품을 연결하는 related 속성을 가진다. EC 객체는 변경 이전 제품 구조를 대표하는 old와 이후를 대표하는 new 속성을 통해 설계 변경 전후 Item을 연결한다. Doc 객체는 설계 변경 객체를 설명하는 기술 문서도 관리할 수 있다.

ML 객체에 속하는 Source 객체는 데이터셋을 구축하기 위한 원천 자료를 표현한다. Dataset 객체는 ML 모델을 훈련, 검증 그리고 시험하는 데이터셋을 표현한다. Dataset은 클래스값 목록과 훈련/검증 용도를 표현하는 속성을 가진다. MLModel 객체는 ML 모델을 표현하며 조립품의 부품 식별과 탐지를 위한 DNN 정의와 Parameters 그리고 훈련된 모델 파일을 포함한다. MLModel은 적용 대상 조립품 Item 객체와 applied 속성으로 연결되어 있다.

4.2 시제 시스템 구성과 기존 제품 자료 표현

제안한 제품 자료 모델의 구현 가능성을 확인하기 위하여 예제 제품에 대한 Part Detection ML 응용을 기존 제품 개발 지원 정보 시스템과 수작업을 통해 시험하였다. 시험에 사용된 정보 시스템(EDBLab, 2024)은 <Figure 1>의 기존 제품 자료 모델 부분을 지원하나, ML 객체는 지원하지 않는다. <Figure 7>은 <Figure 1>의 Asm C와 Asm C —A 조립품을 구성하는 Item과 Rel 객체로 표현된 제품 구조를 정보 시스템을 이용하여 작성하였다. 예제의 각 부품은 부품 번호와 이름을 가진다. 예로 부품 번호 P050 부품은 Top이라는 부품 이름을 가지고 있다. 제품 개발 지원 정보 시스템에서 부품 번호는 부품을 유일하기 구별하는 식별자(Identifier) 역할을 한다. 본 연구는 기존 제품 자료와의 통합을 위해서 식별자인 부품 번호를 데이터셋의 클래스 값으로 사용할 것을 주장한다. 하지만 이어지는 예제는 독자의 이해를 돕기 위하여 부품 번호 대신 쉽게 구별되는 부품 이름을 데이터셋의 클래스 값으로 사용한다.

Figure 7.

Items and Product Structures of Asm C and Asm C —A in the Information System

<Figure 8>은 정보 시스템을 이용하여 Asm C를 Asm C —A로 설계 변경하는 EC 객체를 작성한 화면이다. EC 390은 <Figure 6>의 old 속성에 대응하는 input 속성에 변경 이전 제품인 부품 번호 P060을 가진 Asm C가, new 속성에 대응하는 output 속성에 변경 이후 제품인 부품 번호 P080를 가진 Asm C —A가 연결된다. 또한 설계 변경 이력을 통해 P060의 P050 부품을 제거하고 P070 부품 추가한 제품 구조의 변화를 기록한다.

Figure 8.

Example EC Data in a Product Development Support System

다음으로 기존 제품 자료와 Part Detection ML 자료를 통합 관리하는 과정을 설명한다.

4.3 ML 예제 적용

ML 과정을 지원하는 제품 개발 지원 정보 시스템의 구현 가능성을 확인하기 위하여 <Figure 7> 및 <Figure 8>과 같이 준비된 제품 자료와 수작업을 통해 예제 ML 응용을 진행한다. 예제 응용은 Prepare, Training, Predict 그리고 설계 변경에 따른 전이 학습 단계로 구성된다.

(1) Prepare 단계

Prepare 단계에서 3D 프린팅한 Asm C의 구성 부품을 100회 촬영한 이미지를 원천 자료로 사용하였다. 원천 자료는 클라우드 레벨링 서비스인 RoboFlow(RoboFlow, 2024)를 이용하여 100개의 샘플을 가진 데이터셋으로 전환하고 이미지별 4개 부품의 클래스인 레이블 값과 위치 정보를 추가한다. 이때 클래스값은 기업 내부 부품 식별자를 사용하여 다른 시스템과 통합이 수월하게 한다. <Figure 9>는 Asm C의 구성 부품 이미지에 부품 번호 대신 이름을 사용한 부품 식별자와 부품의 위치를 라벨링 하는 화면을 보여준다.

Figure 9.

Classification of Parts Through Part Names and Locations

(2) Training 단계

Training 단계에 ML 모델로서 객체 탐지를 지원하는 YOLO v8을 사용하였다. 예제에서 사용한 정보 시스템에 <Figure 6>의 MLModel 객체가 구현되어 있지 않으므로 Item과 연결된 Doc 객체를 이용하여 ML 모델을 표현한다. YOLO v8 모델 정의는 훈련 결과를 저장하는 PyTorch 모델 파일(PyTorch, 2024)에 함께 정의된다.

예제는 70개의 샘플을 가진 데이터셋을 이용하여 4개 아이템을 구별할 수 있는 YOLO v8 모델을 훈련했다. 나머지 30개 샘플은 모델을 검증하는 데 사용하였다. 훈련 결과는 PyTorch 파일에 저장되며, 훈련된 모델 파일은 Asm C 아이템과 연결된 Doc 객체로 관리한다. <Figure 10>은 Asm C에 연결된 Doc 객체에 학습된 ML 모델 파일인 ‘P060MLModel001.pt’가 저장된 것을 보여준다. Asm C 아이템에 연결된 기술 문서는 기존 Doc 객체인 ‘Asm C FreeCAD Asm’ 3D CAD 파일도 관리한다.

Figure 10.

Integrated ML and Item Objects

(3) Predict 단계

Predict 단계에서 현재 작업대 위의 각 부품의 위치를 탐지하기 위해 Asm C에 연결된 훈련된 ML 파일인 ‘P060MLModel001.pt’를 내려받는다. 훈련된 ML 모델에 현재 작업대의 구성 부품 이미지를 입력하여 부품을 식별하고 위치 정보를 추출한다. <Figure 11>은 Asm C 조립을 위해 현재 작업대 사진을 이용하여 구성 부품을 탐지한 결과이다. 작업대 위의 구성 부품의 위치와 식별자 그리고 확률이 출력된다.

Figure 11.

The Result of the Part Detection ML Prediction

예제 ML 응용은 Doc 객체로 구현한 제품 개발 지원 정보 시스템의 기술 문서를 이용하여 조립품과 연결된 ML 모델을 관리할 수 있음을 보여주었다. 이를 통해 <Figure 6>의 제품 자료 모델이 제품 개발과 통합된 ML 적용과 관리를 지원할 수 있음을 확인하였다.

(4) 설계 변경과 전이 학습

설계 변경 ML 응용 예제를 위하여 변경된 Top —A 부품을 3D 출력하고 작업대 위의 Asm C —A 구성 부품 사진을 촬영하였다. 전이 학습을 통해 제한된 원천 자료만으로 효과적 ML 모델 훈련이 가능함을 확인하기 위하여 비교적 적은 모델 훈련용 35개, 검증용 15개 등 총 50개 샘플을 가진 데이터셋을 이용해 ML 모델을 훈련하였다. Asm C —A 구성 부품으로만 이루어진 데이터셋을 이용해 훈련한 ML 모델을 이용한 Predict 결과가 <Figure 12a>에 표시되어 있다.

Figure 12.

Comparisons of the Prediction Results of a Simple-trained ML Model (a) and a transfer learning-trained ML model (b)

전이 학습을 위해 기존 Asm C의 구성 부품으로 훈련된 <Figure 10>의 ‘P060MLModel001.pt’에 저장된 ML 모델의 CNN 일부 계층을 고정하고 Asm C —A 부품의 35개의 샘플을 추가하여 새로운 모델을 훈련했다. 전이 학습을 통해 생성된 ML 모델을 이용한 Predict 결과가 <Figure 12(b)>에 표시되어 있다. 전이 학습 결과를 이용한 예측은 <Figure 13(a)>의 전이 학습 미적용과 <Figure 13(b)>의 전이 학습 적용 시 혼동 행렬 비교에서 알 수 있듯이 Asm C —A만의 독립된 데이터셋을 훈련한 ML 모델보다 0.9:0.78로 더 정확히 부품을 탐지하였다.

Figure 13.

Comparisons of the confusion matrices of two ML models (a) simple ML model (b) Transfer learning-trained ML model. Both have received training with 50 samples and 10 epochs.

이로써 설계 변경과 통합된 ML은 전이 학습을 기반으로 설계 변경된 부품을 포함한 ML 모델을 효과적으로 생성할 수 있음을 확인할 수 있다. <Figure 6>의 제품 자료 모델은 설계 변경과 ML 모델의 전이 학습에 필요한 자료를 통합 제공한다. 예로 현재 ML 모델의 전이 학습에 사용한 기반 ML 모델을 찾기 위해 <Figure 6>의 EC 객체의 old 속성값이 연결하는 설계 변경 이전 Item 객체의 ML 모델 객체를 이용할 수 있다.


5 토론 및 결론

5.1 조립품 기반 ML 객체 통합의 확산 적용

<Figure 6>에서 제안한 제품 자료 모델은 제품 구조상의 조립품에 ML 모델을 통합하는 구조가 핵심이다. 일반적 제품 구조는 기능 구조나 버전 관계 등 다양한 아이템 간 관계를 표시할 수 있으나, 제안한 제품 구조는 제품을 만드는 과정인 공정을 표현한다. ML 응용은 제품 개발 중 특정 공정을 지원하기 위해 개발되며, 특정 공정의 대상은 조립품으로 표현할 수 있다. 3절의 YOLO v8과 3D CNN 모델은 조립 공정 중 Part Detection과 Form Feature 기능에 응용되었으며, 적용 대상이 Asm C 혹은 Asm C —A 등 특정 조립품이다. 그러므로 조립품에 ML 모델을 연결함으로써 자연스럽게 기존 제품 개발과 ML 과정을 통합할 수 있다.

본 연구는 제품 개발에 적용되는 다양한 ML 중 조립품의 제품 구조와 긴밀히 연결된 부품 식별과 탐지 ML 응용으로 제품 자료 모델 통합 대상을 제한하였다. 긴밀히 연결되었다는 의미는 설계 변경에 의해 제품 구조가 변할 때 변경을 적용한 데이터셋을 이용하여 ML 모델을 다시 훈련해야 함을 뜻한다. 제품 개발 응용에는 부품 식별과 탐지 ML 외에 조립품과 긴밀히 연결된 ML 모델과 응용이 더 존재할 것으로 예측된다. 예로 컨베이어 벨트의 부품을 추적(Part Tracking)하는 ML 등도 통합 대상에 추가될 수 있다.

본 연구에서 제안한 조립품과 긴밀히 연결된 ML 모델은 제품 개발뿐만 아니라 제품 생산이나 서비스 등 제품 수명 주기상의 다른 단계에서도 적용될 수 있을 것으로 예측된다. 예로 단일 부품 사진을 통해 부품을 시각적으로 식별하는 ML의 경우 생산 공정에서 재공품 확인과 고객 지원에서 서비스 부품 확인 등의 제품 개발이 아닌 생산 혹은 서비스 운영 단계에서도 공유될 수 있다. 그러므로 제안된 제품 자료 모델은 제품 수명 주기상의 생산과 고객 지원 운영에서 공유될 가능성이 있다.

5.2 ML 객체의 기존 제품 자료 모델과 통합

본 연구를 통하여 ML 모델과 데이터셋 객체와 기존 제품 자료 모델은 다음 3가지 부분에서 통합할 수 있다는 것을 확인하였다. 첫째, 제품 정보 관리의 기준으로 사용되는 부품 번호 등의 부품 식별자를 ML 모델 클래스값으로 사용한다. 부품 식별자를 ML 모델의 클래스 값으로 사용함으로써 ML 객체를 기존 제품 정보와 연계하고 제품 개발의 다른 응용에 재사용할 수 있다.

둘째, 조립품의 연관 객체로서 ML 모델을 관리할 수 있다. Item 객체에 연계되어 일관되게 관리되는 Document 객체처럼 ML 모델을 유일하고 일관되게 공유할 수 있으며, 이는 ML 모델에 대한 협동 작업과 재사용을 가능하게 한다. 제안된 제품 자료 모델은 MLModel 객체를 조립품 Item의 연관 객체로 통합한다. MLModel에 연결된 조립품 Item은 제품 구조를 이용하여 ML 응용 대상 공정에 입출력 부품을 효과적으로 표시하며, 협동 작업 참가자들이 ML 모델을 일관되게 공유할 수 있도록 한다.

셋째, ML 모델을 설계 변경과 통합할 수 있다. 설계 변경에 통합된 ML 모델은 전이 학습을 이용하여 새로운 조립품의 ML 모델을 효과적으로 생성할 수 있다. 이는 기존 조립품의 ML 모델을 재사용하여 기업이 데이터셋 확보와 ML 모델 훈련을 위한 자원을 절약할 수 있게 한다.

기업 내 제품 개발에 ML을 효율적으로 응용하기 위해서 ML 모델과 데이터셋의 생성 단계가 지나면 적절한 운영과 유지 보수가 지원되어야 한다. 본 연구는 ML 모델의 일관된 관리와 전이 학습을 통한 재사용 등 운영에 중점을 두고 있으나, ML 모델의 적용과 유지를 다루지 못했다. ML 모델의 적용과 유지는 ML 모델의 수명 주기와 관련이 있으며, 본 논문에서 제안한 Predict와 Prepare 단계를 환상으로 연결하는 방식이 유용할 것으로 예측된다. 이를 위해서는 ML 모델과 데이터셋의 독립된 수명 주기 정의와 관리 방법이 포함된 ML 객체가 연구되어야 할 것이다.

5.3 결론

제품 개발에 효과적 ML 응용을 위해서 제품 개발 분야의 특성을 고려한 수직적 ML 응용이 필요하다. 본 연구는 제품 개발 분야의 조립품의 구성 부품 식별과 탐지에 효과적 ML 응용을 지원하기 위하여 ML 객체를 통합한 제품 자료 모델을 제안하였다. 제안된 제품 자료 모델은 ML 수명 주기상의 ML 모델과 데이터셋 객체와 제품 수명 주기상의 아이템, 기술 문서, 제품 구조 그리고 설계 변경 객체를 통합하였다. 제품 자료 모델에 포함된 ML 객체는 제품 구조와 긴밀히 통합되어 ML 응용 대상 공정을 효과적으로 지원한다. 또한 전이 학습을 이용하여 조립품이 설계 변경될 때 변경 이전 적용된 ML 모델을 재사용할 수 있다. 제안된 제품 자료 모델의 적용 가능성 확인하기 위하여 기존 정보 시스템과 수작업을 통해 부품 탐지를 위한 ML 응용 예를 개발하였다. 본 연구의 추후 연구로 ML 객체 수명 주기를 상세히 관리할 수 있는 ML Project 객체를 준비하고 있다.

Acknowledgments

이 논문은 2024년도 정부(과학기술정보통신부)의 재원으로 정보통신기획평가원의 지원을 받아 수행된 연구임(No.2022-0-00187, 제조 장비·로봇의 지능화를 위한 엣지 브레인 프레임워크 개발, No.2022-0-01049, 자율적 로봇 작업계획 및 작업동작에 기반한 스마트공장 티칭리스 제품 조립 시스템 개발).

References

  • Basamakis, F. P., Bavelos, A. C., Dimosthenopoulos, D., Papavasileiou, A., and Makris, S. (2022), Deep Object Detection Framework for Automated Quality Inspection in Assembly Operations, Procedia CIRP, 115(3), 166-171. [https://doi.org/10.1016/j.procir.2022.10.068]
  • Chang, A. X., Funkhouser, T., Guibas, T., Hanrahan, P., Huang, Q., Li, Z., Savarese, S., Savva, M., Song, S., Su, H., Xiao, J., Yi, L., and Yu, F. (2015), ShapeNet: An Information-Rich 3D Model Repository, arXiv:1512.03012 [https://doi.org/10.48550/arXiv.1512.03012]
  • COCO (2024), Common Objects in Context, https://cocodataset.org, .
  • Cohen, J., Crispim-Junior, C., Grange-Faivre, C., and Tougne, L. (2020), CAD-based learning for egocentric object detection in industrial context, In Proceedings of the 15th International Joint Conference on Computer Vision, Imaging and Computer Graphics Theory and Applications (VISIGRAPP 2020) - Volume 5: VISAPP, 644-651. [https://doi.org/10.5220/0008975506440651]
  • Do, N. (2018), Understanding PLM and Its Applications, 3rd Eds. Pubple, Seoul.
  • Do, N. (2019), Understanding BOM, 2nd eds., Pubple. Seoul.
  • Do, N. (2022), Product Big Data Analysis, Pubple, Seoul.
  • Do, N., Han, H., and Son, J. Y. (2021), Developing an Architecture of Robot Assembly Planning System based on Integrated CAD and BOM Databases, Korean Journal of Computational Design and Engineering, 26(1), 1-10. [https://doi.org/10.7315/CDE.2021.030]
  • Do, N., Han, H., and Cho, J. (2023a), Developing an Architecture of an Automated Robot Assembly Planning System, Journal of KIEE, 49(3), 237-247. [https://doi.org/10.7232/JKIIE.2023.49.3.237]
  • Do, N., Han, H., and Cho, J. Y. (2023b), Developing a layer of system architecture for human-robot collaboration based on CAD and BOM databases, Journal of KIEE, 49(6), 480-490. [https://doi.org/10.7232/JKIIE.2023.49.6.480]
  • Do, N., Han, H., and Cho, J. (2024), Development of a 3D Convolution Neural Network for Classifying Robot Assembly Form Features, Journal of KIEE, accepted. [https://doi.org/10.7232/JKIIE.2024.50.6.437]
  • Drost, B., Ulrich, M., Bergmann, P., Hartinger, P., and Steger, C. (2017), Introducing MVTec ITODD: A Dataset for 3D Object Recognition in Industry, 2017 IEEE International Conference on Computer Vision Workshops (ICCVW), 22-29 October 2017, Venice, Italy. [https://doi.org/10.1109/ICCVW.2017.257]
  • EDBLab (2024), Team Engineering Environment, http://tee.gnu.ac.kr, .
  • Ge, C., Wang, J., Wang, J., Qi, Q., Sun, H., and Liao, J. (2020), Towards Automatic Visual Inspection: A Weakly Supervised Learning Method for Industrial Applicable Object Detection, Computers in Industry, 121.103232. [https://doi.org/10.1016/j.compind.2020.103232]
  • Girshick, R., Donahue, J., Darrell, T., and Malik, J. (2014), Rich Feature Hierarchies for Accurate Object Detection and Semantic Segmentation, In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, Columbus, OH, USA, 24-27 June 2014, 580-587. [https://doi.org/10.1109/CVPR.2014.81]
  • Horvath, L., Rudas, I. J., and Tar, J. K. (2001), Application of Advanced Product Models in Robot Control, Proceedings of the 10 International Conference on Advanced Robotics, ICAR 2001, 659-663.
  • Horvath, L., Rudas, I. J., and Bito, J. F. (2002), Form Feature Based Generation of Robot Assembly Paths for Product Variants, IEEE ICIT'02, Bangkok, Thailand, 181-186. [https://doi.org/10.1109/ICIT.2002.1189887]
  • Horvath, L., Rudas, I. J., Bito, J. F., and Szakii, A. (2004), Adaptive Model Objects for Robot Related Applications of Product Models, Proceedings of the 2004 IEEE International Conference on Robotics & Automation, New Orleans, LA, 3137-3142. [https://doi.org/10.1109/ROBOT.2004.1307545]
  • Huang, H., Wei, Z., and Yao, L. (2019), Novel Approach to Component Assembly Inspection Based on Mask R-CNN and Support Vector Machines, Information, 10(9), 282. [https://doi.org/10.3390/info10090282]
  • ImageNet (2024), ImageNet, https://www.image-net.org, .
  • ISO (2024), STEP, https://www.kstep.or.kr, .
  • Johan, T. M. and Prabuwono, A. S. (2011), Recognition of Bolt and Nut using Artificial Neural Network, 2011 International Conference on Pattern Analysis and Intelligent Robotics, 28-29 June 2011, Putrajaya, Malaysia. [https://doi.org/10.1109/ICPAIR.2011.5976889]
  • Keras (2023), Conv3D, https://keras.io/api/layers/convolution_layers/convolution3d/, .
  • Krizhevsky, A., Sutskever, I., and Hinton, G. E. (2012), Imagenet classification with deep convolutional neural networks, In Proceedings of the Advances in Neural Information Processing Systems, NIPS 2012, Lake Tahoe, NV, USA, 3-6 December 2012, 1097-1105.
  • Kruger, J., Lehr, J., Schlüter, M., and Bischoff, N. (2019), Deep Learning for Part Identification Based on Inherent Features, CIRP Annals - Manufacturing Technology, 68, 9-12. [https://doi.org/10.1016/j.cirp.2019.04.095]
  • LeCun, Y., Bengio, Y., and Hinton, G. (2015), Deep learning, Nature, 521, 436-444. [https://doi.org/10.1038/nature14539]
  • Munappy, A. R., Bosch, J., Olsson, H. H., Arpteg, A., and Brinne, B. (2022), Data Management for Production Quality Deep Learning Models: Challenges and Solutions, The Journal of Systems & Software, 191, 111359. [https://doi.org/10.1016/j.jss.2022.111359]
  • PLM Implementor Forum (2002), Usage Guide for the STEP PDM Schema v1.2, prostep IVIP.
  • PyTorch (2024), PyTorch, https://pytorch.org, .
  • Redmon, J., Divvala, S., Girshick, R., and Farhadi, A. (2015), You Only Look Once: Unified, Real-time Object Detection, In Proceedings of the 2015 IEEE Conference on Computer Vision and Pattern Recognition (CVPR 2015), Boston, MA, USA, 7-12 June 2015, 779-788. [https://doi.org/10.1109/CVPR.2016.91]
  • Ramesh, K., Mushtaq, F., Deshmukh, S., Ray, T.,, Parimi, C., Basem, A., and Elsheikh, A. (2024), An Investigation of Deep Learning Approaches for Efficient Assembly Component Identification, Beni-Suef University Journal of Basic and Applied Sciences, 13, 79. [https://doi.org/10.1186/s43088-024-00537-2]
  • RoboFlow (2024), RoboFlow, https://roboflow.com, .
  • SIG MLOPs (2024), SIG MLOPs, https://ml-ops.org, .
  • Sampaio, I. G. B., Machaca, L., Viterbo, J., and Guérin, J. (2021), A Novel Method for Object Detection Using Deep Learning and CAD Models, Proceedings of the 23rd International Conference on Enterprise Information Systems (ICEIS 2021). [https://doi.org/10.5220/0010451100750082]
  • Ultralytics (2024), YOLOv8, https://ultralytics.com, .
  • Vu, T.-T.-H., Pham, D.-L., and Chang, T.-W. (2023), A YOLO-based Real-time Packaging Defect Detection System, Procedia Computer Science, 217, 886-894. [https://doi.org/10.1016/j.procs.2022.12.285]
  • WordNet (2024), WordNet, https://wordnet.princeton.edu, .
  • Zha, X. F. and Du, H. (2002), A PDES/STEP-based Model and System for Concurrent Integrated Design and Assembly Planning, Computer-Aided Design, 34, 1087-1110. [https://doi.org/10.1016/S0010-4485(01)00186-5]
저자소개

도남철 : 포항공과대학에서 1996년 박사학위를 취득하고, 현재 경상국립대학교 산업시스템공학부 교수로 근무 중이다. 연구분야는 Bill of Material 표현, Product Data Analytics, 스마트 제품 서비스 시스템 그리고 로봇 조립을 위한 CADCAM 데이터베이스 개발이다.

Figure 1.

Figure 1.
An Example Product Data Using Existing Product Data Objects

Figure 2.

Figure 2.
ML Process with ML and Product Data Objects

Figure 3.

Figure 3.
A ML Application for the Part Detection

Figure 4.

Figure 4.
A ML Application to Form Feature Classifications

Figure 5.

Figure 5.
A ML Application for EC Support

Figure 6.

Figure 6.
The Product Data Model Integrating ML Model and Dataset Objects

Figure 7.

Figure 7.
Items and Product Structures of Asm C and Asm C —A in the Information System

Figure 8.

Figure 8.
Example EC Data in a Product Development Support System

Figure 9.

Figure 9.
Classification of Parts Through Part Names and Locations

Figure 10.

Figure 10.
Integrated ML and Item Objects

Figure 11.

Figure 11.
The Result of the Part Detection ML Prediction

Figure 12.

Figure 12.
Comparisons of the Prediction Results of a Simple-trained ML Model (a) and a transfer learning-trained ML model (b)

Figure 13.

Figure 13.
Comparisons of the confusion matrices of two ML models (a) simple ML model (b) Transfer learning-trained ML model. Both have received training with 50 samples and 10 epochs.