코그넥스 블로그

코그넥스 딥러닝랩은 무엇을 만들까?

About Us

오늘은 기존에 게시된 글 들과 조금 다른 성격의 글을 써 보고자 합니다. 과거 수아랩 시절부터 현재 코그넥스 딥러닝 랩 까지, 저희는 딥러닝과 소프트웨어 개발에 대한 많은 글을 공유해왔습니다. 하지만 구체적으로 우리가 어떤 연구, 개발을 하고 어떤 철학으로 제품을 만드는지에 대해 공유해본 적이 없던 것 같습니다.

그래서 이번 글에서는 코그넥스 딥러닝랩의 목표와 추구하는 가치를 설명하고자 합니다. 머신비전은 무엇이고 딥러닝을 통해 어떤 혁신을 하고싶은지, 우리가 만드는 제품은 어떤 방법으로 이를 실현하는지 소개하겠습니다.

코그넥스 딥러닝랩이 만드는 가치

코그넥스 딥러닝랩은 인공지능 기술로 산업 현장을 고도화하는 것을 목표로 합니다. 이러한 목표를 이루기 위해 우리는 다음의 두 가치를 추구합니다.

첫 번째는 딥러닝으로 머신비전을 혁신하는 것입니다. 딥러닝은 분명히 매력적인 기술입니다. 기존에 다루기 어려웠던 영상, 텍스트, 음성과 같은 비정형 데이터에서도 높은 수준의 인식 성능을 보여주고 있죠. 등장 초기에는 과도한 컴퓨팅 자원을 요구한다는 점을 지적받던 딥러닝이지만, 최근에는 경량화되고 최적화된 알고리즘의 등장으로 충분히 산업에 도입될 수 있을 수준으로 현실성있는 기술이 되었습니다. 그래서 우리는 산업현장에 도입될 수 있는 고도의 딥러닝 기술을 연구하고, 이를 바탕으로 머신비전을 혁신할 솔루션을 만듭니다.

두 번째는 딥러닝 도입에 장애물이 되었던 문제들을 고객 대신 해결해주는 것입니다. 앞서 매력적이라 언급한 딥러닝 기술은 고객이 새로 도입하기에는 큰 비용과 높은 불확실성을 가지고 있습니다. 기존의 인력을 교육하고, 새로운 연구 인력을 투입하고, 데이터 수집 및 실험과 검증까지 엄청난 비용이 소요됩니다. 이러한 투자가 더 나은 결과를 보여준다는 보장도 없습니다. 저희는 이런 고위험 비용을 최소화 해줄 수 있는 Low-Risk High-Return 솔루션을 고객에게 제공합니다. 후술할 SuaKIT과 VPDL(Vision Pro Deep Learning)은 이런 두 가지 철학 아래에서 탄생한 제품입니다. 뒤의 단락에서는 머신비전과 딥러닝에 대해 소개하고, 우리의 제품이 고객에게 왜 매력적인지를 설명하겠습니다.

머신비전이란?

머신비전(Machine Vision)이란, 카메라를 통해 획득한 영상으로부터 정보를 얻고 이를 활용해 산업 과정을 자동화하는 기술을 총칭합니다. 쉽게 설명하자면, 산업 현장에서 사람의 눈과 두뇌가 하는 일을 대체하는 기술입니다. 산업을 가속화하고 소인화하기 위해 꼭 필요한 기술입니다.

머신비전에서 가장 중요한 과정 중 하나는 영상 데이터로부터 우리가 필요한 정보를 추출하는 것입니다. 그러기 위해서는 영상에서 원하는 사물을 찾고, 인식하고, 분류하는 알고리즘이 필요합니다. 하지만 수 많은 픽셀과 복잡한 색상 값으로 표현된 영상 데이터에는 규칙기반(rule-based) 알고리즘을 적용하기가 쉽지 않습니다.

그렇기에 최대한 제어된 환경에서 영상을 촬영하고, 환경에 맞는 특징 추출 알고리즘을 사람이 설계하곤 합니다. 이를 극복하기 위해 다양한 특징 추출 알고리즘이 등장했지만, 대부분의 현장에서는 여전히 알고리즘을 조금씩 수정하고 실험하는 과정을 반복하고 있습니다. 이 과정은 엄청난 인적자원을 요구하면서도 환경과 대상이 달라지면 성능이 급격히 나빠진다는 단점이 있습니다. 즉, 기껏 연구한 알고리즘의 재사용성이 매우 떨어진다는 것입니다.

