KR20230108335A - 신경 이미지 압축을 위한 잠재 공간에서의 대체 품질 인자 학습 - Google Patents
신경 이미지 압축을 위한 잠재 공간에서의 대체 품질 인자 학습 Download PDFInfo
- Publication number
- KR20230108335A KR20230108335A KR1020237021300A KR20237021300A KR20230108335A KR 20230108335 A KR20230108335 A KR 20230108335A KR 1020237021300 A KR1020237021300 A KR 1020237021300A KR 20237021300 A KR20237021300 A KR 20237021300A KR 20230108335 A KR20230108335 A KR 20230108335A
- Authority
- KR
- South Korea
- Prior art keywords
- adp
- quality factor
- target quality
- processor
- image
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/42—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/44—Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/46—Embedding additional information in the video signal during the compression process
- H04N19/463—Embedding additional information in the video signal during the compression process by compressing encoding parameters before transmission
-
- 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/04—Architecture, e.g. interconnection topology
- G06N3/0464—Convolutional networks [CNN, ConvNet]
-
- 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
- G06N3/084—Backpropagation, e.g. using gradient descent
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
- G06T9/002—Image coding using neural networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/154—Measured or subjectively estimated visual quality after decoding, e.g. measurement of distortion
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/172—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/30—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
-
- 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]
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- General Physics & Mathematics (AREA)
- Biomedical Technology (AREA)
- Molecular Biology (AREA)
- Health & Medical Sciences (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- General Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Compression Of Band Width Or Redundancy In Fax (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
잠재 공간에서 대체 품질 인자 학습을 사용하는 신경 이미지 압축은, 압축된 비트스트림 및 타깃 압축 품질을 표시하는 타깃 품질 인자를 수신하는 것, 압축된 비트스트림의 디코딩된 잠재 표현을 계산하는 것, 그리고 압축된 비트스트림의 디코딩된 잠재 표현 및 타깃 품질 인자에 기초하여, 재구성된 이미지를 계산하는 것, 컨볼루션 신경망의 하나 이상의 계층의 공유 디코딩 파라미터(SDP)를 사용하여 네트워크 순방향 계산에 기초하여 공유 특징을 산출하는 것, 컨볼루션 신경망의 하나 이상의 계층에 대한 추정된 적응형 디코딩 파라미터(ADP)를 공유 특징, 적응형 디코딩 파라미터 및 타깃 품질 인자에 기초하여 산출하는 것, 그리고 컨볼루션 신경망의 하나 이상의 계층에서의 추정된 ADP 및 공유 특징에 기초하여 출력 텐서를 산출하는 것을 포함한다.
Description
본 출원은 2021년 12월 13일자로 출원된 미국 가특허출원 제63/289,048호, 2021년 10월 18일자로 출원된 미국 가특허출원 제63/257,005호, 및 2022년 9월 21일자로 출원된 미국 특허출원 제17/949,434호에 대한 우선권을 주장하고, 이 출원들의 개시내용은 그 전체가 참조로 본 명세서에 포함된다.
본 개시내용의 예시적인 실시예와 일치하는 장치 및 방법은 신경 이미지 압축을 위한 잠재 공간(latent space)에서의 대체 품질 인자(substitutional quality factor) 학습에 관한 것이다.
ISO/IEC MPEG(JTC 1/SC 29/WG 11)는 고급 신경 이미지 및 비디오 압축 방법을 포함하는 향후의 비디오 코딩 기술의 표준화에 대한 잠재적인 필요성을 능동적으로 탐색해 왔다. ISO/IEC JPEG은 신경망(NN: Neural Network)을 사용하는 AI 기반 엔드-투-엔드(end-to-end) 신경 이미지 압축(NIC: Neural Image Compression)에 초점을 맞추는 JPEG-AI 그룹을 확립하였다.
이전의 접근 방식이 유망한 성능을 나타내었지만, 유연한 비트레이트 제어는 이전의 NIC 방법에 대해 난제인 채로 남아 있다. 종래에, 이는 레이트(rate)와 왜곡(압축된 이미지의 품질) 사이의 각각의 원하는 절충을 개별적으로 타깃로 하는 다수의 모델 인스턴스(model instance)를 트레이닝(training)하는 것을 요구할 수 있다. 이러한 다수의 모델 인스턴스 모두는 디코더 측에서 저장 및 전개되어 상이한 비트레이트(bitrate)로부터 이미지를 재구성할 수 있다. 또한, 이러한 모델 인스턴스는 임의의 원활한 비트레이트 제어를 제공할 수 없는데, 이는 모든 각각의 가능한 타깃 비트레이트에 대해 무한한 수의 모델 인스턴스를 트레이닝 및 저장하는 것이 어렵기 때문이다. 이전의 접근 방식은 다수의 미리 정의된 비트레이트의 압축을 달성하도록 하나의 모델 인스턴스가 트레이닝되는 멀티-레이트(multi-rate) NIC를 연구하였다. 그러나 임의의 원활한 비트레이트 제어는 아직 탐구되지 않은 미해결 문제로 남아 있다.
일부 실시예에 따르면, 잠재 공간에서 대체 품질 인자 학습을 사용하는 신경 이미지 압축을 위한 방법이 제공될 수 있으며, 이 방법은 적어도 하나의 프로세서에 의해 수행되고, 이 방법은 압축된 비트스트림(bitstream) 및 타깃 압축 품질을 표시하는 타깃 품질 인자를 수신하는 단계; 압축된 비트스트림의 디코딩된 잠재 표현을 계산하는 단계; 및 압축된 비트스트림의 디코딩된 잠재 표현 및 타깃 품질 인자에 기초하여, 재구성된 이미지를 계산하는 단계를 포함하며, 재구성된 이미지를 계산하는 단계는, 컨볼루션(convolutional) 신경망의 하나 이상의 계층의 공유 디코딩 파라미터(SDP: shared decoding parameters)를 사용하는 네트워크 순방향 계산(computation)에 기초하여 공유 특징을 산출(compute)하는 단계, 컨볼루션 신경망의 하나 이상의 계층에 대한 추정된 적응형 디코딩 파라미터(ADP: adaptive decoding parameters)를 공유 특징, 적응형 디코딩 파라미터 및 타깃 품질 인자에 기초하여 산출하는 단계, 및 컨볼루션 신경망의 하나 이상의 계층에서의 추정된 ADP 및 공유 특징에 기초하여 출력 텐서(tensor)를 산출하는 단계를 포함한다.
예시적인 실시예에 따르면, 컴퓨터 프로그램 코드를 저장하도록 구성된 적어도 하나의 메모리; 및 상기 적어도 하나의 메모리에 액세스하고 상기 컴퓨터 프로그램 코드에 의해 명령된 대로 동작하도록 구성된 적어도 하나의 프로세서를 포함하는 장치가 제공될 수 있으며, 상기 컴퓨터 프로그램 코드는 적어도 하나의 프로세서로 하여금, 압축된 비트스트림 및 타깃 압축 품질을 표시하는 타깃 품질 인자를 수신하게 하도록 구성된 수신 코드; 적어도 하나의 프로세서로 하여금, 압축된 비트스트림의 디코딩된 잠재 표현을 계산하게 하도록 구성된 제1 계산 코드; 및 적어도 하나의 프로세서로 하여금, 압축된 비트스트림의 디코딩된 잠재 표현 및 타깃 품질 인자에 기초하여, 재구성된 이미지를 계산하게 하도록 구성된 제2 계산 코드를 포함하고, 제2 계산 코드는, 적어도 하나의 프로세서로 하여금, 컨볼루션 신경망의 하나 이상의 계층의 공유 디코딩 파라미터(SDP)를 사용하는 네트워크 순방향 계산에 기초하여 공유 특징을 산출하게 하도록 구성된 제1 산출 코드, 적어도 하나의 프로세서로 하여금, 컨볼루션 신경망의 하나 이상의 계층에 대한 추정된 적응형 디코딩 파라미터(ADP)를 공유 특징, 적응형 디코딩 파라미터 및 타깃 품질 인자에 기초하여 산출하게 하도록 구성된 제2 산출 코드, 및 적어도 하나의 프로세서로 하여금, 하나 이상의 계층에서의 추정된 ADP 및 공유 특징에 기초하여 출력 텐서를 산출하게 하도록 구성된 제3 산출 코드를 포함하도록 추가로 구성된다.
일부 실시예에 따르면, 명령이 저장된 비-일시적 컴퓨터 판독 가능 기록 매체가 제공될 수 있으며, 이러한 명령은 디코더 내의 적어도 하나의 프로세서에 의해 실행될 때 프로세서로 하여금, 잠재 공간에서 대체 품질 인자 학습을 사용하여 신경 이미지 압축을 위한 방법을 수행하게 하고, 이 방법은 압축된 비트스트림 및 타깃 압축 품질을 표시하는 타깃 품질 인자를 수신하는 단계; 압축된 비트스트림의 디코딩된 잠재 표현을 계산하는 단계; 및 압축된 비트스트림의 디코딩된 잠재 표현 및 타깃 품질 인자에 기초하여, 재구성된 이미지를 계산하는 단계를 포함하며, 재구성된 이미지를 계산하는 단계는, 컨볼루션 신경망의 하나 이상의 계층의 공유 디코딩 파라미터(SDP)를 사용하여 네트워크 순방향 계산에 기초하여 공유 특징을 산출하는 단계, 컨볼루션 신경망의 하나 이상의 계층에 대한 추정된 적응형 디코딩 파라미터(ADP)를 공유 특징, 적응형 디코딩 파라미터 및 타깃 품질 인자에 기초하여 산출하는 단계, 및 하나 이상의 계층에서의 추정된 ADP 및 공유 특징에 기초하여 출력 텐서를 산출하는 단계를 포함한다.
본 개시내용의 예시적인 실시예의 특징, 이점 및 의의는 유사한 부호가 유사한 엘리먼트를 표시하는 첨부된 도면을 참조하여 아래에서 설명될 것이다.
도 1은 본 명세서에서 설명되는 시스템들 및/또는 방법이 구현될 수 있는 예시적인 환경의 도면이다.
도 2는 도 1의 하나 이상의 디바이스의 예시적인 컴포넌트의 도면이다.
도 3a 및 도 3b는 실시예에 따른, 메타 학습(meta-learning)에 의한 적응형 신경 이미지 압축을 위한 메타 NIC 아키텍처(meta-NIC architecture)(300A, 300B)의 블록도이다.
도 4a 및 도 4b는 실시예에 따른, 테스트 스테이지(test stage) 동안 메타 학습에 의한 적응형 신경 이미지 압축을 위한 장치(400)의 블록도이다.
도 4c는 메타 NIC 디코더의 추론 작업 흐름의 블록도이다.
도 5a 및 도 5b는 실시예에 따른, 메타 학습에 의한 테스트 스테이지에서의 인코더 작업 흐름에 대한 메타 NIC 아키텍처(500A, 500B)의 블록도이다.
도 6은 잠재 공간에서 대체 품질 인자 학습을 사용하는 신경 이미지 압축을 위한 방법의 흐름도이다.
도 1은 본 명세서에서 설명되는 시스템들 및/또는 방법이 구현될 수 있는 예시적인 환경의 도면이다.
도 2는 도 1의 하나 이상의 디바이스의 예시적인 컴포넌트의 도면이다.
도 3a 및 도 3b는 실시예에 따른, 메타 학습(meta-learning)에 의한 적응형 신경 이미지 압축을 위한 메타 NIC 아키텍처(meta-NIC architecture)(300A, 300B)의 블록도이다.
도 4a 및 도 4b는 실시예에 따른, 테스트 스테이지(test stage) 동안 메타 학습에 의한 적응형 신경 이미지 압축을 위한 장치(400)의 블록도이다.
도 4c는 메타 NIC 디코더의 추론 작업 흐름의 블록도이다.
도 5a 및 도 5b는 실시예에 따른, 메타 학습에 의한 테스트 스테이지에서의 인코더 작업 흐름에 대한 메타 NIC 아키텍처(500A, 500B)의 블록도이다.
도 6은 잠재 공간에서 대체 품질 인자 학습을 사용하는 신경 이미지 압축을 위한 방법의 흐름도이다.
본 개시내용은 디코딩된 잠재 공간에서 대체 품질 인자(QF: Quality Factor)를 구함으로써 메타 신경 이미지 압축(메타 NIC: Meta Neural Image Compression) 프레임워크(framework)를 위한 방법 및 장치를 설명한다. 메타 학습 메커니즘(mechanism)은 입력 이미지의 디코딩된 잠재 특징 및 타깃 압축 품질에 기초하여 인코더 상에서 각각의 이미지에 대한 대체 품질 제어 파라미터를 적응적으로 산출하는 데 사용될 수 있다. 대체 품질 제어 파라미터는 디코더가 이미지를 재구성하고 있을 때 타깃 이미지의 보다 양호한 복원을 향해 산출된 품질 적응적 가중치 파라미터를 개선하는 데 사용될 수 있다.
도 1은 실시예에 따라, 본 명세서에서 설명되는 방법, 장치 및 시스템이 구현될 수 있는 환경(100)의 도면이다.
도 1에 도시된 바와 같이, 환경(100)은 사용자 디바이스(110), 플랫폼(120) 및 네트워크(130)를 포함할 수 있다. 환경(100)의 디바이스는 유선 접속, 무선 접속, 또는 유선 접속과 무선 접속의 조합을 통해 상호 접속될 수 있다.
사용자 디바이스(110)는 플랫폼(120)과 연관된 정보를 수신, 생성, 저장, 프로세싱 및/또는 제공할 수 있는 하나 이상의 디바이스를 포함한다. 예를 들어, 사용자 디바이스(110)는 산출 디바이스(예컨대, 데스크톱 컴퓨터, 랩톱 컴퓨터, 태블릿 컴퓨터, 핸드헬드 컴퓨터, 스마트 스피커, 서버 등), 휴대 전화(예컨대, 스마트폰, 무선 전화 등), 웨어러블 디바이스(예컨대, 한 쌍의 스마트 안경 또는 스마트 워치), 또는 유사한 디바이스를 포함할 수 있다. 일부 구현에서, 사용자 디바이스(110)는 플랫폼(120)으로부터 정보를 수신하고 그리고/또는 플랫폼(120)에 정보를 전송할 수 있다.
플랫폼(120)은 본 명세서의 다른 곳에서 설명되는 것과 같은 하나 이상의 디바이스를 포함한다. 일부 구현에서, 플랫폼(120)은 클라우드 서버 또는 클라우드 서버의 그룹을 포함할 수 있다. 일부 구현에서, 플랫폼(120)은 소프트웨어 컴포넌트가 스왑(swap) 인 또는 아웃될 수 있도록 모듈식으로 설계될 수 있다. 이에 따라, 플랫폼(120)은 상이한 사용을 위해 용이하게 그리고/또는 신속하게 재구성될 수 있다.
일부 구현에서, 도시된 바와 같이, 플랫폼(120)은 클라우드 산출 환경(122)에서 호스팅될 수 있다. 특히, 본 명세서에서 설명되는 구현은 플랫폼(120)이 클라우드 산출 환경(122)에서 호스팅되는 것으로 설명하지만, 일부 구현에서, 플랫폼(120)은 클라우드 기반이 아닐 수 있거나(즉, 클라우드 산출 환경 외부에서 구현될 수 있거나) 부분적으로 클라우드 기반일 수 있다.
클라우드 산출 환경(122)은 플랫폼(120)을 호스팅하는 환경을 포함한다. 클라우드 산출 환경(122)은 플랫폼(120)을 호스팅하는 디바이스(들) 및/또는 시스템(들)의 물리적 위치 및 구성에 대한 최종 사용자(예컨대, 사용자 디바이스(110)) 지식을 요구하지 않는 계산, 소프트웨어, 데이터 액세스, 저장 등의 서비스를 제공할 수 있다. 도시된 바와 같이, 클라우드 산출 환경(122)은 (총괄하여 "산출 자원들(124)"로 그리고 개별적으로 "산출 자원(124)"으로 지칭되는) 산출 자원(124)의 그룹을 포함할 수 있다.
산출 자원(124)은 하나 이상의 개인용 컴퓨터, 워크스테이션 컴퓨터, 서버 디바이스, 또는 다른 타입의 계산 및/또는 통신 디바이스를 포함한다. 일부 구현에서, 산출 자원(124)은 플랫폼(120)을 호스팅할 수 있다. 클라우드 자원은 산출 자원(124)에서 실행되는 산출 인스턴스, 산출 자원(124)에서 제공되는 저장 디바이스, 산출 자원(124)에 의해 제공되는 데이터 전송 디바이스 등을 포함할 수 있다. 일부 구현에서, 산출 자원(124)은 유선 접속, 무선 접속, 또는 유선 접속과 무선 접속의 조합을 통해 다른 산출 자원(124)과 통신할 수 있다.
도 1에 추가로 도시된 바와 같이, 산출 자원(124)은 하나 이상의 애플리케이션(application)("APP")(124-1), 하나 이상의 가상 머신(virtual machine)("VM")(124-2), 가상화된 저장소(virtualized storage)("VS")(124-3), 하나 이상의 하이퍼바이저("HYP")(124-4) 등과 같은 클라우드 자원의 그룹을 포함한다.
애플리케이션(124-1)은 사용자 디바이스(110) 및/또는 플랫폼(120)에 제공되거나 이들에 의해 액세스될 수 있는 하나 이상의 소프트웨어 애플리케이션을 포함한다. 애플리케이션(124-1)은 사용자 디바이스(110) 상에 소프트웨어 애플리케이션을 설치 및 실행할 필요성을 제거할 수 있다. 예를 들어, 애플리케이션(124-1)은 플랫폼(120)과 연관된 소프트웨어 및/또는 클라우드 산출 환경(122)을 통해 제공될 수 있는 임의의 다른 소프트웨어를 포함할 수 있다. 일부 구현에서, 하나의 애플리케이션(124-1)은 가상 머신(124-2)을 통해 하나 이상의 다른 애플리케이션(124-1)으로/으로부터 정보를 송신/수신할 수 있다.
가상 머신(124-2)은 물리적 머신과 같은 프로그램을 실행하는 머신(예컨대, 컴퓨터)의 소프트웨어 구현을 포함한다. 가상 머신(124-2)은 가상 머신(124-2)에 의한 임의의 실제 머신에 대한 대응 정도 및 사용에 따라, 시스템 가상 머신 또는 프로세스 가상 머신일 수 있다. 시스템 가상 머신은 완전한 운영 체제(operating system)("OS")의 실행을 지원하는 완전한 시스템 플랫폼을 제공할 수 있다. 프로세스 가상 머신은 단일 프로그램을 실행할 수 있고, 단일 프로세스를 지원할 수 있다. 일부 구현에서, 가상 머신(124-2)은 사용자(예컨대, 사용자 디바이스(110))를 대신하여 실행될 수 있고, 클라우드 산출 환경(122)의 인프라 구조, 이를테면 데이터 관리, 동기화 또는 장기 데이터 전송을 관리할 수 있다.
가상화된 저장소(124-3)는 산출 자원(124)의 저장 시스템 또는 디바이스 내에서 가상화 기법을 사용하는 하나 이상의 저장 시스템 및/또는 하나 이상의 디바이스를 포함한다. 일부 구현에서, 저장 시스템의 컨텍스트 내에서, 가상화의 타입은 블록 가상화 및 파일 가상화를 포함할 수 있다. 블록 가상화는 물리적 저장소 또는 이종 구조에 관계없이 저장 시스템이 액세스될 수 있도록 물리적 저장소로부터의 논리적 저장소의 추상화(또는 분리)를 의미할 수 있다. 분리는, 저장 시스템의 관리자가 최종 사용자를 위한 저장소를 어떻게 관리하는지에 있어 관리자의 유연성을 허용할 수 있다. 파일 가상화는 파일 레벨에서 액세스되는 데이터와 파일이 물리적으로 저장되는 위치 사이의 의존성을 제거할 수 있다. 이는 저장소 사용, 서버 통합, 및/또는 비파괴적 파일 마이그레이션(migration)의 성능의 최적화를 가능하게 할 수 있다.
하이퍼바이저(124-4)는 다수의 운영 체제(예컨대, "게스트 운영 체제")가 산출 자원(124)과 같은 호스트 컴퓨터 상에서 동시에 실행될 수 있게 하는 하드웨어 가상화 기법을 제공할 수 있다. 하이퍼바이저(124-4)는 게스트 운영 체제에 가상 운영 플랫폼을 제시할 수 있고, 게스트 운영 체제의 실행을 관리할 수 있다. 다양한 운영 체제의 다수의 인스턴스는 가상화된 하드웨어 자원을 공유할 수 있다.
네트워크(130)는 하나 이상의 유선 및/또는 무선 네트워크를 포함한다. 예를 들어, 네트워크(130)는 셀룰러 네트워크(예컨대, 5세대(5G: fifth generation) 네트워크, 롱 텀 에볼루션(LTE: long-term evolution) 네트워크, 3세대(3G: third generation) 네트워크, 코드 분할 다중 액세스(CDMA: code division multiple access) 네트워크 등), 공중 육상 모바일 네트워크(PLMN: public land mobile network), 근거리 네트워크(LAN: local area network), 광역 네트워크(WAN: wide area network), 도시권 네트워크(MAN: metropolitan area network), 전화 네트워크(예컨대, 공중 전화 교환 네트워크(PSTN: Public Switched Telephone Network)), 사설 네트워크, 애드 혹 네트워크, 인트라넷, 인터넷, 광섬유 기반 네트워크 등, 및/또는 이들 또는 다른 타입의 네트워크의 조합을 포함할 수 있다.
도 1에 도시된 디바이스 및 네트워크의 수 및 배열은 일례로 제공된다. 실제로, 도 1에 도시된 것보다 추가 디바이스 및/또는 네트워크, 더 적은 디바이스 및/또는 네트워크, 상이한 디바이스 및/또는 네트워크, 또는 상이하게 배열된 디바이스 및/또는 네트워크가 존재할 수 있다. 더욱이, 도 1에 도시된 2개 이상의 디바이스가 단일 디바이스 내에 구현될 수 있거나, 도 1에 도시된 단일 디바이스가 다수의 분산형 디바이스로서 구현될 수 있다. 추가로 또는 대안으로, 환경(100)의 한 세트의 디바이스(예컨대, 하나 이상의 디바이스)가 환경(100)의 다른 세트의 디바이스에 의해 수행되는 것으로 설명되는 하나 이상의 동작을 수행할 수 있다.
도 2는 도 1의 하나 이상의 디바이스의 예시적인 컴포넌트의 블록도이다.
디바이스(200)는 사용자 디바이스(110) 및/또는 플랫폼(120)에 대응할 수 있다. 도 2에 도시된 바와 같이, 디바이스(200)는 버스(210), 프로세서(220), 메모리(230), 저장 컴포넌트(240), 입력 컴포넌트(250), 출력 컴포넌트(260) 및 통신 인터페이스(270)를 포함할 수 있다.
버스(210)는 디바이스(200)의 컴포넌트 사이의 통신을 허용하는 컴포넌트를 포함한다. 프로세서(220)는 하드웨어, 펌웨어, 또는 하드웨어와 소프트웨어의 조합으로 구현될 수 있다. 프로세서(220)는 중앙 프로세싱 유닛(CPU: central processing unit), 그래픽 프로세싱 유닛(GPU: graphics processing unit), 가속 프로세싱 유닛(APU: accelerated processing unit), 마이크로프로세서, 마이크로컨트롤러, 디지털 신호 프로세서(DSP: digital signal processor), 필드 프로그래밍 가능 게이트 어레이(FPGA: field-programmable gate array), 주문형 집적 회로(ASIC: application-specific integrated circuit), 또는 다른 타입의 프로세싱 컴포넌트이다. 일부 구현에서, 프로세서(220)는 동작을 수행하도록 프로그래밍될 수 있는 하나 이상의 프로세서를 포함한다. 메모리(230)는 랜덤 액세스 메모리(RAM: random access memory), 판독 전용 메모리(ROM: read only memory), 및/또는 프로세서(220)에 의한 사용을 위한 정보 및/또는 명령을 저장하는 다른 타입의 동적 또는 정적 저장 디바이스(예컨대, 플래시 메모리, 자기 메모리 및/또는 광학 메모리)를 포함한다.
저장 컴포넌트(240)는 디바이스(200)의 동작 및 사용과 관련된 정보 및/또는 소프트웨어를 저장한다. 예를 들어, 저장 컴포넌트(240)는 하드 디스크(예컨대, 자기 디스크, 광 디스크, 광 자기 디스크, 및/또는 솔리드 스테이트 디스크), 콤팩트 디스크(CD: compact disc), 디지털 다목적 디스크(DVD: digital Versatile disc), 플로피 디스크, 카트리지, 자기 테이프, 및/또는 다른 타입의 비-일시적 컴퓨터 판독 가능 매체를 대응하는 드라이브와 함께 포함할 수 있다.
입력 컴포넌트(250)는 이를테면, 사용자 입력(예컨대, 터치 스크린 디스플레이, 키보드, 키패드, 마우스, 버튼, 스위치 및/또는 마이크로폰)을 통해 디바이스(200)가 정보를 수신할 수 있게 하는 컴포넌트를 포함한다. 추가로 또는 대안으로, 입력 컴포넌트(250)는 정보를 감지하기 위한 센서(예컨대, 글로벌 포지셔닝 시스템(GPS: global positioning system) 컴포넌트, 가속도계, 자이로스코프 및/또는 액추에이터)를 포함할 수 있다. 출력 컴포넌트(260)는 디바이스(200)로부터의 출력 정보를 제공하는 컴포넌트(예컨대, 디스플레이, 스피커 및/또는 하나 이상의 발광 다이오드(LED: light-emitting diode))를 포함한다.
통신 인터페이스(270)는, 디바이스(200)가 이를테면, 유선 접속, 무선 접속, 또는 유선 접속과 무선 접속의 조합을 통해 다른 디바이스와 통신할 수 있게 하는 트랜시버형 컴포넌트(예컨대, 트랜시버 및/또는 개별 수신기 및 전송기)를 포함한다. 통신 인터페이스(270)는 디바이스(200)가 다른 디바이스로부터 정보를 수신하고 그리고/또는 다른 디바이스에 정보를 제공하도록 허용할 수 있다. 예를 들어, 통신 인터페이스(270)는 이더넷 인터페이스, 광학 인터페이스, 동축 인터페이스, 적외선 인터페이스, 무선 주파수(RF: radio frequency) 인터페이스, 범용 직렬 버스(USB: universal serial bus) 인터페이스, Wi-Fi 인터페이스, 셀룰러 네트워크 인터페이스 등을 포함할 수 있다.
디바이스(200)는 본 명세서에서 설명되는 하나 이상의 프로세스를 수행할 수 있다. 디바이스(200)는 프로세서(220)가 메모리(230) 및/또는 저장 컴포넌트(240)와 같은 비-일시적 컴퓨터 판독 가능 매체에 의해 저장된 소프트웨어 명령을 실행하는 것에 대한 응답으로 이러한 프로세스를 수행할 수 있다. 컴퓨터 판독 가능 매체는 본 명세서에서 비-일시적 메모리 디바이스로서 정의된다. 메모리 디바이스는 단일 물리적 저장 디바이스 내의 메모리 공간 또는 다수의 물리적 저장 디바이스에 걸쳐 확산된 메모리 공간을 포함한다.
소프트웨어 명령은 통신 인터페이스(270)를 통해 다른 컴퓨터 판독 가능 매체로부터 또는 다른 디바이스로부터 메모리(230) 및/또는 저장 컴포넌트(240)로 판독될 수 있다. 실행될 때, 메모리(230) 및/또는 저장 컴포넌트(240)에 저장된 소프트웨어 명령은 프로세서(220)로 하여금 본 명세서에서 설명되는 하나 이상의 프로세스를 수행하게 할 수 있다. 추가로 또는 대안으로, 본 명세서에서 설명되는 하나 이상의 프로세스를 수행하기 위해 소프트웨어 명령 대신에 또는 소프트웨어 명령과 조합하여, 하드와이어드(hardwired) 회로가 사용될 수 있다. 따라서 본 명세서에서 설명되는 구현은 하드웨어 회로 및 소프트웨어의 임의의 특정 조합으로 제한되지 않는다.
도 2에 도시된 컴포넌트의 수와 배열은 일례로 제공된다. 실제로, 디바이스(200)는 추가 컴포넌트, 더 적은 컴포넌트, 상이한 컴포넌트, 또는 도 2에 도시된 것과는 상이하게 배열된 컴포넌트를 포함할 수 있다. 추가로 또는 대안으로, 디바이스(200)의 한 세트의 컴포넌트(예컨대, 하나 이상의 컴포넌트)가 디바이스(200)의 다른 세트의 컴포넌트에 의해 수행되는 것으로 설명되는 하나 이상의 동작을 수행할 수 있다.
본 개시내용은 디코딩된 잠재 공간에서 대체 QF를 지원하는 메타 NIC를 제안한다. 메타 학습 메커니즘은 입력 이미지의 디코딩된 잠재 특징 및 타깃 압축 품질에 기초하여 인코더 상에서 각각의 이미지에 대한 대체 품질 제어 파라미터를 적응적으로 산출하는 데 사용될 수 있다. 대체 품질 제어 파라미터는 디코더가 이미지를 재구성하고 있을 때 타깃 이미지의 보다 양호한 복원을 향해 산출된 품질 적응적 가중치 파라미터를 개선하는 데 사용될 수 있다.
(h, w, c) 크기의 입력 이미지(x)가 주어지면 ― h, w, c는 각각 높이, 폭 및 채널의 수임 ―, NIC 작업 흐름의 테스트 스테이지의 타깃은 다음과 같이 설명될 수 있다. 입력 이미지(x)는 정규 이미지 프레임(t = 1), 하나를 넘는 이미지 프레임(t > 1)을 포함하는 4차원 비디오 시퀀스 등일 수 있다. 각각의 이미지 프레임은 컬러 이미지(c = 3), 그레이-스케일(gray-scale) 이미지(c = 1), rgb + 깊이 이미지(c = 4) 등일 수 있다. 저장 및 전송을 위해 소형일 수 있는 압축된 표현()이 계산될 수 있다. 그런 다음, 압축된 표현()에 기초하여, 출력 이미지()가 재구성될 수 있고, 재구성된 출력 이미지()는 원본 입력 이미지(x)와 유사할 수 있다. 왜곡 손실 D(x, )가 피크 신호대 잡음비(PSNR: peak signal-to-noise ratio) 또는 구조적 유사도 지수 측정(SSIM: structural similarity index measure)과 같은 재구성 에러를 측정하는 데 사용될 수 있다. 레이트 손실 R()가 산출되어, 압축된 표현()의 비트 소비를 측정할 수 있다. 공동 레이트-왜곡(RD: Rate-Distortion) 손실을 형성하기 위해 절충 하이퍼파라미터(hyperparameter)(λ)가 사용될 수 있다:
(1).
큰 하이퍼파라미터(λ)를 이용한 트레이닝은 더 작은 왜곡을 갖지만 더 많은 비트 소비를 하는 압축 모델을 야기할 수 있으며, 그 반대도 마찬가지이다. 종래에, 각각의 미리 정의된 하이퍼파라미터(λ)에 대해, NIC 모델 인스턴스가 트레이닝될 것이며, 이는 하이퍼파라미터(λ)의 다른 값에 대해 잘 작동하지 않을 것이다. 따라서 압축된 스트림의 다수의 비트레이트를 달성하기 위해, 종래의 방법은 다수의 모델 인스턴스를 트레이닝 및 저장하는 것을 요구할 수 있다. 또한, 실제로 하이퍼파라미터(λ)의 모든 가능한 값에 대해 모델을 트레이닝하는 것이 어려울 수 있기 때문에, 종래의 방법은 임의의 원활한 비트레이트 제어와 같은 임의의 원활한 품질 제어를 달성할 수 없다. 추가로, 모델 인스턴스는 각각의 타입의 메트릭(metric)에 의해(예컨대, 각각의 왜곡 메트릭, 즉 PSNR, SSIM, 이 둘 모두의 가중된 조합, 또는 다른 메트릭에 대해) 측정된 손실을 최적화하도록 트레이닝될 필요가 있으며, 종래의 방법은 원활한 품질 메트릭 제어를 달성할 수 없다.
도 3a 및 도 3b는 실시예에 따른, 메타 학습에 의한 적응형 신경 이미지 압축을 위한 메타 NIC 아키텍처(300A, 300B)의 블록도이다.
도 3a에 도시된 바와 같이, 메타 NIC 아키텍처(300A)는 공유 디코딩 NN(305) 및 적응형 디코딩 NN(310)을 포함한다.
도 3b에 도시된 바와 같이, 메타 NIC 아키텍처(300B)는 공유 디코딩 계층(325, 330) 및 적응형 디코딩 계층(335, 340)을 포함한다.
본 개시내용에서, 기본 NIC 인코더 및 기본 NIC 디코더의 모델 파라미터는 각각 공유 디코딩 파라미터(SDP) 및 적응형 디코딩 파라미터(ADP)를 나타내는 2개의 부분(, )으로 분리된다. 도 3a 및 도 3b는 NIC 네트워크 아키텍처의 2개의 실시예를 도시한다.
도 3a에서, SDP 및 ADP는 분리된 개별 NN 모듈이고, 이러한 개별 모듈은 네트워크 순방향 계산을 위해 순차적으로 서로 접속된다. 여기서, 도 3a는 이러한 개별 NN 모듈을 접속하는 순차적인 순서를 도시한다. 다른 차수가 또한 사용될 수 있다.
도 3b에서, 파라미터는 NN 계층 내에서 분할될 수 있다. (j) 및 (j)는 NIC 디코더의 j번째 계층에 대한 SDP 및 ADP를 각각 나타낸다고 가정한다. 네트워크는 SDP 및 ADP에 대한 대응하는 입력에 각각 기초하여 추론 출력을 산출할 것이고, 이러한 출력은 (예컨대, 덧셈, 연결, 곱셈 등에 의해) 조합되고, 이어서 다음 계층으로 전송될 것이다.
도 3a의 실시예는 공유 디코딩 NN(315)((j)) 및 적응형 디코딩 NN(320)((j))에서의 계층이 비어 있는 도 3b의 경우로 보일 수 있다. 따라서 다른 실시예에서, 도 3a 및 도 3b의 네트워크 구조가 조합될 수 있으며, 여기서 NIC 아키텍처는 순수하게 공유된 인코딩/디코딩 계층 및/또는 순수하게 적응형 인코딩/디코딩 계층 모두, 그리고 부분적으로 공유된 인코딩/디코딩 파라미터 및 부분 적응형 인코딩/디코딩 파라미터를 갖는 혼합된 계층을 포함한다.
일부 실시예에서, 인코더의 NN 구조는 어떠한 제약도 갖지 않는다. 예를 들어, 각각의 이미지(x)에 대해, 압축된 표현()이 NN 기반 인코더에 의해 생성될 수 있다. 이어서, 압축된 표현()은 양자화되고, 엔트로피 인코딩되어 비트스트림(')을 생성한 다음, 엔트로피 디코딩되고, 역양자화되어, 디코딩된 잠재 표현()을 생성할 수 있다. 일부 실시예에서, 각각의 원하는 압축 품질에 대해 개별적인 인코더 모델 인스턴스가 사용될 수 있다. 다른 실시예에서, 메타 NIC 디코더와 유사한 메타 NIC 인코더가 공유 인코딩 파라미터 및 적응형 인코딩 파라미터와 함께 사용될 수 있다.
도 4a 및 도 4b는 실시예에 따른, 테스트 스테이지 동안 메타 학습에 의한 적응형 신경 이미지 압축을 위한 장치(400)의 블록도이다. 추가로, 도 4c는 메타 NIC 디코더의 추론 작업 흐름의 블록도이다.
도 4a에 도시된 바와 같이, 장치(400)는 디코더(410) 및 메타 NIC 디코더(420)를 포함한다.
도 4b에 도시된 바와 같이, 메타 NIC 아키텍처(400B)는 디코더(410), 대체 섭동(Substitutional Perturbation) 생성 모듈(420) 및 메타 NIC 디코더(430)를 포함한다.
도 4c에서, 메타 NIC 아키텍처(400B)는 SDP 추론 모듈(422), ADP 예측 모듈(424) 및 ADP 추론 모듈(426)을 포함한다.
도 4a는 메타 NIC 프레임워크의 테스트 스테이지에서의 디코더의 전체 작업 흐름을 도시한다. (j) 및 (j)는 메타 NIC 디코더(420)의 j번째 계층에 대한 SDP 및 ADP를 각각 나타낸다고 가정한다. 이는 예시적인 표기인데, 완전히 공유되는 계층의 경우, (j)는 비어 있기 때문이다. 완전히 적응적인 계층의 경우, (j)는 비어 있다. 즉, 이 표기는 도 3a 및 도 3b의 실시예 모두에 사용될 수 있다.
도 4a 및 도 4b에서, 압축된 비트스트림(')이 수신되며, 이는 (통상적으로 엔트로피 디코딩 및 역양자화 동작으로 구성된) 디코딩 모듈(410)을 통과하여, 디코딩된 잠재 표현()을 산출할 수 있다. 동시에, 재구성된 이미지의 타깃 압축 품질을 표시하는 타깃 QF(Λ)가 인코더로부터 전송되어 수신될 수 있다. QF(Λ)의 더 많은 세부사항은 인코딩 프로세스에서 나중에 설명될 것이다. 추가로, 도 4b에서, 메타 NIC 디코딩 모듈(430)은 잠재 표현() 및 타깃 QF(Λ)에 기초하여 재구성된 이미지()를 산출한다. 메타 NIC 디코딩 모듈(430)에서, 는 메타 NIC 디코딩 NN을 통과하게 될 수 있다. f(j) 및 f(j+1)은 j번째 계층의 입력 및 출력 텐서를 나타낸다고 가정한다.
도 4c는 j번째 계층에 대한 메타 NIC 디코더의 추론 작업 흐름의 일 실시예를 제공한다. f(j) 및 (j)에 기초하여, SDP 추론 모듈(422)은 공유 추론 동작 G j (f(j), (j))에 기초하여 공유 특징 g(j)를 산출한다(예컨대, 동작은 j번째 계층의 SDP를 사용하여 네트워크 순방향 계산에 의해 모델링될 수 있다). f(j), g(j), (j) 및 Λ에 기초하여, ADP 예측 모듈(424)은 j번째 계층에 대한 추정된 ADP (j)를 산출한다. ADP 예측 모듈(424)은 통상적으로, 원본 ADP (i), 현재 입력 및 타깃 품질 표시자(Λ)에 기초하여 업데이트된 (j)를 예측하는 (예컨대, 컨볼루션 및 완전히 접속된 계층을 갖는) NN일 수 있다. 도 4c의 실시예에서, f(j)는 ADP 예측 모듈(424)에 대한 입력으로서 사용될 수 있다. 다른 일부 실시예에서는, f(j) 대신 g(j)가 사용될 수 있다. 다른 실시예에서, SDP 손실은 g(j)에 기초하여 산출될 수 있고, 손실의 변화도(gradient)는 ADP 예측에 대한 입력으로서 사용될 수 있다. 추정된 ADP (j) 및 공유 특징 g(j)에 기초하여, ADP 추론 모듈(426)은 ADP 추론(426) 동작 A j (g(j), (j))를 기초로 출력 텐서 f(j+1)을 산출한다(예컨대, 동작은 j번째 계층에서 추정된 ADP를 사용하여 네트워크 순방향 계산에 의해 모델링될 수 있다).
도 4c에서 설명되는 작업 흐름은 일반적인 표기법이다. (j)가 비어 있는 완전히 공유되는 계층의 경우, ADP 관련 모듈 및 f(j+1)=g(j)는 생략된다. (j)가 비어 있는 완전히 적응적인 계층의 경우, SDP 관련 모듈 및 g(j) = f(j)는 생략된다.
메타 NIC 디코더에 대해 총 M개의 계층이 존재한다고 가정하면, 마지막 계층의 출력은 재구성된 이미지()를 야기할 수 있다.
추가로, 도 4b에서, 디코딩된 잠재적 는 대체 섭동 생성 모듈(420)을 통과하게 될 수 있으며, 이는 잠재적 및 QF(Λ)에 기초하여 대체 잠재적 '를 산출한다. 이어서, 이러한 대체 잠재적 '가 원본 대신 메타 NIC 디코딩 모듈(430)로 전달되어, 재구성된 이미지()를 산출할 수 있다.
도 5a 및 도 5b는 실시예에 따른, 메타 학습에 의한 테스트 스테이지에서의 인코더 작업 흐름에 대한 메타 NIC 아키텍처(500A, 500B)의 블록도이다.
도 5a에 도시된 바와 같이, 메타 NIC 아키텍처(500A)는 NN 인코딩 모듈(505), 인코딩 모듈(510), 디코딩 모듈(515), 메타 NIC 디코딩 모듈(520), 왜곡 손실 산출 모듈(525) 및 역전파(Back-Propagation) 모듈(530)을 포함한다.
도 5b에 도시된 바와 같이, 메타 NIC 아키텍처(500B)는 NN 인코딩 모듈(535), 인코딩 모듈(540), 디코딩 모듈(545), 대체 섭동 생성 모듈(550), 메타 NIC 디코딩 모듈(550), 왜곡 손실 산출 모듈(555) 및 역전파 모듈(565)을 포함한다.
도 5a에서, 입력 이미지(x)가 주어지고, 원본 타깃 QF()가 주어지면, NIC 인코더(505)는 인코딩된 잠재적 및 인코딩된 비트스트림을 생성할 수 있다. 더욱이, 인코더(510)는 디코딩된 잠재적 를 산출할 수 있다. 원본 타깃 QF()는 타깃 품질 메트릭, 타깃 비트레이트 등을 포함하는 타깃 압축 품질을 표시한다. 예를 들어, 총 q개의 다수의 품질 메트릭 (예컨대, PSNR, SSIM 등)가 있다고 가정하면, 전체 품질 메트릭은 일반적으로 다음과 같이 이들의 가중된 조합으로서 표현될 수 있으며:
(2)
여기서 가중치들은 w i ≥ 0이다. 원본 타깃 QF()는 모든 가중치들(w i ) 및 타깃 절충 하이퍼파라미터(λ)를 포함하는 단일 벡터: 일 수 있다.
다음으로, 디코딩 모듈(510)로부터의 디코딩된 잠재적 는 위에서 설명된 디코더의 메타 NIC 디코딩 모듈과 동일하게 동작하는 메타 NIC 디코딩 모듈(520)로 전달될 수 있다. 메타 NIC 디코딩 모듈(520)은 및 타깃 QF(Λ)에 기초하여, 재구성된 이미지()를 산출한다. 초기 Λ는 단순히, 원래의 타깃 QF()와 동일하도록 설정될 수 있다. 이어서, 원래의 입력(x)과 재구성된 사이의 재구성 손실(예컨대, MSE 또는 MSSSIM)이 왜곡 손실 산출 모듈(525)에서 산출될 수 있다. 이어서, 손실의 변화도가 역전파 모듈(530)에 의해 산출되고 역전파되어 타깃 QF(Λ)를 업데이트할 수 있다. 업데이트된 타깃 QF(Λ) 및 디코딩된 잠재적 에 기초하여, 메타 NIC 디코딩 모듈(520)은 업데이트된 재구성된 이미지()를 산출할 수 있다. 시스템은 이러한 여러 번의 반복을 거칠 수 있고, 최종적으로 업데이트된 타깃 QF(Λ)를 획득할 수 있으며, 이는 압축된 비트스트림(')과 함께 디코더 측에 송신될 수 있다.
일부 실시예에서, 업데이트된 타깃 QF(Λ)는 양자화 및 엔트로피 인코딩과 같은 인코딩 프로세스를 추가로 거쳐 전송 오버헤드를 더 감소시킬 수 있다.
도 5b에서, 디코딩 모듈(545)로부터의 디코딩된 잠재적 는 디코더 측과 동일한 대체 섭동 생성 모듈(550)을 통과하며, 대체 섭동 생성 모듈(550)은 잠재적 및 QF(Λ)에 기초하여 대체 잠재적 '를 산출한다. 이어서, 이러한 대체 잠재적 '가 원본 대신 메타 NIC 디코딩 모듈(555)로 전달되어, 재구성된 이미지()를 산출할 수 있다.
제안된 메타 NIC 프레임워크는 재구성을 위해 디코더 측에서의 임의의 평활한 QF(Λ)를 가능하게 한다. 다시 말해서, 위에서 설명된 프로세싱 작업 흐름은 임의의 평활한 타깃 QF(Λ)에 피팅(fit)되도록, 압축된 표현 및 재구성된 이미지를 산출할 것이다.
일부 실시예에 따르면, 트레이닝 프로세스가 구현될 수 있으며, 메타 NIC 인코더, 메타 NIC 디코더에 대해 SDP (j) 및 ADP (j)(j = 1,…, M), ADP 예측 NN(Φ d 로 표기된 모델 파라미터)뿐만 아니라, 대체 섭동 생성 모듈에 대한 파라미터(예컨대, 도 4b 및 도 5b 참조)를 학습하는 것을 타깃로 한다.
메타 NIC 인코더 및 메타 NIC 디코더는 MAML(Model-Agnostic Meta-Learning) 메커니즘을 통해 엔드-투-엔드 방식으로 트레이닝될 수 있다. 기본 메타 NIC 인코더 및 디코더가 트레이닝되면, 대체 섭동 생성 모듈은 디코딩된 잠재적 로부터 대체 잠재 표현(')을 산출하기 위한 피팅 손실을 최소화하면서 메타 NIC 인코더 및 디코더 파라미터를 고정시킴으로써 트레이닝될 수 있으며, 대체 잠재 잠재적 '는 일부 메트릭에 의해 측정된 원래의 디코딩된 잠재적 보다 더 양호하다(예컨대, 더 적은 왜곡 또는 더 양호한 지각 품질로, 메타 NIC 디코딩 모듈에 의해 원래의 디코딩된 잠재적 보다 더 양호한 재구성된 이미지를 생성할 수 있음).
도 6은 잠재 공간에서 대체 품질 인자 학습을 사용하는 신경 이미지 압축을 위한 프로세스(600)의 일 실시예의 흐름도이다.
도 6에 도시된 바와 같이, 프로세스(600)의 동작(610)에서, 압축된 비트스트림 및 타깃 압축 품질이 수신된다. 프로세스는 동작(620)으로 진행하며, 여기서는 도 4a 및 도 4b에 도시된 바와 같이, 압축된 비트스트림의 디코딩된 잠재 표현이 계산된다. 즉, 디코딩된 잠재 표현은 재구성된 이미지를 계산하는 데 사용될 수 있다.
프로세스는 동작(630)으로 진행하며, 여기서는 SDP에 기초하여 공유 특징이 산출될 수 있다. 프로세스는 동작(640)으로 진행하며, 여기서는 도 4c에 도시된 바와 같이 컨볼루션 신경망의 하나 이상의 계층에 대해 ADP가 산출된다. 따라서 출력 텐서는 추정된 ADP 및 공유 특징에 기초하여 산출될 수 있다.
상기한 개시내용은 예시 및 설명을 제공하지만, 구현을 개시된 바로 그 형태로 제한하거나 총망라하는 것으로 의도되는 것은 아니다. 수정 및 변형이 상기 개시내용에 비추어 가능하거나 구현의 실시로부터 얻어질 수 있다. 또한, 일 실시예의 하나 이상의 특징 또는 컴포넌트는 다른 실시예(또는 다른 실시예의 하나 이상의 특징)에 통합되거나 그와 조합될 수 있다. 추가로, 아래에 제공되는 동작의 흐름도 및 설명에서, 하나 이상의 동작이 생략될 수 있고, 하나 이상의 동작이 추가될 수 있으며, 하나 이상의 동작이 동시에(적어도 부분적으로) 수행될 수 있고, 하나 이상의 동작의 순서는 전환될 수 있다고 이해된다.
본 명세서에서 설명되는 시스템 및/또는 방법은 서로 다른 형태의 하드웨어, 펌웨어, 또는 하드웨어와 소프트웨어의 조합으로 구현될 수 있음이 명백할 것이다. 이러한 시스템 및/또는 방법을 구현하는 데 사용되는 실제 특수 제어 하드웨어 또는 소프트웨어 코드는 구현을 제한하지 않는다. 따라서 시스템 및/또는 방법의 동작 및 거동은 본 명세서에서 특정 소프트웨어 코드에 대한 언급 없이 설명되었다. 소프트웨어 및 하드웨어는 본 명세서의 설명에 기초하여 시스템 및/또는 방법을 구현하도록 설계될 수 있다고 이해된다.
특징의 특정 조합이 청구항들에서 언급되고 그리고/또는 명세서에 개시되지만, 이러한 조합은 가능한 구현의 개시내용을 제한하는 것으로 의도되는 것이 아니다. 실제로, 이러한 특징 중 다수는 청구항에서 구체적으로 언급되지 않고 그리고/또는 명세서에 개시되지 않은 방식으로 조합될 수 있다. 아래에 열거된 각각의 종속 청구항은 단지 하나의 청구항에만 직접적으로 의존할 수 있지만, 가능한 구현의 개시내용은 각각의 종속 청구항을 청구항 세트의 다른 모든 각각의 청구항과 조합하여 포함한다.
본 명세서에서 사용되는 어떠한 엘리먼트, 동작 또는 명령도 중요하거나 필수적인 것으로 명시적으로 기술되지 않는 한 그와 같이 해석되지 않아야 한다. 또한, 본 명세서에서 사용되는 바와 같이, 단수 표현들은 하나 이상의 항목들을 포함하는 것으로 의도되고, "하나 이상"과 상호 교환 가능하게 사용될 수 있다. 단 하나의 항목만이 의도된다면, "하나"라는 용어 또는 유사한 언어가 사용된다. 또한, 본 명세서에서 사용되는 바와 같이, "갖는다," "포함한다" 등의 용어는 제한을 두지 않는 용어인 것으로 의도된다. 또한, "~에 기초하여"라는 문구는 달리 명시적으로 언급되지 않는 한 "~에 적어도 부분적으로 기초하여"를 의미하는 것으로 의도된다. 더욱이, "[A] 및 [B] 중 적어도 하나" 또는 "[A] 또는 [B] 중 적어도 하나"와 같은 표현은 A만을 포함하거나, B만을 포함하거나, 또는 A와 B 모두를 포함하는 것으로 이해되어야 한다.
Claims (20)
- 적어도 하나의 프로세서에 의해 수행되는 신경 이미지 압축(neural image compression)을 위한 방법으로서,
압축된 비트스트림 및 타깃 압축 품질을 표시하는 타깃 품질 인자(target quality factor)를 수신하는 단계;
상기 압축된 비트스트림의 디코딩된 잠재(latent) 표현을 계산하는 단계; 및
상기 압축된 비트스트림의 디코딩된 잠재 표현 및 상기 타깃 품질 인자에 기초하여, 재구성된 이미지를 계산하는 단계를 포함하며,
상기 재구성된 이미지를 계산하는 단계는:
(ⅰ) 컨볼루션 신경망의 하나 이상의 계층의 공유 디코딩 파라미터(SDP: shared decoding parameters)를 사용하여 네트워크 순방향 계산(network forward computation)에 기초하여 공유 특징을 산출하는(computing) 단계,
(ⅱ) 상기 컨볼루션 신경망의 하나 이상의 계층에 대한 추정된 적응형 디코딩 파라미터(ADP: adaptive decoding parameters)를 상기 공유 특징, 상기 적응형 디코딩 파라미터 및 상기 타깃 품질 인자에 기초하여 산출하는 단계, 및
(ⅲ) 상기 컨볼루션 신경망의 하나 이상의 계층에서의 추정된 ADP 및 상기 공유 특징에 기초하여 출력 텐서(tensor)를 산출하는 단계를 포함하는,
신경 이미지 압축을 위한 방법. - 제1항에 있어서,
상기 추정된 ADP를 산출하는 단계는, 원본 ADP, 현재 입력, 및 타깃 품질 표시자에 기초하여, 업데이트된 ADP를 예측하는 ADP 예측 모듈에 의해 수행되는,
신경 이미지 압축을 위한 방법. - 제1항에 있어서,
원본 입력 이미지와 재구성된 이미지 사이의 재구성 손실을 산출하는 단계;
상기 산출된 재구성 손실에 기초하여 상기 타깃 품질 인자를 업데이트하는 단계; 및
상기 업데이트된 타깃 품질 인자 및 상기 압축된 비트스트림의 디코딩된 표현에 기초하여 상기 재구성 이미지를 업데이트하는 단계를 더 포함하는,
신경 이미지 압축을 위한 방법. - 제1항에 있어서,
상기 비트스트림의 디코딩된 잠재 표현 및 상기 타깃 품질 인자에 기초하여 상기 압축된 비트스트림의 대체 잠재 표현을 산출하는 단계를 더 포함하는,
신경 이미지 압축을 위한 방법. - 제4항에 있어서,
상기 재구성된 이미지를 산출하고 상기 대체 잠재 표현에 기초하여 상기 타깃 품질 인자를 업데이트하는 단계를 더 포함하는,
신경 이미지 압축을 위한 방법. - 제5항에 있어서,
상기 대체 잠재 표현이 대체 섭동(substitutional perturbation) 생성에 기초하여 산출된다는 결정에 대한 응답으로, 상기 재구성 손실이 최소화되는,
신경 이미지 압축을 위한 방법. - 제6항에 있어서,
상기 재구성된 이미지는 원본 이미지보다 더 적은 왜곡 및 더 높은 지각 품질로 생성되는,
신경 이미지 압축을 위한 방법. - 장치로서,
컴퓨터 프로그램 코드를 저장하도록 구성된 적어도 하나의 메모리; 및
상기 적어도 하나의 메모리에 액세스하고 상기 컴퓨터 프로그램 코드에 의해 명령된 대로 동작하도록 구성된 적어도 하나의 프로세서를 포함하며,
상기 컴퓨터 프로그램 코드는:
상기 적어도 하나의 프로세서로 하여금, 압축된 비트스트림 및 타깃 압축 품질을 표시하는 타깃 품질 인자를 수신하게 하도록 구성된 수신 코드;
상기 적어도 하나의 프로세서로 하여금, 상기 압축된 비트스트림의 디코딩된 잠재 표현을 계산하게 하도록 구성된 제1 계산 코드; 및
상기 적어도 하나의 프로세서로 하여금, 상기 압축된 비트스트림의 디코딩된 잠재 표현 및 상기 타깃 품질 인자에 기초하여, 재구성된 이미지를 계산하게 하도록 구성된 제2 계산 코드를 포함하고,
상기 제2 계산 코드는:
(ⅰ) 상기 적어도 하나의 프로세서로 하여금, 컨볼루션 신경망의 하나 이상의 계층의 공유 디코딩 파라미터(SDP)를 사용하는 네트워크 순방향 계산에 기초하여 공유 특징을 산출하게 하도록 구성된 제1 산출 코드,
(ⅱ) 상기 적어도 하나의 프로세서로 하여금, 상기 컨볼루션 신경망의 하나 이상의 계층에 대한 추정된 적응형 디코딩 파라미터(ADP)를 상기 공유 특징, 상기 적응형 디코딩 파라미터 및 상기 타깃 품질 인자에 기초하여 산출하게 하도록 구성된 제2 산출 코드, 및
(ⅲ) 상기 적어도 하나의 프로세서로 하여금, 상기 하나 이상의 계층에서의 추정된 ADP 및 상기 공유 특징에 기초하여 출력 텐서를 산출하게 하도록 구성된 제3 산출 코드를 포함하는,
장치. - 제8항에 있어서,
상기 컴퓨터 프로그램 코드는 적어도 하나의 프로세서로 하여금 원본 ADP, 현재 입력 및 타깃 품질 표시자에 기초하여, 업데이트된 ADP를 예측하는 ADP 예측 모듈에 의해 수행되는 추정된 ADP를 산출하게 하도록 구성된 제4 산출 코드를 더 포함하는,
장치. - 제8항에 있어서,
상기 컴퓨터 프로그램 코드는 상기 적어도 하나의 프로세서로 하여금:
원본 입력 이미지와 상기 재구성된 이미지 사이의 재구성 손실을 산출하게 하고;
상기 산출된 재구성 손실에 기초하여 상기 타깃 품질 인자를 업데이트하게 하고; 그리고
상기 업데이트된 타깃 품질 인자 및 상기 압축된 비트스트림의 디코딩된 표현에 기초하여 상기 재구성 이미지를 업데이트하게 하도록 구성된 제5 산출 코드를 더 포함하는,
장치. - 제8항에 있어서,
상기 컴퓨터 프로그램 코드는 상기 적어도 하나의 프로세서로 하여금, 상기 비트스트림의 디코딩된 잠재 표현 및 상기 타깃 품질 인자에 기초하여 상기 압축된 비트스트림의 대체 잠재 표현을 산출하게 하도록 구성된 제6 산출 코드를 더 포함하는,
장치. - 제11항에 있어서,
상기 제6 산출 코드는 상기 적어도 하나의 프로세서로 하여금, 상기 재구성된 이미지를 산출하게 하고 그리고 상기 대체 잠재 표현에 기초하여 상기 타깃 품질 인자를 업데이트하게 하도록 추가로 구성되는,
장치. - 제12항에 있어서,
대체 섭동 생성에 기초하여 상기 대체 잠재 표현이 산출될 때 상기 재구성 손실이 최소화되고,
상기 재구성된 이미지는 원본 이미지보다 더 적은 왜곡 및 더 높은 지각 품질로 생성될 수 있는,
장치. - 명령이 저장된 비-일시적 컴퓨터 판독 가능 기록 매체로서,
상기 명령은 적어도 하나의 프로세서에 의해 실행될 때, 상기 프로세서로 하여금:
압축된 비트스트림 및 타깃 압축 품질을 표시하는 타깃 품질 인자를 수신하게 하고;
상기 압축된 비트스트림의 디코딩된 잠재 표현을 계산하게 하고; 그리고
상기 압축된 비트스트림의 디코딩된 잠재 표현 및 상기 타깃 품질 인자에 기초하여, 재구성된 이미지를 계산하게 하며,
상기 재구성된 이미지를 계산하는 것은:
(ⅰ) 컨볼루션 신경망의 하나 이상의 계층의 공유 디코딩 파라미터(SDP)를 사용하여 네트워크 순방향 계산에 기초하여 공유 특징을 산출하는 것,
(ⅱ) 상기 컨볼루션 신경망의 하나 이상의 계층에 대한 추정된 적응형 디코딩 파라미터(ADP)를 상기 공유 특징, 상기 적응형 디코딩 파라미터 및 상기 타깃 품질 인자에 기초하여 산출하는 것, 그리고
(ⅲ) 상기 하나 이상의 계층에서의 추정된 ADP 및 상기 공유 특징에 기초하여 출력 텐서를 산출하는 것을 포함하는,
비-일시적 컴퓨터 판독 가능 기록 매체. - 제14항에 있어서,
상기 추정된 ADP를 산출하는 것은 원본 ADP, 현재 입력 및 타깃 품질 표시자에 기초하여, 업데이트된 ADP를 예측하는 ADP 예측 모듈에 의해 수행되는,
비-일시적 컴퓨터 판독 가능 기록 매체. - 제14항에 있어서,
상기 명령은 추가로 상기 적어도 하나의 프로세서로 하여금:
원본 입력 이미지와 상기 재구성된 이미지 사이의 재구성 손실을 산출하게 하고;
상기 산출된 재구성 손실에 기초하여 상기 타깃 품질 인자를 업데이트하게 하고; 그리고
상기 업데이트된 타깃 품질 인자 및 상기 압축된 비트스트림의 디코딩된 표현에 기초하여 상기 재구성 이미지를 업데이트하게 하는,
비-일시적 컴퓨터 판독 가능 기록 매체. - 제14항에 있어서,
상기 명령은 상기 적어도 하나의 프로세서로 하여금, 상기 비트스트림의 디코딩된 잠재 표현 및 상기 타깃 품질 인자에 기초하여 상기 압축된 비트스트림의 대체 잠재 표현을 산출하게 하는,
비-일시적 컴퓨터 판독 가능 기록 매체. - 제17항에 있어서,
상기 명령은 상기 적어도 하나의 프로세서로 하여금, 상기 재구성된 이미지를 산출하게 하고 그리고 상기 대체 잠재 표현에 기초하여 상기 타깃 품질 인자를 업데이트하게 하는,
비-일시적 컴퓨터 판독 가능 기록 매체. - 제18항에 있어서,
대체 섭동 생성에 기초하여 상기 대체 잠재 표현이 산출될 때, 상기 재구성 손실이 최소화되는,
비-일시적 컴퓨터 판독 가능 기록 매체. - 제19항에 있어서,
상기 재구성된 이미지는 원본 이미지보다 더 적은 왜곡 및 더 높은 지각 품질로 생성될 수 있는,
비-일시적 컴퓨터 판독 가능 기록 매체.
Applications Claiming Priority (7)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US202163257005P | 2021-10-18 | 2021-10-18 | |
US63/257,005 | 2021-10-18 | ||
US202163289048P | 2021-12-13 | 2021-12-13 | |
US63/289,048 | 2021-12-13 | ||
US17/949,434 US20230122449A1 (en) | 2021-10-18 | 2022-09-21 | Substitutional quality factor learning in the latent space for neural image compression |
US17/949,434 | 2022-09-21 | ||
PCT/US2022/045002 WO2023069235A1 (en) | 2021-10-18 | 2022-09-28 | Substitutional quality factor learning in the latent space for neural image compression |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20230108335A true KR20230108335A (ko) | 2023-07-18 |
Family
ID=85981175
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020237021300A KR20230108335A (ko) | 2021-10-18 | 2022-09-28 | 신경 이미지 압축을 위한 잠재 공간에서의 대체 품질 인자 학습 |
Country Status (6)
Country | Link |
---|---|
US (1) | US20230122449A1 (ko) |
EP (1) | EP4232954A4 (ko) |
JP (1) | JP2024519246A (ko) |
KR (1) | KR20230108335A (ko) |
CN (1) | CN116783598A (ko) |
WO (1) | WO2023069235A1 (ko) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11948090B2 (en) * | 2020-03-06 | 2024-04-02 | Tencent America LLC | Method and apparatus for video coding |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3398114B1 (en) * | 2016-02-05 | 2022-08-24 | Deepmind Technologies Limited | Compressing images using neural networks |
JP2020162025A (ja) * | 2019-03-27 | 2020-10-01 | キヤノン株式会社 | 画像処理システム、画像処理方法、および画像処理装置 |
-
2022
- 2022-09-21 US US17/949,434 patent/US20230122449A1/en active Pending
- 2022-09-28 CN CN202280008451.2A patent/CN116783598A/zh active Pending
- 2022-09-28 KR KR1020237021300A patent/KR20230108335A/ko active Search and Examination
- 2022-09-28 EP EP22884245.6A patent/EP4232954A4/en active Pending
- 2022-09-28 WO PCT/US2022/045002 patent/WO2023069235A1/en active Application Filing
- 2022-09-28 JP JP2023547760A patent/JP2024519246A/ja active Pending
Also Published As
Publication number | Publication date |
---|---|
WO2023069235A1 (en) | 2023-04-27 |
US20230122449A1 (en) | 2023-04-20 |
EP4232954A4 (en) | 2024-03-13 |
EP4232954A1 (en) | 2023-08-30 |
CN116783598A (zh) | 2023-09-19 |
JP2024519246A (ja) | 2024-05-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11582470B2 (en) | Method and apparatus for multi-scale neural image compression with intra-prediction residuals | |
JP7483030B2 (ja) | 潜在特徴領域におけるイントラ予測によるニューラル画像圧縮 | |
JP2023521318A (ja) | ニューラル画像圧縮のためのタスク適応型前処理のための方法、装置およびコンピュータプログラム | |
JP7416489B2 (ja) | 深層強化学習を用いたエンドツーエンドのタスク指向型潜在圧縮のための方法、装置およびコンピュータプログラム | |
KR20230108335A (ko) | 신경 이미지 압축을 위한 잠재 공간에서의 대체 품질 인자 학습 | |
KR20220061223A (ko) | 적대적 발생기들에 의한 레이트-적응형 신경 이미지 압축을 위한 방법 및 장치 | |
JP7471733B2 (ja) | 滑らかな品質制御による適応ニューラル画像圧縮のための代替の入力最適化 | |
US11652994B2 (en) | Neural image compression with adaptive intra-prediction | |
CN114930349A (zh) | 用于端到端图像压缩的特征替换的方法和装置 | |
JP7471730B2 (ja) | メタ学習によるレート制御を用いた適応ニューラル画像圧縮のための方法、装置及びプログラム | |
JP7434605B2 (ja) | メタ学習によるスムーズな品質制御を用いた適応ニューラル画像圧縮のための方法、装置、非一時的コンピュータ可読媒体、およびコンピュータプログラム | |
KR102709771B1 (ko) | 메타 러닝에 의한 유연한 하이퍼프라이어 모델을 갖는 적응 이미지 압축을 위한 방법 및 장치 | |
JP7508573B2 (ja) | 深層強化学習によるエンドツーエンドニューラル圧縮のための方法及び装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination |