스마트팩토리 인공지능 - seumateupaegtoli ingongjineung

<자막원문>

진행 한주엽 디일렉 대표

출연 ETRI 김원종 박사

-오늘 ETRI에 김원종 박사님 모시고 스마트 팩토리에 대한 얘기들을 해보도록 하겠습니다. 박사님 안녕하십니까.

“안녕하십니까”

-스마트팩토리라고 언론지상이나 정부에서 지원금 같은 것도 많이 내고 하는데. 기초적이라면 기초적일 수도 있고 넓게 얘기할 주제이기도 한 것 같아서 이런 질문을 드리면 어떨까 싶지만, 스마트팩토리는 일반적으로 뭘 얘기하는 겁니까?

“스마트팩토리라고 하면 그전에 과거 10~20년 전에 이야기 나왔던 공장자동화라는 걸 먼저 생각할 수가 있고요”

-자동화.

“기존에 사람이 수작업하던 걸 가능한 한 많은 로봇이나 장비들이 자동화하는 게 그게 공장자동화이고 이렇게 자동화를 하다 보니까 자동화된 설비에서 많은 데이터들이 나오더라는 거죠. 이 데이터들을 가지고 뭔가 인공지능 알고리즘을 돌려서 보다 더 효율적인 결과를 낼 수 있을 것 같다고 해서 공장자동화의 인공지능 시스템을 덧붙인 걸 스마트팩토리라고 이해하면 가장 쉽게 이해하실 수 있을 것 같아요”

-자동화의 그다음 개념이라고 봐야 되는 거군요. 그러면 그런 다음 개념을 붙이기 위해서는 어떤 작업들이 필요하죠?

“기본적으로 어느 정도 자동화가 되어 있어야 되고요. 수작업을 하면서 그걸 일일이 데이터를 기록해서 뭘 하는 건 어렵기 때문에 기본적으로 자동화가 어느 정도 되어 있어야 하고 그 데이터들을 체계적으로 수집을 해야 되고요. 수집된 데이터들을 가지고 인공지능 알고리즘을 돌릴 수 있도록 가공을 하고 학습을 시켜서 나중에 실시간으로 적용을 하는 게 순서이긴 한데. 이렇게 하기 위해서는 그냥 데이터를 무조건 수집한다고 되는 건 아니고 내가 어떤 목적으로 데이터를 수집하는지에 따라서 그 목적에 맞는 데이터들을 찾아서 수집하는 필요하면 부가적인 센서 같은 걸 붙여서 데이터를 추가적으로 수집을 해야 되고요. 목적에 맞는 필요한 데이터셋을 수집을 하는 게 가장 기본적으로 선행되어야 될 거고요”

-공장이라고 하면 안에 기계장비가 들어가 있는 걸 일반적으로 상상을 하게 되는데. 요즘 공장 안에 있는 기계 장비들은 데이터를 다 그렇게 뭔가 뭘 만들고 나면 안에 데이터가 쌓입니까?

“많은 장비들이 대부분 어떤 파라미터로 현재 제작을 하고 있는지에 대한 데이터들을 내주고 있습니다. 장비에 대해 여러 가지 센서들이 있기 때문에 그 센서들 또는 유저가 입력하는 파라미터값들을 다 기록을 해서 나중에 인과관계를 뽑아내기 쉽게 하기 위해서 데이터들을 많이 빼주고 있는데 아직까지는 많은 공장들이 그 데이터들을 흘려보내는 경우들이 많이 있는 거죠”

-뭔가 많이 있긴 하지만 이걸 해석을 할 수 없다 해석을 안 하고 있다?

“그냥 사용을 안 하는 경우도 많고요 작년에 제가 성남산업단지에 있는 몇몇 공장들을 다녀봤는데. 거기에 주조 장비들이 최근에 도입한 장비들이 있고 그 장비들에 모델이나 스펙을 들어가서 뒤져보면 이러한 데이터들이 나옵니다라고 있는데 그 업체는 그런 데이터가 나오는지도 모르고 쓰고 있어요”

-그냥 주조로 뭘 만들기만 하고.

“과거에 써왔던 형태대로 “장비는 더 좋아졌으니까 좋은 결과물이 나오는구나”라고만 생각하고 그냥 쓰고 있는 거죠 그런 업체들이 굉장히 많습니다”

-그러면 거기서 데이터를 뽑아내서 그걸 뭔가 AI를 활용해서 뭔가를 한다고 했을 때 기대되는 효과 같은 건 무엇이 있습니까?

“공장이든 모든 기업에서는 기본적으로 원가절감이죠”

-그렇죠.

“원가절감을 해서 수익을 창출하는 거고 그 원가절감에 가장 기본적인 형태는 에러를 적게 만드는, 나온 제품에 결함이 적어서 소위 그걸 수율이라고 하죠 불량이 적고 수율이 좋아서 불량이 하나도 없이 전량 다 제대로 납품할 수 있으면 베스트고요. 근데 대부분 공장들이 적어도 2%에서 많으면 10%까지 불량이 난다고 하더라고요. 그런 불량들을 최소화하고 만들어지는 그 과정들을 어떻게든지 최적화해서 작업 과정도 효율화시키면 시간도 단축하고 에러를 적게 발생시키면서 훨씬 더 효율적으로 제조를 하다 보면 결국 원가가 절감되고 이윤이 향상될 수 있는 거죠”

-아까 주조 장비라고 예를 들어서 말씀하셨는데 예를 들어서 뭘 그렇게 해서 결과물이 나왔단 말입니다. 거기는 이제 그런 여러 가지 온도라든지 여러 가지 데이터들이 많이 쌓이잖아요? 근데 이제 그렇게 해서 나온 결과물에 대해서 이게 불량인지 정상품인지 확인하는 건 사람이 봐야 아는 것들 인 거죠?

“그렇죠. 일단 초기에는 사람이 보고 판단하는 게 일반적이고요. 그걸 사람을 대신해서 뭔가 비전 센서를 이용하든 다른 어떤 센서들을 이용해서 그걸 판단할 수 있는 방법들을 찾아낸다면 그것까지도 자동화하면 에러를 탐지하는 것도 훨씬 효율적으로 할 수 있을 거고요.

-불량이 나왔을 그 당시에 어떤 장비의 세팅 값 같은 것들을 우리가 뽑아낼 수 있다고 하면 불량을 줄일 수 있다는 건가요?

“그렇죠. 인공지능을 학습시켜서 더 효율적인 건 내가 사용하지 않았던 파라미터 셋이지만 기존에 사용했던 것과 유사한 데이터가 들어오면 그것마저도 유추를 해서 결과를 추론해줄 수 있는 이런 기능을 가지고 있다는 게 최근에 하고 있는 인공지능에 가장 큰 장점이라고 볼 수 있죠”

-지금 보시기에 대한민국에 제조업이 굉장히 발달해 있는데 자동화는 많이 이루어져 있죠?

“자동화는 많이 되어 있죠”

-말씀하신 그 정의대로 스마트 공장화는 어느 정도나 되어 있다고 보십니까?

“지금 일단은 정부에서 몇만 개 스마트공장 보급 확산 사업을 한다고 하면서 지금 아마 사업적으로는 수만 개 공장들이 그런 도입을 하긴 했는데. 이게 이제 단계가 여러 개가 있고요 그래서 아주 기본적이 단계를 적용한 게 거의 80~90% 이상 되는 걸로 최근 자료로는 알고 있고요. 그 이상 고급 단계까지 가야 되는데 거기까지 가려면 몇 년은 더 필요할 것 같고요”

-제일 낮은 단계의 스마트 공장화라는 것은 어떤 걸 의미합니까?

“데이터를 수집하고 확인할 수 있는 정도 그 정도가 가장 기초적인 단계이고 그걸 가공해서 실시간으로 적용해서 효율적으로 활용하는 데까지 가려면 아직 시간이 많이 필요한 거죠”

