KR20230042664A - 이미지의 인스턴스 세그먼트화 및/또는 시맨틱 세그먼트화를 결정하기 위한 디바이스 및 방법 - Google Patents
이미지의 인스턴스 세그먼트화 및/또는 시맨틱 세그먼트화를 결정하기 위한 디바이스 및 방법 Download PDFInfo
- Publication number
- KR20230042664A KR20230042664A KR1020220119795A KR20220119795A KR20230042664A KR 20230042664 A KR20230042664 A KR 20230042664A KR 1020220119795 A KR1020220119795 A KR 1020220119795A KR 20220119795 A KR20220119795 A KR 20220119795A KR 20230042664 A KR20230042664 A KR 20230042664A
- Authority
- KR
- South Korea
- Prior art keywords
- output signal
- machine learning
- intermediate output
- image
- learning system
- Prior art date
Links
- 230000011218 segmentation Effects 0.000 title claims abstract description 85
- 238000000034 method Methods 0.000 title claims abstract description 38
- 238000010801 machine learning Methods 0.000 claims abstract description 79
- 230000006870 function Effects 0.000 claims abstract description 40
- 238000013528 artificial neural network Methods 0.000 claims description 29
- 238000010606 normalization Methods 0.000 claims description 24
- 238000009826 distribution Methods 0.000 claims description 23
- 238000004590 computer program Methods 0.000 claims description 6
- 239000000203 mixture Substances 0.000 claims description 6
- 238000003860 storage Methods 0.000 claims description 5
- 238000009499 grossing Methods 0.000 claims description 3
- 230000001419 dependent effect Effects 0.000 claims 1
- 230000006978 adaptation Effects 0.000 description 18
- 238000012549 training Methods 0.000 description 9
- 238000006243 chemical reaction Methods 0.000 description 8
- 238000004519 manufacturing process Methods 0.000 description 7
- 230000009466 transformation Effects 0.000 description 7
- 238000001514 detection method Methods 0.000 description 5
- 238000003384 imaging method Methods 0.000 description 5
- 230000003287 optical effect Effects 0.000 description 5
- 239000000463 material Substances 0.000 description 4
- 238000012360 testing method Methods 0.000 description 4
- 238000007476 Maximum Likelihood Methods 0.000 description 3
- 238000013527 convolutional neural network Methods 0.000 description 3
- 238000005406 washing Methods 0.000 description 3
- 238000013459 approach Methods 0.000 description 2
- 239000007788 liquid Substances 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 239000013598 vector Substances 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004140 cleaning Methods 0.000 description 1
- 238000005520 cutting process Methods 0.000 description 1
- 238000002059 diagnostic imaging Methods 0.000 description 1
- 230000009189 diving Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000009187 flying Effects 0.000 description 1
- 238000010413 gardening Methods 0.000 description 1
- 230000003211 malignant effect Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 239000007921 spray Substances 0.000 description 1
- 238000005507 spraying Methods 0.000 description 1
- 230000001429 stepping effect Effects 0.000 description 1
- 230000009182 swimming Effects 0.000 description 1
- 238000000844 transformation Methods 0.000 description 1
- 238000012285 ultrasound imaging Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/20—Image preprocessing
- G06V10/26—Segmentation of patterns in the image field; Cutting or merging of image elements to establish the pattern region, e.g. clustering-based techniques; Detection of occlusion
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G06T5/002—
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/20—Image enhancement or restoration using local operators
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/70—Denoising; Smoothing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/764—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/77—Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
- G06V10/7715—Feature extraction, e.g. by transforming the feature space, e.g. multi-dimensional scaling [MDS]; Mappings, e.g. subspace methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20081—Training; Learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20084—Artificial neural networks [ANN]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20172—Image enhancement details
- G06T2207/20182—Noise reduction or smoothing in the temporal domain; Spatio-temporal filtering
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Software Systems (AREA)
- Computing Systems (AREA)
- Artificial Intelligence (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Multimedia (AREA)
- Medical Informatics (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Molecular Biology (AREA)
- Image Analysis (AREA)
Abstract
이미지(x)의 인스턴스 세그먼트화 및/또는 시맨틱 세그먼트화를 특성화하는 출력 신호(y)를 결정하기 위한 컴퓨터에 의해 구현되는 방법으로서, 여기서 이 방법은:
머신 학습 시스템(60)으로부터 제1 중간 출력 신호를 결정하는 단계 - 여기서 제1 중간 출력 신호는 이미지(x)의 인스턴스 세그먼트화 및/또는 시맨틱 세그먼트화를 특성화함 -;
손실 함수에 기초하여 머신 학습 시스템(60)의 파라미터들(Φ)을 적응시키는 단계 - 여기서 손실 함수는 제1 중간 출력 신호(y)의 엔트로피 또는 교차 엔트로피를 특성화함 -;
이미지(x) 및 적응된 파라미터들(Φ)에 기초하여 머신 학습 시스템(60)으로부터의 출력 신호(y)를 결정하는 단계
를 포함한다.
머신 학습 시스템(60)으로부터 제1 중간 출력 신호를 결정하는 단계 - 여기서 제1 중간 출력 신호는 이미지(x)의 인스턴스 세그먼트화 및/또는 시맨틱 세그먼트화를 특성화함 -;
손실 함수에 기초하여 머신 학습 시스템(60)의 파라미터들(Φ)을 적응시키는 단계 - 여기서 손실 함수는 제1 중간 출력 신호(y)의 엔트로피 또는 교차 엔트로피를 특성화함 -;
이미지(x) 및 적응된 파라미터들(Φ)에 기초하여 머신 학습 시스템(60)으로부터의 출력 신호(y)를 결정하는 단계
를 포함한다.
Description
기술분야
본 발명은 머신 학습 시스템에 의해 출력 신호를 결정하기 위한 방법, 머신 학습 시스템, 액추에이터를 제어하기 위한 제어 시스템, 컴퓨터 프로그램, 및 머신 판독가능 저장 매체에 관한 것이다.
선행 기술
문헌(Mummadi et al. "Test-Time Adaptation to Distribution Shift by Confidence Maximization and Input Transformation", June 28th, 2021) - 온라인: https://arxiv.org/pdf/2106.14999.pdf에서 입수가능함 - 이 테스트 시간 적응(test time adaption)을 위한 방법을 개시하고 있다.
머신 학습(machine learning)(ML) 시스템, 특히 뉴럴 네트워크들은, 특히 광학 센서들로부터의 센서 데이터를 분석하기 위해, 점점 더 많은 기술 분야들에서 사용된다.
ML 시스템들을 배포(deploy)할 때, 배포 후에 직면한 데이터가, 훈련을 위해 사용되는 전형적인 데이터와는 상이할 수도 있다. 이 경우에, 도메인 시프트(domain shift)(분포 시프트라고도 또한 불림)가 있다. ML 시스템들의 성능, 예를 들어, 회귀에서 결정된 연속 값의 분류 정확도 또는 정확도가 도메인 시프트 후에 상당히 저하될 수 있으므로, ML 시스템을 신규 도메인 및/또는 분포에 적응시키기 위한 방법을 안출하는 것이 바람직할 것이다. 특히 신규 도메인 및/또는 분포에 대한 신뢰성있는 어노테이션(annotation)들이 추론 동안 이용가능하지 않을 때의 상황들에서는 그러한 적응 방법이 바람직하다. 특정 상황은 "소스 프리 도메인 적응(source-free domain adaptation)" 또는 "테스트 시간 적응"인데, 여기서 적응은 네트워크가 원래 훈련된 데이터(소스 도메인)를 요구하는 일 없이 타깃 도메인(시프트 후의 도메인)으로부터의 레이블링되지 않은 데이터에 대해서만 순전히 행해진다.
제1 양태에서, 본 발명은 이미지의 인스턴스 세그먼트화(instance segmentation) 및/또는 시맨틱 세그먼트화(semantic segmentation)를 특성화하는 출력 신호(y)를 결정하기 위한 컴퓨터에 의해 구현되는 방법(computer-implemented method)에 관한 것으로, 여기서 이 방법은:
손실 함수에 기초하여 머신 학습 시스템의 파라미터들을 적응시키는 단계 - 여기서 손실 함수는 제1 중간 출력 신호의 엔트로피 또는 교차 엔트로피(cross-entropy)를 특성화함 -;
를 포함한다.
이미지는 특히 센서, 예를 들어, 카메라, LIDAR 센서, 레이더 센서, 초음파 센서, 또는 열 카메라에 의해 획득될 수도 있다. 그러나, 이미지는 또한, 예를 들어, 컴퓨터에서 가상 장면을 렌더링하기 위한 방법에 의해 컴퓨터 생성되거나 또는 머신 학습 모델, 예를 들어, 생성적 대립 네트워크(generative adversarial network)에 의해 생성된 것과 같은 것일 수도 있다.
이미지는 머신 학습 시스템에 의해 프로세싱된다. 다시 말해, 머신 학습 시스템은 이미지를 입력으로서 취급한다. 머신 학습 시스템은 바람직하게는, 중간 신호를 결정하도록 구성되는 뉴럴 네트워크일 수도 있다. 대안적으로, 머신 학습 시스템은, 제1 중간 출력을 결정하기 위한 머신 학습 모델, 예를 들어, 뉴럴 네트워크를 포함할 수도 있는데, 즉, 머신 학습 모델은 출력 신호를 결정하기 위한 방법을 실행하도록 구성될 수도 있다.
머신 학습 모델에 포함되든 또는 머신 학습 모델이 되든 간에, 뉴럴 네트워크는 특히 콘볼루션 뉴럴 네트워크(convolutional neural network), 시각 변환기, 또는 비전 변환기일 수도 있다.
이 방법은 특히 머신 학습 시스템의 추론 시간에 실행되기에 적합하다. 추론 시간은 머신 학습 시스템의 "배포 후" 또는 "훈련 후"라고도 또한 지칭될 수도 있다. 제1 중간 출력 신호는 머신 학습 시스템을 그의 훈련 데이터로부터 이미지, 즉, 머신 학습 시스템이 추론 동안 경험하는 데이터에 유리하게 적응시키도록 이 방법에 의해 수정될 수도 있다. 본 발명자들은 이 적응이 머신 학습 시스템의 예측 성능의 증가에 이르게 한다는 것을 발견하였다. 시맨틱 세그먼트화 또는 인스턴스 세그먼트화의 맥락에서, 예측 성능은, 평균 교집합(mean intersection over union)이라고 알려져 있는 - mIoU라고도 또한 알려져 있음 - 메트릭에 기초하여 통상적으로 결정될 수도 있다.
이 방법은 테스트 시간 적응을 위한 방법으로서 또한 이해될 수도 있다. 테스트 시간 적응은, 훈련 데이터세트가 유래하게 된 도메인이 이미지가 유래하게 된 도메인과는 상이한 경우, 특히 실현가능할 수도 있다.
시맨틱 세그먼트화 및/또는 인스턴스 세그먼트화는 특히 이미지의 픽셀들에 분류들을 할당할 수도 있다. 분류들은, 개개의 픽셀이 분류되는 클래스의 인덱스의 형태로 주어질 수도 있다. 바람직하게는, 분류들은, 복수의 클래스들에 대한 확률들의 벡터로서 주어진다. 이것은 소프트 분류(soft classification)들이라고도 또한 알려져 있다. 시맨틱 세그먼트화 또는 인스턴스 세그먼트화가 레이블 맵이라고도 또한 지칭될 수도 있다.
시맨틱 세그먼트화 및/또는 인스턴스 세그먼트화는 특히 텐서(tensor)의 형태로 각각 주어질 수도 있다. 개개의 텐서는 특히 3차원 텐서일 수도 있다. 바람직하게는, 텐서의 제1 차원 및 제2 차원은 시맨틱 세그먼트화 또는 인스턴스 세그먼트화의 높이 및 폭을 각각 특성화하는 한편, 텐서의 제3 차원은 복수의 클래스들을 특성화한다. 이것은 또한 복수의 분류들을 포함하는 텐서로서 이해될 수도 있고, 여기서 분류들은 폭 및 높이 차원을 따라 인덱싱된다. 바람직하게는, 텐서는, 이미지가 그의 폭 및 높이를 각각 따르는 것처럼 폭 및 높이 차원을 따르는 많은 요소들을 포함한다. 따라서, 분류는 픽셀에 대응하는 것으로서 이해될 수도 있는데, 즉, 높이 i 및 폭 j에 위치된 분류는 높이 i 및 폭 j에서의 이미지의 픽셀을 특성화할 수도 있다. 따라서, "포지션 i,j에서의 분류"라는 용어는 분류가 높이 i 및 폭 j에 위치된다는 것으로서 이해될 수도 있다.
제1 중간 출력 신호는, 적응이 일어나지 않는 경우 머신 학습 시스템에 의해 발생될 수 있는 바와 같은 시맨틱 세그먼트화 및/또는 인스턴스 세그먼트화를 특성화하는 것으로서 이해될 수도 있다. 머신 학습 시스템을 이미지에 적응시키기 위해, 이 방법은 머신 학습 시스템의 적응된, 즉, 새로운 파라미터들을 결정하는 것으로서 이해될 수도 있다. 그 후에, 머신 학습 시스템은 이미지에 적응된 새로운 파라미터들을 사용하여 이미지에 대한 출력을 결정한다. 다시 말해, 출력 신호는 머신 학습 시스템의 새로운 파라미터들에 기초하기는 하지만 제1 중간 출력 신호처럼 결정된다.
시맨틱 세그먼트화 및/또는 인스턴스 세그먼트화는 또한 객체 검출의 분류 부분을 특성화할 수도 있다. 예를 들어, 단일 샷 객체 검출(단일 샷 검출(single shot detection) 또는 SSD라고도 또한 알려져 있음)을 위한 통상적인 머신 학습 시스템들은 객체 검출의 태스크를 서브 태스크들로 분할한다. 제1 서브 태스크는 이미지의 픽셀이 객체의 존재 또는 객체의 특정 부분을 특성화하는지 여부를 분류하는 것일 수도 있고, 제2 서브 태스크는 객체의 정확한 위치를 결정하는 것일 수도 있으며, 제3 서브 태스크는 객체의 연장부, 예를 들어, 폭 및 높이를 결정하는 것일 수도 있다. 이 접근법은 CenterNet과 같은 통상적인 객체 검출기들에 적용된다. 따라서, 이 방법은, 적어도 객체의 존재를 분류하는 서브 태스크를 해결하기 위해 - 이것은 본질적으로 시맨틱 세그먼트화 태스크이기 때문이다 -, 객체 검출 태스크들에도 또한 적용가능하다. CenterNet과 같은 접근법들은 모든 픽셀에 대한 분류를 결정하는 것이 아니라, 이미지에서의 픽셀들의 패치, 예를 들어, 4x4 패치에 대한 분류를 결정한다는 것에 주목해 주십시오. 그러나, 분류가 다른 픽셀들과 공유되기는 하지만 각각의 픽셀이 분류에 대응하는 것으로 여전히 이해될 수도 있으므로 여기에서 제안된 방법을 사용하는 것이 여전히 가능하다.
새로운 파라미터들을 결정하는 것은, 특히 머신 학습 시스템이 뉴럴 네트워크거나 또는 뉴럴 네트워크를 포함하는 경우, 경사 하강 알고리즘(gradient descent algorithm)에 의해 특히 달성될 수도 있다. 본 저작자들은 머신 학습 시스템의 파라미터들을 적응시키는 것이 유리하게는 단일 이미지, 즉, 이미지에만 단지 기초하여 달성될 수도 있다는 것을 발견하였다. 이것은, 적응을 위해 복수의 이미지들, 즉, 이미지들의 배치(batch)를 요구하는 알려져 있는 방법들에 비해 이점이 있는데, 이는 머신 학습 시스템이 다른 경우라면 이미지에 오버피팅(overfit)될 것이기 때문이다. 본 발명자들은, 시맨틱 세그먼트화를 수행하는 특성으로 인해, 머신 학습 시스템에는 경사 하강에 사용될 복수의 분류들이 주어지는데, 이는 이미지에 오버피팅되지 않으면서 파라미터들을 적응시키기 위해 단일 이미지를 사용하는 것을 가능하게 한다는 것을 발견하였다.
이 방법은 또한 이미지들의 시퀀스, 예를 들어, 비디오에 대해 실행될 수도 있다. 이 경우에, 이 방법은 각각의 이미지에 대해 개별적으로, 즉, 반복적으로 실행될 수도 있다. 각각의 반복에서, 이전 반복에서 결정된 파라미터들은, 반복에서의 이미지에 기초하여 머신 학습 시스템의 새로운 파라미터들을 발견하기 위한 시작 포인트로서 사용될 수도 있다. 대안적으로, 머신 학습 시스템을 그의 훈련 데이터세트에 대해 훈련시킬 때 결정된 파라미터들을 사용하는 것, 즉, 각각의 반복의 시작 시에 파라미터들을 재설정하는 것이 또한 가능하다.
바람직하게는, 손실 함수는, 이미지의 픽셀들에 대해 획득된 분류들의 평균 엔트로피를 특성화한다.
다시 말해, 손실 함수는 제1 출력 신호에 의해 특성화되는 인스턴스 세그먼트화 및/또는 시맨틱 세그먼트화에 의해 특성화되는 각각의 분류에 대해 결정되는 엔트로피를 특성화할 수도 있고, 여기서 엔트로피들은 그 후에, 시맨틱 세그먼트화 또는 인스턴스 세그먼트화의 엔트로피를 결정하기 위해 평균화될 수도 있다.
손실 함수는, 예를 들어, 제1 중간 출력 신호에 의해 특성화되는 인스턴스 세그먼트화 및/또는 시맨틱 세그먼트화에 의해 특성화되는 각각의 분류에 대해 결정되는 개개의 섀넌 엔트로피들(Shannon entropies)의 평균의 음수일 수도 있다. 바람직하게는, 개개의 섀넌 엔트로피들의 평균의 음수는 복수의 항들 중 한 항이고, 여기서 손실 함수는 항들의 합이거나 또는 그 합에 의해 특성화된다.
손실 함수가 제1 중간 출력 신호와 제2 중간 출력 신호 사이의 교차 엔트로피를 특성화하는 것이 또한 가능하다. 바람직하게는, 제2 중간 출력 신호는 제1 중간 출력 신호에 기초하여 그리고 변환 함수에 의해 결정되고, 여기서 제2 중간 출력 신호는 이미지의 인스턴스 세그먼트화 및/또는 시맨틱 세그먼트화를 특성화한다. 예를 들어, 제1 중간 출력 신호는 머신 학습 모델, 예를 들어, 뉴럴 네트워크의 출력일 수도 있고, 여기서 변환 함수는 결정된 제1 중간 출력 신호를 프로세싱하여 제2 중간 출력 신호를 결정한다. 변환 함수는 또한 머신 학습 모델의 부분일 수도 있는데, 예를 들어, 그것은 뉴럴 네트워크의 계층일 수도 있고, 여기서 계층의 출력은 제2 중간 출력 신호이고 계층에 대한 입력은 제1 중간 출력 계층이다.
다음에는 "제1 중간 출력 신호의 분류"라는 용어가, 제1 중간 출력 신호에 의해 특성화되는 인스턴스 세그먼트화 및/또는 시맨틱 세그먼트화에 의해 특성화되는 분류로서 이해될 수도 있다. 마찬가지로, "제2 중간 출력 신호의 분류"라는 용어가, 제2 중간 출력 신호에 의해 특성화되는 인스턴스 세그먼트화 및/또는 시맨틱 세그먼트화에 의해 특성화되는 분류로서 이해될 수도 있다.
제1 중간 출력 신호와 제2 중간 출력 신호 사이의 교차 엔트로피는 엔트로피와 유사하게 결정될 수도 있다: 제1 중간 출력 신호의 각각의 분류는, 제2 중간 출력 신호의 대응하는 분류, 즉, 제1 중간 출력 신호의 분류와 동일한 포지션을 제2 중간 출력 신호에서 갖는 제2 중간 입력 신호의 분류를 갖는다. 그 후에, 교차 엔트로피가, 바람직하게는 모든 쌍들에 대해, 제1 중간 출력 신호의 분류 및 제2 중간 출력 신호의 대응하는 분류의 각각의 쌍에 대해 결정될 수도 있다. 교차 엔트로피 대신에, 손실 항은, 대응하는 분류들의 하드 우도 비율(hard likelihood ratio) 또는 소프트 우도 비율(soft likelihood ratio)을 또한 포함할 수도 있다.
변환 함수는 선험적으로 정의될 수도 있다. 예를 들어, 변환 함수는 에지 보존 평활화 필터(edge-preserving smoothing filter), 특히 양방향 필터를 특성화할 수도 있다. 본 발명자들은 이 타입의 필터링이 유리하게는, 제1 중간 출력 신호에 의해 특성화되는 인스턴스 세그먼트화 또는 시맨틱 세그먼트화에서 오분류들을 제거하고 그에 의해 머신 학습 시스템의 성능을 훨씬 더 증가시킨다는 것을 발견하였다.
대안적으로, 변환 함수는 훈련가능 함수, 예를 들어, 상기에 개시된 바와 같은 뉴럴 네트워크의 계층일 수도 있다.
추가적으로, 손실 함수는 제1 중간 출력 신호의 적어도 일부의 우도, 바람직하게는 로그-우도(log-likelihood)를 추가로 특성화할 수도 있고, 여기서 우도는 이미지의 적어도 일부의 밀도 모델에 기초하여 결정된다.
밀도 모델은 머신 학습 시스템의 데이터세트, 바람직하게는 훈련 데이터세트로부터의 인스턴스 세그먼트화들 및/또는 시맨틱 세그먼트화들로부터의 분류들의 최대 우도 추정치를 특히 특성화할 수도 있다. 이러한 방식으로, 머신 학습 시스템은 알려져 있는 시맨틱 세그먼트화들 및/또는 인스턴스 세그먼트화들과 관련하여 타당한 시맨틱 세그먼트화 및/또는 인스턴스 세그먼트화를 특성화하는 출력 신호를 계속 제공하면서 그의 출력을 적응시키는 것이 가능하다. 다시 말해, 출력은, 데이터세트로부터의 시맨틱 세그먼트화들 및/또는 인스턴스 세그먼트화들과 더 일관성있는 시맨틱 세그먼트화 및/또는 인스턴스 세그먼트화를 특성화한다. 본 발명자들은 이것이 유리하게는 머신 학습 시스템의 성능을 훨씬 더 증가시킨다는 것을 발견하였다.
밀도 모델은 클래스들의 전체 발생을 모델링할 수도 있다. 예를 들어, 이 모델은 데이터세트에 포함된 시맨틱 세그먼트화들 및/또는 인스턴스 세그먼트화들의 개개의 클래스 히스토그램들을 먼저 생성함으로써 결정될 수도 있다. 그 후에, 히스토그램들은, 예를 들어, 최대 우도 방법에 의해 밀도 모델을 피팅(fit)하는 데 사용될 수 있다. 밀도 모델은 다항 모델, 가우시안 모델(Gaussian model), 또는 가우시안 혼합 모델 또는 다항 혼합 모델과 같은 혼합 모델에 의해 특성화될 수도 있다. 히스토그램들은 밀도 모델을 피팅하는 데 사용되기 전에 또한 정규화, 예를 들어, L1-정규화될 수도 있다.
전체 제1 중간 출력 신호의 분류들을 특성화하는 대신에, 손실 함수에 의해 특성화되는 우도는 또한 복수의 패치들의 평균 우도를 특성화할 수도 있고, 여기서 복수의 패치들은 제1 중간 출력 신호에 기초하여 결정된다.
패치가, 폭 및 높이 차원을 따르는 제1 중간 출력 신호의 직사각형 영역으로서 이해될 수도 있다. 따라서, 패치가, 제1 중간 출력 신호에 포함된 분류들의 서브세트를 특성화할 수도 있다. 데이터세트의 시맨틱 세그먼트화들 및/또는 인스턴스 세그먼트화들의 경우, 동일한 사이즈의 패치들이 추출되고 밀도 모델을 피팅하는 데 사용될 수도 있는데, 이 밀도 모델은 다시 다항 모델, 가우시안 모델 또는 혼합 모델일 수 있다. 적응 동안, 패치들이 그 후에 제1 중간 출력 신호로부터 추출될 수도 있고 각각의 추출된 패치에 대해 우도가 결정될 수도 있다. 패치들의 추출은 특히 랜덤할 수도 있고, 예를 들어, 패치들이 추출되는 위치들이 랜덤하게 결정될 수도 있다. 각각의 패치에 대해, 우도가 그 후에 밀도 모델로부터 결정될 수도 있고 이러한 방식으로 결정된 우도들은 평균화되고 손실 함수의 항으로서 사용될 수도 있다.
본 발명자들은 이러한 방식으로 패치들을 사용하면 머신 학습 시스템의 성능을 훨씬 더 증가시킨다는 것을 발견하였다.
피처 추출기(feature extractor)를 사용하여 패치의 피처 표현을 결정하고 패치의 우도로서 피처 표현의 우도를 제공함으로써 패치에 대한 우도가 또한 결정될 수도 있고, 여기서 피처 표현의 우도는 밀도 모델에 의해 결정된다.
피처 추출기는 특히 뉴럴 네트워크, 예를 들어, 콘볼루션 뉴럴 네트워크일 수도 있다. 바람직하게는, 뉴럴 네트워크의 파라미터들은 머신 학습 시스템의 파라미터들을 적응시키기 위한 경사들을 결정할 때 고정된다. 따라서, 피처 추출기는 그의 파라미터들이 동결된 것으로서 이해될 수도 있다. 밀도 모델을 결정하기 위해, 데이터세트의 시맨틱 세그먼트화들 및/또는 인스턴스 세그먼트화들로부터 패치들이 다시 추출될 수도 있다. 그 후에, 피처 추출기에 기초하여 추출된 패치들에 대해 개개의 피처 표현들이 결정될 수도 있다. 그 후에, 피처 표현들은, 예를 들어, 최대 우도 추정 방법을 사용하여 밀도 모델을 피팅하는 데 사용될 수도 있다. 머신 학습 시스템을 적응시키기 위해, 패치들이, 다시, 랜덤하게 추출되고 피처 추출기를 통해 포워딩될 수도 있다. 그 후에, 결과적인 피처 표현들이 밀도 모델에 제공될 수도 있는데, 이 밀도 모델은 차례로 복수의 우도 또는 로그-우도 값들을 결정한다. 그 후에, 우도 또는 로그-우도 값들은 평균화되어, 손실 함수에 의해 특성화된 우도 값을 결정할 수도 있다.
데이터세트로부터의 시맨틱 세그먼트화들 및/또는 인스턴스 세그먼트화들로부터의 정보를 사용하는 개개의 실시예들 모두에서, 손실 함수에 의해 특성화된 우도는 특히, 다음과 같은 공식에 의해 특성화되는, 손실 함수의 손실 항에서 사용될 수도 있다:
패치들을 사용할 때, 패치의 분류들의 어느 조합들이 예상되지 않고 따라서 출력 신호로 출력되어서는 안 되는지를 머신 학습 시스템에 보여주기 위해 패치들에 포함된 분류들을 변경하는 것이 또한 가능하다. 예를 들어, 복수의 패치들로부터의 각각의 패치에 대해, 예를 들어, 패치의 가장 통상적인 분류가 패치의 두 번째로 가장 통상적인 분류와, 패치의 세 번째로 가장 통상적인 분류가 패치의 네 번째로 가장 통상적인 분류와 등으로 분류들이 교환될 수도 있다. 그 후에, 손실 함수는, 이들 변경된 패치들처럼 보이는 출력 신호들을 발생시키지 않도록 머신 학습 시스템에 인센티브를 주는 항을 포함할 수도 있다. 따라서, 손실 함수는, 다음과 같은 공식에 의해 특성화되는 손실 항을 포함할 수도 있다:
바람직하게는, 출력 신호를 결정하기 위해, 머신 학습 시스템은 정규화 변환을 포함할 수도 있고 손실은 정규화 변환의 출력과 미리 정의된 확률 분포 사이의 쿨백-라이블러 발산(Kullback-Leibler divergence)을 추가로 특성화할 수도 있다.
"출력 신호를 결정하기 위해"라는 용어는 지금까지는 정규화 변환이 이미지로부터 출력 신호를 결정할 때 결정적인 영향을 갖는 것으로서 이해될 수도 있다. 예를 들어, 제1 중간 출력 신호 및/또는 제2 중간 출력 신호를 결정하기 위해 뉴럴 네트워크가 사용되는 경우, 뉴럴 네트워크의 정규화 계층이 정규화 변환으로서 이해될 수도 있다. 정규화 계층은, 예를 들어, BatchNorm 계층, GroupNorm 계층, 또는 LayerNorm 계층일 수도 있다.
정규화 변환은 특히 미리 정의된 스킴에 따라 정규화 변환의 입력을 정규화할 수도 있다. 예를 들어, 정규화 계층들에서, 입력 또는 입력의 부분들이 그 입력 또는 부분들이 제로 평균 및 단위 분산을 갖도록 정규화될 수도 있다. 예를 들어 BatchNorm에서, 입력은, 머신 학습 시스템을 훈련시키는 데 사용되는 배치에서 복수의 이미지들을 특성화하는 텐서일 수도 있다. 그 후에, 텐서에서의 각각의 채널이 배치의 모든 샘플들에 대해 제로 평균 및 단위 분산을 갖도록 텐서의 채널들이 정규화될 수도 있다. 추론을 위해, 훈련에 사용되는 배치들에 대한 평균 및 분산은, 예를 들어, 이동 평균(running average)에 의해 평균화될 수도 있다. 정규화 계층은 또한 스케일 및 시프트 연산과 같은 다른 연산들을 포함할 수도 있다. 그러나, 방법의 목적을 위해, 정규화 변환의 출력과 미리 정의된 확률 분포 사이의 쿨백-라이블러 발산을 특성화하는 손실에 언급된 바와 같은 출력은 특히 정규화 후에 그리고 스케일 및 시프트 연산 전에 계층의 출력으로 간주될 수도 있다.
본 발명자들은 쿨백-라이블러 발산을 특성화하는 손실 항을 포함하는 것이 적응에 이롭다는 것을 발견하였는데, 이는 이것이 머신 학습 시스템의 성능을 추가로 증가시키기 때문이다.
바람직하게는, 미리 정의된 확률 분포는 표준 정규 분포에 의해 특성화된다. 미리 정의된 확률 분포는 또한 다변량 표준 정규 분포, 즉, 예상된 값으로서 널 벡터(null vector)를 그리고 공분산 행렬로서 항등 행렬(identity matrix)을 갖는 다변량 정규 분포일 수도 있다.
쿨백-라이블러 발산은, 예를 들어, 손실 함수의 항에 포함될 수도 있고, 여기서 손실의 항은 다음과 같은 공식에 의해 특성화될 수도 있다:
여기서 은 쿨백-라이블러 발산이고, 는 정규화 후의 출력이고, 는 출력의 예상된 값을 특성화하고, 은 출력의 분산을 특성화하며, 은 잠재적 다변량 정규 분포를 특성화한다. 출력은, 한 차원을 따라 또는 복수의 차원들을 따라 정규화되는 텐서에 의해 특성화될 수도 있다. 이것은 전체 텐서가 정규화되는 것이 아니라 단지 그의 부분들만이 정규화된다는 것을 의미한다. 이 경우에, 정규화되는 텐서의 각각의 부분에 대해, 쿨백-라이블러 발산은 상기의 공식에 따라 결정될 수도 있고 그 후에 항 은 개개의 쿨백-라이블러 발산들의 평균으로 주어질 수도 있다.
또한 머신 학습 시스템에는 다수의 정규화 변환들, 예를 들어, 다수의 정규화 계층들이 존재할 수도 있다. 그 후에, 손실 항은 복수의, 바람직하게는 다음과 같은 정규화 변환들을 고려하도록 적응될 수도 있다:
본 발명의 실시예들은 다음의 도면들을 참조하여 더 상세히 논의될 것이다. 도면들은 다음과 같이 도시한다:
도 1은 머신 학습 시스템을 도시한다.
도 2는 환경에서 액추에이터를 제어하는 분류기를 포함하는 제어 시스템을 도시한다.
도 3은 적어도 부분적으로 자율적인 로봇을 제어하는 제어 시스템을 도시한다.
도 4는 제조 머신을 제어하는 제어 시스템을 도시한다.
도 5는 이미징 시스템을 제어하는 제어 시스템을 도시한다.
도 1은 머신 학습 시스템을 도시한다.
도 2는 환경에서 액추에이터를 제어하는 분류기를 포함하는 제어 시스템을 도시한다.
도 3은 적어도 부분적으로 자율적인 로봇을 제어하는 제어 시스템을 도시한다.
도 4는 제조 머신을 제어하는 제어 시스템을 도시한다.
도 5는 이미징 시스템을 제어하는 제어 시스템을 도시한다.
도 1은 머신 학습 시스템(60)의 일 실시예를 도시한다. 머신 학습 시스템(60)은 이미지(x)를 입력으로서 수용하도록 구성된다. 이 실시예에서, 이미지(x)는 머신 학습 시스템의 뉴럴 네트워크(61)로 포워딩되고, 여기서 뉴럴 네트워크(61)는 이미지(x)에 대한 인스턴스 세그먼트화 및/또는 시맨틱 세그먼트화를 결정하도록 구성된다. 뉴럴 네트워크는 특히 콘볼루션 뉴럴 네트워크, 비전 변환기, 또는 시각 변환기일 수도 있다. 추가의 실시예들(도시되지 않음)에서, 뉴럴 네트워크(61) 대신에 다른 머신 학습 모델을 사용하는 것이 또한 가능하다. 뉴럴 네트워크는 복수의 파라미터들(Φ), 예를 들어, 가중치들, 바이어스들, 또는 정규화 파라미터들을 포함한다. 사용되기 전에, 뉴럴 네트워크(61)는 알려져 있는 방법들에 따라 시맨틱 세그먼트화들 및/또는 인스턴스 세그먼트화들을 예측하도록 훈련될 수도 있다.
뉴럴 네트워크(61)는 제1 중간 출력 신호()를 결정하도록 구성되고, 여기서 제1 중간 출력 신호()는 이미지(x)의 인스턴스 세그먼트화 및/또는 시맨틱 세그먼트화를 특성화한다. 제1 중간 출력 신호()는 적응 유닛(62)으로 포워딩된다. 제1 중간 출력 신호()에 기초하여, 적응 유닛(62)은 뉴럴 네트워크(61)에 대해 적응된 파라미터들을 결정한다. 그 후에, 뉴럴 네트워크(61)는 이미지(x) 및 적응된 파라미터들에 기초하여 새로운 제1 중간 출력 신호()를 결정한다. 추가의 실시예들(도시되지 않음)에서, 새로운 제1 중간 출력 신호()는 그 후에 머신 학습 시스템(60)의 출력 신호(y)로서 제공될 수도 있다.
적응된 파라미터들을 결정하기 위해, 적응 유닛(62)은 바람직하게는 경사 하강법에 기초하여 뉴럴 네트워크(61)의 파라미터들(Φ)을 적응시킬 수도 있다. 경사 하강법을 실행하기 위한 손실 함수는 다음과 같은 손실 항을 포함할 수도 있다
여기서 Y는 제1 중간 출력 신호()에 의해 특성화되는 인스턴스 세그먼트화 및/또는 시맨틱 세그먼트화의 높이이고, X는 시맨틱 세그먼트화 및/또는 인스턴스 세그먼트화의 폭이고, H는 엔트로피 함수이며 는 위치 i,j에서 시맨틱 세그먼트화 및/또는 인스턴스 세그먼트화에 포함된 분류이다. 그 후에, 경사 하강법은 미리 정의된 양의 반복들 동안 실행될 수도 있고, 여기서 각각의 반복에서 새로운 제1 중간 출력 신호()가 결정되고 이에 따라 파라미터들(Φ)이 업데이트된다. 추가의 실시예들에서, 적응은 손실이 미리 정의된 임계치 이하일 때까지 반복적으로 또한 실행될 수도 있다. 경사 하강법이 완료된 후에, 이미지(x)는 적응된 파라미터들에 기초하여 뉴럴 네트워크(61)로 프로세싱될 수도 있고, 제1 중간 출력 신호()는 머신 학습 시스템(도시되지 않음)의 출력 신호(y)로서 제공될 수도 있다. 엔트로피 대신에, 손실 항은 또한 분류들의 하드 우도 비율 또는 소프트 우도 비율을 포함할 수도 있다.
바람직하게는, 머신 학습 시스템(60)은, 제2 중간 출력 신호()를 결정하기 위해 제1 중간 출력 신호()를 프로세싱하도록 구성되는 변환 함수()를 포함한다. 변환 함수()는 특히 에지 보존 평활화 필터, 예를 들어, 양방향 필터를 특성화할 수도 있다. 바람직하게는, 변환 함수()는 제2 중간 출력 신호()에서 제1 중간 출력 신호()의 폭 및 높이를 보존한다.
그 후에, 제1 중간 출력 신호() 및 제2 중간 출력 신호()는 손실 함수에서 교차 엔트로피 손실 항에 대한 입력들로서 사용될 수도 있다. 교차 엔트로피 손실 항은 다음과 같은 공식에 의해 특성화될 수도 있다:
여기서 는 포지션 i,j에서의 제2 중간 출력 신호()의 분류를 특성화하고, 는 포지션 i,j에서의 제1 중간 출력 신호()의 분류를 특성화한다. 추가의 실시예들에서, 손실 항은, 교차 엔트로피 대신에 대응하는 분류들의 하드 우도 비율 또는 소프트 우도 비율을 또한 포함할 수도 있다.
바람직하게는, 손실은, 분류들의 사전 분포(prior distribution)로부터 제2 중간 출력 신호()의 편차를 특성화하는 손실 항을 더 포함한다. 제2 중간 출력 신호()가 컴퓨팅되지 않는 실시예들에서, 편차는 또한 제1 중간 출력 신호()와 사전 분포 사이에서 결정될 수도 있다. 사전 분포는 뉴럴 네트워크(61)의 데이터세트, 예를 들어, 훈련 데이터세트로부터의 레이블 맵들에 기초하여 결정될 수도 있다. 각각의 레이블 맵에 대해, 분류들의 히스토그램이 결정될 수도 있다. 히스토그램들은 임의로 정규화, 예를 들어, L1-정규화될 수도 있다. 그 후, 확률 밀도 함수를 특성화하는 모델이 히스토그램들, 바람직하게는 혼합 모델, 예를 들어, 가우시안 혼합 모델 또는, 정규화가 수행되지 않은 경우에는, 다항 혼합 모델에 피팅될 수도 있다. 그 후에, 손실 함수의 추가 항 가 사전 분포와 제1 중간 출력 신호() 또는 제2 중간 출력 신호() 각각 사이의 교차 엔트로피를 특성화할 수도 있다.
뉴럴 네트워크(61)는, 제1 중간 출력 신호()를 결정하기 위한 정규화 계층(NL)을 임의로 포함할 수도 있다. 정규화 계층(NL)은, 예를 들어, GroupNorm 계층, BatchNorm 계층, 또는 LayerNorm 계층일 수도 있다. 뉴럴 네트워크(61)가 정규화 계층(NL)을 포함하는 경우, 손실은 바람직하게는, 다변량 표준 정규 분포로부터 정규화 계층(NL)의 출력의 편차를 특성화하는 손실 항 을 더 포함할 수도 있다. 예를 들어, 정규화 계층(NL)이 GroupNorm 계층인 경우, 정규화 계층(NL)은 정규화 계층(NL)의 입력에서의 각각의 그룹을 정규화한다. 그 후에, 손실은, 정규화 계층(NL)에 의해 정규화된 출력의 부분들의 쿨백-라이블러 발산을 특성화할 수도 있다. GroupNorm의 예에서, 쿨백-라이블러 발산이 다변량 표준 정규 분포 및 정규화된 그룹의 각각의 출력에 대해 결정될 수도 있다. 그 후에, 손실 항 은 개개의 쿨백-라이블러 발산들의 평균에 따라 결정될 수도 있다.
뉴럴 네트워크(61)는 복수의 정규화 계층들(NL)을 포함하는 것이 또한 가능하다. 이 경우에, 손실 항은, 각각의 정규화 계층(NL)에 대해 개별적으로 결정된 손실 항들의 합, 바람직하게는 가중된 합을 특성화할 수도 있다.
따라서, 손실 함수는 바람직하게는 다음과 같은 공식에 의해 특성화될 수도 있다:
정규 합 대신에, 손실은 개개의 항들의 가중된 합에 따라 또한 결정될 수도 있다. 항들 중 단지 하나 또는 2개만이 적응을 위해 사용되는 것이 또한 가능하다.
도 2는 머신 학습 시스템(60)의 출력에 기초하여 그 환경(20)에서 액추에이터(10)를 제어하는 제어 시스템(40)의 일 실시예를 도시한다. 액추에이터(10)는 제어 시스템(40)과 상호작용한다. 액추에이터(10)와 그의 환경(20)이 공동으로 액추에이터 시스템이라고 불릴 것이다. 바람직하게는 균일하게 이격된 시점들에서, 광학 센서(30)가 액추에이터 시스템의 컨디션을 감지한다. 센서(30)는, 수 개의 센서들, 예를 들어, 스테레오 카메라를 포함할 수도 있다. 감지된 컨디션을 인코딩하는 센서(30)의 출력 신호(S)(또는, 센서(30)가 복수의 센서들을 포함하는 경우에는, 센서들 각각에 대한 출력 신호(S))가 제어 시스템(40)에 송신된다.
그에 의해, 제어 시스템(40)은 센서 신호들(S)의 스트림을 수신한다. 그 후에, 그것은 센서 신호들(S)의 스트림에 따라 일련의 제어 신호들(A)을 컴퓨팅하고, 여기서 제어 신호들(A)은 그 후에 액추에이터(10)에 송신된다.
제어 시스템(40)은 임의적 수신 유닛(50)에서 센서(30)의 센서 신호들(S)의 스트림을 수신한다. 수신 유닛(50)은 센서 신호들(S)을 입력 이미지들(x)로 변환한다. 대안적으로, 수신 유닛(50)이 없는 경우에, 각각의 센서 신호(S)는 입력 이미지(x)로서 바로 취급될 수도 있다. 입력 이미지(x)는, 예를 들어, 센서 신호(S)로부터 발췌된 것으로서 주어질 수도 있다. 대안적으로, 센서 신호(S)는 입력 이미지(x)를 산출하도록 프로세싱될 수도 있다. 다시 말해, 입력 이미지(x)가 센서 신호(S)에 따라 제공된다.
그 후에, 입력 이미지(x)는 머신 학습 시스템(60)으로 전달된다.
머신 학습 시스템(60)은 입력 신호들(x)로부터 출력 신호(y)를 결정한다. 출력 신호(y)는 임의적 컨버전 유닛(optional conversion unit)(80)에 송신되는데, 이 임의적 컨버전 유닛은 출력 신호(y)를 제어 신호들(A)로 컨버팅한다. 그 후에, 제어 신호들(A)은 이에 따라 액추에이터(10)를 제어하기 위해 액추에이터(10)에 송신된다. 대안적으로, 출력 신호(y)는 제어 신호(A)로서 바로 취급될 수도 있다.
액추에이터(10)는 제어 신호들(A)을 수신하고, 이에 따라 제어되며, 제어 신호(A)에 대응하는 액션을 수행한다. 액추에이터(10)는, 제어 신호(A)를 추가의 제어 신호로 변환하는 제어 로직을 포함할 수도 있는데, 이 추가의 제어 신호는 그 후에 액추에이터(10)를 제어하는 데 사용된다.
추가의 실시예들에서, 제어 시스템(40)은 센서(30)를 포함할 수도 있다. 더 추가의 실시예들에서, 제어 시스템(40)은 대안적으로 또는 추가적으로 액추에이터(10)를 포함할 수도 있다.
더욱 추가의 실시예들에서, 제어 시스템(40)은 액추에이터(10) 대신에 또는 그에 추가적으로 디스플레이(10a)를 제어하는 것으로 구상될 수 있다.
게다가, 제어 시스템(40)은, 실행되는 경우, 제어 시스템(40)으로 하여금 본 발명의 한 양태에 따른 방법을 수행하게 하는 명령어들이 저장되는 적어도 하나의 머신 판독가능 저장 매체(46) 및 적어도 하나의 프로세서(45)를 포함할 수도 있다.
도 3은 적어도 부분적으로 자율적인 로봇, 예를 들어, 적어도 부분적으로 자율적인 차량(100)을 제어하기 위해 제어 시스템(40)이 사용되는 일 실시예를 도시한다.
센서(30)는, 하나 이상의 비디오 센서 및/또는 하나 이상의 레이더 센서 및/또는 하나 이상의 초음파 센서 및/또는 하나 이상의 LiDAR 센서를 포함할 수도 있다. 이들 센서들의 일부 또는 전부는 바람직하게는 차량(100)에 통합되지만 반드시 그런 것은 아니다.
따라서, 입력 이미지(x)는 차량(100)의 주변들을 디스플레이할 수도 있고 출력 신호(y)는 주변들의 시맨틱 세그먼트화 및/또는 인스턴스 세그먼트화를 특성화할 수도 있다. 시맨틱 세그먼트화 및/또는 인스턴스 세그먼트화는 특히 다른 도로 사용자들, 고정 요소들 예컨대 건물들 또는 표지들, 및 도로들 또는 주행가능 지면들의 분류들을 특성화할 수도 있다. 그 후에, 컨버전 유닛(80)은, 예를 들어, 차량(100)의 환경(20)에서의 다른 요소들과 충돌하지 않으면서 출력 신호(y)에 의해 주행가능한 것으로서 분류된 지면 상에서 차량이 이동하도록 하는 루트를 결정할 수도 있다. 그 후에, 제어 신호(A)는 이 정보에 따라 결정될 수도 있다.
바람직하게는 차량(100)에 통합되는 액추에이터(10)는 차량(100)의 브레이크, 추진 시스템, 엔진, 구동계(drivetrain), 또는 스티어링으로 주어질 수도 있다.
대안적으로 또는 추가적으로, 제어 신호(A)는 또한, 예를 들어, 머신 학습 시스템(60)에 의해 검출된 객체들을 디스플레이하기 위해, 디스플레이(10a)를 제어하는 데 사용될 수도 있다. 제어 신호(A)는, 차량(100)이 컨버전 유닛(80)에 의해 결정된 바와 같은 환경을 통한 세이브 루트(save route)로부터 이탈하고 있는 경우, 디스플레이(10a)를 제어하여 그것이 경고 신호를 생성하도록 할 수도 있다는 것이 또한 상상될 수 있다. 경고 신호는 경고 사운드 및/또는 햅틱 신호, 예를 들어, 차량의 스티어링 휠의 진동일 수도 있다.
추가의 실시예들에서, 적어도 부분적으로 자율적인 로봇은, 예를 들어, 비행, 수영, 다이빙, 또는 스테핑에 의해 이동할 수도 있는 다른 모바일 로봇(도시되지 않음)으로 주어질 수도 있다. 모바일 로봇은, 그 중에서도, 적어도 부분적으로 자율적인 잔디 깎는 기계, 또는 적어도 부분적으로 자율적인 청소 로봇일 수도 있다. 상기의 실시예들 모두에서, 제어 신호(A)는 모바일 로봇이 상기 식별된 객체들과의 충돌을 회피할 수도 있도록 모바일 로봇의 추진 유닛 및/또는 스티어링 및/또는 브레이크가 제어되도록 결정될 수도 있다.
추가의 실시예에서, 적어도 부분적으로 자율적인 로봇은, 환경(20)에서 식물들의 상태를 결정하기 위해 센서(30), 바람직하게는 광학 센서를 사용하는 정원 가꾸기 로봇(도시되지 않음)으로 주어질 수도 있다. 액추에이터(10)는 액체들을 분무하기 위한 노즐 및/또는 절단 디바이스, 예를 들어, 블레이드를 제어할 수도 있다. 식물들의 식별된 종 및/또는 식별된 상태에 따라, 제어 신호(A)는 액추에이터(10)로 하여금 식물들에 적합한 양의 적합한 액체들을 분무하게 하거나 그리고/또는 식물들을 절단하게 하도록 결정될 수도 있다.
또 추가의 실시예들에서, 적어도 부분적으로 자율적인 로봇은, 예를 들어, 세탁기, 스토브, 오븐, 전자레인지, 또는 식기 세척기와 같은, 가정용 어플라이언스(도시되지 않음)로 주어질 수도 있다. 센서(30), 예를 들어, 광학 센서는, 가정용 어플라이언스에 의한 프로세싱을 겪어야 하는 객체의 상태를 검출할 수도 있다. 예를 들어, 가정용 어플라이언스가 세탁기인 경우에, 센서(30)는 세탁기 내측의 세탁물의 상태를 검출할 수도 있다. 그 후에, 제어 신호(A)는 세탁물의 검출된 재료에 따라 결정될 수도 있다.
도 4는, 예를 들어, 생산 라인의 부분으로서, 제조 시스템(200)의 제조 머신(11), 예를 들어, 펀치 커터(punch cutter), 커터, 건 드릴(gun drill) 또는 그리퍼(gripper)를 제어하기 위해 제어 시스템(40)이 사용되는 일 실시예를 도시한다. 제조 머신(11)은, 제조된 제품(12)을 이동시키는 이송 디바이스, 예를 들어, 컨베이어 벨트 또는 조립 라인을 포함할 수도 있다. 제어 시스템(40)은 액추에이터(10)를 제어하는데, 이 액추에이터는 차례로 제조 머신(11)을 제어한다.
센서(30)는, 예를 들어, 제조된 제품(12)의 특성들을 캡처하는 광학 센서로 주어질 수도 있다.
머신 학습 시스템(60)은 컨베이어 벨트 상의 제조된 제품들(12)의 인스턴스 세그먼트화를 수행할 수도 있다. 그 후에, 컨버전 유닛(80)은 인스턴스 세그먼트화에 기초하여 제조된 제품들(12)의 정확한 포지션을 추론할 수도 있다. 그 후에, 액추에이터(10)는 제조된 제품(12)의 후속 제조 단계를 위해 제조된 제품(12)의 결정된 포지션에 따라 제어될 수도 있다. 예를 들어, 액추에이터(10)는 제조된 제품(12) 자체의 특정 위치에서 제조된 제품을 절단하도록 제어될 수도 있다.
도 5는 제어 시스템(40)에 의해 제어되는 의료 이미징 시스템(500)의 일 실시예를 도시한다. 이미징 시스템은, 예를 들어, MRI 장치, 엑스레이 이미징 장치 또는 초음파 이미징 장치일 수도 있다. 센서(30)는, 예를 들어, 환자의 상이한 타입들의 신체 조직을 디스플레이하는, 예를 들어, 환자의 적어도 하나의 이미지를 취급하는 이미징 센서일 수도 있다.
그 후에, 머신 학습 시스템(60)은 감지된 이미지의 적어도 일부의 시맨틱 세그먼트화를 결정할 수도 있다. 따라서, 이미지의 적어도 일부는 머신 학습 시스템(60)에 대한 입력 이미지(x)로서 사용된다.
그 후에, 제어 신호(A)는 분류에 따라 선정되어, 그에 의해 디스플레이(10a)를 제어할 수도 있다. 예를 들어, 머신 학습 시스템(60)은, 예를 들어, 이미지에 디스플레이된 조직을 악성 또는 양성 조직으로 분류함으로써, 감지된 이미지에서 상이한 타입들의 조직을 검출하도록 구성될 수도 있다. 이것은 머신 학습 시스템(60)에 의한 입력 이미지(x)의 시맨틱 세그먼트화에 의해 행해질 수도 있다. 그 후에, 제어 신호(A)는, 예를 들어, 입력 이미지(x)를 디스플레이하고 동일한 조직 타입들의 상이한 영역들을 동일한 컬러로 컬러화함으로써, 디스플레이(10a)로 하여금 상이한 조직들을 디스플레이하게 하도록 결정될 수도 있다.
추가의 실시예들(도시되지 않음)에서, 이미징 시스템(500)은 비의료 목적들을 위해, 예를 들어, 워크피스의 재료 특성들을 결정하기 위해 사용될 수도 있다. 이들 실시예들에서, 머신 학습 시스템(60)은 워크피스의 적어도 일부의 입력 이미지(x)를 수신하고 입력 이미지(x)의 시맨틱 세그먼트화를 수행하여, 그에 의해 워크피스의 재료 특성들을 분류하도록 구성될 수도 있다. 그 후에, 제어 신호(A)는 디스플레이(10a)로 하여금 검출된 재료 특성들에 관한 정보뿐만 아니라 입력 이미지(x)를 디스플레이하게 하도록 결정될 수도 있다.
"컴퓨터"라는 용어는 미리 정의된 계산 규칙들의 프로세싱을 위한 임의의 디바이스들을 커버하는 것으로서 이해될 수도 있다. 이들 계산 규칙들은 소프트웨어, 하드웨어 또는 소프트웨어와 하드웨어의 혼합의 형태로 될 수 있다.
일반적으로, 복수는 인덱싱되는 것으로 이해될 수 있는데, 즉, 복수의 각각의 요소에는, 바람직하게는 복수에 포함된 요소들에 연속적인 정수들을 할당함으로써, 고유 인덱스가 할당된다. 바람직하게는, 복수가 N개의 요소를 포함하는 경우 - 여기서 N은 복수에서의 요소들의 수이다 -, 요소들에는 1 내지 N의 정수들이 할당된다. 복수의 요소들은 이들의 인덱스에 의해 액세스될 수 있다는 것이 또한 이해될 수도 있다.
Claims (15)
- 이미지(x)의 인스턴스 세그먼트화(instance segmentation) 및/또는 시맨틱 세그먼트화(semantic segmentation)를 특성화하는 출력 신호(y)를 결정하기 위한 컴퓨터에 의해 구현되는 방법(computer-implemented method)으로서,
머신 학습 시스템(60)으로부터 제1 중간 출력 신호를 결정하는 단계 - 상기 제1 중간 출력 신호는 상기 이미지(x)의 인스턴스 세그먼트화 및/또는 시맨틱 세그먼트화를 특성화함 -;
손실 함수에 기초하여 상기 머신 학습 시스템(60)의 파라미터들(Φ)을 적응(Adapt)시키는 단계 - 상기 손실 함수는 상기 제1 중간 출력 신호(y)의 엔트로피 또는 교차 엔트로피(cross-entropy)를 특성화함 -;
상기 이미지(x) 및 상기 적응된 파라미터들(Φ)에 기초하여 상기 머신 학습 시스템(60)으로부터의 출력 신호(y)를 결정하는 단계
를 포함하는, 컴퓨터에 의해 구현되는 방법. - 제1항에 있어서,
상기 손실 함수는, 상기 이미지(x)의 픽셀들에 대해 획득되는 분류들의 평균 엔트로피를 특성화하는, 컴퓨터에 의해 구현되는 방법. - 제1항 또는 제2항에 있어서,
제2 중간 출력 신호가 변환 함수에 의해 상기 제1 중간 출력 신호에 기초하여 결정되고, 상기 제2 중간 출력 신호는 상기 이미지의 인스턴스 세그먼트화 및/또는 시맨틱 세그먼트화를 특성화하고, 상기 교차 엔트로피는 상기 제1 중간 출력 신호 및 상기 제2 중간 출력 신호에 기초하여 결정되는, 컴퓨터에 의해 구현되는 방법. - 제3항에 있어서,
상기 변환 함수는 에지 보존 평활화 필터(edge-preserving smoothing filter)를 특성화하는, 컴퓨터에 의해 구현되는 방법. - 제1항 내지 제4항 중 어느 한 항에 있어서,
상기 손실 함수는 상기 제1 중간 출력 신호의 적어도 일부의 우도, 바람직하게는 로그-우도(log-likelihood)를 추가로 특성화하고, 상기 우도는 상기 이미지의 적어도 일부의 밀도 모델에 기초하여 결정되는, 컴퓨터에 의해 구현되는 방법. - 제5항에 있어서,
상기 우도는 복수의 패치들의 평균 우도를 특성화하고, 상기 복수의 패치들은 상기 제1 중간 출력 신호에 기초하여 결정되는, 컴퓨터에 의해 구현되는 방법. - 제6항에 있어서,
피처 추출기(feature extractor)를 사용하여 패치의 피처 표현을 결정하고 상기 피처 표현의 우도를 상기 패치의 우도로서 제공함으로써 상기 패치에 대한 우도가 결정되고, 상기 피처 표현의 우도는 상기 밀도 모델에 의해 결정되는, 컴퓨터에 의해 구현되는 방법. - 제5항 내지 제7항 중 어느 한 항에 있어서,
상기 밀도 모델은 혼합 모델, 특히 가우시안 혼합 모델(Gaussian mixture model), 또는 정규 분포에 의해 특성화되는, 컴퓨터에 의해 구현되는 방법. - 제1항 내지 제8항 중 어느 한 항에 있어서,
출력 신호를 결정하기 위해, 상기 머신 학습 시스템(60)은 정규화 변환을 포함하고, 상기 손실은 상기 정규화 변환의 출력과 미리 정의된 확률 분포 사이의 쿨백-라이블러 발산(Kullback-Leibler divergence)을 추가로 특성화하는, 컴퓨터에 의해 구현되는 방법. - 제9항에 있어서,
상기 미리 정의된 확률 분포는 표준 정규 분포에 의해 특성화되는, 컴퓨터에 의해 구현되는 방법. - 제9항 또는 제10항에 있어서,
상기 머신 학습 시스템(60)은, 상기 출력 신호(y)를 결정하기 위한 뉴럴 네트워크를 포함하고, 상기 뉴럴 네트워크는 정규화 계층을 포함하고, 상기 손실은 상기 정규화 계층의 출력과 미리 정의된 확률 분포 사이의 쿨백-라이블러 발산을 추가로 특성화하는, 컴퓨터에 의해 구현되는 방법. - 머신 학습 시스템(60)으로서,
제1항 내지 제11항 중 어느 한 항에 따른 방법을 수행하도록 구성되는, 머신 학습 시스템(60). - 제어 신호(A)를 결정하기 위한 제어 시스템(40)으로서,
상기 제어 신호는 액추에이터(10) 및/또는 디스플레이(10a)를 제어하도록 구성되고, 상기 제어 신호(A)는, 제1항 내지 제11항 중 어느 한 항에 따라 결정되는 출력 신호(y)에 기초하여 결정되는, 제어 시스템(40). - 컴퓨터 프로그램으로서,
상기 컴퓨터 프로그램은, 상기 컴퓨터 프로그램이 프로세서(45)에 의해 수행되는 경우, 컴퓨터로 하여금 제1항 내지 제11항 중 어느 한 항에 따른 방법을 그의 단계들 모두를 이용하여 수행하게 하도록 구성되는, 컴퓨터 프로그램. - 머신 판독가능 저장 매체(46)로서,
제14항에 따른 컴퓨터 프로그램이 저장된, 머신 판독가능 저장 매체(46).
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP21198202.0 | 2021-09-22 | ||
EP21198202.0A EP4156097A1 (en) | 2021-09-22 | 2021-09-22 | Device and method for determining a semantic segmentation and/or an instance segmentation of an image |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20230042664A true KR20230042664A (ko) | 2023-03-29 |
Family
ID=77897549
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020220119795A KR20230042664A (ko) | 2021-09-22 | 2022-09-22 | 이미지의 인스턴스 세그먼트화 및/또는 시맨틱 세그먼트화를 결정하기 위한 디바이스 및 방법 |
Country Status (5)
Country | Link |
---|---|
US (1) | US20230101810A1 (ko) |
EP (1) | EP4156097A1 (ko) |
JP (1) | JP2023046313A (ko) |
KR (1) | KR20230042664A (ko) |
CN (1) | CN115861607A (ko) |
-
2021
- 2021-09-22 EP EP21198202.0A patent/EP4156097A1/en active Pending
-
2022
- 2022-08-24 US US17/894,358 patent/US20230101810A1/en active Pending
- 2022-09-21 CN CN202211148401.2A patent/CN115861607A/zh active Pending
- 2022-09-21 JP JP2022150155A patent/JP2023046313A/ja active Pending
- 2022-09-22 KR KR1020220119795A patent/KR20230042664A/ko unknown
Also Published As
Publication number | Publication date |
---|---|
EP4156097A1 (en) | 2023-03-29 |
JP2023046313A (ja) | 2023-04-03 |
CN115861607A (zh) | 2023-03-28 |
US20230101810A1 (en) | 2023-03-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109478239B (zh) | 检测图像中的对象的方法和对象检测系统 | |
Paoli et al. | Clustering of hyperspectral images based on multiobjective particle swarm optimization | |
Widynski et al. | A multiscale particle filter framework for contour detection | |
CN114077899A (zh) | 用于在被修改的任务之间进行迁移学习的方法和设备 | |
US20230091396A1 (en) | Device and method for generating training data for a machine learning system | |
US20230031755A1 (en) | Generative adversarial network for processing and generating images and label maps | |
KR20230042664A (ko) | 이미지의 인스턴스 세그먼트화 및/또는 시맨틱 세그먼트화를 결정하기 위한 디바이스 및 방법 | |
CN114648111A (zh) | 用于训练分类器的设备和方法 | |
CN114386449A (zh) | 用于借助于机器学习系统来确定输出信号的方法 | |
CN113807383A (zh) | 用于训练和测试分类器的设备和方法 | |
KR20210099140A (ko) | 센서 데이터를 분류하고 작동기의 제어를 위한 제어 신호를 결정하기 위한 방법 및 장치 | |
US20240135699A1 (en) | Device and method for determining an encoder configured image analysis | |
KR20210099149A (ko) | 신경망 훈련 방법 | |
Tan et al. | Hybrid Fuzzy C-Means Using Particle Swarm Optimization (PSO) and Differential Evolution (DE) for Image Segmentation | |
US20220101128A1 (en) | Device and method for training a classifier using an invertible factorization model | |
US20230351741A1 (en) | Method and device for training a neural network | |
US20220284289A1 (en) | Method for determining an output signal by means of a neural network | |
EP4145402A1 (en) | Device and method for training a neural network for image analysis | |
EP4296910A1 (en) | Device and method for determining adversarial perturbations of a machine learning system | |
EP4343619A1 (en) | Method for regularizing a neural network | |
US20220230416A1 (en) | Training of machine learning systems for image processing | |
EP4141808A1 (en) | Denoising layer for neural networks for image analysis | |
US20230368007A1 (en) | Neural network layer for non-linear normalization | |
CN115700601A (zh) | 用于创建具有多个输出的机器学习系统的方法和设备 |