이런 한계로 인해 여전히 머신비전은 그 이름이 무색하게 많은 부분을 엔지니어와 검사인력에게 의지하고 있습니다. 코그넥스 딥러닝랩은 머신비전이 직면한 이런 문제를 딥러닝을 통해 해결할 수 있다고 생각했습니다.

딥러닝의 등장

딥러닝은 등장과 동시에 다양한 분야에서 새로운 가능성을 제시했습니다. 그 중 컴퓨터 비전 분야에서 단연 돋보이는 혁신을 보여 주었습니다. 가장 큰 이유는 크고 복잡한 영상 데이터에서 필요한 특징을 추출하고, 이를 통해 고차원의 패턴을 학습하는 과정이 사람의 손을 거치지 않고 이루어진다는 이유 때문입니다.

컨볼루션 신경망(Convolutional Neural Network)은 인접한 픽셀로부터 상관관계를 도출하고, 이 과정을 반복해 유의미한 패턴을 추출하는 필터를 학습합니다. 기존에는 사람이 손수 설계하던 필터를, 컨볼루션 신경망은 데이터 기반으로 스스로 찾아갑니다. 그리고 그 성능은 대부분의 문제에서 딥러닝의 완승이었습니다.

물론 첫 등장 당시에는 딥러닝은 요구하는 컴퓨팅 자원이 너무 높아 현실성이 없다는 지적을 받았습니다. 하지만 다양한 연구를 거치며 인식 성능은 더 높아지고, 컴퓨팅 비용은 줄어드는 발전을 거듭합니다. 이제는 실제 산업 현장에 도입해도 될 정도의 수준으로 현실성있는 기술이 되었죠.

딥러닝 도입의 어려움

앞서 딥러닝의 장점을 많이 설명했지만, 실제 현장에 도입 했다는 사례는 생각보다 많지 않습니다. 이렇게 매력적인 기술을 왜 당장 도입하지 않을까요? 이는 높은 초기 투자 비용과 이에 대비되는 높은 불확실성에 있습니다. 딥러닝을 기존 머신비전 시스템에 도입하기 위해서는 교육과 채용, 연구개발을 위한 시간 그리고 제품 적용에 필요한 테스트와 최적화가 필요합니다. 새로운 기술을 도입한다는 것 자체만으로도 기업 입장에서 큰 부담이 될텐데, 그 기술이 수 많은 데이터를 요구하고 불확실성을 가진다면 투자의 부담감은 배가 될 수 밖에 없습니다.

만약 딥러닝을 도입하고자 한다면 아래와 같은 단계들을 거쳐야 합니다.

 

딥러닝을 도입하는 과정
딥러닝을 도입하는 과정

 

  1. 데이터 수집/관리
    딥러닝 모델의 성능을 높은 수준으로 이끌어내려면 많은 데이터가 필요합니다. 하지만 많은 데이터를 수집하고 전처리하는 작업은 그 수가 많아질수록 난이도가 기하급수적으로 증가합니다.
  2. 데이터 레이블링
    수집된 데이터는 도메인 지식을 가진 인력을 동원해 정확히 레이블링되어야 합니다. 데이터가 많아지고 복잡할 수록 레이블링하고 관리하는 일 자체는 엄청난 인력을 요구하고, 경우에 따라서는 전용 툴의 개발이 불가피 해집니다.
  3. 모델 설계와 실험
    전문 인력을 통해 딥러닝 실험을 수행할 수 있도록 환경을 구축하고, 방법론에 대한 연구와 실험을 반복해야 합니다.
  4. 모델 비교와 분석
    학습한 모델들을 관리하고 성능을 비교하거나, 모델의 성능 향상을 위해 추가적인 분석을 할 때에도 관련 지식을 가진 전문 인력이 필요합니다.
  5. 제품의 적용
    위의 과정을 마무리되어 성능 좋은 모델을 완성했다고 해도 문제는 끝나지 않습니다. 기존 머신비전 시스템에 새로운 딥러닝을 도입할 수 있도록 환경을 구축해야 하며, 사용하는 환경에 맞게 소프트웨어 적인 최적화가 필요합니다. 이 과정에서 기존 엔지니어들도 딥러닝에 대한 이해를 해야한다는 추가적인 비용이 발생합니다.