-최소 단계까지 하려면 말씀하신 대로 낮은 수준의 스마트 공장화 정도를 하려면 그 비용이 많이 듭니까?

“하기 나름인데요. 그 단계를 지금 정부에서 지원해주는 건 5,000만원 정도를 지원해주고 기업이 5,000만원 정도되서 1억원 정도로 기본적인 구축을 할 수 있도록 하는 걸 지원을 해주는데 그런 부분도 기업들이 꽤 많이 활용을 하고 있거든요. 그런 걸로 봐서 대략 1억원 정도면 작은 공장의 경우는 그 정도를 할 수 있다고 판단하고 진행을 하고 있는 거죠”

-구체적으로 질문을 드리면 장비에서 나오는 데이터는 수동으로 뽑는 건 아니죠? 연결을 해서 자동으로 시시각각 뽑아낼 수 있게 그런 것들을 다 하는 거죠?”-

“당연하죠”

-그럼 중앙에 어떤 큰 컴퓨터에서 그걸 학습이라고 합니까? 그런 걸 하는 겁니까?

“그건 만들기 나름인데요. 기본적으로 학습은 흔히 말하는 GPU 같은 게 들어 있는 그런 컴퓨터에서 학습을 시키는 게 일반적이고 그다음에 추론이라고 해서 실제 실시간으로 적용하는 데에는 꼭 PC 같은 고사양의 컴퓨터가 필요한 게 아니고 아주 저가에 라즈베리파이 같은 미니 컴퓨터 같은 걸 사용해도 실시간 추론을 하는데 일반적인 간단한 데이터들은 다 가능합니다. 그래서 현장에서 실시간 적용은 아주 저가로 구현할 수 있는 경우도 많고요. 아마 대부분의 공장에서 사용하는 숫자 데이터들을 처리하는 문제는 라즈베리파이 정도면 거의 해결이 될 겁니다. 영상처리 하는 건 물론 쉽지 않고요. 숫자처리를 하는 문제인 경우에는”

-그럼 그 학습을 시키기 위해서 어떤 소프트웨어라든지 프레임워크라든지 이런 걸 쓸 텐데. 그건 공개되어 있는 걸 쓰는 겁니까? 아니면 그때그때 요구에 따라서 개발을 하는 겁니까?

“사실은 많은 알고리즘들이 이미 인터넷에 공개되어 있기 때문에 공개되어 있는 알고리즘을 가져다가 자기 데이터에 맞게 가공해서 사용하면 되는데. 그런 과정들이 일반 공장에 있는 사용자들 입장에서는 쉽지 않은 거죠. 그래서 돈을 주고 툴을 사서 쓴다든지 아니면 전문가를 자문을 받아서 또는 컨설팅을 통해서 툴을 개발하도록 한다든지 그런 것들을 하고 있고 그게 여의치 않을 때는 이미 만들어져 있는 기존 업체의 툴을 도입해서 사용하는 게 가장 많이 사용되고 있는 케이스고요”

-컨설팅이라고 말씀하시니까 그런 공장이나 이런 곳을 운영하시는 분들 같은 경우에, 대부분은 다 알고 계시겠지만 본인이 뭘 원하는지도 모르는 경우들이 보통 있지 않습니까?

“그렇죠”

-그럴 때는 컨설팅이 있는 거죠? “비슷한 업종에 다른 곳에서는 이런 사례들이 있고 효과를 내고 있으니까 여기도 하면 좋겠다”라든지 실제로 그런 업체들이 많죠?

“많습니다”

-박사님은 근래에 이쪽 분야에, 원래 이 전공은 아니시고 반도체 쪽을 전문으로 하셨죠?

“반도체 설계를 하다가 인공지능 쪽으로 공부를 하면서 제 사무실이 성남에 있다 보니까 성남산업단지관리공단 쪽하고 협업하고 이런 것들을 하면서 그쪽 산단에서 필요로 하는 게 스마트공장 쪽이 필요하다고 해서 그쪽으로 스터디를 하고 과제도 하면서 도구도 개발하고 이런 것들을 했던 거죠”

-그럼 성남에 있는 그런 기업들을 대상으로 조언도 해주시고 지원도 하십니까?

“그렇게 했었죠. 과제를 수행하면서”

-과제를 수행하던 그 기간 중에 얘기할만한 좋은 사례라든지 이런 게 있습니까?

“모 중공업 회사의 경우에 전문가들이 장비를 파라미터 세팅을 해서 돌리던 거를, 그걸 어떻게 전문가가 없어도 할 수 있게 했으면 좋겠다. 그 장비를 운용하는 전문가의 인건비가 제법 세다고 하더라고요. 근데 옆에서 보니 “내가 해도 할 것 같은데” 라는 생각이 든다는 거죠 별로 어렵지 않아 보이니 그걸 자동화할 수 있으면 좋겠다 그래서 그걸 하려면 어떻게 하면 좋겠냐고 해서 전문가가 세팅했던 값들을 입력한 값들이 다 기록되고 있으니 그 값하고 실제 결과물이 나왔던 거하고 이런 것들을 비교해서 문제가 없도록 하는 그 값들에 대해서만 잘 정립을 해서 학습을 시키면 어떤 머티리얼에 대해서는 어떤 파라미터로 세팅을 하면 된다는 걸 추천해줄 수 있겠다라는 걸 제안을 해서 같이 협업을 해가면서 문제를 풀려고 시도를 했는데 여기도 결국은 데이터에 문제가 있더라고요. 데이터를 전문가가 입력을 했기 때문에 전문가가 입력할 때 동일한 머티리얼에 대해서도 항상 똑같은 값을 주는 게 아니고 어느 정도 자유도가 있어서 어떤 때는 15를 쓰고 어떤 때는 16을 쓰고 어떤 때는 20을 쓰고 이렇게 그때그때 기분에 따라서 다른 값을 쓰고 있더라는 거죠”

-본인이 인지를 하고 그렇게 하는 거예요? 아니면 그냥?

“뭔가 소위 흔히 말하는 감이라는 걸 가지고 했겠죠. 오늘 날씨에는 이 정도 값이 좋아 이런 것들이 있었겠죠 그래서 그런 식으로 값을 사용을 했는데 인공지능 학습을 시킬 때는 동일한 결과를 내는데 인풋이 여러 개가 달라진다거나 동일한 인풋에 대해서 여러 개의 아웃풋이 서로 다른 값이 나와야 된다거나 이런 경우는 사람도 당연히 헷갈리죠”

-헷갈리죠 저렇게 했을 때는 이렇게 나와야 되는데.

“어떤 때는 고양이를 데려다 놓고 “얘는 고양이야” 그리고 어떤 때는 다른 고양이를 데려다 놓고 “얘는 개야”라고 학습을 시키면 나중에 완전히 혼란스러운 거죠. 이게 전문가가 이런 식으로 사용을 하고 있었더라는 거죠”

-그럼 결과물도 안 좋았다라는 거 아닙니까?

“아니죠”

-그건 또 아니에요?

“이게 예를 들어 용접하는 케이스인데 용접을 할 때는 온도가 500도라도 되고 400도라도 되고 450도라도 되고 문제가 안 생긴다는 거죠 그래서 값을 적당히 얼마에서 얼마 사이의 값을 주면 문제가 안 생겨요 근데 이런 식으로 값을 주는 걸 가지고 학습을 시키면 AI는 굉장히 혼란스러워져요”

-그럼 딱 정해야 되겠네요 450도 이렇게

“그런 경우는 데이터를 잘 가공을 해서 AI가 학습을 잘 할 수 있는 그런 모델을 만들어줘야 되는 이런 문제들이 있는 거죠”

-하여튼 400도 이상이면 다 된다고 했을 때는 400~500도 왔다 갔다 하면 안되고 하나를 딱 정해줘야 된다는 거죠?

“그게 제일 좋은 거죠 가장 바람직한 거죠”

-그건 사람이 해야 되는 겁니까? 어떻게 하셨습니까? 그때는.

“그 경우에 전문가가 사용했던 많은 데이터들을 통계분석처리를 해서 통계적으로 분석을 해서 최소 얼마를 썼고 최대 얼마를 썼고 평균이 얼마인지 이걸 뽑아서 그때 그 문제 같은 경우에는 평균치를 사용하는 게 바람직하겠다라고 해서 어떤 머티리얼에 대해서는 그때 전문가가 썼던 거에 평균치를 적용하면 가장 바람직하지 않겠는가라고 판단을 해서 그런 식으로 모델을 만들었죠”

-평균값을 입력시켜주신 거군요 결과는 그래서 어떻게 됐습니까?

“결과는 일단 실제 적용까지는 못 해봤지만, 데이터를 분석한 결과는 거의 100%에 가까운 결과를 낼 수 있었죠”

-그 회사는 대기업입니까? 그러면 그 작업자는 없어도 되는 거 아닙니까?

“그럴 위험성이 있는 거죠”

-그렇군요 근데 기업이 추구하는 게 이윤 추구나 아까 말씀하신 대로 원가절감 이런 것들이니까 그런 사례 말고 다른 재밌는 사례 한 가지만 더 말씀해주시면 좋겠습니다

“다른 사례는 사실 문제 자체가 어려운 건 아닌데 비슷하게 데이터를 수집을 하는데. 아까 주조 공장 같은 경우에 다른 주조 공장인데 과정이 완전히 분리가 되어 있어요. 주조 제품을 만드는데 주조해서 제품이 나오는 과정이 있고 그다음에 이걸 가지고 1차 클렌징 비슷하게 다듬는 작업을 하는 부분이 있고 그다음에 마지막에 결함 검사만 하는 공정이 따로 있고 이렇게 있다 보니까 이게 제품을 1개마다 공정을 넘어가는 게 아니고 첫 번째 공정에서 한 박스를 만든 다음에 이걸 들고 가서 다음 공정에서 다듬고 그다음 공정에 가서 결함 검사를 하고 이렇게 하다 보니 앞에 주조 단계에서 파라미터들이 그때그때 많이 바뀌었을 텐데, 대부분 비슷하긴 하겠지만 조금씩 다를 수도 있는데. 결국은 하나하나에 파라미터하고 결함을 매칭을 못 시키는 거죠 그럼에도 불구하고 해보고 싶다 그래도 한번 해보고 싶다 그래서 이 경우에는 그러면 달리 방법이 없으니 박스 단위로 통계처리를 하자 그래서 이런 파라미터 셋으로 만들어진 이 박스에 대해서는 일단 수율이 얼마라고 통계처리를 하고 이 파라미터들에서 나올 수 있는 일들은 이 정도의 가능성이 있다라고 데이터를 처리하고 다른 경우에도 비슷하게 들어왔을 때 분석할 수 있는 그런 형태로 만들어서 해보니 보통 학습할 때 데이터가 있으면 한 80%는 학습용으로 쓰고 20%를 쪼개서 밸리데이션(Validation)용으로 사용하는데 그렇게 해서 학습시키고 밸리데이션(Validation)을 해보니 999% 정도 맞춰내는 학습이 가능하더라고요”

-그럼 이제 그게 적용이 됐을 때는 여기도 어떤 감에 의존하지 않고 뭔가 정확하게 파라미터를 정해서 할 수 있었던 거죠?

“에러가 적게 나오는 파라미터만 사용하도록 할 수 있는 거죠”

-근데 그렇게 한 번 해놓으면 그다음부터는 학습할 필요가 없는 겁니까?

“많은 경우에 장비라는 게 우리 자동차도 노후화되면 조금씩 달라지듯이 장비라는 것도 사용하면 사용할수록 그 파라미터에 대한 결과물이 조금씩 영향을 받기 때문에 장비가 에이징이 되면 시간이 지남에 따라서 조금씩 변화된 학습을 시켜줄 필요가 있습니다. 그래서 장비의 생산량에 따라서 한 달 또는 분기 또는 1년 단위로 재학습을 시켜서 사용하는 게 바람직하죠”

