본문 바로가기
3_ 매콤한 컴퓨터세상

생성형 AI(Generative AI) 와 불량 검사 활용 사례

by 준환이형님_ 2023. 8. 25.

Chat GPT이후, 생성형 AI에 대한 붐이 거세게 불고 있습니다.
이번 주에 있었던 사내 SW 개발자 콘퍼런스에서 (기조연설 제외) 가장 먼저 시작된 두 세션이 
1. 생성형 AI의 부서에서의 활용과 2. 실생활에서의 Chat GPT 활용(생성구조)이었을 만큼 SW개발자의 많은 관심을 받았어요.

Chat GPT뿐 아니라 이미 유튜브에서도 심심찮게 보이는 생성형 AI의 작품들..
과연 생성형 AI는 무엇이고, 실제 제조산업에서는 어떻게 활용되는 것인지 정리해 보았습니다.

아이스브레이킹 할 겸, 먼저.. 제가 좋아하는 브르노마스 형님이 부르는 하입보이(뉴진스)부터 한번 들어볼까요
 
https://youtu.be/ge0Lw5I1Tw8?si=rMUX1Nm6OyV9_izD
 

 
플레이리스트에 넣고 싶을 정도로 생각보다 되게 완성도 높지 않나요?
예상하셨듯이 이 작품은 생성형 AI를 통해 목소리뿐 아니라 노래 기법, 음악의 분위기까지 새로 구현되었습니다.
그럼 생성형 AI가 무엇인지 함께 알아보자구용!
 

LE SSERAFIM (르세라핌) 'ANTIFRAGILE'의 뮤직비디오를 생성형 AI를 통해 애니메이션으로 구현함

 
생성형 AI(Generative AI) 란?
프롬프트에 대응하여 텍스트, 이미지, 음악, 비디오와 같은 원본 콘텐츠를 생성할 수 있는 일종의 인공지능
입력 트레이닝 데이터의 패턴과 구조를 학습한 다음 유사 특징이 있는 새로운 데이터를 생성
딥러닝 기술을 사용하여 방대한 양의 데이터를 분석하고 입력 데이터와 유사한 새로운 콘텐츠 생성
※ 프롬프트(Prompt) : AI로부터 응답을 받기 위한 입력값

Chat GPT덕분에 프롬프트라는 말이 친숙해졌어요. 사용자의 입력값에 따라 결과값이 전혀 다르게 나올 수 있기 때문에 입력을 어떻게 할 것인가가 더 중요한 문제가 되었어요. 명확한 결과 값을 얻을 수 있는 프롬프트 전문가라는 직업이 생기고 있으니까요
 
언듯 AI, 머신러닝,  딥러닝에 대해 구분이 아리송할 수 있어 정리된 표를 가져와 보았습니다
요약해보면, 우리가 이야기하는 머신러닝과 딥러닝은 모두 패턴 추론 기술이지만, 수학적 모델이 아닌 신경망 모델이 다층 레이어로 포함되면 딥러닝이 되고, 그중에 프롬프트의 개념이 포함되면 생성형 AI로 구분된다. 그리고 이 모든 걸 포괄하는 개념을 인공지능(AI)이라고 하는군요


그리고 생성형 AI에는 대표적인 3가지 개념이 있습니다. 이외에도 많은 개념과 수식이 있겠으나 제가 이해한 내용을 정리해 볼게요


LLM(Large Language Model) 
언어 데이터를 학습하여 결과를 제공하는 생성형 AI 모델
대량의 텍스트 데이터를 학습한 뒤 문장, 단락, 문서 등 구조를 이해하고, 다음에 올 단어를 예측. 자연어 이해, 번역, 요약, 질문-답변 등의 다양한 NLP 작업에 사용

GAN(Generative Adversarial Network)
생성적 적대 신경망 – 이미지 생성 및 변환 작업 목적.
생성자(generator)와 판별자(discriminator)가 서로 경쟁하면서 학습하는 구조
(두 네트워크가 서로 경쟁/학습하면, 생성자는 점차 실제와 구별하기 힘든 가짜 데이터를 생성하게 되며,  결과적으로 높은 품질의 데이터가 생성됨)

출처 : MATLAB Korea : MATLAB으로 구현하는 GAN(Generative Adversarial Network)

 
VAE(Variational Autoencoder)
오토인코더 – 이미지 생성, 데이터 압축, 잡음 제거 목적. 데이터의 표현(representation)을 학습하는 신경망 구조
기존 오토인코더에 확률적 요소를 추가하여 데이터의 잠재 변수(latent variable) 학습,  데이터를 더 의미 있는 정보로 변환시키는 역할 

출처 : Variational autoencoders. (jeremyjordan.me)


생성형 AI 수준은 분야마다 조금씩 차이는 있으나 이미 2~3년 전에 이미 인간 생성 수준의 분기를 지난 것으로 보입니다.
물론 기술 인프라나, 구현에 따라 조금씩 차이가 있을 수 있으나 점점 본격적으로 무섭게 만들어지고 있는 현재의 콘텐츠의 생산량이나 활용도가 그것을 증명해주고 있어요. 

출처 : BVP,The rise of synthetic media


OpenAI의 GPT-3 (텍스트), DALL-E 및 Midjourney (텍스트 – 이미지), Google의 LaMDA (대화형) 등 생활에 활용도 높음. LLM (Large Language Models) 및 제너레이티브 ML 도구의 발전(규모와 정교함이 연평균 10배씩 증가) 현재 AI 가 만들어내는 다양한 멀티미디어 및 콘텐츠의 수준의 사람이 만들어 내는 수준과 동등(추월) 수준

생성형 AI 활용 분야는 어떻게 될까?
대표적으로 텍스트, 코드, 이미지, 분자, 음악, 비디오, 로봇 등이 있습니다.
욍? 상하좌우로 움직이는 로봇의 움직임에 왠 생성형 AI? 라고 생각 할 수 있으나 여기서의 동작은 명령 프롬프트 혹은 영상 자체를 입력받아 움직임 궤적 생성하는 개념이 됩니다. 사람의 동선을 모방하여 궤적을 생성하거나, 최적값(더 자연스럽거나 최단거리 등)을 알아서 만듭니다.

엔터테인먼트 - 게임이나 영화를 위한 더욱 사실적이고 몰입감 있는 가상 환경을 만드는 데 사용
전자상거래 - 고객 데이터를 분석하고 제품·서비스에 대한 개인화된 추천 생성. 마케팅·판매 전략을 개선
의료 - 의료 이미지를 분석하고, 질병을 더욱 정확하고 빠르게 식별, 진단. 질병에 대한 치료법 제안
교육 생성형 AI를 사용하여 학생을 위한 개인화된 학습 경험을 만들고 대화형 교육 콘텐츠 생성
제조 및 설계 - 새로운 제품 설계·제조 프로세스를 생성하고 공급망·물류 운영을 최적화 → 비용을 절감하고 효율성 높임

그럼 생성형 AI 활용한 대표적인 애플리케이션에는 어떤 것들이 있을까?

챗 GPT : 오픈 AI는 자연어 생성에 사용되는 GPT(Generative Pretrained Transformer)와 텍스트 설명에서 이미지를 생성하는 모델인 DALL-E 등 여러 생성형 AI 모델 개발. 언어 번역, 콘텐츠 생성

달리(DALL-E) : 텍스트 설명에서 이미지를 생성. 이 모델은 동물, 가구 등 일상적인 개체에서 ‘젤리 빈으로 만든 큐브’와 같이 추상적인 개념에 이르기까지 다양한 개체의 이미지 생성. 제품 디자인, 게임, 시각 효과 분야 활용미드저니(MidJourney) : 드레스, 상의, 바지 등 패션 아이템의 이미지를 생성할 수 있는 제너레이티브 AI 모델 개발 스타트업 개발. 딥 러닝 통해 기존 패션 디자인을 분석, 학습 후 독창적이고 심미적인 디자인 생성. 생성된 디자인에 색상, 질감, 패턴 등 여러 요소를 기반 추가 사용자 정의


음.. 사실 생성형 AI가 워낙 만능 이미지가 있다 보니 기존의 AI - AlphaGo(바둑 AI), AlphaFold(단백질 구조를 예측할 수 있는 AI)도 생성형 AI에 은근슬쩍 포함시키는 곳이 있기도 하지만 엄연히 생성형 AI는 DOS 때 마냥 순차적으로 입력을 받는 개념이 아닌 UI를 통해(이벤트 기반 프로그래밍) 입력하듯 "프롬프트를 통해 사용자의 입력에 결과값이 새롭게 생성되는" 개념으로 생각하면 구분이 쉬워질 것 같습니다 (지인 전문가께서, "딥러닝이라는 건 Result는 정해져 있고 f(x)를 찾아가는 과정"이라고 하셔서 저도 구분 한번 해봤습니다)
 

DOS 안 쓴지 25년 지났는데 "프롬프트" 단어가 다시 뜨게 될 줄이야


AI 이미지 판단 능력도, 측정 테스트벤치에서 인간이 일반적으로 93% 수준의 정확도를 보였는데 이미 2015년에 추월이 되었고 현재 98%(구글)를 넘어섰다는 지표가 있어요. 더 이상 "로봇이 아닙니다의 신호등 찾기"는 안 먹힐지도 모르겠네요
 

로봇이 아닙니다


그렇다면 현업에서 생성형 AI는 어떻게 적용이 될까?
어떤 부서에서는 메일이나 회의록을 학습시켜 부서전용 챗봇으로도 만들고, 테스트 예측도 한다고 들었는데 불량 검사나 계측을 주로 하는 제 경우로 눈을 한 번 돌려 보겠습니다. 

제조 공정의 검사방식 (feat. 생성형 AI)
기존 Manual 검사 / Rule Base 알고리즘의 자동 검사기 검사방식
→ Pre-trained + Massive Data, Self Supervised Learning 
초기 모델로 Labeled Data를 확보하고, Data를 학습 & 추론하여 이상 감지 

개인적인 의견으로 딥러닝을 적용한 검사방식은 기존 Rule Base 검사방식(예: Gray value 125 이하, defect length 750um 이상 검출)의 보다는 육안검사의 대체로 적합합니다. 독특한 유형의 불량이 발생한 경우나 모델의 학습량이 충분하지 못한 경우(같은 말인가?)에 잘 못 검사해서 당황하게 되는 경우가 발생해요. 그래서 기본적으로는 Rule Base 방식의 Base에 딥러닝을 더하는 방식의 알고리즘이 권장됩니다. 전통적인 검사방식은 학습도 필요 없고 기준도 명확하므로 불량검사에 있어서 최소한의 안전장치가 되는 거죠.

모델 학습에 있어서도 양품과 불량의 이미지의 데이터 불균형은 극심합니다.
수율이 99.5% 경우 양품 이미지가 995장 확보되는 동안 불량은 고작 5장 확보되니까요.
사실 학습 시에 가장 우선순위 떨어지는 종류도 이 양품 이미지입니다. 일반적으로 양품 이미지끼리의 유사도는 불량 이미지에 비해 더 높으니까.. (그 이미지가 그 이미지)
 

출처 : [이석중의 AI 트렌드] 효율적인 Good Data - AI 불량 이미지 생성
출처 : [라온피플] 2023 머신비전 기술세미나 - 제조 산업을 위한 AI 기반 데이터 보완과 AI 자동화


학습 비율에 대한 명확한 기준은 현재 없으나 이상적인 비율로
1(양품) : 1(불량) : 1 (Spec Over(불량)까지는 아닌 Defect (마진성 불량)) 비율도 좋고
0.4 : 1.3 : 1.3 - 이런 비율도 괜찮지 않을까 생각을 합니다. 상황이 이렇게 되면 불량이미지 확보를 위해 누워서 감 떨어지기를 기다리기보다 직접 감을 만들게 되는데 이때 이용되는 것이 불량이미지 생성(생성형 AI)이 됩니다.
우리는 생성형 AI를 활용해 발생률이 낮고 재현 어려운 희소 치명 불량 이미지 위주로 생성을 시작하고 있어요

주변에서 일어나는 전체적인 변화는 이런 식으로 진행되고 있구요 

생성 : 기존 검사기 이미지 → 생성형 AI → Defect DB 구현
정제 : 엔지니어 분류 → Auto Labeling
학습 : 지도학습 → 비지도학습
분류 : Good/Defect  → Defect Sub-bin (+Size binning)
테스트 : Eng'r Manual → 시뮬레이션 (전통모델 → 개선된 검증(실시간성, 생성형 AI)) → Digital Twin 통한 테스트
제어 : Eng'r Manual → 시스템 자동 제어  → Digital Twin 통한 제어

이제 자연스럽게 디지털 트윈을 구상하게 되는데 여기서부터는 조금 차원이 확대되므로, 디지털 트윈 이야기는 별도로 한번 포스팅을 하겠습니다.

생성형 AI는 인간의 창의적인 부분이 모사되기 때문에 기존 인간만이 할 수 있었던 상당수의 업무들이 빠른 시일에 더욱 보완 / 대체될 것으로 보입니다.  저도 비교적 일찍 IT를 접했고 IT의 변화는 어제오늘 일이 아니지만 근래에 보이는 변화는 정말 겁이 날 정도로 한 달 한 달이 다르게 바뀌는 것 같습니다. 
여기까지 대략적인 생성형 AI의 개념과, 사회 저변에 확대되고 있는 응용 서비스, 그리고 제조업에서의 적용사례까지 둘러보았습니다.


인용자료
- Variational autoencoders : https://www.jeremyjordan.me/variational-autoencoders/
ChatGPT를 넘어 생성형(Generative) AI 시대로 : https://www.kca.kr/Media_Issue_Trend/vol55/KCA55_22_domestic.jsp
Large Language Models: A New Moore's Law? (huggingface.co)
AI가 스스로 설명하는 ‘생성형 AI ’와 ‘ 인공일반지능’  : http://jmagazine.joins.com/forbes/view/337513