위의 과정들은 교육, 채용, 환경 구축 및 개발에 많은 비용과 시간을 필요로 합니다. 만족할 수준으로 기술을 고도화하는 데에는 작지 않은 투자가 필요한 셈이죠. 이런 점들이 많은 기업들로 하여금 기술 도입의 의지를 저해합니다.

문제 해결하기

우리는 이런 물음을 가졌습니다.

“모든 고객이 이런 고비용의 투자를 해야만 하는가?”

딥러닝 도입에 공통적으로 필요한 부분을 하나의 솔루션으로서 제공하고, 최소한의 이해만으로 바로 사용할 수 있도록 추상화한다면 앞선 문제들을 상당부분 해결할 수 있습니다. 게다가 이 솔루션이 압도적인 성능을 보여준다면, 고객에게는 Low-risk High-return을 실현해 줄 제품이 되겠죠. 그리고 이 점이 바로 코그넥스 딥러닝랩이 제품을 개발하는 철학입니다.

SuaKIT과 VPDL은 우리의 철학을 녹여 낸 첫 번째 작품입니다. 사용자는 간단한 툴 조작과 코딩만으로 모델을 학습하고 인식 시스템을 구현할 수 있습니다. Classification, Detection, Segmentation, Anomaly Detection 등 대표적인 딥러닝 방법론을 모두 적용할 수 있고, 각 방법론은 고성능의 알고리즘이 내장되어 있습니다. 이 솔루션은 어떻게 구성되어 있는지 알아봅시다.

GUI 기반의 딥러닝 학습 툴

 

예시> SuaKIT과 VPDL의 UI
예시> SuaKIT과 VPDL의 UI

 

유저는 간단한 GUI 툴을 통해 대용량 데이터를 손 쉽게 관리할 수 있습니다. 복잡한 레이블링과 전처리도 손쉽게 수행할 수 있고, 클릭 몇 번으로 고성능의 딥러닝 모델을 학습할 수 있습니다. 그리고 이렇게 학습한 모델들을 비교/분석할 수 있는 툴 역시 제공합니다. 학습된 모델은 파일의 형태로 내보낼 수 있고, 이 모델 파일과 SDK를 사용하면 곧바로 인식시스템을 구현할 수 있습니다.

간단하지만 강력한 SDK

일반적인 머신비전 라이브러리 정도로 추상화된 API를 제공합니다. 이 간단한 API를 사용해 학습된 모델을 불러오는 것 만으로 엔지니어는 고성능의 영상인식 시스템을 구현할 수 있습니다. 딥러닝을 적용하기 위해 수 많은 라이브러리나 프레임워크를 별도로 설치하고 관리할 필요가 사라지게 됩니다.

고도의 딥러닝 기술력

유저 친화적인 UI/UX의 내부에는 고도의 기술력이 숨겨져 있습니다. 코그넥스 딥러닝랩의 연구개발팀은 사용자에게 고성능의 딥러닝 경험을 줄 수 있도록 노력합니다. 업계 최고 수준의 딥러닝 알고리즘을 연구하고, 이를 제품에 구현하고 최적화합니다. 유저의 입장에서 딥러닝이 가지는 불확실성을 최소화하고 최고의 효용을 얻을 수 있는 가장 중요한 요소입니다.

이 세 요소들이 하나의 제품에 녹여내는 것으로 앞서 제시한 문제들을 해결할 수 있습니다. 실제로 많은 곳에서 VPDL과 SuaKIT은 머신비전을 진보시키고 있고, 그와 함께 코그넥스 딥러닝랩의 기술력도 새로운 문제를 해결하기 위해 발전해 나갑니다.

We are hiring!

이 글을 읽고 코그넥스 딥러닝랩과 함께하고 싶어지셨다면, 아래의 링크 혹은 상단의 Jobs버튼을 눌러 조인해주세요!

채용공고 바로가기
Tags:

제품 지원 및 교육 신청

MyCognex 가입

질문이 있으십니까?

전 세계 어디에서든 코그넥스 담당자들이 여러분의 비전과 산업용 바코드 판독 관련 문제를 지원합니다.

연락처
Loading...