-학습을 시키는 데에는 시간이 얼마나 걸려요?

“데이터의 양에 따라서 다른데요. 실질적인 예를 들어보면 인풋 종류를 Column(열)으로 받아드리고 그다음에 그 데이터의 개수를 Row(행)로 이야기를 하는데 50개의 칼럼 데이터, 인풋 데이터와 10만개 정도의 Row 데이터를 가진 데이터를 학습시킬 때 거의 1시간 이내에 학습이 가능합니다. 알고리즘에 따라서 많이 다른데 좀 빠른 알고리즘들은 수 초에 나오는 경우도 있고 보통 수 분, 물론 이건 성능이 좋은 PC를 예를 든 거고요 4기가 8코어 정도 사용하는 그런 PC에서 학습시켰을 때 그런 정도의 학습이 가능합니다”

-그게 다 오픈되어 있는 코드로 만드신 걸 말씀하시는 거죠?

“알고리즘 자체는 오픈되어 있는 거고 알고리즘에 들어가는 파라미터만 내가 세팅해서 바꿔가면서 만들어내는 거죠”

-그런 것과 관련해서 박사님이 뭘 만드셨다면서요? 여러 가지 경험을 통해서 그것도 소개를 한번 해주시죠

“여러 가지 문제들을 들여다보니까 크게 회귀 분석 문제하고 분류 문제하고 예측하는 문제하고 크게 문제 유형은 세 가지로 구분을 할 수가 있고 그래서 각각의 유형들에 대해서 기존에 오픈소스가 나와 있는 알고리즘이 여러 가지가 있는데 현재까지 제가 했던 게 분류 분석 11개, 회귀 분석 문제 11개, 포캐스팅은 5~6개 정도를 분석해서 각 문제 유형별로 알고리즘들을 비교·분석해서 어떤 알고리즘이 내 데이터 조인(Join)인지를 분석할 수 있는 그런 툴을 만들어 봤고요”

-나중에 활용을 해보면 뭘 써야 될 지도 거기서 알 수 있는 거군요 그건 어떻게?

“그건 지금 현재는 깃허브(GitHub)에 실행 파일 형태로는 쓸 수 있도록 제가 올려놨기 때문에”

-어디예요?

“깃허브(GitHub)라고 소프트웨어를 개발하는 사람들이 많이 쓰는 인터넷 사이트가 있습니다. 거기에 실행 파일 형태로 올라가 있으니까 원하시는 분들은 테스트를 해볼 수는 있습니다”

-테스트로 써보고 사용해보면 좋겠다. 박사님이 저희 디일렉 유료 웨비나에 나오셔서 이런 AI와 관련된 스마트공장용 AI 데이터 처리 기술에 대해서 약 1시간 가량 강의를 해주시고 나서 저랑 짧게 유튜브 인터뷰를 하고 있는 건데요. 궁금하신 분들은 그 영상을 참조를 하시면 좋을 것 같고요 박사님 그러면 계속 앞으로 이쪽 일을 하시는 거죠?

“네 일단은 제가 성남 쪽에 있는 사무실에 있기 때문에 성남산업단지관리공단하고도 계속 협업을 하고 있고”

-혹시 제가 만약에 제조업을 하고 있다라고 해서 “스마트 공장을 하고 싶은데 누구한테 자문을 구해야 하나”라고 한다면 박사님한테 연락을 해봐도 됩니까?

“제가 직접 자문해드리기는 어렵고 자문이 가능한 업체를 제가 소개를 해드릴 수 있습니다”

-그렇게 하시는 거군요. 박사님 오늘 말씀해주셔서 고맙습니다.

저작권자 © 전자부품 전문 미디어 디일렉 무단전재 및 재배포 금지

Toplist

최신 우편물

태그