본문 바로가기

TECH ZOOM

Pentaho 딥러닝, 어디까지 가능할까!



Hitachi Vantara Labs이 지난 3월 펜타호 마켓 플레이스(Pentaho Market Place)에 추가한 Plugin Machine Intelligence(이하 PMI) 플러그인을 현재 사용하고 있다면, 이번에 발표되는 업데이트에 기대를 해볼만 하다.

히타치 밴타라는 PDI(Pentaho Data Integration)용 플러그인인 기존의 PMI를 업데이트한 PMI 버전 1.4를 발표할 예정이다. PMI는 전통적인 머신러닝과 파이썬(Python) 사이킷러닝(Scikit-Learning), R, 스파크, WEKA 등 4개의 머신러닝 라이브러리의 모델 구축, 사용, 관리에 중점을 두고 있다.

굳이 ‘전통적인 머신러닝’이라는 명칭을 사용하는 이유는, 지금까지 사례로 볼 때 정형 데이터에서는 전통적인 머신러닝이 최고의 성능을 자랑하기 때문이다. 새롭게 선보일 PMI 후속 버전에는 우리가 ‘실행 엔진’이라고 명명한 새로운 머신러닝 라이브러리인 DL4J(Deep Learning for Java)가 통합된다. 이는 곧 PMI를 통해 PDI에서 트레이닝, 입증, 테스트, 구축, 평가 및 사용등을 직접 딥러닝으로 수행할 수 있다는 것을 의미한다.


딥러닝, 모든 데이터를 아우르다

딥러닝은 이미지, 비디오, 오디오 등 비정형 데이터에서 작동한다는 장점 때문에 상당히 주목 받는 기술이다. 물론 과거에도 딥러닝 기술은 존재했지만, AI의 머신러닝 분야에 추가된 건 최근이다.

데이터를 분석하기 위해 딥러닝이 생성해내는 깊이 있고 복잡하며 숨겨진 뉴럴 네트워크 레이어 기술이라는 점에서 딥러닝이라는 이름이 유래되었다고 보는 측면도 있다. 그러나 한 가지 분명한 사실은 머신러닝과 딥러닝 모두 정형 및 비정형 데이터에서 사용할 수 있다는 점이다. 단지 지금까지 사람들이 비정형 데이터에는 딥러닝을, 정형 데이터에는 전통적인 명칭인 머신러닝을 주로 사용했기 때문에 그렇게 이해되는 것일 뿐이다.

이 이슈를 다루는 이유는 지난 9월 샌디에이고에서 개최된 ‘히타치 NEXT 2018’ 을 통해 딥러닝이 탑재된 PMI v1.4가 발표됐기 때문이다. 쇼케이스에서는 PDI와 PMI v1.4를 이용한 새로운 딥러닝 단계에 대한 시연과 더불어 PDI 변환에서 2개의 딥러닝 모델을 사용한 후 전체 애플리케이션 가속화를 위해 PDI를 이용하는 양방향 장치에서의 애플리케이션 구현사례도 시연됐다.


(그림) 최신 인공지능의 종류


일상으로 들어온 딥러닝

이번 행사에서 시연된 PDI 변환은 다음 단계들을 포함한다.



 1  ‘데이터 캡처와 데이터 준비’ 단계

  •   이 단계는 전체 변환 프로세스가 어떻게 진행되는지에 대한 설명으로 시작한다
  •   그 후 실제 X-Ray 사진을 캡처(아날로그에서 디지털로 변환)하기 위해 Raspberry Pi와 커뮤니케이션을 수행한다.
  •   해당 이미지 정보는 이미지 메타데이터로 전송된다. 전송지점은 기본적으로 실제 디지털 이미지가 위치한 인메모리다.


 2  PDI 변환은 해당 X-Ray 이미지에 대해 2개의 딥러닝 모델을 실행한다. 이 2개의 딥러닝 모델은 해당 이미지를 사용 가능한 숫자로 벡터화하여 이미지에 초점을 맞춰 인체의 어느 부분인지를 파악할 수 있도록 결정하며, 손상되거나 변형이 일어난 부분은 없는지 체크한다.



 3  2개의 딥러닝 모델을 통해 다음과 같은 추론이 가능하다.

  •   멀티클래스 분류기 – 어깨, 윗팔, 팔꿈치, 팔뚝과 손
  •   그리고 2가지 분류기, 손상 또는 변형 여부 탐지 – 예 또는 아니오
  •   이 가능성은 0과 1 사이의 숫자들로 표시된다


 4  PDI 변환의 다음 단계는 ‘결과 준비’다. 딥러닝 모델부터 0부터 1까지의 숫자들로 표현된 가능성을 가져와 사용 가능한 상태로 데이터를 준비시키는 단계다.

  •   가장 가능성이 높은 값 결정 – 최대값이 ‘응답’이 된다.
  •   다섯 자리 소수점 값을 퍼센트와 문자열로 포맷

   이 포맷을 통해 “4, 7, 퍼센트 부호(%)” 대신 “47%”로 표현되는 다음 단계로 넘어갈 수 있다.



 5  마지막 단계는 ‘신뢰성 있는 대화 준비’ 단계로 서로 다른 음성 문구에 대해 로직을 구현한 후 해당 결과치를 분석에 적용하는 것이다.

  •   예를 들면, “팔꿈치에 손상을 입었을 확률이 98%입니다.”라고 말하는 것이 아니라 “이 팔꿈치에 손상이 있다는 사실이 감지되었습니다.”라고 말하는 식이다. 98%라는 수치는 분명히 손상을 입었다는 것을 의미하지만, 47%라면 팔꿈치의 손상 여부를 정확히 알 수 없다. 따라서 분석 결과는 “팔꿈치가 손상을 입었을 가능성이 47% 감지되었습니다. 보다 정밀한 검사가 필요합니다.”가 될 것이다.
  •   이러한 신뢰 로직은 신체의 특정 부위 식별과 음성 분석의 손상 탐지 두 가지에 모두 적용된다.

‘딥러닝 파이프라인’ 다이어그램은 다음과 같다.



이러한 태스크로는 다음과 같은 것들이 있다.

  •   도입부 해설
  •   “Hey Ray!” 사용법 도움말
  • ●  X-Ray 필름 분석과 음성 결과 제공
  •   현재의 분석 세션은 HCP에 저장될 수 있다.
  •   이 프로세스가 진행되는 동안 콘텐츠, X-Ray 이미지, 분석 문구는 싱글 이미지 영상 파일로 전환되고, 모든 콘텐츠는 HCP에 저장된다.
  •   해당 영상 파일은 “Hey Ray!” 트위터로 보낼 수 있다.
  •   이 기능은 더 정밀한 검사가 필요하다는 사실을 의사에게 알려주기 위함이다.
  •   통찰력 있는 사고와 의견을 제공한다.
  •   그리고 마지막으로 “Hey Ray!" 방사선 전문의가 농담을 한 마디 던질 것이다.

이 “Hey Ray!” 시연은 딥러닝을 실제 상황에 적용하는 한 가지 사례일 뿐이다. 이번 시연에서는 참가자가 직접 X-Ray 사진을 선택해 ‘X-Ray 보기’ 스크린에 이미지를 삽입한 후 “X-Ray 를 분석해줘”라고 디바이스에 명령하는 등 양방향 커뮤니케이션 수준도 상당히 높은 것으로 확인되었다.

머신러닝, 그리고 펜타호의 딥러닝으로 여러분은 과연 무엇을 더 할 수 있을까?


(그림) “Hey Ray!” 데모 구성