KR20180025093A - 약한 지도 학습 기반의 기계 학습 방법 및 그 장치 - Google Patents
약한 지도 학습 기반의 기계 학습 방법 및 그 장치 Download PDFInfo
- Publication number
- KR20180025093A KR20180025093A KR1020160156041A KR20160156041A KR20180025093A KR 20180025093 A KR20180025093 A KR 20180025093A KR 1020160156041 A KR1020160156041 A KR 1020160156041A KR 20160156041 A KR20160156041 A KR 20160156041A KR 20180025093 A KR20180025093 A KR 20180025093A
- Authority
- KR
- South Korea
- Prior art keywords
- type information
- model
- error value
- learning
- neural network
- Prior art date
Links
Images
Classifications
-
- G06F19/321—
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16H—HEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
- G16H30/00—ICT specially adapted for the handling or processing of medical images
-
- G06F19/34—
-
- G06F19/36—
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16H—HEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
- G16H10/00—ICT specially adapted for the handling or processing of patient-related medical or healthcare data
Landscapes
- Health & Medical Sciences (AREA)
- Engineering & Computer Science (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Epidemiology (AREA)
- Primary Health Care (AREA)
- Public Health (AREA)
- Nuclear Medicine, Radiotherapy & Molecular Imaging (AREA)
- Radiology & Medical Imaging (AREA)
- Image Analysis (AREA)
Abstract
본 발명의 일 실시예에 따른 기계 학습 장치에 의해 수행되는 약한 지도 학습(weakly supervised learning) 기반의 기계 학습 방법은, 컨벌루션 신경망(convolutional neural networks)을 이용하여, 제1 타입 정보가 주어지고, 제2 타입 정보는 주어지지 않은 데이터 셋에 대한 특징 맵(feature map)을 추출하는 단계, 제1 모델을 이용하여, 상기 제1 타입 정보에 대응되는 태스크를 수행하여 연산된 제1 오류 값을 역전파 하여 상기 컨벌루션 신경망을 갱신하는 단계 및 상기 제1 모델과 상이한 제2 모델을 이용하여, 상기 제1 타입 정보에 대응되는 태스크를 수행하여 연산된 제2 오류 값을 역 전파하여 상기 컨벌루션 신경망을 갱신하는 단계를 포함하되, 상기 제2 모델을 이용하여 상기 제1 타입 정보에 대응되는 태스크를 수행할 때, 상기 제2 타입 정보를 추출할 수 있다
Description
본 발명은 약한 지도 학습 기반의 기계 학습 방법 및 그 장치에 관한 것이다. 보다 자세하게는, 약한 지도 학습 환경에서, 컨벌루션 신경망(convolutional neural networks, CNN)을 이용하여 영상, 동영상 등에 관한 학습을 수행하는 방법 및 장치에 관한 것이다.
지도 학습(supervised learning)이란, 정답이 주어지는 학습 전략이다. 어떤 인풋(input)에 대한 올바른 아웃풋(output)이 무엇인지 알 수 있다는 전제를 가진다. 따라서 지도 학습을 위해서는, 어떤 데이터 셋에 대하여 학습을 할 때, 해당 데이터 셋을 구성하는 데이터 각각에 대한 정답을 제공받아야 한다.
그러나, 약한 지도 학습(weakly supervised learning) 환경에서는, 주어지는 정답에 대한 정보가 제한된다. 비 지도 학습(unsupervised learning)과 같이 아무 정보도 주어지지 않는 경우와는 다르지만, 일부에 대한 정보만 제공받아 학습하고, 그러한 학습을 통해 제공받지 않은 정보를 예측해내야 한다. 영상 인식에서 객체에 대한 클래스 정보만을 제공받았지만, 영상 내의 객체 위치를 예측해내는 학습 모델을 예로 들 수 있다.
한편, 컨벌루션 신경망(convolutional neural networks, CNN)은 딥 러닝 알고리즘 중 하나로, 다양한 컴퓨터 비젼(computer vision) 분야에서 좋은 성능을 보여주고 있다. 예를 들어, 객체 분류(object classification), 객체 위치 식별(object localization), 객체 분할(object segmentation) 등이 이에 해당된다.
컴퓨터 비젼 분야의 기계 학습을 위하여는, 영상, 동영상 등을 포함한 데이터 셋에 대하여 라벨링(labeling)이 필요하다. 라벨링은 데이터 셋에 대한 정보를 제공하기 위한 것인데, 라벨링 작업은 주로 인적 자원을 이용하여 이루어지므로 많은 시간적, 경제적 비용이 소모된다.
따라서, 적은 정보가 주어진 환경에서 기계 학습을 수행하기 위하여, 컨벌루션 신경망을 기반으로 한 약한 지도 학습(CNN-based weakly supervised learning)을 통해, 컴퓨터 비젼 분야의 태스크를 수행하려는 시도가 늘고 있다.
컴퓨터 비젼 분야의 태스크를 컨벌루션 신경망을 기반으로 한 약한 지도 학습(CNN-based weakly supervised learning)방법을 통해 수행하기 위하여는 일반적으로 미리 학습된 네트워크(pre-trained network)가 필요하다. 학습할 대상인 데이터 셋과 유사하지만 다른 데이터 셋을 통해 미리 학습된 네트워크를 이용하여, 컨벌루션 신경망을 미세 조정(fine-tuning)하여 좋은 초기 특정 맵(good initial feature map)을 얻을 수 있다. 이러한 과정을 전이 학습(transfer learning)이라고 한다. 미세 조정된 컨벌루션 신경망을 특정 태스크에 적용하여 학습함으로써, 컨벌루션 신경망을 더욱 개선해 나갈 수 있고, 궁극적으로 목적하는 특정 태스크를 해결할 수 있다.
그러나 미리 학습된 네트워크를 얻을 수 없는 경우가 있다. 데이터가 매우 제한되어, 다량의 데이터를 확보할 수 없는 분야의 경우에는, 미리 학습된 네트워크를 얻을 수 없다. 또한 미리 학습된 네트워크를 적용할 수 없는 경우가 있다. 현재 널리 사용되는 미리 학습된 네트워크는 일반 이미지(general image)를 이용하여 학습된 네트워크이므로, 일반 이미지와는 특성이 다른 이미지에 적용되는 경우 좋은 성능을 내지 못할 수 있기 때문이다.
예를 들어, 의료 분야의 경우는 개인의 프라이버시, 제한된 데이터의 양으로 미리 학습하기 위한 규모의 데이터 셋을 얻기 어렵고, 의료 분야의 이미지는 일반 이미지와는 특성을 달리하여 일반 이미지를 이용하여 미리 학습된 네트워크를 적용하기는 어렵다.
따라서, 이러한 특정 분야에서는 미리 학습된 네트워크 없이도, 학습 대상인 데이터 셋에 대하여 스스로 학습하여, 목적하는 태스크를 해결할 수 있는 학습 방법 및 장치의 제공이 요구된다.
본 발명이 해결하고자 하는 기술적 과제는, 학습 대상인 데이터 셋에 대하여 스스로 트레이닝(training)하여, 미리 학습된 네트워크 없이도, 목적하는 태스크를 해결할 수 있는 방법 및 장치를 제공하는 것이다.
본 발명이 해결하고자 하는 다른 기술적 과제는, 대규모의 데이터 셋을 확보할 수 없는 환경에서, 작은 규모의 데이터 셋만을 활용하여 스스로 컨벌루션 네트워크를 학습시킬 수 있는 방법 및 장치를 제공하는 것이다.
본 발명의 기술적 과제들은 이상에서 언급한 기술적 과제들로 제한되지 않으며, 언급되지 않은 또 다른 기술적 과제들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.
상기 기술적 과제를 해결하기 위한 본 발명의 일 실시예에 따른 기계 학습 장치에 의해 수행되는 약한 지도 학습(weakly supervised learning) 기반의 기계 학습 방법은, 컨벌루션 신경망(convolutional neural networks)을 이용하여, 제1 타입 정보가 주어지고, 제2 타입 정보는 주어지지 않은 데이터 셋에 대한 특징 맵(feature map)을 추출하는 단계, 제1 모델을 이용하여, 상기 제1 타입 정보에 대응되는 태스크를 수행하여 연산된 제1 오류 값을 역전파 하여 상기 컨벌루션 신경망을 갱신하는 단계 및 상기 제1 모델과 상이한 제2 모델을 이용하여, 상기 제1 타입 정보에 대응되는 태스크를 수행하여 연산된 제2 오류 값을 역 전파하여 상기 컨벌루션 신경망을 갱신하는 단계를 포함하되, 상기 제2 모델을 이용하여 상기 제1 타입 정보에 대응되는 태스크를 수행할 때, 상기 제2 타입 정보를 추출할 수 있다.
상기 기술적 과제를 해결하기 위한 본 발명의 다른 실시예에 따른 객체 위치 인식 장치에 의해 수행되는, 약한 지도 학습 기반의 객체 위치 인식 방법은 컨벌루션 신경망을 이용하여, 객체 분류 정보가 주어지고, 객체 위치 정보는 주어지지 않은 데이터 셋에 대한 특징 맵을 추출하는 단계, 객체 분류기를 이용하여, 객체 분류 태스크를 수행하여 연산된 제1 오류 값을 역전파하여 상기 컨벌루션 신경망을 갱신하는 단계 및 객체 위치 인식기를 이용하여, 상기 객체 분류 태스크를 수행하여 연산된 제2 오류 값을 역전파하여 상기 컨벌루션 신경망을 갱신하는 단계를 포함하되, 상기 객체 위치 인식기를 이용하여, 상기 객체 분류 태스크를 수행할 때, 상기 객체 위치 정보를 추출할 수 있다.
상기 기술적 과제를 해결하기 위한 본 발명의 또 다른 실시예에 따른 약한 지도 학습 기반의 기계 학습 장치는, 컨벌루션 신경망을 이용하여, 제1 타입 정보가 주어지고, 제2 타입 정보는 주어지지 않은 데이터 셋에 대한 특징 맵을 추출하는 특징 맵 추출 오퍼레이션, 제1 모델을 이용하여, 상기 제1 타입 정보에 대응되는 태스크를 수행하여 연산된 제1 오류 값을 역전파 하여 상기 컨벌루션 신경망을 갱신하는 제1 학습 오퍼레이션 및 상기 제1 모델과 상이한 제2 모델을 이용하여, 상기 제1 타입 정보에 대응되는 태스크를 수행하여 연산된 제2 오류 값을 역 전파하여 상기 컨벌루션 신경망을 갱신하는 제2 학습 오퍼레이션을 포함하되, 상기 제2 학습 오퍼레이션은 상기 제2 모델을 이용하여 상기 제1 타입 정보에 대응되는 태스크를 수행할 때, 상기 제2 타입 정보를 추출할 수 있다.
상기 기술적 과제를 해결하기 위한 본 발명의 또 다른 실시예에 따른 컴퓨터 프로그램은 컨벌루션 신경망을 이용하여, 제1 타입 정보가 주어지고, 제2 타입 정보는 주어지지 않은 데이터 셋에 대한 특징 맵을 추출하는 단계, 제1 모델을 이용하여, 상기 제1 타입 정보에 대응되는 태스크를 수행하여 연산된 제1 오류 값을 역전파 하여 상기 컨벌루션 신경망을 갱신하는 단계 및 상기 제1 모델과 상이한 제2 모델을 이용하여, 상기 제1 타입 정보에 대응되는 태스크를 수행하여 연산된 제2 오류 값을 역 전파하여 상기 컨벌루션 신경망을 갱신하는 단계를 실행 시키기 위하여 기록매체에 저장되되, 상기 제2 모델을 이용하여 상기 제1 타입 정보에 대응되는 태스크를 수행할 때, 상기 제2 타입 정보를 추출할 수 있다.
본 발명의 몇몇 실시예들에 따르면, 약한 지도 학습 환경에서, 기계 학습 장치가 미리 학습된 네트워크 없이 스스로 기계 학습을 통하여, 컴퓨터 비젼 분야의 태스크를 수행할 수 있는 효과를 달성할 수 있다.
본 발명의 몇몇 실시예들에 따르면, 기계 학습 장치는 데이터 셋의 크기가 작은 경우에도, 컨벌루션 네트워크를 트레이닝 시킬 수 있는 효과가 있다.
본 발명의 효과들은 이상에서 언급한 효과들로 제한되지 않으며, 언급되지 않은 또 다른 효과들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해 될 수 있을 것이다.
도 1은 본 발명의 일 실시예에 따른 약한 지도 학습 기반의 기계 학습 시스템의 구성도이다.
도 2는 본 발명의 다른 실시예에 따른 약한 지도 학습 기반의 기계 학습 장치의 하드웨어 구성도이다.
도 3은 본 발명의 몇몇 실시예에서 참조되는, 약한 지도 학습 기반의 기계 학습 모델을 설명하기 위한 도면이다.
도 4는 기존의 멀티 태스크 러닝 모델 (multi-task learning model)에 대하여 설명하기 위한 도면이다.
도 5는 본 발명의 또 다른 실시예에 따른 약한 지도 학습 기반의 기계 학습 방법의 순서도이다.
도 6은 본 발명의 또 다른 실시예에 따른, 제1 모델과 제2 모델에 의한 트레이닝 순서에 구분이 있는, 약한 지도 학습 기반의 기계 학습 방법의 순서도이다.
도 7은 본 발명의 또 다른 실시예에 따른, 제1 모델과 제2 모델에 의한 트레이닝이 동시에 수행되는, 약한 지도 학습 기반의 기계 학습 방법의 순서도이다.
도 8은 본 발명의 몇몇 실시예에서 참조되는, 약한 지도 학습 기반의 객체 위치 인식 모델을 설명하기 위한 도면이다.
도 9는 약한 지도 학습 기반의 종래 객체 위치 인식 모델을 설명하기 위한 도면이다.
도 10은 본 발명의 몇몇 실시예에서 참조되는, 컨벌루션 신경망에 대한 트레이닝 시나리오를 설명하기 위한 도면이다.
도 11은 본 발명의 또 다른 실시예에 따른, 객체 분류기와 객체 위치 인식기에 의한 트레이닝 순서에 구분이 있는, 약한 지도 학습 기반의 객체 위치 인식 방법의 순서도이다.
도 12는 본 발명의 몇몇 실시예에서 참조되는, 오류 역전파 과정을 설명하기 위한 도면이다.
도 13은 본 발명의 몇몇 실시예에서 참조되는, 약한 지도 학습 기반의 객체 위치 인식 모델을 추가 설명하기 위한 도면이다.
도 14는 본 발명의 본 발명의 또 다른 실시예에 따른, 객체 분류기와 객체 인식기에 의한 트레이닝이 동시에 수행되는, 약한 지도 학습 기반의 객체 위치 인식 방법의 순서도이다.
도 15는 본 발명의 또 다른 실시예에 따른 객체 위치 인식 장치가 의료 분야에 적용된 경우를 설명하기 위한 순서도이다.
도 16은 실제 실험예에 기반한, 객체 인식 장치의 성능 평가 표이다.
도 17 및 도 18은 실제 실험예에 기반한, 객체 인식 장치의 성능을 그래프로 나타낸 도면이다.
도 19 및 도 20은 실제 객체 위치 인식이 수행된 결과 이미지를 나타내는 도면이다.
도 2는 본 발명의 다른 실시예에 따른 약한 지도 학습 기반의 기계 학습 장치의 하드웨어 구성도이다.
도 3은 본 발명의 몇몇 실시예에서 참조되는, 약한 지도 학습 기반의 기계 학습 모델을 설명하기 위한 도면이다.
도 4는 기존의 멀티 태스크 러닝 모델 (multi-task learning model)에 대하여 설명하기 위한 도면이다.
도 5는 본 발명의 또 다른 실시예에 따른 약한 지도 학습 기반의 기계 학습 방법의 순서도이다.
도 6은 본 발명의 또 다른 실시예에 따른, 제1 모델과 제2 모델에 의한 트레이닝 순서에 구분이 있는, 약한 지도 학습 기반의 기계 학습 방법의 순서도이다.
도 7은 본 발명의 또 다른 실시예에 따른, 제1 모델과 제2 모델에 의한 트레이닝이 동시에 수행되는, 약한 지도 학습 기반의 기계 학습 방법의 순서도이다.
도 8은 본 발명의 몇몇 실시예에서 참조되는, 약한 지도 학습 기반의 객체 위치 인식 모델을 설명하기 위한 도면이다.
도 9는 약한 지도 학습 기반의 종래 객체 위치 인식 모델을 설명하기 위한 도면이다.
도 10은 본 발명의 몇몇 실시예에서 참조되는, 컨벌루션 신경망에 대한 트레이닝 시나리오를 설명하기 위한 도면이다.
도 11은 본 발명의 또 다른 실시예에 따른, 객체 분류기와 객체 위치 인식기에 의한 트레이닝 순서에 구분이 있는, 약한 지도 학습 기반의 객체 위치 인식 방법의 순서도이다.
도 12는 본 발명의 몇몇 실시예에서 참조되는, 오류 역전파 과정을 설명하기 위한 도면이다.
도 13은 본 발명의 몇몇 실시예에서 참조되는, 약한 지도 학습 기반의 객체 위치 인식 모델을 추가 설명하기 위한 도면이다.
도 14는 본 발명의 본 발명의 또 다른 실시예에 따른, 객체 분류기와 객체 인식기에 의한 트레이닝이 동시에 수행되는, 약한 지도 학습 기반의 객체 위치 인식 방법의 순서도이다.
도 15는 본 발명의 또 다른 실시예에 따른 객체 위치 인식 장치가 의료 분야에 적용된 경우를 설명하기 위한 순서도이다.
도 16은 실제 실험예에 기반한, 객체 인식 장치의 성능 평가 표이다.
도 17 및 도 18은 실제 실험예에 기반한, 객체 인식 장치의 성능을 그래프로 나타낸 도면이다.
도 19 및 도 20은 실제 객체 위치 인식이 수행된 결과 이미지를 나타내는 도면이다.
이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예를 상세히 설명한다. 본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시 예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 게시되는 실시예에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시 예들은 본 발명의 게시가 완전하도록 하고, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성 요소를 지칭한다.
다른 정의가 없다면, 본 명세서에서 사용되는 모든 용어(기술 및 과학적 용어를 포함)는 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에게 공통적으로 이해될 수 있는 의미로 사용될 수 있을 것이다. 또 일반적으로 사용되는 사전에 정의되어 있는 용어들은 명백하게 특별히 정의되어 있지 않는 한 이상적으로 또는 과도하게 해석되지 않는다. 본 명세서에서 사용된 용어는 실시예들을 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다.
명세서에서 사용되는 "포함한다 (comprises)" 및/또는 "포함하는 (comprising)"은 언급된 구성 요소, 단계, 동작 및/또는 소자는 하나 이상의 다른 구성 요소, 단계, 동작 및/또는 소자의 존재 또는 추가를 배제하지 않는다.
이하, 본 발명에 대하여 첨부된 도면에 따라 보다 상세히 설명한다.
도 1은 본 발명의 일 실시예에 따른 약한 지도 학습 기반의 기계 학습 시스템의 구성도이다.
약한 지도 학습 기반의 기계 학습 시스템은 학습 대상인 데이터 셋(10)과 기계 학습 장치(100)를 포함할 수 있다. 데이터 셋(10)은 컴퓨터 비젼 분야의 태스크에 이용되는 영상, 동영상 데이터를 포함할 수 있다. 데이터 셋을 구성하는 각각의 데이터(15a)는 라벨(label)(15b)을 포함할 수 있다.
라벨(15b)은 데이터(15a)에 대하여 주어진 정보를 가리킨다. 약한 지도 학습에서 주어지는 정답에 대한 정보이다. 라벨(15b)은 통상의 기술자에게 태그(tag), 주석(annotation)으로 일컬어 질 수 있다.
기계 학습 장치(100) 라벨(15b)을 통해 주어진 정보를 이용하여, 컴퓨터 비젼 분야의 태스크를 수행하여, 무작위 초기 상태의 컨벌루션 신경망 트레이닝을 수행할 수 있다.
기계 학습 장치(100)는 어떠한 정보가 주어졌을 때, 주어진 정보에 대응되는 태스크를 수행하고, 태스크 수행 결과 생성되는 오류 값을 역전파하여 컨벌루션 신경망을 갱신할 수 있다. 이러한 과정이 반복적으로 수행되면서, 컨벌루션 신경망이 트레이닝 되고, 기계 학습이 이루어지게 된다.
기계 학습의 목표는 더 좋은 특징 맵을 추출할 수 있도록 컨벌루션 신경망을 갱신하고, 이렇게 미세 조정된 컨벌루션 신경망을 통해 기계 학습 장치(100)가 스스로 목적하는 태스크를 수행할 수 있도록 하는 것이다.
컴퓨터 비젼 분야의 태스크는 객체 분류(classification), 객체 위치 인식(localization), 객체 분할(segmentation), 영상 분류(video classification), 포즈 평가(pose estimation) 등을 포함한다. 그러나 이에 한정되지 않고, 영상, 동영상 데이터를 통해 이루어질 수 있는 컴퓨터 비젼 분야의 태스크를 모두 포함할 수 있다.
기계 학습 장치(100)에 객체 분류(class)정보가 주어지면, 기계 학습 장치(100)는 그에 대응되는 객체 분류 태스크를 수행하여, 컨벌루션 신경망을 트레이닝 할 수 있다. 기계 학습 장치(100)는 컨벌루션 신경망의 트레이닝이 충분히 수행되면, 트레이닝 된 컨벌루션 신경망을 이용하여, 주어진 객체 분류 정보 외의 다른 정보를 추출할 수 있도록, 객체 분류 태스크와 다른 태스크를 수행할 수 있다.
상기 다른 정보를 추출하는 작업이 기계 학습 장치(100)가 궁극적으로 수행하고자 하는 목적 태스크라고 볼 수 있다.
본 발명의 다른 실시예에 따르면, 기계 학습 장치(100)는 데이터 셋(10)이 저장된 스토리지를 포함하여 구현될 수 있다.
도 2는 본 발명의 다른 실시예에 따른 약한 지도 학습 기반의 기계 학습 장치의 하드웨어 구성도이다. 이하, 도2를 참조하여 기계 학습 장치(100)의 구조와 동작에 대하여 설명한다.
도 2를 참고하면 약한 지도 학습 기반의 기계 학습 장치(100)는 하나 이상의 프로세서(110), 메모리(120), 스토리지(140) 및 인터페이스(130)을 포함할 수 있다. 프로세서(110), 메모리(120), 스토리지(140) 및 인터페이스(130)는 시스템 버스를 통하여 데이터를 송수신한다.
프로세서(110)는 메모리(120)에 로드 된 기계 학습 소프트웨어(141)를 실행하고, 메모리(120)는 상기 기계 학습 소프트웨어(141)를 스토리지(140)에서 로드(load) 한다. 상기 기계 학습 프로그램은, 특징 맵 추출 오퍼레이션(121), 제1 학습 오퍼레이션(122), 제2 학습 오퍼레이션(123), 제2 정보 추출 오퍼레이션(124)을 포함할 수 있다.
프로세서(110)가 기계 학습 소프트웨어(141)를 실행함에 따라, 특징 맵 추출 오퍼레이션(121)은 학습 대상인 데이터 셋에 대한 특징 맵을, 컨벌루션 신경망을 이용하여 추출할 수 있다. 컨벌루션 신경망의 필터(filter)가 갱신됨에 따라, 추출되는 특징 맵도 변경될 수 있다.
제1 트레이닝 오퍼레이션(122)은 추출된 특징 맵과 제1 모델을 이용하여, 제1 타입 정보에 대응되는 태스크를 수행할 수 있다. 태스크 수행 후에 생성된 제1 타입 정보와 대응되는 아웃풋과 제1 타입 정보를 비교하여, 제1 오류 값을 연산할 수 있고, 연산된 제1 오류 값을 역전파하여, 컨벌루션 신경망을 갱신할 수 있다.
제2 학습 오퍼레이션(123)은 제1 학습 오퍼레이션(122)과 같이, 제1 타입 정보에 대응되는 태스크를 수행할 수 있다. 다만, 제1 모델과 상이한 제2 모델을 이용하는 점에 차이가 있다. 태스크 수행 후에 생성된 제1 타입 정보에 대응되는 아웃풋과 주어진 제1 타입 정보를 비교하여, 제2 오류 값을 연산하고, 연산된 제2 오류 값을 역전파하여, 컨벌루션 신경망을 갱신할 수 있다.
제2 학습 오퍼레이션(123)은 제1 타입 정보에 대응되는 태스크를 수행할 때, 제2 타입 정보를 추출할 수 있다. 제2 학습 오퍼레이션(123)은 제1 타입 정보에 대응되는 태스크를 수행하는 과정에서, 제2 타입 정보를 예측할 수 있다. 상기 예측 과정을 통해, 제2 타입 정보가 추출될 수 있다.
제2 정보 결정 오퍼레이션(124)은 제2 학습 오퍼레이션(123)이 수행되는 과정에서 추출되는 제2 타입 정보를 이용하여, 제2 타입 정보를 결정할 수 있다. 즉, 제2 타입 정보의 최종 값을 결정할 수 있다.
제2 모델은 제1 모델과 상이하지만, 동일한 태스크인 제1 타입 정보에 대응되는 태스크를 수행할 수 있다. 이에 따라, 제1 타입 정보에 대응되는 아웃풋을 생성하게 되는데, 그 아웃풋을 생성하는 과정이 상이할 수 있다. 제2 모델은 제1 타입 정보에 대응되는 아웃풋을 생성할 때, 제2 타입 정보를 추출할 수 있다.
제2 정보 결정 오퍼레이션(124)은 컨벌루션 신경망이 충분히 트레이닝 되어, 제2 모델로부터 낮은 오류와 높은 정확도를 가지는 제2 타입 정보를 획득할 수 있게 되면, 제2 타입 정보를 결정하는 태스크를 수행할 수 있다. 기계 학습 장치(100)는 제2 정보 결정 오퍼레이션(124)을 통해, 데이터 셋에 대하여 주어지지 않은 제2 타입 정보를 도출할 수 있어, 약한 지도 학습 환경 하에서도, 목적하는 태스크를 수행할 수 있다.
이처럼, 기계 학습 장치(100)가 스스로 컨벌루션 신경망을 트레이닝 시킬 수 있고, 이를 통해 주어지지 않은 제2 타입 정보를 결정할 수 있는 효과가 있다. 제2 타입 정보를 결정하는 태스크가 기계 학습 장치(100)가 목적하는 태스크가 된다.
도 2의 각 구성 요소는 소프트웨어(Software) 또는, FPGA(Field Programmable Gate Array)나 ASIC(Application-Specific Integrated Circuit)과 같은 하드웨어(Hardware)를 의미할 수 있다. 그렇지만, 상기 구성 요소들은 소프트웨어 또는 하드웨어에 한정되는 의미는 아니며, 어드레싱(Addressing)할 수 있는 저장 매체에 있도록 구성될 수도 있고, 하나 또는 그 이상의 프로세서들을 실행시키도록 구성될 수도 있다. 상기 구성 요소들 안에서 제공되는 기능은 더 세분화된 구성 요소에 의하여 구현될 수 있으며, 복수의 구성 요소들을 합하여 특정한 기능을 수행하는 하나의 구성 요소로 구현될 수도 있다.
도 3은 본 발명의 몇몇 실시예에서 참조되는, 약한 지도 학습 기반의 기계 학습 모델을 설명하기 위한 도면이다. 상기 기계 학습 모델(102)은 기계 학습 장치(100)로 구현될 수 있다.
기계 학습 모델(102)는 데이터 셋(10), 컨벌루션 레이어(200), 데이터 셋(10)에 대한 특정 태스크를 수행하는 복수 개의 모델(300)로 구성될 수 있다.
데이터 셋(10)은 복수 개의 데이터로 구성되며, 각각의 데이터와 관련된 정보가 라벨링될 수 있다. 도 3에는 info_A가 예로서 도시되었다. info_A는 약한 지도 학습 환경에서 컨벌루션 레이어(200)를 학습할 때, 데이터 셋에 대한 정답으로 주어지는 정보이다.
각각의 모델(300)들은 컨벌루션 레이어(200)에서 생성된 특징 맵(feature map)을 입력 받아, info_A에 대응되는 태스크를 수행하고, info_A에 대응되는 아웃풋을 생성할 수 있다. 그 아웃풋을 주어진 info_A와 비교하여 오류 값을 연산할 수 있다.
컨벌루션 레이어(200)는 컨벌루션 신경망이 적용된 네트워크로, 주어진 데이터셋(10)에 대한 특징 맵을 추출하는 일을 수행할 수 있다. 데이터의 특징을 잘 반영할 수 있는 좋은 특징 맵을 추출하기 위하여, 필터의 최적의 가중치 값, 최적의 바이어스 값이 정해져야 한다.
복수 개의 모델(300)은 컨벌루션 레이어(200)로부터 특징 맵을 입력 받아, info_A와 관련된 태스크를 수행할 수 있다. 예를 들어, info_A가 객체의 분류 정보이면, 객체 분류 태스크를 수행할 수 있고, info_A가 객체 위치 정보이면, 객체 위치 인식 태스크를 수행할 수 있다.
info_A가 객체 분류 정보인 경우를 예로 들어 설명해보자. 이 경우, 모델(300)은 객체 분류 태스크를 수행하는 분류기(classifier)가 될 수 있다. 분류기는 객체 분류 정보에 대응되는 아웃풋으로 각각의 데이터가 어떤 클래스에 속할 확률(class probability)을 생성할 수 있다.
즉, 객체 분류 정보에 대응되는 아웃풋은 각 모델(300)의 데이터 셋(10)을 구성하는 각각의 데이터에 대하여 생성한, 분류 결과 예측 값을 의미한다. 어떤 데이터에 대한 예측 값이 연산 되면, 그 데이터에 대하여 주어진 정답 info_A와 비교하여, 그 차이를 오류 값으로 연산할 수 있다.
연산된 오류 값이 역전파 되어, 컨벌루션 레이어(200)가 갱신될 수 있다. 상기 오류 값이 감소하도록, 컨벌루션 레이어(200)의 가중치 또는 바이어스 값이 갱신되는 것이다. 이러한 과정을 통해, 컨벌루션 레이어(200)가 주어진 데이터 셋(10)에 대해 학습하고, 그 데이터 셋(10)에 대한 좋은 특징 맵을 추출할 수 있도록 트레이닝 된다.
한편, 이러한 기계 학습 모델(102)은 기존의 멀티 태스크 러닝(multi task learning)과 유사해 보일 수 있다. 그러나 약간 지도 학습에 기인한 큰 차이가 있으며, 이하 도 4를 통해 설명한다.
도 4는 기존의 멀티 태스크 러닝 모델 (multi-task learning model)에 대하여 설명하기 위한 도면이다.
멀티 태스크 러닝이란, 기계 학습의 패러다임으로, 연관된 다수의 태스크를 공유된 레프리젠테이션(representation)을 이용하여, 동시에 수행하여 학습하는 방법이다.
컴퓨터 비젼 분야에서 이용되는 멀티 태스크 러닝 모델(104)은 학습 대상인 데이터 셋(10), 컨벌루션 레이어(200), 복수 개의 모델(301)로 구성된다.
컨벌루션 레이어(200)가 공유된 레프리젠테이션에 대응되며, 복수 개의 모델(300)은 서로 다른 타입의 정보를 이용하여, 서로 다른 태스크를 수행한다.
일반적으로, 멀티-태스크 러닝 모델(104)에서 각각의 모델(301)는 서로 다른 정보를 이용하여, 그 정보에 대응되는 다른 태스크을 수행한다. 태스크 수행 결과 연산된 각 정보에 대한 오류 값을 역전파하여, 컨벌루션 레이어(200)를 트레이닝 시킨다.
복수 개의 모델(301)은 서로 협력하여 목적하는 문제를 해결할 수 있도록 설계될 수 있다. 복수 개의 모델(301)에서 생성된 결과 값이 다른 모델(301)의 태스크 수행에 도움이 될 수 있도록 설계될 수 있다.
도 4의 멀티-태스크 러닝 모델(104)는 4개의 서로 다른 모델(301)를 가지도록 설계되었다. 데이터 셋(10)은 각각의 모델(301)에서 이용되는 4개의 정보를 가지고 있다.
4개의 모델(301)은 학습 대상인 데이터 셋(10)에 라벨링 된 서로 다른 정보 info_A 내지 info_D 를 이용하여, 서로 다른 태스크 task A 내지 task D를 수행할 수 있다. Task A는 info_A에 대응되는 아웃풋(400)인 error_A값을 산출할 수 있고, Task B는 info_B에 대응되는 아웃풋(400)인 error_B값을. Task C는 info_C에 대응되는 아웃풋(400)인 error_C값을, Task D는 info_D에 대응되는 아웃풋(400)인 error_D값을 산출 할 수 있다.
각각의 결과 값 error_A 내지 error_D 값은 컨벌루션 레이어(200)를 트레이닝 하는데 이용될 수 있고, 각각의 아웃풋(400)을 이용한 트레이닝 결과는 서로 다른 모델(301)의 태스크 수행에 도움을 줄 수 있다.
이러한 멀티-태스크 러닝 모델(104)은 지도 학습(supervised learning) 방법에 기반한다. 지도 학습 방법은 정답이 주어지는 학습 방법이다. 따라서 어떤 인풋(input)에 대한 올바른 아웃풋(output)이 무엇인지 알 수 있어야 하기 때문에, 인풋인 데이터 셋(10)과 함께, 그 데이터 셋(10)에 대한 정답이 제공되어야 한다.
예로 들어, 객체가 사과, 배, 바나나로 분류될 수 있는 분류(classification)문제가 있다고 하자. 그렇다면 각 이미지 데이터에 대하여, 해당 이미지는 사과, 배 또는 바나나라는 정답, 즉 객체 분류 정보가 라벨링 되어야 한다. 이러한 객체 분류 정보에 대응되는 태스크는 객체 분류 작업이다.
따라서 객체 분류기(object classifier)가 하나의 모델로 설계되고, 상기 객체 분류기는 컨벌루션 네트워크로부터 추출된 특징 맵을 이용하여, 분류 작업을 수행하고, 주어진 정답과 예측된 클래스를 비교하여 오류 값을 연산한다. 상기 오류 값은 역전파 되어, 컨벌루션 네트워크의 갱신에 이용된다.
또한 객체인 사과, 배 또는 바나나가 각 이미지의 어느 위치에 존재하는지를 감지하는 객체 위치 인식(localization)문제가 있다고 하자. 그렇다면 각 이미지 데이터에 대하여 객체가 어디에 있는지를 나타내는 좌표 박스가 정답으로 라벨링 될 수 있다.
이러한 객체 위치 정보에 대응되는 태스크는 객체 위치 인식 작업이다. 따라서 객체 위치 인식기(localizer)가 또 다른 하나의 모델로 설계될 수 있고, 상기 객체 위치 인식기는 컨벌루션 네트워크로부터 추출된 특징 맵을 이용하여, 위치 인식 작업을 수행하고, 주어진 정답과 예측된 객체의 위치를 비교하여 오류 값을 연산한다. 상기 오류 값은 역전파 되어, 컨벌루션 네트워크 갱신에 이용된다.
이처럼 지도 학습 기반의 멀티 태스크 러닝 모델(104)은 데이터 셋에 대하여 정답을 제공받아야 하고, 각각의 모델이 모두 서로 다른 태스크를 수행하여, 각각 다른 정보에 대응되는 오류 값을 도출할 수 있다.
그러나 약한 지도 학습(weakly supervised leaning)에서는 주어지는 정답에 대한 정보가 제한된다. 따라서, 각각의 모델들이 서로 다른 태스크를 수행하도록 설계될 수 없으며, 아웃풋의 종류도 주어진 정보에 대응되는 아웃풋으로 한정된다. 따라서 약한 지도 학습 환경에서는 기존의 멀티 태스크 러닝 방법을 이용할 수 없다.
따라서, 본 발명의 실시예에 따른 기계 학습 모델이 복수 개의 모델을 이용한다고 하여도, 멀티 태스크 러닝과는 완전히 다른 구조이다. 기계 학습 분야의 기술은 지도 학습에서 약한 지도 학습으로, 궁극적으로는 비지도 학습으로 가기 위한 방향으로 발전하고 있다.
따라서, 본 발명의 기계 학습 모델은 제한된 정보를 이용하여, 주어지지 않은 정보에 관련된 값도 추출할 수 있도록 하는 효과를 가지게 되어, 정보 제한의 환경 하에서도, 목적하는 태스크를 수행할 수 있도록 하는 발명의 목적을 달성할 수 있게 된다.
목적하는 태스크란, 학습 대상 데이터로부터 주어진 정보 이외의 다른 정보를 결정하는 작업을 가리킬 수 있다. 기계 학습 장치는 주어진 정보를 통해, 컨벌루션 신경망을 트레이닝하고, 트레이닝을 통해 미세-조정된(fine-tuned) 컨벌루션 신경망을 통해, 주어진 정보 외에 다른 정보도 결정할 수 있도록 설계될 수 있다. 목적하는 태스크는, 이하 목적 태스크라 서술한다.
도 5는 본 발명의 또 다른 실시예에 따른 약한 지도 학습 기반의 기계 학습 방법의 순서도이다.
도 5를 참조하면, 기계 학습 장치(100)는 제1 타입 정보가 주어지고, 제2 타입 정보는 주어지지 않은 데이터 셋에 대하여, 특징 맵을 추출할 수 있다(S100). 데이터 셋에 대한 학습을 위하여, 제1 모델을 이용하여 컨벌루션 네트워크를 트레이닝 할 수 있고(S200), 제2 모델을 이용하여 컨벌루션 네트워크 트레이닝을 할 수 있다(S300). 컨벌루션 네트워크가 충분히 트레이닝 되면, 기계 학습 장치(100)는 제2 타입 정보를 결정할 수 있다(S400). 단계(S400)이 목적 태스크가 된다.
단계(S100)에서, 제1 타입 정보는 데이터 셋에 대한 정답 정보이다. 제2 타입 정보는 목적 태스크 수행(S400)을 통해 얻어낼 정보이면서, 데이터 셋에 대하여 주어지지 않은 정보이다.
단계(S200, S300)에서, 기계 학습 장치(100)는 제1 모델과 제2 모델을 이용하여 제1 타입 정보에 대응되는 태스크를 수행하고, 제1 타입 정보에 대응되는 아웃풋을 생성할 수 있다. 아웃풋은 데이터 셋에 포함된 데이터의 제1 타입 정보와 관련된 확률 값이 될 수 있다.
예를 들어, 아웃풋은 제1 타입 정보가 분류 타입의 정보인 경우에는 그 데이터가 어떤 분류에 속할 확률 값이 될 수 있고, 제1 타입 정보가 객체 위치 타입의 정보인 경우에는 그 데이터에 객체가 어떤 위치에 속할 확률 값이 될 수 있다.
이렇게 아웃풋이 생성되면, 제1 모델 및 제2 모델은 생성된 아웃풋과 주어진 제1 타입 정보와 비교하여 오류 값을 연산할 수 있다. 기계 학습 장치(100)는 오류 값을 역전파하여 컨벌루션 네트워크를 트레이닝 할 수 있다.
이와 같은 과정을 통해, 종래에 컨벌루션 신경망 기반의 약한 지도 방식의 기계 학습 장치 및 모델이 미리 학습된 네트워크를 이용하여 컨벌루션 네트워크를 미세-조정(fine-tuning)했던, 불편함을 해결하였다.
또한 기계 학습 장치는 입력된 데이터 셋을 이용하여 직접 스스로 학습하기 때문에, 입력된 데이터 셋에 최적화된 컨벌루션 네트워크를 얻을 수 있다. 기존에 전이 학습을 통해 사용하던 미리 학습된 네트워크는 대량의 일반 이미지를 대상으로 트레이닝 되어, 일반 이미지와 특성을 달리하는 특수 이미지에 대한 태스크에 적용되어 사용되기 어려웠다. 이러한 문제점을 해결할 수 있는 효과가 있다.
한편, 제1 모델을 이용하여 컨벌루션 네트뤄크를 트레이닝 하는 단계(S200)와 제2 모델을 이용하여 컨벌루션 네트워크를 트레이닝 하는 단계(S300)는 동시에 수행될 수도 있고, 단계(S200)이 먼저 수행된 후에, 단계(S300)이 수행될 수 있다. 이하 도 6 및 도 7을 참조하여 설명한다.
도 6은 본 발명의 또 다른 실시예에 따른, 제1 모델과 제2 모델에 의한 트레이닝 순서에 구분이 있는, 약한 지도 학습 기반의 기계 학습 방법의 순서도이다.
기계 학습 장치(100)는 컨벌루션 신경망을 이용하여, 제1 타입 정보가 주어지고, 제2 타입 정보는 주어지지 않은 데이터 셋에 대한 특징 맵을 추출할 수 있다(S100). 기계 학습 장치(100)는 제1 모델을 이용하여, 제1 타입 정보에 대응되는 태스크를 수행할 수 있고(S220), 그 결과 연산된 제1 오류 값이 기 설정된 기준을 만족하는지 여부를 판단할 수 있다(S240).
단계(S240)에서, 제1 오류 값이 기 설정된 기준을 만족하는지 여부를 판단하는 이유는, 컨벌루션 신경망이 충분히 트레이닝 되었는지 여부를 판단하기 위함이다. 오류 값이 작아질수록 컨벌루션 신경망이 더 잘 트레이닝 된 것을 의미하므로, 충분히 작은 값을 기준으로 설정하면 된다.
제1 오류 값이 기 설정된 기준을 만족하지 못하는 경우, 상기 제1 오류 값을 역전파하여(S260), 컨벌루션 신경망을 갱신할 수 있다. 충분히 트레이닝 되지 않았으므로, 학습이 계속 진행되어야 하기 때문이다.
반면 제1 오류 값이 기 설정된 기준을 만족하는 경우, 기계 학습 장치(100)는 컨벌루션 신경망이 충분히 트레이닝 되었다고 판단할 수 있으므로, 제2 모델을 이용한 태스크를 수행할 수 있다.
제1 모델을 이용하여 컨벌루션 신경망을 먼저 트레이닝 한 후에, 제2 모델을 이용한 태스크를 수행하는 이유는 전반적인 학습 속도를 향상시키고, 목적 태스크의 정확도를 높이기 위함이다.
기계 학습 장치(100)의 목적 태스크는 제2 타입의 정보를 추출하여 결정하는 것이다. 목적 태스크가 의도하는 아웃풋이 제2 모델로부터 추출되는 것이라면, 제2 모델을 이용하여 수행되는 태스크는, 충분히 트레이닝 된 컨벌루션 네트워크를 이용하여 수행되어야 한다. 충분히 트레이닝 된 컨벌루션 네트워크가 더 좋은 특징 맵을 생성할 수 있고, 더 좋은 특징 맵을 제2 모델의 인풋으로 이용하여야, 제2 모델의 태스크 수행 과정에서 생성되는 제2 타입의 정보가 높은 정확도를 가질 수 있다.
제2 모델로부터 제1 타입 정보와 다른 제2 타입 정보를 추출할 수 있는데, 이는 제1 모델과 제2 모델은 상이한 모델로서, 같은 태스크를 수행하더라도, 스 수행 과정이 상이하기 때문이다. 예를 들어, 제1 모델과 제2 모델의 네트워크 레이어 구조를 달리 설계하는 경우, 같은 아웃풋을 생성하더라도, 아웃풋을 생성하는 세부 과정은 상이할 수 있다.
따라서 상이한 과정에서 도출될 수 있는 다른 정보가 존재할 수 있다. 상기 다른 정보는 주어진 정보와 다른 정보로서, 목적 태스크가 추출하고자 하는 타겟(target) 정보가 될 수 있다. 이러한 제2 모델은 목적 태스크를 획득하고자 하는 타겟 정보를 생성할 수 있도록 설계될 수 있다.
기계 학습 장치(100)는 제1 모델을 통해, 컨벌루션 신경망을 충분히 트레이닝 시키고, 이후에 제2 모델을 통해 궁극적으로 목적 태스크가 유의미한 제2 타입 정보를 결정할 수 있도록 할 수 있다.
그러나 제1 모델을 통한 트레이닝과 제2 모델을 통한 트레이닝은 동시에 수행될 수 있다. 이하 도7을 통해 설명한다.
도 7은 본 발명의 또 다른 실시예에 따른, 제1 모델과 제2 모델에 의한 트레이닝이 동시에 수행되는, 약한 지도 학습 기반의 기계 학습 방법의 순서도이다.
기계 학습 장치(100)는 컨벌루션 신경망을 이용하여, 제1 타입 정보가 주어지고, 제2 타입 정보는 주어지지 않은 데이터 셋에 대하여, 특징 맵을 추출할 수 있다(S100). 기계 학습 장치(100)는 추출된 특징 맵을 제1 모델 및 제2 모델에 입력하고, 제1 모델을 이용하여 제1 타입 정보에 대응되는 태스크를 수행함(S220)과 동시에, 제2 모델을 이용하여 제1 타입 정보에 대응되는 태스크를 수행할 수 있다(S320).
기계 학습 장치(100)는 단계(S220, S320)을 통해, 제1 타입 정보에 대응되는 오류 값을 연산할 수 있다. 기계 학습 장치(100)는 연산된 오류 값이 기 설정된 기준을 만족하는지 여부를 판단할 수 있다(S500). 단계(S500)에서, 기계 학습 장치(100)는 목적 태스크가 수행될 수 있을 정도로 컨벌루션 신경망이 충분히 트레이닝 되었는지 여부를 판단할 수 있다.
제1 모델에 의하여 생성된 오류 값을 제1 오류 값, 제2 모델에 의하여 생성된 오류 값을 제2 오류 값이라고 하자. 상기 기 설정된 기준은 특정 수치의 제1 오류 값으로 지정되거나, 특정 수치의 제2 오류 값으로 지정될 수 있다. 또한 상기 기 설정된 기준 값은 제1 오류 값과 제2 오류 값이 조합된 값으로 지정될 수 있다.
기계 학습 장치(100)는 연산된 오류 값이 기 설정된 기준을 만족하는 경우, 제2 타입 정보를 결정할 수 있다(S400). 즉 기계 학습 장치(100)는 해당 데이터에 대하여 사용할 최종 제2 타입 정보를 결정하여, 목적 태스크를 수행할 수 있다.
반면, 기계 학습 장치(100)는 연산된 오류 값이 기 설정된 기준을 만족하지 못하는 경우, 오류 값을 역전파 하여 컨벌루션 신경망을 트레이닝 할 수 있다(S520).
기계 학습 장치(100)는 제1 모델로부터 산출된 제1 오류 값과 제2 모델로부터 산출된 제2 오류 값을 동시에 이용하여 컨벌루션 신경망을 트레이닝 할 수 있다. 또한 트레이닝의 각 단계마다, 제1 모델과 제2 모델의 상대적 중요도를 반영할 수 있다.
예를 들어, 제1 오류 값과 제2 오류 값에 가중치를 적용하여, 제3 오류 값을 연산할 수 있다. 트레이닝 초기 단계에서, 기계 학습 장치(100)는 제1 오류 값에 더 큰 가중치를 적용할 수 있다. 제1 모델을 통한 학습이 더 강하게 이루어질 수 있도록 하기 위함이다. 기계 학습 장치(100)는 트레이닝이 진행될수록, 제2 오류 값에 적용되는 가중치를 크게 적용할 수 있다.
지금까지 기계 학습 장치(100)에 대하여 설명하였다. 이하 도 8 내지 도 14을 통해, 기계 학습 장치(100)의 일 예시로서 객체 위치 인식 장치를 설명한다.
기계 학습 장치(100)에 주어지는 정보는 객체 분류 정보이고, 제1 모델이 객체 분류기이고, 제2 모델이 객체 위치 인식기이며, 목적 태스크는 객체 위치 인식인 경우, 기계 학습 장치(100)는 객체 위치 인식 장치 또는 객체 위치 인식 모델로 불려질 수 있다.
도 8은 본 발명의 몇몇 실시예에서 참조되는, 약한 지도 학습 기반의 객체 위치 인식 모델을 설명하기 위한 도면이다.
객체 위치 인식 모델(106)은 데이터 셋(10), 컨벌루션 레이어(220), 객체 분류 레이어(320), 객체 위치 인식 레이어(340)를 포함할 수 있다. 컨벌루션 레이어(220)는 컨벌루션 신경망이 적용된 네트워크 레이어이고, 객체 분류 레이어(320)는 객체 분류를 수행하는 네트워크 레이어이며, 객체 위치 인식 레이어(340)는 객체 위치 인식을 수행하는 네트워크 레이어이다.
객체 위치 인식 모델(106)의 목적 태스크는 객체의 위치를 인식하는 태스크이고, 주어진 정보는 분류 정보뿐 이므로, 객체 분류 레이어(320)와 객체 위치 인식 레이어(340)는 객체 분류를 수행하여야 한다. 객체 분류가 수행되면, 클래스 확률 값을 계산되고, 객체 분류 레이어(320)는 계산된 확률 값과 주어진 분류 정보와 비교하여 오류 값을 생성할 수 있다. 그리고 객체 분류 레이어(320)는 생성된 오류 값을 역전파 하여, 컨벌루션 레이어(220)를 트레이닝 시킬 수 있다.
객체 분류 레이어(320)의 태스크와 객체 위치 인식 레이어(340)의 태스크는 동시에 수행될 수 있고, 객체 분류 레이어(320)의 태스크가 충분히 수행된 후에. 객체 위치 인식 레이어(340)의 태스크를 수행할 수 있다. 도 8, 도 10 및 도 11을 통하여, 객체 분류 레이어(320)의 태스크가 먼저 수행된 후에, 객체 위치 인식 레이어(340)의 태스크를 수행하는 경우를 설명한다.
객체 분류 레이어(320)의 태스크를 먼저 수행하는 이유는, 주어진 분류 정보에 대응되는 객체 분류 작업을 먼저 수행하여 공유되는 컨벌루션 레이어(220)를 트레이닝 하기 위함이다. 트레이닝이란, 컨벌루션 레이어(220)가 주어진 데이터 셋(10)에 대하여 좋은 특징 맵을 추출할 수 있도록, 가중치 및 바이어스를 조정하는 작업을 의미할 수 있다.
이와 같은 과정을 통해, 미리 학습된 네트워크 없이도 임의의 초기 상태의 컨벌루션 레이어(220)가 학습되어 미세 조정될 수 있다. 컨벌루션 레이어(200)의 임의의 초기화 상태는, 필터의 가중치 값 등이 특정 값으로 미리 세팅되지 않은 것을 가리킬 수 있다. 초기 컨벌루션 레이어의 필터의 가중치 값은 임의의 값으로 초기화 될 수 있다. 예를 들어, 가중치 값은 특정 확률 분포로부터 임의 추출될 수 있다.
객체 위치 인식 모델(106)은 컨벌루션 신경망을 트레이닝 시키기 위하여, 객체 분류 레이어(320)를 별도로 가질 수 있다. 객체 위치 인식 모델(106)은 별도의 객체 분류기를 가진다는 점에서, 종래의 약한 지도 학습 기반의 객체 인식 모델과는 상이한 구조를 가진다. 종래의 구조에 관하여, 도 7을 참조하여 후술한다.
컨벌루션 레이어(220)가 충분히 트레이닝 되면, 객체 위치 인식 레이어(340)에서 객체 분류 태스크를 수행할 수 있다. 객체 위치 인식 레이어(340)는 충분히 트레이닝 된 컨벌루션 레이어(220)에서 추출된 특징 맵을 입력 받을 수 있다.
객체 위치 인식 레이어(340)는 특징 맵을 입력 받으면, 객체의 위치 정보를 보존하고 있는 클래스 개수만큼의 스코어 맵(score map)을 추출할 수 있다. 클래스의 개수가 k개라고 하면, k개의 스코어 맵이 추출될 수 있다. 일반적으로, 객체 위치 인식기에서 최종적으로 추출된 k개의 특징 맵을 스코어 맵으로 부른다. 객체 위치 인식 모델(106)은 스코어 맵을 통하여, 객체 위치 정보를 추출할 수 있다.
객체 위치 인식 레이어(340)는 추출된 k개의 스코어 맵은 단일 값(single value)로 맵핑하여, 객체 분류 태스크를 수행할 수 있다. 예를 들어, 객체 위치 인식 레이어(340)는 클래스 별로 추출된 스코어 맵을 하나의 값으로 맵핑하여 k차원의 벡터를 생성함으로써, 특정 데이터가 각 클래스에 속할 확률을 구할 수 있다.
데이터에 대한 클래스 예측 값이 생성되면, 객체 위치 인식 레이어(340)는 이를 라벨링 된 분류 정보와 비교하여, 그 차이를 오류 값으로 연산할 수 있다. 객체 위치 인식 레이어(340)는 연산된 오류 값을 역전파 하여, 컨벌루션 레이어(220)를 트레이닝 시킬 수 있다. 컨벌루션 레이어(220)가 충분히 트레이닝 되면, 위치 인식 레이어(340)로부터 객체의 위치를 결정할 수 있게 된다.
객체 위치 인식 모델(106)에 따를 때, 컨벌루션 레이어(220)는 목적 태스크의 대상 데이터 셋을 이용하여, 직접 트레이닝 되므로, 목적 태스크에 대한 학습 속도가 빠르고, 정확도가 높다. 종래의 약한 지도 학습 기반의 종래 객체 위치 인식 모델과 비교했을 때, 성능이 향상되었음은 실험을 통해 증명되었다. 실험 데이터는 도 16 내지 도 20을 통해 설명한다.
이하, 도 9를 참조하여, 종래에 약한 지도 학습 환경에서 이용되던, 객체 위치 인식 모델을 설명한다. 도 9는 약한 지도 학습 기반의 종래 객체 위치 인식 모델을 설명하기 위한 도면이다.
종래 객체 위치 인식 모델(108)은 분류 정보가 라벨링 된 데이터 셋(10), 컨벌루션 레이어(200), 위치 인식 레이어(340)를 포함할 수 있다. 도 8의 예시와 동일하게, 주어진 정보는 분류 정보이고 목적 태스크는 객체 위치 인식이다.
종래 객체 위치 인식 모델(108)은 목적 태스크를 수행하기 위한 위치 인식 레이어(340)와 미리 학습된 네트워크를 이용하여 미세-조정된 컨벌루션 레이어(200)를 포함할 수 있다.
미리 학습된 네트워크를 이용하는 이유는, 약한 지도 학습 환경에서 데이터에 대한 객체 분류 정보만이 주어지고, 객체 위치 정보는 주어지지 않았기 때문이다. 종래 객체 위치 인식 모델(108)은 객체 위치 정보가 주어지지 않았으므로, 객체 위치 인식 태스크를 위한 학습을 스스로 수행하기 어렵다.따라서 다른 데이터 셋을 이용하여 미리 학습된 네트워크를 컨벌루션 레이어(200)에 적용하고, 이를 변형하여 사용하는 것이다.
위치 인식 레이어(340)은 미세-조정된 컨벌루션 레이어(200)를 이용하여,주어진 정보인 분류 정보와 대응되는 객체 분류 작업을 수행한다. 객체 분류 작업을 통해 생성된 아웃풋과 주어진 분류 정보를 비교하여, 오류 값을 연산하고, 오류를 역전파하여 컨벌루션 레이어(200)를 갱신할 수 있다.
종래 객체 위치 인식 모델(108)은 이러한 과정을 통해 컨벌루션 레이어(200)를 트레이닝 시켜 오류 값을 낮추고, 정확도를 높일 수 있다. 종래 객체 위치 인식 모델(108)의 객체 분류 태스크가 일정 수준 이상의 정확도를 가질 때, 종래 객체 위치 인식 모델(108)은 객체의 위치 정보를 결정할 수 있다.
따라서, 종래 객체 위치 인식 모델(108)을 통해서도 목적 태스크를 수행할 수 있지만, 학습 속도의 면에서 확연한 차이를 보인다. 실험을 통해 검증한 결과, 본 발명의 일 실시예에 따른 객체 위치 인식 모델(106)에 비하여 오류 값이 감소하는 속도가 더 느리고, 정확도가 상승하는 속도도 더 느리다.
그 이유는 종래 객체 위치 인식 모델(108)의 객체 위치 인식 레이어(340)가 이용하는 초기 컨벌루션 신경망이, 객체 위치 인식 대상의 데이터 셋을 통해 학습된 것이 아니라, 다른 데이터 셋에 의해 미리 학습된 네트워크가 적용된 것이기 때문이다.
객체 위치 정보가 데이터 셋과 함께 주어진다면, 종래 객체 위치 인식 모델(108)은 그 정보를 이용하여 컨벌루션 레이어를 스스로 학습할 수 있을 것이다. 그러나 약한 지도 학습 환경에서는 주어지는 데이터가 제한되므로, 종래 객체 위치 인식 모델(108)은 주어 지지 않은 정보를 추출하는 태스크에 대하여 스스로 학습하는 방법을 이용할 수 없었다.
따라서 대량의 다른 데이터 셋에 의하여 미리 학습된 네트워크를 전이 학습(transfer learning)하는 방법이 이용되었다. 대량의 다른 데이터 셋이란 ImageNet(1000여개의 카테고리를 갖는 약 120만개의 정답이 있는 고해상도 영상), LabelME(수백에서 수천 개의 완전히 분할된 영상)와 같은 정답이 주어진 대량의 일반 이미지(general image)를 포함할 수 있다.
종래 객체 위치 인식 모델(108)은 이러한 대량의 데이터 셋을 이용하여 미리 학습된 컨벌루션 네트워크를, 목적하는 태스크에 대한 고정된 특징 추출기나 컨벌루션 네트워크의 초기값으로 이용하였다. 이러한 과정을 컨벌루션 네트워크를 미세-조정(fine-tuning)한다고 표현한다.
하지만 이러한 일반 이미지를 이용하여 미리 학습된 네트워크를 이용하기 어려운 분야가 있다. 분석할 이미지 또는 영상이 일반 이미지와 특성이 매우 다른 경우에는, 상기 미리 학습된 네트워크를 이용할 수 없다. 일반 이미지의 관심 영역(ROI, Rigion of interest)과 특수 이미지의 관심 영역은 완전히 상이할 수 있기 때문이다.
이 경우에, 특수 이미지에 대한 정답이 주어진 대량의 데이터 셋을 만들고, 그 데이터 셋을 이용하여 학습하는 대안이 제시될 수 있다. 그러나 그러한 대량의 데이터 셋을 얻을 수 없는 분야의 데이터가 있다. 앞서 말했듯이, 각각의 데이터에 대한 정답 정보를 라벨링하는 일은 매우 소모적이다. 또한, 어떤 데이터의 경우에는, 개인의 프라이버시가 문제될 수 도 있다.
예를 들어, 의료 분야에서 X-ray 이미지를 통해 암을 진단하고, 암의 원인이 되는 병변의 위치를 찾아내는 태스크를 수행하고자 한다고 가정하자. X-ray 이미지와 일반 이미지의 특징은 매우 상이하므로, 일반 이미지 셋을 통해 미리 학습된 네트워크를 이용할 수 없을 것이고, 만약 사용하더라도, 학습 효율과 정확도가 매우 떨어질 것이다.
미리 학습된 네트워크를 이용할 수 없다면, X-ray 이미지에 대한 정답의 주어진 대량의 데이터 셋이 필요할 것이다. 즉, X-ray 이미지에 암의 유무와 암의 위치가 라벨링되어야 한다. 라벨링 작업은 이는 수 천, 수 만장의 X-ray 이미지에 대하여, 전문 의료원에 의해 이루어져야 한다. 따라서 라벨링 작업에 매우 많은 시간과 비용이 소모되게 된다.
게다가, 영상 또는 동영상 데이터로 진단 가능한 질병의 종류는 매우 많다. 또한 각 질병마다 라벨링 되어야 할 정보도 다양할 수 있다. 따라서, 각 질병마다 이러한 데이터 셋을 만드는 일은 불가능한 일에 가깝다.
또한 개인의 프라이버시의 문제도 있다. 개인의 의료 진단 결과가 대규모 데이터 셋으로 구성되어, 여러 개의 모델에 이용된다면, 각 개인에 대한 질병 정보가 노출될 수 있고, 수 많은 개인에 대한 보상도 뒤따라야 할 것이다. 의료 분야에서의 실시예는 도 15를 통해 자세히 후술한다.
본 발명에 따른 기계 학습 장치(100)는 주어진 정보에 대응되는 태스크를 수행하여 컨벌루션 신경망을 트레이닝하고, 그 후에 목적하는 다른 태스크를 수행하여, 컨벌루션 신경망에 대한 트레이닝과 목적 태스크를 수행하게 된다.
이에 따라, 미리 학습된 네트워크를 이용할 필요가 없이, 주어진 데이터 셋에 최적화 되어 학습된 컨벌루션 신경망을 이용하여, 태스크를 수행할 수 있게 되는 효과를 달성할 수 있다. 또한 대량의 데이터 셋을 만드는데 인적, 금전적 자원을 소모하지 않아도 된다.
도 10을 참조하여, 트레이닝 시나리오를 설명한다. 도 10은 본 발명의 몇몇 실시예에서 참조되는, 컨벌루션 신경망에 대한 트레이닝 시나리오를 설명하기 위한 도면이다.
1 단계(stage-1)에서 분류 작업을 수행하면서, 컨벌루션 신경망을 트레이닝 한다. 2 단계(stage-2)에서는, 객체 위치 인식 작업을 위하여, 분류 작업을 통해 충분히 트레이닝 된 컨벌루션 신경망을 전이 학습 방법으로 이용하여, 위치 인식 작업에서 초기 컨벌루션 신경망으로 사용한다. 같은 컨벌루션 신경망을 공유하면서, 스스로 전이 학습이 이루어 진 것과 같은 효과를 달성하게 된다.
정리하면, 종래 기술과 달리 본 발명의 일 실시예에 따른 기계 학습 장치(100)는 미리 학습된 네트워크를 필요로 하지 않으며, 크기가 큰 데이터 셋을 요구하지 않으며, 데이터에 최소 1가지 정보만 주어진다면, 그로부터 다른 작업을 높은 학습 속도와 정확도를 가지고 수행할 수 있다.
도 11은 본 발명의 또 다른 실시예에 따른, 약한 지도 학습 기반의 객체 위치 인식 방법의 순서도이다.
객체 위치 인식 장치(106)는 컨벌루션 신경망을 이용하여, 분류 정보가 주어지고, 객체 위치 정보는 주어지지 않은 데이터 셋에 대한 특징 맵을 추출할 수 있다(S100). 데이터 셋에는 분류 정보가 라벨링 되어 있을 수 있다.
객체 위치 인식 장치(106)는 객체 분류기를 이용하여, 객체 분류 태스크를 수행할 수 있다(S220). 객체 분류기가 객체 분류 태스크를 수행하면, 분류 정보에 대응되는 아웃풋이 생성될 수 있다. 상기 아웃풋은 객체가 각 클래스에 속할 확률 값일 수 있다. 객체 분류기는 상기 아웃풋과 주어진 분류 정보를 비교하여, 오류 값을 연산할 수 있다.
객체 위치 인식 장치(106)는 오류 값이 기 설정된 기준을 만족하는지 여부를 판단할 수 있다(S240). 객체 위치 인식 장치(106)는 오류 값이 기 설정된 기준을 만족하지 못하는 경우, 오류 역전파를 수행하여, 컨벌루션 신경망을 갱신할 수 있다(S260).
앞서, 컨벌루션 신경망의 트레이닝은 오류 값을 줄이는 방향으로 수행된다고 하였다. 단계(S240)에서, 객체 위치 인식 장치(106)는 컨벌루션 신경망이 일정 수준 이상 트레이닝 되었는지 여부를 판단할 수 있다. 연산된 오류 값이 기 설정된 기준을 만족하는 경우, 즉, 기 설정된 값 이하인 경우에는 객체 분류 레이어를 통한 학습이 충분히 수행되었다고 평가할 수 있다. 이 경우에는, 객체 위치 인식기를 이용하여, 객체 분류 태스크 수행을 시작할 수 있다.
객체 위치 인식기에 의한 객체 분류 태스크가 시작되면, 객체 위치 인식 장치(106)는 컨벌루션 신경망을 이용하여, 분류 정보가 주어지고, 객체 위치 정보는 주어지지 않은 데이터 셋에 대한 특징 맵을 추출할 수 있다(S100).
객체 위치 인식 장치(106)는 객체 위치 인식기를 이용하여, 객체 분류 태스크를 수행할 수 있다(S320). 객체 위치 인식 장치(106)가 객체 분류 태스크를 수행하면, 분류 정보에 대응되는 아웃풋이 생성될 수 있다. 상기 아웃풋은 객체가 각 클래스에 속할 확률 값일 수 있다. 상기 아웃풋과 주어진 분류 정보를 비교하여, 오류 값을 연산할 수 있다.
오류 값이 연산되면, 객체 위치 인식 장치(106)는 상기 오류 값이 기 설정된 기준을 만족하는지 여부를 판단할 수 있다(S340). 상기 오류 값이 기 설정된 기준을 만족한다는 것은, 실제 추출된 값과 주어진 정보를 비교한 결과 차이가 작은 것이고, 만족할 만한 정확도가 획득되었다는 것을 가리킬 수 있다.
따라서 객체 위치 인식 장치(106)는 객체 위치 정보를 결정하는 목적 태스크를 수행할 수 있다(S400). 객체 인식기는 클래스의 개수와 동일한 개수의 특징 맵을 생성할 수 있다. 그리고 각 특징 맵은 클래스 별로 객체의 위치 정보를 포함할 수 있다. 클래스 별로 최종 추출된 특징 맵을 스코어 맵이라 칭할 수 있는데, 객체 위치 인식 장치(106)는 해당 데이터가 x 클래스로 분류된 경우, x 클래스의 스코어 맵을 획득하여, 객체 위치를 추출할 수 있게 된다. 비교적 정확한 정확도로 객체 위치가 추출될 수 있게 되면, 객체위치 인식 장치(106)는 추출된 제2 타입 정보를 이용하여, 제2 타입 정보의 최종 값을 결정할 수 있다.
이처럼, 객체 위치 인식기는 객체 분류 태스크를 수행하긴 하지만, 객체 분류 모델과는 상이한 모델이다. 예를 들어, 그 네트워크 레이어의 구조가 상이할 수 있다. 네트워크 구조의 예시는 도 12를 참조하여 후술한다.
만약 오류 값이 기 설정된 기준을 만족하지 못하는 경우라면(S340), 객체 인식 장치(106)는 객체 위치 인식기로부터 연산된 오류를 역전파하여, 컨벌루션 신경망을 트레이닝할 수 있다.
단계(S220, S320)에서, 아웃풋은 객체가 각 클래스에 속할 확률 값일 수 있다. 예를 들어, k개의 클래스가 있고, softmax 함수가 사용된 경우라면, 아웃풋은 특정 데이터가 k개의 클래스에 각각 속할 확률 값이 도출되며, 각 확률을 모두 더하면 1이 된다. 따라서 softmax 함수를 사용하면 정규화(normalization)를 하는 효과를 얻을 수 있다. softmax 함수는 일반적으로, 신경망의 최상위층에 사용하여 분류(Classification)를 위한 함수로 사용된다. 다른 방법으로, sigmoid 함수를 사용할 수 있다.
한편, 단계(260, 270)에서, 객체 위치 인식 장치(106)는 객체 분류기와 객체 위치 인식기로부터 생성된 오류를 역전파하여 컨벌루션 신경망을 트레이닝 하는데, 각각의 오류가 컨벌루션 신경망에 미치는 영향이 다를 수 있다. 특히, 객체 분류기와 객체 위치 인식기의 구조가 상이하여, 오류가 전파되어 미치는 영향에 차이점이 있게 된다. 이하 도 12를 참조하여 설명한다.
도 12는 본 발명의 몇몇 실시예에서 참조되는, 오류 역전파 과정을 설명하기 위한 도면이다.
객체 위치 인식 모델(106)은 컨벌루션 신경망을 구성하는 컨벌루션 레이어 L(500), 객체 분류기를 구성하는 객체 분류 레이어 M(520), 객체 위치 인식기를 구성하는 객체 위치 인식 레이어 N(540)을 포함할 수 있다.
객체 분류 레이어(520)는 완전히 연결된 레이어(fully connected layer)로 구성될 수 있고, 객체 위치 인식 레이어(540)는 클래스 개수의 스코어 맵으로 구성될 수 있다.
객체 분류 레이어 M(520)는 컨벌루션 레이어 L(500)의 모든 노드와 빽빽하게 연결되어 있을 수 있다. 따라서 객체 분류 레이어 M(520)을 통해 오류가 전파되면, 오류가 컨벌루션 레이어 L(500)의 모든 지점에 고르게 전파될 수 있다.
그러나 객체 위치 인식 레이어 N(520)의 경우는 다르다. 객체 위치 인식 레이어 N(520)에서 최종적으로 분류를 수행하기 위하여, 스코어 맵을 하나의 단일 값으로 맵핑할 수 있다. 이 과정에서 이용되는 방법으로 글로벌 풀링(global pooling)이 있다.
풀링은 컨벌루션 신경망에서 수행되는 서브 샘플링 과정이다. 풀링을 통해 특징 맵의 크기를 줄이고, 데이터에서 강한 성질을 갖는 특징을 추출할 수 있게 된다. 글로벌 풀링은 특징 맵 전체 영역에서 한 지점만 선택하거나, 모든 지점의 평균 값을 구하여, 특징 맵을 단일 값으로 맵핑시키는 방법이다.
글로벌 풀링 중 글로벌 맥스 풀링(global max pooling)과 글로벌 에버리지 풀링(global average pooling)이 이용될 수 있다. 글로벌 맥스 풀링은 전체 특징 맵에서 최고 값을 선택하는 방식이고, 글로벌 에버리지 풀링은 전체 특징 맵의 평균 값을 선택하는 방식이다. 도 12의 위치 인식 레이어 N(540)는 글로벌 맥스 풀링이 이용된 경우로 도시되었다.
도 12에 도시된 객체 위치 인식 레이어 N(540)은 글로벌 맥스 풀링을 통해, 노드 k지점이 선택되었다. 이 경우, 위치 인식기를 통해 산출된 오류 값은 노드 k지점을 통해 전파된다. 노드 k지점은 컨벌루션 신경망 레이어 L(500)의 노드 i와 연결되어 있으므로, 노드 i로만 오류가 전파될 수 있다.
따라서, 객체 위치 인식기를 통해 컨벌루션 신경망이 학습 되는 경우, 에러가 특징 맵의 일 부분인 서브 샘플(sub sample)에만 전파되므로, 이미지의 전체 영역의 부분에 대한 학습만이 수행될 수 있다.
충분히 트레이닝 된 컨벌루션 신경망을 통하여 특징 맵이 추출된 것이라면, 찾고자 하는 객체가 위치하는 최적 부분인 서브 샘플에 대하여 에러가 전파될 것이다. 그러나 충분히 트레이닝 되지 않은 컨벌루션 신경망을 통하여 특징 맵이 추출된 것이라면, 객체가 위치하지 않은 서브 샘플에 에러가 전파되고, 그에 대한 학습을 수행하는 결과가 되어, 학습 효율이 크게 감소된다. 객체 위치 인식 레이어의 이러한 특성으로 인하여, 객체 분류 레이어를 통한 학습을 선 수행하는 것이다.
또한 글로벌 에버리지 풀링이 이용된 경우라도, 객체 위치 인식 레이어 N(540)의 모든 지점에 대하여 평균 값이 고르게 전파되어, 글로벌 맥스 풀링이 이용된 경우와 정보량은 비슷하여, 큰 차이가 없다.
종래의 약한 지도 학습 기반의 객체 위치 인식 모델(108)은 객체 위치 인식 레이어(340)만을 이용하여 컨벌루션 레이어(200)를 학습하였다. 다른 데이터를 통해 미리 학습된 네트워크를 이용하여, 일정 수준 이상 트레이닝 된 컨벌루션 레이어(200)를 이용하긴 했지만, 객체 인식 레이어(340)의 구조적 특성으로 인한 학습 효율의 저하 문제가 있었다. 또한 같은 이유로, 종래의 객체 위치 인식 모델(108)은 미리 학습된 네트워크를 적용할 수 없는 분야에서는 이용되기 어려웠다.
그러나 객체 위치 인식 모델(106)은 별도의 학습기 역할을 할 수 있는 객체 분류기를 추가함으로써, 미리 학습된 네트워크를 이용하지 않고, 임의의 초기 값을 가지는 컨벌루션 네트워크를 트레이닝 시킬 수 있다. 또한 학습 속도도 매우 높다.
한편, 객체 위치 인식 모델(106)은 객체 분류 레이어(320)의 객체 분류 태스크와 객체 위치 인식 레이어(340)의 객체 분류 태스크를 동시에 수행할 수도 있는데, 이하 도 13을 통해 설명한다.
도 13은 본 발명의 몇몇 실시예에서 참조되는, 약한 지도 학습 기반의 객체 위치 인식 모델을 추가 설명하기 위한 도면이다.
객체 위치 인식 모델(106)은 데이터 셋(10), 컨벌루션 레이어(220), 객체 분류 레이어(320), 객체 위치 인식 레이어(340)를 포함할 수 있다. 컨벌루션 레이어(220)는 컨벌루션 신경망이 적용된 네트워크 레이어이고, 객체 분류 레이어(320)는 객체 분류를 수행하는 네트워크 레이어이며, 객체 위치 인식 레이어(340)는 객체 분류를 수행하고, 객체 분류를 수행할 때 객체 위치 정보를 추출할 수 있는 네트워크 레이어이다.
도 8에서와 마찬가지로, 객체 위치 인식 모델(106)의 목적 태스크는 객체의 위치를 인식하는 태스크이고, 주어진 정보는 분류 정보이다. 주어진 정보는 분류 정보뿐 이므로, 객체 분류 레이어(320)와 객체 위치 인식 레이어(340)는 객체 분류를 수행하여 클래스 확률 값을 계산하고, 주어진 분류 정보와 비교하여 오류 값을 생성할 수 있다. 그리고 그 오류 값을 통하여, 컨벌루션 레이어(220)를 트레이닝 시킬 수 있다.
객체 분류 레이어(320)의 태스크와 객체 위치 인식 레이어(340)의 태스크는 동시에 수행될 수 있다. 이때에는, 두 레이어로부터 산출된 오류가 역전파 될 때, 상대적 중요도를 고려하여 가중치를 적용하면 된다.
객체 분류 레이어(320)로부터 연산된 오류를 제1 오류라 하고, 객체 위치 인식 레이어(340)로부터 연산된 오류를 제2 오류라고 하자. 객체 위치 인식 모델(106)은 제1 오류 값과 제2 오류 값 각각에 가중치를 적용하여, 제3 오류 값을 연산할 수 있다. 가중치를 통해 각 오류 값에 상대적 중요도를 반영할 수 있다.
학습 초기 단계에서는, 제1 오류에 더 큰 가중치를 적용하여, 객체 분류 레이어(320)을 통한 트레이닝에 더 큰 비중을 둘 수 있다. 객체 분류 레이어(320)를 통해 컨벌루션 레이어가 갱신되면서, 컨벌루션 레이어는 더 좋은 가중치, 바이어스 값을 갖도록 학습될 수 있다.
학습 초기 단계에, 제2 오류에 더 작은 가중치를 적용하는 이유는, 객체 위치 인식 레이어(340)가 객체가 존재하지 않는 서브 샘플 영역에 빠지는(falling) 것을 방지하기 위함이다.
도 14는 본 발명의 본 발명의 또 다른 실시예에 따른, 객체 분류기와 객체 인식기에 의한 트레이닝이 동시에 수행되는, 약한 지도 학습 기반의 객체 위치 인식 방법의 순서도이다.
객체 위치 인식 장치(106)는 컨벌루션 신경망을 이용하여, 객체 분류 정보가 주어지고, 객체 위치 정보는 주어지지 않은 데이터 셋에 대한 특징 맵을 추출할 수 있다(S100).
객체 위치 인식 장치(106)는 객체 분류기를 이용하여, 객체 분류 태스크를 수행하여 제1 오류 값을 연산할 수 있고(S220), 객체 위치 인식기를 이용하여, 객체 분류 태스크를 수행하여 제2 오류 값을 연산할 수 있다(S320).
객체 위치 인식 장치(106)는 연산된 오류 값이 기 설정된 기준을 만족하는지 여부를 판단할 수 있다(S500). 단계(S500)에서, 객체 위치 인식 장치(106)는 목적 태스크가 수행될 수 있을 정도로 컨벌루션 신경망이 충분히 트레이닝 되었는지 여부를 판단할 수 있다.
상기 기 설정된 기준은 특정 수치의 제1 오류 값으로 지정되거나, 특정 수치의 제2 오류 값으로 지정될 수 있다. 또한 상기 기 설정된 기준 값은 제1 오류 값과 제2 오류 값이 조합된 값으로 지정될 수 있다.
객체 위치 인식 장치(106)는 연산된 오류 값이 기 설정된 기준을 만족하는 경우, 객체 위치 정보를 결정할 수 있다(S400). 즉, 객체 위치 인식 장치(106)의 목적 태스크인 객체 위치 정보 결정 태스크가 수행된다.
반면, 객체 위치 인식 장치(106)는 연산된 오류 값이 기 설정된 기준을 만족하지 못하는 경우, 오류를 역전파 하여 컨벌루션 신경망을 트레이닝할 수 있다(S520).
단계(S520)에서, 객체 위치 인식 장치(106)는 제1 오류 값과 제2 오류 값을 동시에 이용하여 컨벌루션 신경망을 트레이닝할 수 있다. 또한 트레이닝의 단계마다, 객체 분류기와 객체 위치 인식기의 상대적 중요도를 반영할 수 있다.
예를 들어, 제1 오류 값과 제2 오류 값에 가중치를 적용하여, 제3 오류 값을 연산할 수 있다. 트레이닝 초기 단계에서, 객체 위치 인식 장치(106)는 제1 오류 값에 더 큰 가중치를 적용할 수 있다. 객체 분류기를 통한 학습이 더 강하게 이루어질 수 있도록 하기 위함이다. 객체 위치 인식 장치(106)는 트레이닝이 진행될수록, 제2 오류 값에 적용되는 가중치 크게 적용할 수 있다.
이하, 도 15 내지 도 20을 참조하여, 객체 위치 인식 장치(106)가 의료 분야에 적용된 적용예를 설명한다. 객체 위치 인식 장치(106)를 통해, 병변의 유무 정보만이 주어진 약한 지도 학습 환경에서, 병변의 위치를 인식하는 목적 태스크를 수행할 수 있다.
도 15는 본 발명의 또 다른 실시예에 따른 객체 위치 인식 장치가 의료 분야에 적용된 경우를 설명하기 위한 순서도이다.
도 15를 참조하면, 객체 위치 인식 장치(106)는 컨벌루션 신경망을 이용하여, 병변 유무정보가 주어지고 병변 위치 정보는 주어지지 않은 의료 분야의 데이터 셋에 대한 특징 맵을 추출할 수 있다(S101).
객체 위치 인식 장치(106)는 상기 의료 분야의 데이터 셋에 대한 학습을 위하여, 객체 분류기를 이용하여 컨벌루션 네트워크를 트레이닝 할 수 있고(S201), 객체 위치 인식기를 이용하여 컨벌루션 네트워크를 트레이닝 할 수 있다(S301). 컨벌루션 네트워크가 상기 의료 분야의 데이터 셋에 대하여 충분히 트레이닝되면, 객체 위치 인식 장치(106)는 병변의 위치 정보를 결정할 수 있다(S400). 단계(S400)의 병변 위치 정보 결정 작업이 목적 태스크가 될 수 있다.
이러한 목적 태스크는 일반적으로 영상 의학과 전문의에 의해 수행되는 작업이다. 영상 의학과 전문의는 의료 데이터를 육안으로 확인하고, 습득한 지식을 이용하여, 병변의 위치를 찾아낸다. 예를 들어, X-ray 이미지 등의 스크리닝 이미지를 통해 병변의 유무와 위치를 진단할 때, 인간의 경험에 의해 획득된 지식을 이용한다. 영상 의학과 전문의는 병변의 모양, 패턴 등을 미리 습득하여, 그 모양과 패턴을 가진 병변을 찾아낸다.
따라서 이와 같은 영상 의학 진단 분야에서, 인간이 아직 발견하지 못한 병변의 모양, 패턴 등이 존재할 수 있고, 사람의 육안으로 식별 불가능한 크기의 병변이 존재할 수 있다. 그 때문에 오진의 확률이 존재한다. 객체 위치 인식 장치(106)를 이용한 병변 위치 인식 태스크를 통해, 기존의 진단 방법의 이러한 한계를 극복하는 목적 및 효과를 달성할 수 있다.
단계(S101)에서, 의료 분야 데이터 셋에 대하여 주어지는 병변 유무 정보는 정상(normal) 또는 비정상(abnormal)에 해당하는 클래스 정답 정보일 수 있다. 병변 위치 정보는 목적 태스크 수행(S401)을 통해 얻어낼 정보이면서, 의료 분야 데이터 셋에 대하여 주어지지 않은 정보이다.
단계(S201, S301)에서, 객체 위치 인식 장치(106)는 객체 분류기와 객체 인식기를 이용하여 병변 유무 분류 태스크를 수행하고, 각 의료 분야 데이터가 정상 또는 비정상일 확률 값을 아웃풋으로 생성할 수 있다.
이렇게 아웃풋이 생성되면, 객체 분류기 및 객체 인식기는 생성된 아웃풋과 주어진 병변 유무 정보와 비교하여 오류 값을 연산할 수 있다. 객체 위치 인식 장치(106)는 오류 값을 역전파하여 컨벌루션 네트워크를 트레이닝 할 수 있다.
앞서 설명한 바와 같이, 객체 분류기를 이용한 트레이닝이 먼저 수행되고, 객체 위치 인식기를 이용한 트레이닝이 나중에 수행될 수 있다. 또한 객체 분류기를 이용한 트레이닝과 객체 위치 인식기를 이용한 트레이닝은 동시에 수행될 수 있다.
이와 같은 과정을 통해, 컨벌루션 신경망이 주어진 의료 분야의 데이터 셋에 대하여 직접 트레이닝 되는 효과가 있다. 병변 위치를 추출할 대상 데이터에 대하여 직접 트레이닝 되므로, 목적 태스크를 수행할 때의 정확도가 높은 효과가 있다.
또한 컨벌루션 신경망이 트레이닝 됨에 따라, 병변의 유무 및 위치를 구별하기 위하여 필요한 좋은 특징 맵이 추출될 수 있다. 특히, 병변의 유무 만이 라벨링 된 데이터에 대하여 학습하여, 병변의 위치를 찾아내게 되므로, 객체 위치 인식 장치(106)는 병변의 모양, 패턴 등을 스스로 학습하게 된다.
따라서 기계 학습이 반복되면서, 객체 위치 인식 장치(106)는 현재 인간에게 알려지지 않은 패턴을 스스로 발견할 수 있고, 인간이 육안으로 발견하지 못하는 패턴도 식별해 낼 수 있다.
이러한 점에서, 약한 지도 학습 방법을 의료 분야에 적용한 것은 큰 의미가 있다. 현재 인간의 지식을 뛰어 넘는 의학 지식을, 기계가 획득할 가능성이 존재하기 때문이다. 그리고 이러한 가능성을 실현하는 것이, 본 발명의 일 실시예에 따른 객체 위치 인식 장치(106)의 중요한 목표 중 하나이기도 하다.
기존의 의료 분야의 기계 학습은, 인간이 미리 병변의 위치를 라벨링 한 데이터 셋을 대상으로, 병변 패턴을 학습하는 방법으로 수행되었다. 따라서 종래의 기계 학습 방법은 이미 인간이 발견한 패턴을 학습하는 목적 및 효과를 가지는데 불과했다. 그러나 본 발명의 일 실시예에 따른 객체 위치 인식 장치(106)는 병변 유무 정보 만을 알고 있고, 병변의 패턴은 스스로 학습하기 때문에, 인간이 이미 발견한 패턴 정보에 종속되지 않는다. 이 때문에, 객체 위치 인식 장치(106)가 사람이 이미 알고 있는 병변의 패턴과 다른 패턴을 스스로 발견할 가능성이 존재하는 것이다.
또한 객체 위치 인식 장치(106)는 대량의 라벨링 된 데이터 셋을 요구하지 않고, 각각의 데이터에 대하여 많은 종류의 정보를 필요로 하지 않는다. 객체 위치 인식 장치(106)는 주어진 데이터 셋에 대하여 스스로 학습이 가능하며, 약한 지도 학습 방법을 이용하여, 주어진 정보로 주어지지 않은 정보를 추출해낼 수 있기 때문이다.
또한 객체 위치 인식 장치(106)는 의료 분야의 데이터에 대한 개인의 프라이버시 문제도 해결할 수 있다. 예를 들어, 의료 분야 데이터는 병원의 데이터 베이스 내에 존재하므로, 하나의 병원을 하나의 노드로 하여, 여러 병원의 데이터 셋에 대한 학습 모델이 구축될 수 있다. 이 경우, 의료 데이터를 외부로 유출할 필요가 없고, 학습의 결과만 외부로 송신될 수 있으면 족하므로, 개인 정보 사용 및 유출과 관련된 이슈가 해결될 수 있다.
도 16은 실제 실험예에 기반한, 객체 인식 장치의 성능 평가 표이다.
실제 실험은 객체 위치 인식 장치(106)가 흉부의 X-ray 이미지 데이터 셋을 대상으로, 결핵의 위치를 판단하는 태스크를 수행하도록 설계되었다. 각 X-ray 이미지에 결핵의 유무에 대한 정보는 라벨링 된다. 객체 분류기와 객체 위치 인식기는 모두 softmax의 lossfunction을 사용하였다.
테스트 셋(test set)은 총 두 가지 Shenzhen set, MC set이며, 상위 두 개의 MaxPool, AvePool은 종래의 객체 위치 인식 모델을 기반으로, 각각 맥스 풀링과 에버리지 풀링이 적용된 결과 값이다. 하위 두개의 STL+MaxPool, STL+AvePool은 본 발명의 일 실시예에 따른 객체 위치 인식 모델을 기반으로, 각각 맥스 풀링과 에버리지 풀링이 적용된 결과 값이다.
단, 본 실험예에서 이용된 종래의 객체 위치 인식 모델은 상술한 모델(108)과는 상이하다. 모델(108)과 달리 미리 학습된 네트워크를 이용하지 않고, 임의의 초기화 상태의 컨벌루션 신경망을 이용하였다. 따라서, 본 실험예를 통해, 같은 초기화 상태의 컨벌루션 신경망을 이용한 환경에서, 현재 모델(106)이 학습 장치로서 분류기를 추가함에 따른 효과를 증명할 수 있다.
분류 결과(Classification)와 위치 인식 결과(Localization)를 살펴보면, 두 가지 태스크의 정확도가 모두 종래의 모델이 비해 개선된 것을 알 수 있다. 특히, 목적 태스크인 위치 인식 태스크의 정확도가 큰 차이로 증가했다는 점에서, 본 발명의 효과가 증명될 수 있다.
도 17 및 18은 실제 실험예에 기반한, 객체 인식 장치의 성능을 그래프로 나타낸 도면이다.
도 17의 그래프는 트레이닝이 진행됨에 따라, 기존 방식과 본 발명의 방식의 오류 값의 변화 과정을 나타낸 것이며, 도 18의 그래프는 트레이닝이 진행됨에 따라, 기존 방식과 본 발명의 방식의 객체 위치 인식의 측정된 정확도의 변화 과정을 나타낸 것이다.
실선은 본 발명의 방식에 에버리지 풀링이 적용된 경우를 나타내고, 점선은 기존의 방식에 에버리지 풀링이 적용된 경우를 나타낸다.
본 발명의 방식에 의한 객체 인식 장치의 오류 감소 속도나 정확도 향상 속도가 종래의 방식에 의한 객체 인식 장치보다 우수한 것을 알 수 있다.
도 19 및 도 20은 실제 객체 위치 인식이 수행된 결과 이미지를 나타내는 도면이다.
도 19 및 도 20에 도시된 이미지는 비 정상 환자에 대한 이미지, 즉 병변이 존재하는 이미지이며, 표시된 숫자는 병변이 존재할 확률 값이며, 표시된 영역은 병변의 위치가 존재하는 곳이다. 도 19는 결핵 환자의 흉부를 촬영한 X-ray 이미지이며, 도 20은 유방암 환자에게 유방 조영술을 수행한 X-ray 이미지이다.
a영역의 데이터는 객체 위치 인식 결과를 평가하기 위하여, 실제 영상 의학 전문의로부터 직접 병변 위치를 제공 받은 데이터이고, b영역의 데이터는 종래의 객체 위치 인식 모델로부터 추출한 결과 데이터이며, c영역의 데이터는 본 발명의 객체 위치 인식 모델로부터 추출한 결과 데이터이다.
b영역과 c영역의 이미지 모두, 병변의 위치로 결정된 영역이 c영역의 전문의로부터 병변 위치를 제공받은 데이터에 표시된 병변의 위치 영역이 대략적으로 일치한다. 그러나 c영역의 이미지에 표시된 결정 영역이 병변의 위치에 더 집중되어 있고, 확률 수치도 매우 높게 평가되었다.
따라서 개선된 정확도를 시각적으로 확인할 수 있다. 또한 c영역의 이미지를 살펴보면, 수치 표시가 되지 않은 위치 표시 영역이 존재한다. 해당 부분은 병변의 유무 판단에는 이용되지 않은 영역임에도 불구하고, a영역의 이미지와 비교했을 때, 병변의 위치가 정확히 추출되었음을 알 수 있다. 따라서, 본 발명의 객체 위치 인식 장치가 다수 개의 병변의 위치를 추출할 수 있다는 효과도 가지게 됨을 알 수 있다.
지금까지 설명된 본 발명의 실시예에 따른 방법들은 컴퓨터가 읽을 수 있는 코드로 구현된 컴퓨터프로그램의 실행에 의하여 수행될 수 있다. 상기 컴퓨터프로그램은 인터넷 등의 네트워크를 통하여 제1 컴퓨팅 장치로부터 제2 컴퓨팅 장치에 전송되어 상기 제2 컴퓨팅 장치에 설치될 수 있고, 이로써 상기 제2 컴퓨팅 장치에서 사용될 수 있다. 상기 제1 컴퓨팅 장치 및 상기 제2 컴퓨팅 장치는, 서버 장치, 클라우드 서비스를 위한 서버 풀에 속한 물리 서버, 데스크탑 피씨와 같은 고정식 컴퓨팅 장치를 모두 포함한다.
이상 첨부된 도면을 참조하여 본 발명의 실시예들을 설명하였지만, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 본 발명이 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다.
Claims (11)
- 기계 학습 장치에 의해 수행되는 약한 지도 학습(weakly supervised learning) 기반의 기계 학습 방법에 있어서,
컨벌루션 신경망(convolutional neural networks)을 이용하여, 제1 타입 정보가 주어지고, 제2 타입 정보는 주어지지 않은 데이터 셋(data set)에 대한 특징 맵(feature map)을 추출하는 단계;
제1 모델을 이용하여, 상기 제1 타입 정보에 대응되는 태스크를 수행하여 연산된 제1 오류 값을 역전파 하여 상기 컨벌루션 신경망을 갱신하는 단계; 및
상기 제1 모델과 상이한 제2 모델을 이용하여, 상기 제1 타입 정보에 대응되는 태스크를 수행하여 연산된 제2 오류 값을 역 전파하여 상기 컨벌루션 신경망을 갱신하는 단계를 포함하되,
상기 제2 모델을 이용하여 상기 제1 타입 정보에 대응되는 태스크를 수행할 때, 상기 제2 타입 정보를 추출하는,
약한 지도 학습 기반의 기계 학습 방법. - 제1 항에 있어서,
상기 컨벌루션 신경망의 필터(filter)의 가중치 값은 임의의 값으로 초기화 되는 것인,
약한 지도 학습 기반의 기계 학습 방법. - 제1 항에 있어서,
상기 제1 타입 정보에 대응되는 태스크를 수행하여 연산된 제1 오류 값을 역전파 하여 상기 컨벌루션 신경망을 갱신하는 단계는,
상기 제1 오류 값이 기 정해진 기준 값을 만족하는지 여부를 판단하는 단계를 포함하고,
상기 제1 오류 값이 기 정해진 기준을 만족하는 경우에만, 상기 제1 타입 정보에 대응되는 태스크를 수행하여 연산된 제2 오류 값을 역 전파하여 상기 컨벌루션 신경망을 갱신하는 단계를 포함하는,
약한 지도 학습 기반의 기계 학습 방법. - 제1 항에 있어서,
상기 제2 모델로부터 상기 데이터 셋에 대한 상기 제2 타입 정보를 결정하는 단계를 더 포함하는,
약한 지도 학습 기반의 기계 학습 방법. - 제4 항에 있어서,
상기 제1 타입 정보에 대응되는 태스크를 수행하여 연산된 제2 오류 값을 역 전파하여 상기 컨벌루션 신경망을 갱신하는 단계는,
상기 제2 오류 값이 기 정해진 기준 값을 만족하는지 여부를 판단하는 단계를 포함하고,
상기 제2 오류 값이 기 정해진 기준 값을 만족하는 경우에만, 상기 제2 모델로부터 상기 데이터 셋에 대한 상기 제2 타입 정보를 결정하는 단계를 포함하는,
약한 지도 학습 기반의 기계 학습 방법. - 기계 학습 장치에 의해 수행되는 약한 지도 학습 기반의 기계 학습 방법에 있어서,
컨벌루션 신경망을 이용하여, 제1 타입 정보가 주어지고, 제2 타입 정보는 주어지지 않은 데이터 셋에 대한 특징 맵을 추출하는 단계;
제1 모델을 이용하여, 상기 제1 타입 정보에 대응되는 태스크를 수행하여 제1 오류 값을 연산하는 단계;
상기 제1 모델과 상이한 제2 모델을 이용하여, 상기 제1 타입 정보에 대응되는 태스크를 수행하여 제2 오류 값을 연산하는 단계;
상기 제1 오류 값 및 상기 제2 오류 값 각각에 가중치를 적용하여, 제3 오류 값을 연산하는 단계; 및
상기 제3 오류 값을 역전파하여, 상기 컨벌루션 신경망을 갱신하는 단계를 포함하되,
상기 제2 모델을 이용하여 상기 제1 타입 정보에 대응되는 태스크를 수행할 때, 상기 제2 타입 정보를 추출하는,
약한 지도 학습 기반의 기계 학습 방법. - 제6 항에 있어서,
상기 제1 모델과 상기 제2 모델의 상대적인 중요도를 반영하기 위하여, 상기 가중치를 조정하는 단계를 더 포함하는,
약한 지도 학습 기반의 기계 학습 방법. - 객체 위치 인식 장치에 의해 수행되는, 약한 지도 학습 기반의 객체 위치 인식 방법에 있어서,
컨벌루션 신경망을 이용하여, 객체 분류 정보가 주어지고, 객체 위치 정보는 주어지지 않은 데이터 셋에 대한 특징 맵을 추출하는 단계;
객체 분류기를 이용하여, 객체 분류 태스크를 수행하여 연산된 제1 오류 값을 역전파하여 상기 컨벌루션 신경망을 갱신하는 단계; 및
객체 위치 인식기를 이용하여, 상기 객체 분류 태스크를 수행하여 연산된 제2 오류 값을 역전파하여 상기 컨벌루션 신경망을 갱신하는 단계를 포함하되,
상기 객체 위치 인식기를 이용하여, 상기 객체 분류 태스크를 수행할 때, 상기 객체 위치 정보를 추출하는,
약한 지도 학습 기반의 객체 위치 인식 방법. - 제8 항에 있어서,
상기 객체 분류 정보는 병변의 유무에 대한 정보이고, 상기 객체 위치 정보는 병변의 위치 정보인,
약한 지도 학습 기반의 객체 위치 인식 방법. - 하나 이상의 프로세서;
상기 프로세서에 의하여 수행되는 컴퓨터 프로그램을 로드하는 메모리; 및
스토리지를 포함하되,
상기 컴퓨터 프로그램은,
컨벌루션 신경망을 이용하여, 제1 타입 정보가 주어지고, 제2 타입 정보는 주어지지 않은 데이터 셋에 대한 특징 맵을 추출하는 특징 맵 추출 오퍼레이션;
제1 모델을 이용하여, 상기 제1 타입 정보에 대응되는 태스크를 수행하여 연산된 제1 오류 값을 역전파 하여 상기 컨벌루션 신경망을 갱신하는 제1 학습 오퍼레이션; 및
상기 제1 모델과 상이한 제2 모델을 이용하여, 상기 제1 타입 정보에 대응되는 태스크를 수행하여 연산된 제2 오류 값을 역 전파하여 상기 컨벌루션 신경망을 갱신하는 제2 학습 오퍼레이션을 포함하되,
상기 제2 학습 오퍼레이션은 상기 제2 모델을 이용하여 상기 제1 타입 정보에 대응되는 태스크를 수행할 때, 상기 제2 타입 정보를 추출하는,
약한 지도 학습 기반의 기계 학습 장치. - 컴퓨팅 장치와 결합하여,
약한 지도 학습 기반의 기계 학습 방법을 실행시키기 위한 컴퓨터 프로그램에 있어서,
컨벌루션 신경망을 이용하여, 제1 타입 정보가 주어지고, 제2 타입 정보는 주어지지 않은 데이터 셋에 대한 특징 맵을 추출하는 단계;
제1 모델을 이용하여, 상기 제1 타입 정보에 대응되는 태스크를 수행하여 연산된 제1 오류 값을 역전파 하여 상기 컨벌루션 신경망을 갱신하는 단계; 및
상기 제1 모델과 상이한 제2 모델을 이용하여, 상기 제1 타입 정보에 대응되는 태스크를 수행하여 연산된 제2 오류 값을 역 전파하여 상기 컨벌루션 신경망을 갱신하는 단계를 실행 시키기 위하여 기록매체에 저장되되,
상기 제2 모델을 이용하여 상기 제1 타입 정보에 대응되는 태스크를 수행할 때, 상기 제2 타입 정보를 추출하는,
컴퓨터 프로그램.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/378,001 US11200483B2 (en) | 2016-08-30 | 2016-12-13 | Machine learning method and apparatus based on weakly supervised learning |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR20160111111 | 2016-08-30 | ||
KR1020160111111 | 2016-08-30 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20180025093A true KR20180025093A (ko) | 2018-03-08 |
KR101908680B1 KR101908680B1 (ko) | 2018-10-17 |
Family
ID=61725913
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020160156041A KR101908680B1 (ko) | 2016-08-30 | 2016-11-22 | 약한 지도 학습 기반의 기계 학습 방법 및 그 장치 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101908680B1 (ko) |
Cited By (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101977067B1 (ko) * | 2018-08-24 | 2019-05-10 | 주식회사 뷰노 | 심층 신경망 기반 특징 추출을 통하여 진단 맵을 재구축하는 방법 및 이를 이용한 장치 |
KR20190087351A (ko) | 2019-07-05 | 2019-07-24 | 엘지전자 주식회사 | 머신 러닝 시스템, 방법 및 장치 |
KR102029852B1 (ko) * | 2019-04-09 | 2019-10-08 | 세종대학교 산학협력단 | 환경에 따라 신경망 모델을 선택하는 객체 인식 장치 및 그 방법 |
KR102015224B1 (ko) * | 2018-09-18 | 2019-10-21 | (주)제이엘케이인스펙션 | 딥러닝 기반의 뇌출혈 및 뇌종양 병변 진단 방법 및 장치 |
WO2019208869A1 (ko) * | 2018-04-27 | 2019-10-31 | 연세대학교 산학협력단 | 학습을 이용한 얼굴 특징점 검출 방법 및 장치 |
CN110879962A (zh) * | 2018-09-05 | 2020-03-13 | 斯特拉德视觉公司 | 利用多个视频帧优化cnn参数的方法和装置 |
KR20200048474A (ko) * | 2018-10-30 | 2020-05-08 | 삼성에스디에스 주식회사 | 전이 학습을 위한 기반 모델 결정 방법 및 그 방법을 지원하는 장치 |
KR20200075074A (ko) * | 2018-12-07 | 2020-06-26 | 서울대학교산학협력단 | 의료 영상 분획 딥러닝 모델 생성 장치 및 방법과, 그에 따라 생성된 의료 영상 분획 딥러닝 모델 |
KR102132375B1 (ko) * | 2019-07-05 | 2020-07-09 | 한국과학기술원 | 딥 러닝 모델을 활용한 영상 진단 장치 및 그 방법 |
KR102143192B1 (ko) * | 2019-11-12 | 2020-08-10 | 주식회사 루닛 | 신경망 학습 방법 및 그 장치 |
CN111612034A (zh) * | 2020-04-15 | 2020-09-01 | 中国科学院上海微***与信息技术研究所 | 一种对象识别模型的确定方法、装置、电子设备及存储介质 |
KR20200134692A (ko) | 2019-05-23 | 2020-12-02 | 삼성에스디에스 주식회사 | 부분 지도 학습 장치 및 방법 |
KR102236615B1 (ko) * | 2020-07-31 | 2021-04-06 | 주식회사 웨이센 | 복합 특성 분류와 공통 국소화를 위한 신경망 모델의 학습 방법 및 장치 |
WO2021066275A1 (ko) * | 2019-10-01 | 2021-04-08 | 삼성전자주식회사 | 전자 장치 및 그 제어 방법 |
KR20210104299A (ko) * | 2020-02-17 | 2021-08-25 | 한국전자통신연구원 | 영상 객체 속성 분류 장치 및 방법 |
JPWO2020054188A1 (ja) * | 2018-09-14 | 2021-08-30 | 富士フイルム株式会社 | 医用画像処理装置、方法およびプログラム |
CN113838130A (zh) * | 2021-08-30 | 2021-12-24 | 厦门大学 | 一种基于特征扩展性学习的弱监督目标定位方法 |
US11270203B2 (en) | 2019-03-19 | 2022-03-08 | Lunit Inc. | Apparatus and method for training neural network by performing normalization using a plurality of normalization techniques |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102052624B1 (ko) | 2018-11-09 | 2019-12-05 | 주식회사 루닛 | 기계 학습 방법 및 장치 |
WO2020096099A1 (ko) | 2018-11-09 | 2020-05-14 | 주식회사 루닛 | 기계 학습 방법 및 장치 |
KR102197724B1 (ko) * | 2019-07-15 | 2021-01-04 | 현대자동차주식회사 | 충돌 성능 예측 장치 및 충돌 성능 예측 방법 |
KR102128056B1 (ko) | 2019-11-29 | 2020-07-07 | 주식회사 루닛 | 기계 학습 방법 및 장치 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101623431B1 (ko) * | 2015-08-06 | 2016-05-23 | 주식회사 루닛 | 의료 영상의 병리 진단 분류 장치 및 이를 이용한 병리 진단 시스템 |
-
2016
- 2016-11-22 KR KR1020160156041A patent/KR101908680B1/ko active IP Right Grant
Cited By (30)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019208869A1 (ko) * | 2018-04-27 | 2019-10-31 | 연세대학교 산학협력단 | 학습을 이용한 얼굴 특징점 검출 방법 및 장치 |
KR20190134865A (ko) * | 2018-04-27 | 2019-12-05 | 연세대학교 산학협력단 | 학습을 이용한 얼굴 특징점 검출 방법 및 장치 |
KR101977067B1 (ko) * | 2018-08-24 | 2019-05-10 | 주식회사 뷰노 | 심층 신경망 기반 특징 추출을 통하여 진단 맵을 재구축하는 방법 및 이를 이용한 장치 |
CN110879962B (zh) * | 2018-09-05 | 2023-09-22 | 斯特拉德视觉公司 | 利用多个视频帧优化cnn参数的方法和装置 |
CN110879962A (zh) * | 2018-09-05 | 2020-03-13 | 斯特拉德视觉公司 | 利用多个视频帧优化cnn参数的方法和装置 |
JPWO2020054188A1 (ja) * | 2018-09-14 | 2021-08-30 | 富士フイルム株式会社 | 医用画像処理装置、方法およびプログラム |
US11915414B2 (en) | 2018-09-14 | 2024-02-27 | Fujifilm Corporation | Medical image processing apparatus, method, and program |
KR102015224B1 (ko) * | 2018-09-18 | 2019-10-21 | (주)제이엘케이인스펙션 | 딥러닝 기반의 뇌출혈 및 뇌종양 병변 진단 방법 및 장치 |
KR20200048474A (ko) * | 2018-10-30 | 2020-05-08 | 삼성에스디에스 주식회사 | 전이 학습을 위한 기반 모델 결정 방법 및 그 방법을 지원하는 장치 |
US11734571B2 (en) | 2018-10-30 | 2023-08-22 | Samsung Sds Co., Ltd. | Method and apparatus for determining a base model for transfer learning |
US11321589B2 (en) | 2018-12-07 | 2022-05-03 | Seoul National University R&Db Foundation | Apparatus and method for generating medical image segmentation deep-learning model, and medical image segmentation deep-learning model generated therefrom |
KR20200075074A (ko) * | 2018-12-07 | 2020-06-26 | 서울대학교산학협력단 | 의료 영상 분획 딥러닝 모델 생성 장치 및 방법과, 그에 따라 생성된 의료 영상 분획 딥러닝 모델 |
US11270203B2 (en) | 2019-03-19 | 2022-03-08 | Lunit Inc. | Apparatus and method for training neural network by performing normalization using a plurality of normalization techniques |
KR102029852B1 (ko) * | 2019-04-09 | 2019-10-08 | 세종대학교 산학협력단 | 환경에 따라 신경망 모델을 선택하는 객체 인식 장치 및 그 방법 |
KR20200134692A (ko) | 2019-05-23 | 2020-12-02 | 삼성에스디에스 주식회사 | 부분 지도 학습 장치 및 방법 |
WO2021006522A1 (ko) * | 2019-07-05 | 2021-01-14 | 한국과학기술원 | 딥 러닝 모델을 활용한 영상 진단 장치 및 그 방법 |
KR20190087351A (ko) | 2019-07-05 | 2019-07-24 | 엘지전자 주식회사 | 머신 러닝 시스템, 방법 및 장치 |
US11568206B2 (en) | 2019-07-05 | 2023-01-31 | Lg Electronics Inc. | System, method and apparatus for machine learning |
JP2022549051A (ja) * | 2019-07-05 | 2022-11-24 | コリア アドバンスド インスティチュート オブ サイエンス アンド テクノロジィ | ディープラーニングモデルを用いた画像診断装置及びその方法 |
KR102132375B1 (ko) * | 2019-07-05 | 2020-07-09 | 한국과학기술원 | 딥 러닝 모델을 활용한 영상 진단 장치 및 그 방법 |
WO2021066275A1 (ko) * | 2019-10-01 | 2021-04-08 | 삼성전자주식회사 | 전자 장치 및 그 제어 방법 |
KR102143192B1 (ko) * | 2019-11-12 | 2020-08-10 | 주식회사 루닛 | 신경망 학습 방법 및 그 장치 |
US11663816B2 (en) | 2020-02-17 | 2023-05-30 | Electronics And Telecommunications Research Institute | Apparatus and method for classifying attribute of image object |
KR20210104299A (ko) * | 2020-02-17 | 2021-08-25 | 한국전자통신연구원 | 영상 객체 속성 분류 장치 및 방법 |
CN111612034A (zh) * | 2020-04-15 | 2020-09-01 | 中国科学院上海微***与信息技术研究所 | 一种对象识别模型的确定方法、装置、电子设备及存储介质 |
CN111612034B (zh) * | 2020-04-15 | 2024-04-12 | 中国科学院上海微***与信息技术研究所 | 一种对象识别模型的确定方法、装置、电子设备及存储介质 |
WO2022025690A1 (ko) * | 2020-07-31 | 2022-02-03 | 주식회사 웨이센 | 복합 특성 분류와 공통 국소화를 위한 신경망 모델의 학습 방법 및 장치 |
KR102236615B1 (ko) * | 2020-07-31 | 2021-04-06 | 주식회사 웨이센 | 복합 특성 분류와 공통 국소화를 위한 신경망 모델의 학습 방법 및 장치 |
CN113838130A (zh) * | 2021-08-30 | 2021-12-24 | 厦门大学 | 一种基于特征扩展性学习的弱监督目标定位方法 |
CN113838130B (zh) * | 2021-08-30 | 2023-07-18 | 厦门大学 | 一种基于特征扩展性学习的弱监督目标定位方法 |
Also Published As
Publication number | Publication date |
---|---|
KR101908680B1 (ko) | 2018-10-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101908680B1 (ko) | 약한 지도 학습 기반의 기계 학습 방법 및 그 장치 | |
US11200483B2 (en) | Machine learning method and apparatus based on weakly supervised learning | |
US10496884B1 (en) | Transformation of textbook information | |
US10499857B1 (en) | Medical protocol change in real-time imaging | |
US10366491B2 (en) | Deep image-to-image recurrent network with shape basis for automatic vertebra labeling in large-scale 3D CT volumes | |
Li et al. | Standard plane detection in 3d fetal ultrasound using an iterative transformation network | |
US10853449B1 (en) | Report formatting for automated or assisted analysis of medical imaging data and medical diagnosis | |
EP3295374B1 (en) | Method and system for landmark detection in medical images using deep neural networks | |
CN109102490B (zh) | 自动图像注册质量评估 | |
KR102289277B1 (ko) | 복수의 의료 영상 판독 알고리듬들에 대한 평가 스코어를 생성하는 의료 영상 판독 지원 장치 및 방법 | |
Wang et al. | Does non-COVID-19 lung lesion help? investigating transferability in COVID-19 CT image segmentation | |
Sander et al. | Automatic segmentation with detection of local segmentation failures in cardiac MRI | |
Wen et al. | A novel statistical cerebrovascular segmentation algorithm with particle swarm optimization | |
Fotaki et al. | Artificial intelligence in cardiac MRI: is clinical adoption forthcoming? | |
Yoon et al. | Artificial intelligence and echocardiography | |
CN109447096B (zh) | 一种基于机器学习的扫视路径预测方法和装置 | |
Gayathri et al. | Exploring the potential of vgg-16 architecture for accurate brain tumor detection using deep learning | |
Gahungu et al. | Current challenges and recent updates in artificial intelligence and echocardiography | |
US20210145389A1 (en) | Standardizing breast density assessments | |
FR et al. | Segmentation of mammography by applying extreme learning machine in tumor detection | |
EP2449484B1 (en) | Relevance feedback for content-based image retrieval | |
Seetharam et al. | Artificial intelligence and machine learning in cardiovascular imaging | |
Graves et al. | Siamese pyramidal deep learning network for strain estimation in 3D cardiac cine-MR | |
CN115205192A (zh) | 根据头部ct图像的自动出血扩张检测 | |
WO2024086771A1 (en) | System and method for prediction of artificial intelligence model generalizability |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |