KR20220061223A - 적대적 발생기들에 의한 레이트-적응형 신경 이미지 압축을 위한 방법 및 장치 - Google Patents

적대적 발생기들에 의한 레이트-적응형 신경 이미지 압축을 위한 방법 및 장치 Download PDF

Info

Publication number
KR20220061223A
KR20220061223A KR1020227012232A KR20227012232A KR20220061223A KR 20220061223 A KR20220061223 A KR 20220061223A KR 1020227012232 A KR1020227012232 A KR 1020227012232A KR 20227012232 A KR20227012232 A KR 20227012232A KR 20220061223 A KR20220061223 A KR 20220061223A
Authority
KR
South Korea
Prior art keywords
feature
neural network
loss
representation
processor
Prior art date
Application number
KR1020227012232A
Other languages
English (en)
Inventor
카이디 쉬
웨이 왕
웨이 장
산 류
Original Assignee
텐센트 아메리카 엘엘씨
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 텐센트 아메리카 엘엘씨 filed Critical 텐센트 아메리카 엘엘씨
Publication of KR20220061223A publication Critical patent/KR20220061223A/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/115Selection of the code volume for a coding unit prior to coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods 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/146Data rate or code amount at the encoder output
    • H04N19/147Data rate or code amount at the encoder output according to rate distortion criteria
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • G06N3/0454
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/047Probabilistic or stochastic networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/124Quantisation
    • H04N19/126Details of normalisation or weighting functions, e.g. normalisation matrices or variable uniform quantisers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods 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/146Data rate or code amount at the encoder output
    • H04N19/149Data rate or code amount at the encoder output by estimating the code amount by means of a model, e.g. mathematical model or statistical model

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Artificial Intelligence (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Biomedical Technology (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Biophysics (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Probability & Statistics with Applications (AREA)
  • Algebra (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

적대적 발생기들에 의한 레이트-적응형 신경 이미지 압축의 방법은, 적어도 하나의 프로세서에 의해 수행되며, 그리고, 제1 신경망의 제1 부분을 이용하여 입력 이미지의 제1 특징을 획득하는 단계; 획득된 제1 특징에 기초하여, 제2 신경망을 이용하여 제1 대체 특징을 발생시키는 단계; 및 제1 신경망의 제2 부분을 이용하여, 발생된 제1 대체 특징을 인코딩하여, 제1 인코딩된 표현을 발생시키는 단계를 포함한다. 본 방법은 발생된 제1 인코딩된 표현을 압축하는 단계; 압축된 표현을 압축해제하는 단계; 및 제3 신경망을 이용하여, 압축해제된 표현을 디코딩하여, 제1 출력 이미지를 복원하는 단계를 더 포함한다.

Description

적대적 발생기들에 의한 레이트-적응형 신경 이미지 압축을 위한 방법 및 장치
관련 출원들에 대한 상호-참조
본 출원은 미국 특허청에, 2020년 7월 21일에 출원된 미국 가특허 출원번호 제63/054,648호, 2020년 7월 21일에 출원된 미국 가특허 출원번호 제63/054,662호, 2020년 7월 21일에 출원된 미국 가특허 출원번호 제63/054,665호, 및 2021년 6월 24일에 출원된 미국 특허출원 번호 제17/356,722호에 기초하며 이들에 대해 우선권을 주장하며, 그 개시내용들은 그 전체가 본원에 참조로 포함된다.
ISO/IEC MPEG (JTC 1/SC 29/WG 11)는 미래 비디오 코딩 기술의 표준화에 대한 잠재적인 요구 사항들을 적극적으로 찾고 있다. ISO/IEC JPEG는 심층 신경망들(DNNs)을 이용한 AI-기반 단-대-단 신경 이미지 압축에 중점을 둔 JPEG-AI 그룹을 설립하였다. 최근의 접근법들의 성공은 진보된 신경 이미지 및 비디오 압축 방법론들에 대한 산업적 관심들을 점점 더 많이 끌었다.
유연한 비트-레이트 제어는 이전 신경 이미지 압축(NIC) 방법들에 대해 어려운 문제로 남아 있다. 종래, 각각의 원하는 레이트-왜곡(R-D)에서, 레이트와 왜곡(압축된 이미지들의 품질) 사이의 절충을 개별적으로 대상으로 하는 다수의 모델 인스턴스들을 훈련해야 할 수도 있다. 모든 이들 다수의 모델 인스턴스들은 상이한 비트 레이트들로부터 이미지들을 복원하기 위해 디코더 측 상에 저장 및 배치되어야 할 수도 있다. 이는 제한된 저장 및 컴퓨팅 리소스들을 가진 다수의 애플리케이션들의 경우 엄청나게 비쌀 수도 있다.
실시형태들에 따르면, 적대적 발생기들에 의한 레이트-적응형 신경 이미지 압축의 방법은 적어도 하나의 프로세서에 의해 수행되며, 그리고 제1 신경망의 제1 부분을 이용하여 입력 이미지의 제1 특징을 획득하는 단계; 획득된 제1 특징에 기초하여, 제2 신경망을 이용하여 제1 대체 특징을 발생시키는 단계; 및 제1 신경망의 제2 부분을 이용하여, 발생된 제1 대체 특징을 인코딩하여, 제1 인코딩된 표현을 발생시키는 단계를 포함한다. 본 방법은 발생된 제1 인코딩된 표현을 압축하는 단계; 압축된 표현을 압축해제하는 단계; 및 제3 신경망을 이용하여, 압축해제된 표현을 디코딩하여, 제1 출력 이미지를 복원하는 단계를 더 포함한다.
실시형태들에 따르면, 적대적 발생기들에 의한 레이트-적응형 신경 이미지 압축을 위한 장치는 프로그램 코드를 저장하도록 구성된 적어도 하나의 메모리; 및 프로그램 코드를 판독하고 프로그램 코드에 의해 명령되는 대로 동작하도록 구성된 적어도 하나의 프로세서를 포함한다. 프로그램 코드는 적어도 하나의 프로세서로 하여금, 제1 신경망의 제1 부분을 이용하여 입력 이미지의 제1 특징을 획득하게 하도록 구성된 제1 획득 코드; 적어도 하나의 프로세서로 하여금, 획득된 제1 특징에 기초하여, 제2 신경망을 이용하여 제1 대체 특징을 발생시키게 하도록 구성된 제1 발생 코드; 및 적어도 하나의 프로세서로 하여금, 제1 신경망의 제2 부분을 이용하여, 발생된 제1 대체 특징을 인코딩하여, 제1 인코딩된 표현을 발생시키게 하도록 구성된 제1 인코딩 코드를 포함한다. 프로그램 코드는 적어도 하나의 프로세서로 하여금, 발생된 제1 인코딩된 표현을 압축하게 하도록 구성된 압축 코드; 적어도 하나의 프로세서로 하여금, 압축된 표현을 압축해제하게 하도록 구성된 압축해제 코드; 및 적어도 하나의 프로세서로 하여금, 제3 신경망을 이용하여, 압축해제된 표현을 디코딩하여, 제1 출력 이미지를 복원하게 하도록 구성된 제1 디코딩 코드를 더 포함한다.
실시형태들에 따르면, 비일시적 컴퓨터-판독가능 매체는 적대적 발생기들에 의한 레이트-적응형 신경 이미지 압축을 위해 적어도 하나의 프로세서에 의해 실행될 때, 적어도 하나의 프로세서로 하여금, 제1 신경망의 제1 부분을 이용하여 입력 이미지의 제1 특징을 획득하게 하고; 획득된 제1 특징에 기초하여, 제2 신경망을 이용하여 제1 대체 특징을 발생시키게 하고; 그리고 제1 신경망의 제2 부분을 이용하여, 발생된 제1 대체 특징을 인코딩하여, 제1 인코딩된 표현을 발생시키게 하는 명령들을 저장한다. 명령들은, 적어도 하나의 프로세서에 의해 실행될 때, 추가로, 적어도 하나의 프로세서로 하여금, 발생된 제1 인코딩된 표현을 압축하게 하고; 압축된 표현을 압축해제하게 하고; 그리고 제3 신경망을 이용하여, 압축해제된 표현을 디코딩하여, 제1 출력 이미지를 복원하게 한다.
도 1은 실시형태들에 따른, 본원에서 설명되는 방법들, 장치들 및 시스템들이 구현될 수도 있는 환경의 다이어그램이다.
도 2는 도 1의 하나 이상의 디바이스들의 예시적인 컴포넌트들의 블록도이다.
도 3은 실시형태들에 따른, 인코더-측 적대적 발생기들에 의한 레이트-적응형 신경 이미지 압축을 위한 테스트 장치의 블록도이다.
도 4는 실시형태들에 따른, 인코더-측 적대적 발생기들에 의한 레이트-적응형 신경 이미지 압축을 위한 훈련 장치의 블록도이다.
도 5는 실시형태들에 따른, 디코더-측 적대적 발생기들에 의한 레이트-적응형 신경 이미지 압축을 위한 테스트 장치의 블록도이다.
도 6은 실시형태들에 따른, 디코더-측 적대적 발생기들에 의한 레이트-적응형 신경 이미지 압축을 위한 훈련 장치의 블록도이다.
도 7a, 도 7b 및 도 7c는 실시형태들에 따른, 어텐션-기반 적대적 발생기들에 의한 레이트-적응형 신경 이미지 압축을 위한 테스트 장치들의 블록도들이다.
도 8a, 도 8b 및 도 8c는 실시형태들에 따른, 어텐션-기반 적대적 발생기들에 의한 레이트-적응형 신경 이미지 압축을 위한 훈련 장치들의 블록도들이다.
도 9는 실시형태들에 따른, 적대적 발생기들에 의한 레이트-적응형 신경 이미지 압축의 방법의 플로우차트이다.
도 10은 실시형태들에 따른, 적대적 발생기들에 의한 레이트-적응형 신경 이미지 압축을 위한 장치의 블록도이다.
본 개시내용은 입력 이미지를 NIC 프레임워크에 의해 적응형 압축 레이트들로 압축하는 방법들 및 장치들을 설명한다. 단지 약간의 모델 인스턴스들이 앵커 압축 레이트들에 대해 훈련되며, 컴팩트 적대적 발생기가 앵커 모델 인스턴스들을 적응시킴으로써 중간 압축 레이트들을 달성하는데 사용된다. 또, 어텐션-기반 적대적 발생기가 앵커 모델 인스턴스들을 적응시킴으로써 중간 압축 레이트들을 달성하기 위해 인코더 측 또는 디코더 측 상에 사용된다.
도 1은 실시형태들에 따른, 본원에서 설명되는 방법들, 장치들 및 시스템들이 구현될 수도 있는 환경(100)의 다이어그램이다.
도 1에 나타낸 바와 같이, 환경(100)은 사용자 디바이스(110), 플랫폼(120), 및 네트워크(130)를 포함할 수도 있다. 환경(100)의 디바이스들은 유선 접속들, 무선 접속들, 또는 유선 접속과 무선 접속의 조합을 통해서 상호접속할 수도 있다.
사용자 디바이스(110)는 플랫폼(120)과 연관된 정보를 수신, 발생, 저장, 프로세싱, 및/또는 제공 가능한 하나 이상의 디바이스들을 포함한다. 예를 들어, 사용자 디바이스(110)는 컴퓨팅 디바이스(예컨대, 데스크탑 컴퓨터, 랩탑 컴퓨터, 태블릿 컴퓨터, 핸드헬드 컴퓨터, 스마트 스피커, 서버, 등), 모바일 폰(예컨대, 스마트 폰, 무선 전화기, 등), 착용형 디바이스(예컨대, 한쌍의 스마트 안경 또는 스마트 시계), 또는 유사한 디바이스를 포함할 수도 있다. 일부 구현예들에서, 사용자 디바이스(110)는 플랫폼(120)으로부터 정보를 수신하고/하거나 플랫폼(120)으로 정보를 송신할 수도 있다.
플랫폼(120)은 본원에서 다른 어딘가에서 설명된 바와 같은 하나 이상의 디바이스들을 포함한다. 일부 구현예들에서, 플랫폼(120)은 클라우드 서버 또는 클라우드 서버들의 그룹을 포함할 수도 있다. 일부 구현예들에서, 플랫폼(120)은 소프트웨어 컴포넌트들이 교체될 수 있도록 모듈식으로 설계될 수도 있다. 이와 같이, 플랫폼(120)은 상이한 용도들을 위해 용이하게 및/또는 빨리 재구성될 수도 있다.
일부 구현예들에서, 나타낸 바와 같이, 플랫폼(120)은 클라우드 컴퓨팅 환경(122)에서 호스팅될 수도 있다. 특히, 본원에서 설명되는 구현예들은 클라우드 컴퓨팅 환경(122)에서 호스팅되는 것으로 플랫폼(120)을 설명하지만, 일부 구현예들에서, 플랫폼(120)은 클라우드-기반이 아닐 수도 있거나 (즉, 클라우드 컴퓨팅 환경 외부에서 구현될 수도 있거나) 또는 부분적으로 클라우드-기반일 수도 있다.
클라우드 컴퓨팅 환경(122)은 플랫폼(120)을 호스팅하는 환경을 포함한다. 클라우드 컴퓨팅 환경(122)은 플랫폼(120)을 호스팅하는 시스템(들) 및/또는 디바이스(들)의 물리적인 위치 및 구성의 최종 사용자(예컨대, 사용자 디바이스(110)) 지식을 필요로 하지 않는 계산, 소프트웨어, 데이터 액세스, 저장, 등의 서비스들을 제공할 수도 있다. 나타낸 바와 같이, 클라우드 컴퓨팅 환경(122)은 컴퓨팅 리소스들(124)의 그룹(일괄하여 "컴퓨팅 리소스들 (124)"로서 및 개별적으로 "컴퓨팅 리소스(124)"로서 지칭됨)을 포함할 수도 있다.
컴퓨팅 리소스(124)는 하나 이상의 개인용 컴퓨터들, 워크스테이션 컴퓨터들, 서버 디바이스들, 또는 다른 유형들의 계산 및/또는 통신 디바이스들을 포함한다. 일부 구현예들에서, 컴퓨팅 리소스(124)는 플랫폼(120)을 호스팅할 수도 있다. 클라우드 리소스들은 컴퓨팅 리소스(124)에서 실행하는 계산 인스턴스들, 컴퓨팅 리소스(124)에서 제공되는 저장 디바이스들, 컴퓨팅 리소스(124)에 의해 제공되는 데이터 전송 디바이스들, 등을 포함할 수도 있다. 일부 구현예들에서, 컴퓨팅 리소스(124)는 유선 접속들, 무선 접속들, 또는 유선 접속과 무선 접속의 조합을 통해서 다른 컴퓨팅 리소스들(124)과 통신할 수도 있다.
도 1에 추가로 나타낸 바와 같이, 컴퓨팅 리소스(124)는 하나 이상의 애플리케이션들("앱들")(124-1), 하나 이상의 가상 머신들("VMs")(124-2), 가상화된 스토리지("VSs")(124-3), 하나 이상의 하이퍼바이저들("HYPs")(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)에 의한 임의의 실제 머신에 대한 용도 및 대응의 정도에 따라, 시스템 가상 머신 또는 프로세스 가상 머신일 수도 있다. 시스템 가상 머신은 완전한 운영 시스템("OS")의 실행을 지원하는 완전한 시스템 플랫폼을 제공할 수도 있다. 프로세스 가상 머신은 단일 프로그램을 실행할 수도 있으며, 단일 프로세스를 지원할 수도 있다. 일부 구현예들에서, 가상 머신(124-2)은 사용자(예컨대, 사용자 디바이스(110))를 대신하여 실행할 수도 있으며, 데이터 관리, 동기화, 또는 장기 데이터 전송들과 같은 클라우드 컴퓨팅 환경(122)의 기반구조를 관리할 수도 있다.
가상화된 스토리지(124-3)는 컴퓨팅 리소스(124)의 저장 시스템들 또는 디바이스들 내에서 가상화 기법들을 이용하는 하나 이상의 저장 시스템들 및/또는 하나 이상의 디바이스들을 포함한다. 일부 구현예들에서, 저장 시스템의 상황 내에서, 가상화들의 유형들은 블록 가상화 및 파일 가상화를 포함할 수도 있다. 블록 가상화는 저장 시스템이 물리 스토리지 또는 이종 구조에 관계없이 액세스될 수도 있도록 물리 스토리지로부터의 논리 스토리지의 추상화(또는, 분리)를 지칭할 수도 있다. 분리는 저장 시스템의 관리자들에게 관리자들이 최종 사용자들을 위해 스토리지를 관리하는 방법에서의 유연성을 허용할 수도 있다. 파일 가상화는 파일 레벨에서 액세스된 데이터와 파일들이 물리적으로 저장된 위치 사이의 의존성들을 제거할 수도 있다. 이는 스토리지 사용, 서버 통합, 및/또는 무중단 파일 마이그레이션들의 성능의 최적화를 가능하게 할 수도 있다.
하이퍼바이저(124-4)는 다수의 운영 시스템들(예컨대, "게스트 운영 시스템들")로 하여금 컴퓨팅 리소스(124)와 같은 호스트 컴퓨터 상에서 동시에 실행 가능하게 하는 하드웨어 가상화 기법들을 제공할 수도 있다. 하이퍼바이저(124-4)는 가상 운영 플랫폼을 게스트 운영 시스템들에 제공할 수도 있으며, 게스트 운영 시스템들의 실행을 관리할 수도 있다. 다양한 운영 시스템들의 다수의 인스턴스들은 가상화된 하드웨어 리소스들을 공유할 수도 있다.
네트워크(130)는 하나 이상의 유선 및/또는 무선 네트워크들을 포함한다. 예를 들어, 네트워크(130)는 셀룰러 네트워크(예컨대, 5 세대(5G) 네트워크, LTE(Long-Term Evolution) 네트워크, 3세대(3G) 네트워크, 코드분할 다중접속(CDMA) 네트워크, 등), 공중 지상 모바일 네트워크(PLMN), 근거리 네트워크(LAN), 광역 네트워크(WAN), 도시권 네트워크(MAN), 전화기 네트워크(예컨대, 공중 교환 전화 네트워크(PSTN)), 사설 네트워크, 애드혹 네트워크, 인트라넷, 인터넷, 광섬유-기반 네트워크, 또는 기타 등등, 및/또는 이들의 조합 또는 다른 유형들의 네트워크들을 포함할 수도 있다.
도 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), 그래픽 프로세싱 유닛(GPU), 가속 프로세싱 유닛(APU), 마이크로프로세서, 마이크로제어기, 디지털 신호 프로세서(DSP), 필드-프로그래밍가능 게이트 어레이(FPGA), 주문형 집적 회로(ASIC), 또는 다른 유형의 프로세싱 컴포넌트이다. 일부 구현예들에서, 프로세서(220)는 기능을 수행하도록 프로그래밍될 수 있는 하나 이상의 프로세서들을 포함한다. 메모리(230)는 프로세서(220)에 의한 사용을 위한 정보 및/또는 명령들을 저장하는, 랜덤 액세스 메모리(RAM), 판독 전용 메모리(ROM), 및/또는 다른 유형의 동적 또는 정적 저장 디바이스(예컨대, 플래시 메모리, 자기 메모리, 및/또는 광학 메모리)를 포함한다.
스토리지(240)는 디바이스(200)의 동작 및 사용에 관련된 정보 및/또는 소프트웨어를 저장한다. 예를 들어, 스토리지(240)는 하드 디스크(예컨대, 자기 디스크, 광 디스크, 자기-광학 디스크, 및/또는 솔리드 스테이트 디스크), 컴팩트 디스크(CD), 디지털 다기능 디스크(DVD), 플로피 디스크, 카트리지, 자기 테이프, 및/또는 다른 유형의 비일시적 컴퓨터-판독가능 매체를, 대응하는 드라이브와 함께, 포함할 수도 있다.
입력 인터페이스(250)는 예컨대, 사용자 입력(예컨대, 터치 스크린 디스플레이, 키보드, 키패드, 마우스, 버튼, 스위치, 및/또는 마이크로폰)을 통해서, 디바이스(200)로 하여금 정보를, 수신 가능하게 하는 컴포넌트를 포함한다. 추가적으로, 또는 대안적으로, 입력 인터페이스(250)는 정보를 감지하는 센서(예컨대, 위성 위치확인 시스템(GPS) 컴포넌트, 가속도계, 자이로스코프, 및/또는 액추에이터)를 포함할 수도 있다. 출력 인터페이스(260)는 디바이스(200)(예컨대, 디스플레이, 스피커, 및/또는 하나 이상의 발광 다이오드들(LEDs))로부터의 출력 정보를 제공하는 컴포넌트를 포함한다.
통신 인터페이스(270)는 디바이스(200)로 하여금 예컨대, 유선 접속, 무선 접속, 또는 유선 접속과 무선 접속의 조합을 통해서 다른 디바이스들과 통신 가능하게 하는 트랜시버-형 컴포넌트(예컨대, 트랜시버 및/또는 별개의 수신기 및 송신기)를 포함한다. 통신 인터페이스(270)는 디바이스(200)로 하여금 다른 디바이스로부터 정보를 수신 가능하게 하고/하거나 정보를 다른 디바이스에 제공 가능하게 할 수도 있다. 예를 들어, 통신 인터페이스(270)는 이더넷 인터페이스, 광 인터페이스, 동축 인터페이스, 적외선 인터페이스, 무선 주파수(RF) 인터페이스, 범용 시리얼 버스(USB) 인터페이스, Wi-Fi 인터페이스, 셀룰러 네트워크 인터페이스, 또는 기타 등등을 포함할 수도 있다.
디바이스(200)는 본원에서 설명되는 하나 이상의 프로세스들을 수행할 수도 있다. 디바이스(200)는 프로세서(220)가 메모리(230) 및/또는 스토리지(240)와 같은 비일시적 컴퓨터-판독가능 매체에 의해 저장된 소프트웨어 명령들을 실행하는 것에 응답하여 이들 프로세스들을 수행할 수도 있다. 컴퓨터-판독가능 매체는 비일시적 메모리 디바이스로서 본원에서 정의된다. 메모리 디바이스는 단일 물리 저장 디바이스 내 메모리 공간 또는 다수의 물리 저장 디바이스들에 걸쳐서 분산된 메모리 공간을 포함한다.
소프트웨어 명령들은 다른 컴퓨터-판독가능 매체로부터 또는 다른 디바이스로부터 통신 인터페이스(270)를 통해서 메모리(230) 및/또는 스토리지(240)로 판독될 수도 있다. 실행될 때, 메모리(230) 및/또는 스토리지(240)에 저장된 소프트웨어 명령들은 프로세서(220)로 하여금 본원에서 설명되는 하나 이상의 프로세스들을 수행하게 할 수도 있다. 추가적으로, 또는 대안적으로, 하드와이어드 회로부가 본원에서 설명되는 하나 이상의 프로세스들을 수행하기 위해 소프트웨어 명령들을 대신하여 또는 조합하여 사용될 수도 있다. 따라서, 본원에서 설명되는 구현예들은 하드웨어 회로부와 소프트웨어의 임의의 특정의 조합에 제한되지 않는다.
도 2에 나타낸 컴포넌트들의 개수 및 배열은 예로서 제공된다. 실제는, 디바이스(200)는 추가적인 컴포넌트들, 더 적은 컴포넌트들, 상이한 컴포넌트들, 또는 도 2에 나타낸 것들과는 상이하게 배열된 컴포넌트들을 포함할 수도 있다. 추가적으로, 또는 대안적으로, 디바이스(200)의 컴포넌트들(예컨대, 하나 이상의 컴포넌트들)의 세트는 디바이스(200)의 컴포넌트들의 다른 세트에 의해 수행되는 것으로 설명된 하나 이상의 기능들을 수행할 수도 있다.
적대적 발생기들에 의한 레이트-적응형 신경 이미지 압축을 위한 방법들 및 장치들을 이하 자세하게 설명한다.
본원에서 설명되는 실시형태들은 멀티-레이트 NIC 프레임워크를 포함하며, 여기서, 단지 소수의 NIC 모델 인스턴스들이 학습되어 소수의 앵커 압축 레이트들을 목표로 배치되지만, 다른 중간 압축 레이트들은 인코더 측 상에 또는 디코더 측 상에서, 앵커 모델 인스턴스들을 적응시키기 위해 컴팩트 적대적 발생기를 이용함으로써, 또는 앵커 모델 인스턴스들을 적응시키기 위해 어텐션-기반 적대적 발생기를 이용함으로써, 달성된다. 발생기는 임의의 기본(underlying) NIC 모델에 (예컨대, NIC 모델의 2개의 계층들의 앞에 또는 사이에) 추가된 플러그-인 컴포넌트로서 사용될 수 있는 컴팩트 DNN이며, 발생기는 원래 NIC 모델의 특징(예컨대, NIC 모델의 앞에 배치되는 경우 입력 이미지 또는 2개의 계층들 사이에 배치되는 경우 중간 특징 맵)으로부터, 특징의 대체를 발생시키는 것을 목표로 한다. 따라서, 새로 발생된 대체는 원하는 압축 레이트를 획득할 수 있다.
입력 이미지 x가 주어지면, NIC 작업흐름의 테스트 스테이지의 목표는 다음과 같이 설명될 수 있다. 저장 및 송신을 위해 압축한, 압축된 표현
Figure pct00001
가 계산된다. 이후, 압축된 표현
Figure pct00002
에 기초하여, 출력 이미지
Figure pct00003
가 복원되고, 복원된 출력 이미지
Figure pct00004
가 원래 입력 이미지 x와 유사할 수도 있다. 압축된 표현
Figure pct00005
를 계산하는 프로세스는 다음 2개의 부분들로 분리될 수도 있다: 테스트 DNN 인코더를 이용하여 DNN 인코딩된 표현 y를 계산하는 DNN 인코딩 프로세스, 그리고 이후 y가 압축된 표현
Figure pct00006
를 발생시키기 위해 테스트 인코더(전형적으로 양자화 및 엔트로피 코딩을 포함함)를 통해서 인코딩되는 인코딩 프로세스. 따라서, 디코딩 프로세스는 다음 2개의 부분들로 분리된다: 압축된 표현
Figure pct00007
를 테스트 디코더(전형적으로 디코딩 및 역양자화를 포함함)에 의해 디코딩하여 복구된
Figure pct00008
를 발생시키는 디코딩 프로세스, 그리고 이후 복구된 표현
Figure pct00009
를 테스트 DNN 디코더를 사용하여 이미지
Figure pct00010
를 복원하는 DNN 디코딩 프로세스. 본 개시내용에서, DNN 인코딩에 사용되는 테스트 DNN 인코더 또는 DNN 디코딩에 사용되는 테스트 DNN 디코더의 네트워크 구조들에는 어떤 제한들이 없다. 인코딩 또는 디코딩에 사용되는 방법들(양자화 방법들 및 엔트로피 코딩 방법들)에는 어떤 제한들이 없다.
NIC 모델을 학습하기 위해, 2개의 경쟁 목표들은 더 나은 복원 품질 대 더 적은 비트 소비를 다룬다. 손실 함수
Figure pct00011
가 피크 신호-대-잡음비(PSNR) 및/또는 구조적 유사성 지수 측정(SSIM)과 같은, 왜곡 손실이라고 하는 복원 에러를 측정하는데 사용된다. 레이트 손실
Figure pct00012
가 압축된 표현
Figure pct00013
의 비트 소비를 측정하기 위해 계산된다. 따라서, 절충 하이퍼파라미터 λ가 결합 R-D 손실을 최적화하는데 사용된다:
Figure pct00014
(1)
큰 하이퍼파라미터 λ에 의한 훈련은 더 작은 왜곡을 갖지만 더 많은 비트들 소비를 갖는 압축 모델들을 생성하며, 반대의 경우도 마찬가지이다. 전통적으로, 각각의 사전-정의된 하이퍼파라미터 λ에 대해, NIC 모델 인스턴스가 훈련될 것이며, 하이퍼파라미터 λ의 다른 값들에 대해서는 잘 작동하지 않을 것이다. 따라서, 압축된 스트림의 다중 비트 레이트들을 달성하기 위해, 다수의 모델 인스턴스들을 훈련 및 저장해야 할 수도 있으며, 하나의 모델 인스턴스는 하나의 원하는 하이퍼파라미터 λ를 대상으로 한다.
본 개시내용에서, 레이트-적응형 NIC 프레임워크는 인코더 측 또는 디코더 측 상에 애드온 컴팩트 적대적 발생기를 이용하여, 하나의 앵커 R-D 절충 하이퍼파라미터 λo 값에 대해 훈련된 모델 인스턴스를 다른 중간 하이퍼파라미터 λt 값에 적응시킨다. 그 결과, 멀티-레이트 NIC를 달성하기 위해, 단지 소수의 앵커 모델 인스턴스들이 목표 앵커 R-D 절충 값들에 대해 훈련 및 배치될 수도 있지만, 관심있는 나머지 중간 R-D 절충 값들은 적대적 발생기에 의해 발생될 수 있다. 적대적 발생기가 저장 및 계산 둘 모두의 관점에서 휠씬 더 작은 컴팩트 DNN이기 때문에, 프레임워크는 관심있는 모든 하이퍼파라미터 λ에 대한 모든 모델 인스턴스를 훈련 및 배치하는 종래의 접근법보다 멀티-레이트 NIC에 있어 휠씬 더 효율적이다.
도 3은 실시형태들에 따른, 인코더-측 적대적 발생기들에 의한 레이트-적응형 신경 이미지 압축을 위한 테스트 장치(300)의 블록도이다.
도 3에 나타낸 바와 같이, 테스트 장치(300)는 테스트 DNN 인코더(310), 대체 발생기(320), 테스트 DNN 인코더(330), 테스트 인코더(340), 테스트 디코더(350) 및 테스트 DNN 디코더(360)를 포함한다.
대체 발생기(320)는 임의의 기존 NIC 모델에 플러깅될 수 있는 애드온 컴포넌트인 적대적 발생기이다. 보편성의 상실 없이, NIC DNN으로부터의 테스트 DNN 인코더 및 테스트 DNN 디코더가 있으며, 모델 인스턴스 Mo는 목표 앵커 λo 값에 대해 훈련된다. 이 모델 인스턴스 Mo는 목표 λt 값에 대해 훈련되었을 가상 NIC 모델 인스턴스 Mt의 압축 효과들을 달성하기 위해 발생기
Figure pct00015
를 이용하여 적응된다. 또한, 발생기
Figure pct00016
가 i 번째 계층과 (i+1) 번째 계층 사이의 테스트 DNN 인코더에 플러깅된다고 가정한다. (i+1) 번째 계층의 입력(i 번째 계층의 출력)은 특징(feature) f이다. 따라서, 원래 NIC 모델의 원래 DNN 인코딩 프로세스가 2개의 부분들로 분리될 수 있으며, 여기서, 테스트 DNN 인코더(310) 부분 1을 이용하여 특징 f를 계산하기 위해 입력 이미지 x가 DNN 인코딩 부분 1 모듈을 통과하고, 그리고 이후 테스트 DNN 인코더(330) 부분 2를 이용하여 DNN 인코딩된 표현 y를 계산하기 위해 f가 DNN 인코딩 부분 2 모듈을 통과한다.
발생기가 전체 테스트 DNN 인코더의 앞에 배치되면(즉, i=0), 특징 f는 입력 이미지 x이며 테스트 DNN 인코더(330) 부분 2는 전체 원래 테스트 DNN 인코더를 포함한다.
플러그인된 적대적 발생기
Figure pct00017
로, 대체 특징
Figure pct00018
(원하는 압축 레이트를 획득하는데 사용될 수 있는 상이한 또는 향상된 특징)을 계산하기 의해 특징 f가 대체 발생기(320)를 통과하고, 대체 특징
Figure pct00019
의 DNN 인코딩된 표현
Figure pct00020
를 계산하기 위해
Figure pct00021
(f 대신)가 테스트 DNN 인코더(330) 부분 2을 통과한다.
Figure pct00022
에 기초하여, 인코딩 모듈은 압축된 표현
Figure pct00023
를 테스트 인코더(340)를 이용하여 계산한다. 이후, 디코더 측 상에서,
Figure pct00024
에 기초하여, 복구된 표현
Figure pct00025
가 디코딩 프로세스를 통해서 테스트 디코더(350)를 이용하여 계산될 수 있다. 이후, DNN 디코딩 모듈은
Figure pct00026
에 기초하여 테스트 DNN 디코더(360)를 이용하여, 복원된 출력 이미지
Figure pct00027
를 계산한다. 압축된 표현
Figure pct00028
및 복원된 출력 이미지
Figure pct00029
는 목표 λt 값에 의한 수식 (1)의 최적에 가까운 R-D 손실(즉, λt로 R-D 손실을 최적화하여 훈련되었을 가상 모델 Mt와 유사한 R-D 손실)을 가질 것이다.
본 개시내용에서, 대체 발생기(320)의 DNN 네트워크 구조들에는 어떤 제한들이 없다. 기본 NIC 모델보다 휠씬 더 작을 수도 있다.
실시형태들에서, 주어진 목표 λt 값에 대해, 목표 λt에 적응시키기 위한 앵커 λo에 대한 앵커 모델 인스턴스가 λt에 가장 가까운 λo를 가진 것으로 선택된다. 또한, 본 개시내용의 일 실시형태가 하나의 앵커 λo 값에 대해 훈련된 오직 하나의 모델 인스턴스를 갖는 것이고 모든 다른 중간 R-D 절충 값들이 각각의 중간 λt에 대해 하나씩, 상이한 컴팩트 발생기들을 통해서 시뮬레이션된다는 점을 언급할 가치가 있다.
도 4는 실시형태들에 따른, 인코더-측 적대적 발생기들에 의한 레이트-적응형 신경 이미지 압축을 위한 훈련 장치(400)의 블록도이다.
도 4에 나타낸 바와 같이, 훈련 장치(400)는 훈련 DNN 인코더(405), 대체 발생기(410), 훈련 DNN 인코더(415), 훈련 인코더(420), 레이트 손실 발생기(425), 훈련 디코더(430), 훈련 DNN 디코더(435), 왜곡 손실 발생기(440), 훈련 DNN 인코더(445), 표현 식별 손실 발생기(450), 특징 식별 손실 발생기(455) 및 가중치 업데이트 부분(460)을 포함한다.
NIC 모델은 목표 λo로 수식 (1)의 R-D 손실을 최적화하기 위해 모델 인스턴스 Mo로 사전-훈련된다. 발생기
Figure pct00030
는 기본 NIC 모델을 재훈련함이 없이, 관심있는 다른 λt에 대해 모델 Mo를 적응시키도록 학습된다. 테스트 스테이지와 유사하게, 대응하는 훈련 DNN 인코더는 2 부분들: 훈련 DNN 인코더(405) 부분 1 및 훈련 DNN 인코더(415) 부분 2로 분할된다.
모델 인스턴스 Mo로부터의 사전-훈련된 훈련 DNN 인코더(405) 부분 1을 이용하여 특징 f를 계산하기 위해 훈련 데이터셋 S로부터의 입력 훈련 이미지 x
Figure pct00031
가 먼저 DNN 인코딩 부분 1 모듈을 통과한다. 이후, 대체 발생기(410)는 현재의 발생기
Figure pct00032
를 이용하여, 대체 특징
Figure pct00033
(원하는 압축 레이트를 획득하는데 사용될 수 있는 상이한 또는 향상된 특징)을 계산한다. 또, 대체 발생기(410)는 DNN이며, 그리고, 실시형태들에서, 입력 f에 기초하여 대체 섭동 δ(f)를 계산하고, 대체 특징
Figure pct00034
Figure pct00035
로서 계산된다. 대체
Figure pct00036
는 이후 사전-훈련된 모델 인스턴스 Mo로부터의 훈련 DNN 인코더(415) 부분 2을 이용하여 DNN 인코딩된 표현
Figure pct00037
를 계산하기 위해 DNN 인코딩 부분 2 모듈을 통과한다. 이후, 인코딩 프로세스는 훈련 인코더(420)를 이용하여 압축된 표현
Figure pct00038
를 계산한다.
Figure pct00039
로, 레이트 손실 발생기(425)는 레이트 손실
Figure pct00040
를 계산한다. 이후 디코딩 모듈은
Figure pct00041
에 기초하여 훈련 디코더(430)를 이용하여 압축해제된 표현
Figure pct00042
를 계산하며, DNN 디코딩 프로세스는 복원된 출력 이미지
Figure pct00043
를 훈련 DNN 디코더(435)를 이용하여 추가로 발생시킨다. 왜곡 손실 발생기(440)는 복원된
Figure pct00044
와 원래 입력 이미지 x 사이의 왜곡 손실
Figure pct00045
을 계산한다. 레이트 손실
Figure pct00046
는 인코딩된 표현
Figure pct00047
의 비트 레이트에 관련되며, 그리고, 실시형태들에서, 엔트로피 추정 접근법이 레이트 손실
Figure pct00048
를 계산하기 위해 레이트 손실 발생기로서 사용된다. 관심 목표 λt를 이용하여, 수식 (1)의 R-D 손실이
Figure pct00049
로 계산될 수 있다.
동시에, 원래 특징 f를 이용하여, DNN 인코딩 부분 2 모듈은 또한 훈련 DNN 인코더(445)를 이용하여, DNN 인코딩된 표현 y를 발생시킬 수 있다.
Figure pct00050
및 y 둘 다에 기초하여, 표현 식별 손실 발생기(450)는 계산 표현 식별 손실 프로세스를 통해서 표현 식별 손실
Figure pct00051
를 계산한다. 실시형태들에서, 표현 식별 손실 발생기(450)는 대체 특징
Figure pct00052
에 기초하여 발생되는 표현
Figure pct00053
로부터 원래 특징 f에 기초하여 발생되는 인코딩된 특징 표현 y를 식별하는 DNN이다. 예를 들어, 표현 식별 손실 발생기(450)는 원래 특징들로부터 발생된 표현들을 하나의 클래스로서, 그리고 대체 특징들로부터의 표현들을 다른 클래스로서 식별하는 2진 DNN 분류기일 수 있다. 또한, 원래 특징 f 및 대체 특징
Figure pct00054
에 기초하여, 특징 식별 손실 발생기(455)는 계산 특징 식별 손실 프로세스를 통해서 특징 식별 손실
Figure pct00055
를 계산할 수 있다. 실시형태들에서, 특징 식별 손실 발생기(455)는 대체 특징
Figure pct00056
로부터 원래 특징 f를 식별하는 DNN이다. 예를 들어, 특징 식별 손실 발생기(455)는 원래 특징들을 하나의 클래스로서, 그리고 대체 특징들을 다른 클래스로서 식별하는 2진 DNN 분류기일 수 있다. 특징 식별 손실
Figure pct00057
및 표현 식별 손실
Figure pct00058
에 기초하여, 가중치 업데이트 부분(460)은 적대적 손실
Figure pct00059
을 다음으로서 (α를 하이퍼파라미터로서) 계산한다:
Figure pct00060
(2)
Figure pct00061
Figure pct00062
에 기초하여, 가중치 업데이트 부분(460)은 역-전파 최적화를 통한 기울기들(gradients)을 이용하여 DNN 모델들의 학습 가능한 부분들의 가중치 계수들을 업데이트한다.
실시형태들에서, (훈련 DNN 인코더(405, 415 또는 445), 훈련 인코더(420), 훈련 디코더(430), 및 훈련 DNN 디코더(435)를 포함하는) 모델 인스턴스 Mo의 가중치 계수들은 상기 설명된 훈련 스테이지 동안 고정된다. 또한, 레이트 손실 발생기(425)도 미리 결정되어 고정된다. 대체 발생기(410), 특징 식별 손실 발생기(455) 및 표현 식별 손실 발생기(450)의 가중치 계수들은 발생 적대적 네트워크들(GAN) 훈련 프레임워크에 의해 상기 설명된 훈련 스테이지를 통해서 학습 가능하며 업데이트한다. 예를 들어, 실시형태들에서, R-D 손실
Figure pct00063
의 기울기들이 대체 발생기(410)의 가중치 계수들을 업데이트하는데 이용되며, 적대적 손실
Figure pct00064
의 기울기들이 특징 식별 손실 발생기(455) 및 표현 식별 손실 발생기(450)의 가중치 계수들을 업데이트하는데 이용된다.
본 개시내용에서, 모델 인스턴스 Mo 및 레이트 손실 발생기(425)가 결정되는 사전-훈련 프로세스에는 어떤 제한들이 없다. 일 예로서, 실시형태들에서, 훈련 이미지들의 세트 Spre가 훈련 데이터 세트 S와 동일하거나 또는 상이할 수 있는 사전-훈련 프로세스에서 이용된다. 각각의 이미지
Figure pct00065
에 대해, 동일한 정방향 추론 계산을 DNN 인코딩, 인코딩, 디코딩, DNN 디코딩을 통해서 수행하여 코딩된 표현
Figure pct00066
및 복원된
Figure pct00067
를 계산한다. 이후, 왜곡 손실
Figure pct00068
및 레이트 손실
Figure pct00069
가 계산될 수 있다. 이후, 사전-훈련 하이퍼파라미터 λpre가 주어지면, 전체 R-D 손실
Figure pct00070
는 수식 (1)에 기초하여 계산될 수 있으며, 그 기울기들이 역-전파를 통해 훈련 DNN 인코더(405, 415 또는 445), 훈련 인코더(420), 훈련 디코더(430), 훈련 DNN 디코더(435), 및 레이트 손실 발생기(425)의 가중치들을 업데이트하는데 이용된다.
또한, 실시형태들에서, 훈련 DNN 인코더(405) 부분 1, 훈련 DNN 인코더(415) 부분 2, 및 훈련 DNN 디코더(435)가 대응하는 테스트 DNN 인코더(310) 부분 1, 테스트 DNN 인코더(330) 부분 2, 및 테스트 DNN 디코더(360)와 동일하다는 점을 언급할 가치가 있다. 한편, 훈련 인코더(420) 및 훈련 디코더(430)는 대응하는 테스트 인코더(340) 및 테스트 디코더(350)와 상이하다. 예를 들어, 테스트 인코더(340) 및 테스트 디코더(350)는 각각 일반 테스트 양자화기 및 테스트 엔트로피 인코더, 및 일반 테스트 엔트로피 디코더 및 테스트 역양자화기를 포함한다. 훈련 인코더(420) 및 훈련 디코더(430)의 각각은 통계 샘플러를 이용하여, 테스트 양자화기 및 테스트 역양자화기의 효과를 각각 근사화한다. 엔트로피 인코더 및 디코더는 훈련 스테이지에서 스킵된다.
도 5는 실시형태들에 따른, 디코더-측 적대적 발생기들에 의한 레이트-적응형 신경 이미지 압축을 위한 테스트 장치(500)의 블록도이다.
도 5에 나타낸 바와 같이, 테스트 장치(500)는 테스트 DNN 인코더(510), 테스트 인코더(520), 테스트 디코더(530), 테스트 DNN 디코더(540), 대체 발생기(550) 및 테스트 DNN 디코더(560)를 포함한다.
대체 발생기(550)는 임의의 기존 NIC 모델로 플러깅될 수 있는 애드온 컴포넌트이다. 보편성의 상실 없이, NIC DNN으로부터의 테스트 DNN 인코더 및 테스트 DNN 디코더가 있으며, 모델 인스턴스 Mo가 목표 앵커 λo 값에 대해 훈련된다. 이 모델 인스턴스 Mo는 목표 λt 값에 대해 훈련되었을 가상 NIC 모델 인스턴스 Mt의 압축 효과들을 달성하기 위해 발생기
Figure pct00071
를 이용하여 적응된다. 또한, 발생기
Figure pct00072
가 i 번째 계층과 (i+1) 번째 계층 사이의 테스트 DNN 디코더에 플러깅된다고 가정한다. (i+1) 번째 계층의 입력 (i 번째 계층의 출력)은 특징 f이다. 따라서, 원래 NIC 모델의 원래 DNN 디코딩 프로세스가 2개의 부분들로 분리될 수 있으며, 여기서, 테스트 DNN 디코더(540) 부분 1을 이용하여 특징 f를 계산하기 위해 입력 복구된 표현
Figure pct00073
가 DNN 디코딩 부분 1 모듈을 통과하고, 그리고 이후 테스트 DNN 디코더(560) 부분 2를 이용하여 복원된
Figure pct00074
를 계산하기 위해 f가 DNN 디코딩 부분 2 모듈을 통과한다.
발생기가 전체 테스트 DNN 디코더의 앞에 배치되면(즉, i=0), 특징 f는 입력 복구된 표현
Figure pct00075
이고, 테스트 DNN 디코더(560) 부분 2는 전체 원래 테스트 DNN 디코더를 포함한다.
따라서, 입력 이미지 x가 주어지면, DNN 인코딩 프로세스는 테스트 DNN 인코더(510)를 이용하여 DNN 인코딩된 표현 y를 계산하며, 이는 압축된 표현
Figure pct00076
를 발생시키기 위해 인코딩 프로세스에서 테스트 인코더(520)를 통해 추가로 인코딩된다. 이후, 디코더 측 상에서, 압축된 표현
Figure pct00077
는 디코딩 모듈에서 복구된 표현
Figure pct00078
를 발생시키기 위해 테스트 디코더(530)에 의해 디코딩된다. 이후, DNN 디코딩 부분 1 모듈은 테스트 DNN 디코더(540) 부분 1을 이용하여
Figure pct00079
에 기초하여 특징 f를 계산한다. 플러그인된 적대적 발생기
Figure pct00080
로, 대체 특징
Figure pct00081
를 계산하기 위해 특징 f가 대체 발생기(550)를 통과하며, 테스트 DNN 디코더(560) 부분 2에 의해 복원된 출력 이미지
Figure pct00082
를 계산하기 위해
Figure pct00083
(f 대신)가 DNN 디코딩 부분 2 모듈을 통과한다. 압축된 표현
Figure pct00084
및 복원된 출력 이미지
Figure pct00085
는 목표 λt 값에 의한 수식 (1)의 최적에 가까운 R-D 손실(즉, λt로 R-D 손실을 최적화하여 훈련되었을 가상 모델 Mt와 유사한 R-D 손실)을 가질 것이다.
본 개시내용에서, 발생기의 DNN 네트워크 구조들에는 어떤 제한들이 없다. 기본 NIC 모델보다 휠씬 더 작을 수도 있다.
실시형태들에서, 주어진 목표 λt 값에 대해, 목표 λt에 적응시키기 위한 앵커 λo에 대한 앵커 모델 인스턴스가 λt에 가장 가까운 λo를 가진 것으로 선택된다. 또한, 본 개시내용의 일 실시형태가 하나의 앵커 λo 값에 대해 훈련된 오직 하나의 모델 인스턴스를 갖는 것이고 모든 다른 중간 R-D 절충 값들이 각각의 중간 λt에 대해 하나씩, 상이한 컴팩트 발생기들을 통해서 시뮬레이션된다는 점을 언급할 가치가 있다.
도 6은 실시형태들에 따른, 디코더-측 적대적 발생기들에 의한 레이트-적응형 신경 이미지 압축을 위한 훈련 장치(600)의 블록도이다.
도 6에 나타낸 바와 같이, 훈련 장치(600)는 훈련 DNN 인코더(605), 훈련 인코더(610), 레이트 손실 발생기(615), 훈련 디코더(620), 훈련 DNN 디코더(625), 대체 발생기(630), 훈련 DNN 디코더(635), 왜곡 손실 발생기(640), 훈련 DNN 디코더(645), 복원 식별 손실 발생기(650), 특징 식별 손실 발생기(655) 및 가중치 업데이트 부분(660)을 포함한다.
NIC 모델은 목표 λo로 수식 (1)의 R-D 손실을 최적화하기 위해 모델 인스턴스 Mo로 사전-훈련된다. 발생기
Figure pct00086
는 NIC 모델을 재훈련함이 없이, 관심있는 다른 λt에 대해 모델 Mo를 적응시키도록 학습된다. 테스트 스테이지와 유사하게, 대응하는 훈련 DNN 디코더는 2 부분들: 훈련 DNN 디코더(625) 부분 1 및 훈련 DNN 디코더(635) 부분 2로 분리된다.
훈련 DNN 인코더(605)에 기초하여 DNN 인코딩된 표현
Figure pct00087
를 계산하기 위해 훈련 데이터셋 S로부터의 입력 훈련 이미지 x
Figure pct00088
가 DNN 인코딩 모듈을 먼저 통과한다. 이후, 인코딩 프로세스는 훈련 인코더(610)를 이용하여 압축된 표현
Figure pct00089
를 계산한다.
Figure pct00090
에 기초하여, 레이트 손실 발생기(615)는 레이트 손실
Figure pct00091
를 계산한다. 이후, 디코더 측 상에서, 디코딩 모듈은 훈련 디코더(620)를 이용하여
Figure pct00092
에 기초하여 압축해제된 표현
Figure pct00093
를 계산한다. 모델 인스턴스 Mo로부터 사전-훈련된 훈련 DNN 디코더(625) 부분 1을 이용하여 특징 f를 계산하기 위해, 압축해제된
Figure pct00094
가 이후 DNN 디코딩 부분 1 모듈을 통과한다. 이후, 대체 발생기(630)는 현재의 발생기
Figure pct00095
를 이용하여 대체 특징
Figure pct00096
를 계산한다. 또, 대체 발생기(630)는 DNN이며, 실시형태들에서, 입력 f에 기초하여 대체 섭동 δ(f)을 계산하며, 대체 특징
Figure pct00097
Figure pct00098
로서 계산된다. 사전-훈련된 모델 인스턴스 Mo로부터 훈련 DNN 디코더(635) 부분 2를 이용하여, 복원된 출력 이미지
Figure pct00099
를 계산하기 위해 대체
Figure pct00100
가 이후 DNN 디코딩 부분 2 모듈을 통과한다. 왜곡 손실 발생기(640)는 복원된
Figure pct00101
와 원래 입력 이미지 x 사이의 왜곡 손실
Figure pct00102
를 계산한다. 레이트 손실
Figure pct00103
는 인코딩된 표현
Figure pct00104
의 비트 레이트에 관련되며, 그리고, 실시형태들에서, 엔트로피 추정 접근법이 레이트 손실
Figure pct00105
를 계산하기 위해 레이트 손실 발생기(615)로서 이용된다. 관심 목표 λt를 이용하여, 수식 (1)의 R-D 손실이
Figure pct00106
로서 계산될 수 있다.
동시에, 원래 특징 f를 이용하여, 훈련 DNN 디코더(645) 부분 2 모듈은 또한 복원된 출력 이미지
Figure pct00107
를 계산할 수 있다.
Figure pct00108
Figure pct00109
모두에 기초하여, 복원 식별 손실 발생기(650)는 계산 복원 식별 손실 프로세스를 통해 복원 식별 손실
Figure pct00110
를 계산한다. 실시형태들에서, 복원 식별 손실 발생기(650)는 대체 특징
Figure pct00111
에 기초하여 발생되는 복원된 출력 이미지
Figure pct00112
로부터 원래 특징 f에 기초하여 발생되는 복원된 출력 이미지
Figure pct00113
를 식별하는 DNN이다. 예를 들어, 복원 식별 손실 발생기(650)는 원래 특징들로부터 발생된 복원된 출력 이미지들을 하나의 클래스로서, 그리고 대체 특징들로부터 발생된 복원된 출력 이미지들을 다른 클래스로서 식별하는 2진 DNN 분류기일 수 있다. 또한, 원래 특징 f 및 대체 특징
Figure pct00114
에 기초하여, 특징 식별 손실 발생기(655)는 계산 특징 식별 손실 프로세스를 통해서 특징 식별 손실
Figure pct00115
를 계산할 수 있다. 실시형태들에서, 특징 식별 손실 발생기(655)는 대체 특징
Figure pct00116
로부터 원래 특징 f를 식별하는 DNN이다. 예를 들어, 특징 식별 손실 발생기(655)는 원래 특징들을 하나의 클래스로서, 그리고 대체 특징들을 다른 클래스로서 식별하는 2진 DNN 분류기일 수 있다. 특징 식별 손실
Figure pct00117
및 복원 식별 손실
Figure pct00118
에 기초하여, 가중치 업데이트 부분(660)은 적대적 손실
Figure pct00119
를 다음으로서 (α를 하이퍼파라미터로서) 계산한다:
Figure pct00120
(3)
Figure pct00121
Figure pct00122
에 기초하여, 가중치 업데이트 부분(660)은 역-전파 최적화를 통한 기울기들(gradients)을 이용하여 DNN 모델들의 학습 가능한 부분들의 가중치 계수들을 업데이트한다.
실시형태들에서, (훈련 DNN 인코더(605), 훈련 인코더(610), 훈련 디코더(620), 및 훈련 DNN 디코더(625, 635 또는 645)를 포함하는) 모델 인스턴스 Mo의 가중치 계수들은 상기 설명된 훈련 스테이지 동안 고정된다. 또한, 레이트 손실 발생기(615)도 미리 결정되어 고정된다. 대체 발생기(630), 특징 식별 손실 발생기(655) 및 복원 식별 손실 발생기(650)의 가중치 계수들은 GAN 훈련 프레임워크에 의해, 위에서 설명한 훈련 스테이지를 통해 학습 가능하며 업데이트된다. 예를 들어, 실시형태들에서, R-D 손실
Figure pct00123
의 기울기들이 대체 발생기(630)의 가중치 계수들을 업데이트하는데 이용되며, 적대적 손실
Figure pct00124
의 기울기들이 특징 식별 손실 발생기(655) 및 복원 식별 손실 발생기(650)의 가중치 계수들을 업데이트하는데 이용된다.
본 개시내용에서, 모델 인스턴스 Mo 및 레이트 손실 발생기(615)가 결정되는 사전-훈련 프로세스에는 어떤 제한들이 없다. 일 예로서, 실시형태들에서, 훈련 이미지들의 세트 Spre가 훈련 데이터 세트 S와 동일하거나 또는 상이할 수 있는 사전-훈련 프로세스에서 이용된다. 각각의 이미지
Figure pct00125
에 대해, 동일한 정방향 추론 계산이 인코딩된 표현
Figure pct00126
및 복원된
Figure pct00127
를 계산하기 위해 DNN 인코딩, 인코딩, 디코딩, DNN 디코딩을 통해서 수행된다. 이후, 왜곡 손실
Figure pct00128
및 레이트 손실
Figure pct00129
가 계산될 수 있다. 이후, 사전-훈련 하이퍼파라미터 λpre가 주어지면, 전체 R-D 손실
Figure pct00130
는 수식 (1)에 기초하여 계산될 수 있으며, 그 기울기들이 역-전파를 통해서 훈련 DNN 인코더(605), 훈련 인코더(610), 훈련 디코더(620), 훈련 DNN 디코더(625, 635 또는 645), 및 레이트 손실 발생기(615)의 가중치들을 업데이트하는데 이용된다.
또한, 실시형태들에서, 훈련 DNN 인코더(605), 훈련 DNN 디코더(625) 부분 1, 및 훈련 DNN 디코더(635) 부분 2가 대응하는 테스트 DNN 인코더(510), 테스트 DNN 디코더(540) 부분 1, 및 테스트 DNN 디코더(560) 부분 2와 동일하다는 점을 언급할 가치가 있다. 한편, 훈련 인코더(610) 및 훈련 디코더(620)는 대응하는 테스트 인코더(520) 및 테스트 디코더(530)와 상이하다. 예를 들어, 테스트 인코더(520) 및 테스트 디코더(530)는 각각 일반 테스트 양자화기 및 테스트 엔트로피 인코더, 및 일반 테스트 엔트로피 디코더 및 테스트 역양자화기를 포함한다. 훈련 인코더(610) 및 훈련 디코더(620)의 각각은 통계 샘플러를 이용하여, 테스트 양자화기 및 테스트 역양자화기의 효과를 각각 근사화한다. 엔트로피 인코더 및 디코더는 훈련 스테이지에서 스킵된다.
도 7a, 도 7b 및 도 7c는 실시형태들에 따른, 어텐션(attention)-기반 적대적 발생기들에 의한 레이트-적응형 신경 이미지 압축을 위한 테스트 장치들(700A, 700B 및 700C)의 블록도들이다.
어텐션-기반 적대적 발생기는 인코더 측(도 7a) 상에서 또는 디코더 측(도 7b 및 도 7c) 상에서 임의의 기존 NIC 모델로 플러깅될 수 있는 애드온 컴포넌트이며, 이는 R-D 절충 적응 동안 중요한 정보에 자동적으로 초점을 맞추기 위해 어텐션 모델에 의해 발생된 어텐션 맵을 이용한다. 어텐션-기반 적대적 발생기가 어텐션 모델의 출력을 이용하기 때문에, 어텐션 모델은 인코더 측(도 7a 및 도 7b) 또는 디코더 측(도 7c) 상에서 발생기 이전에 배치되어야 한다.
보편성의 상실 없이, NIC DNN로부터의 테스트 DNN 인코더 및 테스트 DNN 디코더가 있으며, 모델 인스턴스 Mo가 목표 앵커 λo 값에 대해 훈련된다. 이 모델 인스턴스 Mo는 목표 λt 값에 대해 훈련되었을 가상 NIC 모델 인스턴스 Mt의 압축 효과들을 달성하기 위해 발생기
Figure pct00131
를 이용하여 적응된다. 또한, 발생기
Figure pct00132
가 i 번째 계층과 (i+1) 번째 계층 사이의 테스트 DNN 인코더, 또는 i 번째 계층과 (i+1) 번째 계층 사이의 테스트 DNN 디코더로 플러깅된다고 가정한다. (i+1) 번째 계층의 입력 (i 번째 계층의 출력)은 특징 f이다.
도 7a에 나타낸 바와 같이, 테스트 장치(700A)는 테스트 DNN 인코더(705), 대체 발생기(710), 테스트 DNN 인코더(715), 테스트 인코더(720), 테스트 디코더(725), 테스트 DNN 디코더(730), 및 어텐션 발생기(735)를 포함한다.
대체 발생기(710)가 인코더 측 상에 배치될 때, 원래 NIC 모델의 원래 DNN 인코딩 프로세스는 2개의 부분들로 분리될 수 있으며, 여기서, 테스트 DNN 인코더(705) 부분 1을 이용하여 특징 f를 계산하기 위해 입력 이미지 x가 DNN 인코딩 부분 1 모듈을 통과하고, 그리고 이후 테스트 DNN 인코더(715) 부분 2를 이용하여 DNN 인코딩된 표현 y를 계산하기 위해 f가 DNN 인코딩 부분 2 모듈을 통과한다. 대체 발생기(710)가 전체 테스트 DNN 인코더의 앞에 배치되면(즉, i=0), 특징 f는 입력 이미지 x이며, 테스트 DNN 인코더(715) 부분 2는 전체 원래 테스트 DNN 인코더를 포함한다.
도 7b 및 도 7c에 나타낸 바와 같이, 테스트 장치(700B 또는 700C)는 테스트 DNN 인코더(740), 테스트 인코더(745), 테스트 디코더(750), 테스트 DNN 디코더(755), 대체 발생기(760) 및 테스트 DNN 디코더(765)를 포함한다. 도 7b의 테스트 장치(700B)는 어텐션 발생기(770)를 포함하며, 도 7c의 테스트 장치(700C)는 어텐션 발생기(775)를 포함한다.
대체 발생기(760)가 디코더 측 상에 배치될 때, 원래 NIC 모델의 원래 DNN 디코딩 프로세스는 2개의 부분들로 분리될 수 있으며, 여기서, 테스트 DNN 디코더(755) 부분 1을 이용하여 특징 f를 계산하기 위해 입력 복구된 표현
Figure pct00133
가 DNN 디코딩 부분 1 모듈을 통과하고, 그리고 이후 테스트 DNN 디코더(765) 부분 2를 이용하여 복원된
Figure pct00134
를 계산하기 위해 f가 DNN 디코딩 부분 2 모듈을 통과한다. 대체 발생기(760)가 전체 테스트 DNN 디코더의 앞에 배치되면(즉, i=0), 특징 f는 입력 복구된 표현
Figure pct00135
이며, 테스트 DNN 디코더(765) 부분 2는 전체 원래 테스트 DNN 디코더를 포함한다.
도 7a 내지 도 7c를 참조하면, 보편성의 상실 없이, DNN이며 그리고 j 번째 계층과 (j+1) 번째 계층 사이의 테스트 DNN 인코더, 또는 j 번째 계층과 (j+1) 번째 계층 사이의 테스트 DNN 디코더 상으로 플러깅되는 어텐션 모델이 있다(j≤i). (j+1) 번째 계층의 입력(j 번째 계층의 출력)은 특징 a이며, 어텐션 발생기는 a에 기초하여 어텐션 맵
Figure pct00136
를 발생시킨다. 따라서, 어텐션 모델이 전체 테스트 DNN 인코더의 앞에 배치될 때(즉, j=0), 특징 a는 입력 이미지 x이다. 어텐션 모델이 전체 테스트 DNN 디코더의 앞에 배치될 때, 특징 a는 입력 복구된 표현
Figure pct00137
이다.
도 7a를 참조하면, 입력 이미지 x가 주어지면, 발생기
Figure pct00138
가 인코더 측 상에 배치되는 구성의 경우, 테스트 DNN 인코더(705) 부분 1을 이용하여 특징 f를 계산하기 위해 x가 DNN 인코딩 부분 1 모듈을 통과한다. 또한, 테스트 DNN 인코더(705) 부분 1의 j 번째 계층의 출력 및 (j+1) 번째 계층의 입력으로서의 특징 a가, 어텐션 모델을 이용하여 어텐션 맵
Figure pct00139
를 발생시키기 위해 어텐션 발생기(735)를 통과한다. 이후, 특징 f 및 어텐션 맵
Figure pct00140
가 대체 특징
Figure pct00141
를 계산하기 위해 대체 발생기(710)를 통과하며,
Figure pct00142
(f 대신)가 테스트 DNN 인코더(715) 부분 2에 의해 DNN 인코딩된 표현
Figure pct00143
를 계산하기 위해 DNN 인코딩 부분 2 모듈을 통과한다.
Figure pct00144
에 기초하여, 인코딩 모듈은 테스트 인코더(720)를 이용하여 압축된 표현
Figure pct00145
를 계산한다. 이후, 디코더 측 상에서,
Figure pct00146
에 기초하여, 복구된 표현
Figure pct00147
가 테스트 디코더(725)를 이용하여 디코딩 프로세스를 통해 계산될 수 있다. 이후, DNN 디코딩 모듈은 테스트 DNN 디코더(730)를 이용하여
Figure pct00148
에 기초하여 복원된 출력 이미지
Figure pct00149
를 계산한다. 압축된 표현
Figure pct00150
및 복원된 출력 이미지
Figure pct00151
는 목표 λt 값에 의한 수식 (1)의 최적에 가까운 R-D 손실(즉, λt로 R-D 손실을 최적화하여 훈련되었을 가상 모델 Mt와 유사한 R-D 손실)을 가질 것이다.
도 7b 및 도 7c를 참조하면, 발생기
Figure pct00152
가 입력 이미지 x와 함께, 디코더 측 상에 배치되는 구성의 경우, DNN 인코딩 프로세스는 테스트 DNN 인코더(740)를 이용하여 DNN 인코딩된 표현 y를 계산하며, 이는 테스트 인코더(745)를 통해서 인코딩 프로세스에서 추가로 인코딩되어 압축된 표현
Figure pct00153
를 발생시킨다. 이후, 디코더 측 상에서, 압축된 표현
Figure pct00154
가 디코딩 모듈에서 복구된
Figure pct00155
를 발생시키기 위해 테스트 디코더(750)에 의해 디코딩된다. 이후, DNN 디코딩 부분 1 모듈은 테스트 DNN 디코더(755) 부분 1을 이용하여
Figure pct00156
에 기초하여 특징 f를 계산한다.
도 7b에서 설명된 구성에 대해, 테스트 DNN 인코더(740)의 j 번째 계층의 출력 및 (j+1) 번째 계층의 입력으로서의 특징 a가 어텐션 모델을 이용하여 어텐션 맵
Figure pct00157
를 발생시키기 위해, 어텐션 발생기(770)를 통과한다.
도 7c에서 설명된 구성에 대해, 테스트 DNN 디코더(755) 부분 1의 j 번째 계층의 출력 및 (j+1) 번째 계층의 입력으로서의 특징 a가 어텐션 모델을 이용하여 어텐션 맵
Figure pct00158
를 발생시키기 위해, 어텐션 발생기(775)를 통과한다.
이후, 플러그인된 적대적 발생기
Figure pct00159
로, 특징 f 및 어텐션 맵
Figure pct00160
가 대체 특징
Figure pct00161
를 계산하기 위해 대체 발생기(760)를 통과하며,
Figure pct00162
(f 대신)가 테스트 DNN 디코더(765) 부분 2에 의해 복원된 출력 이미지
Figure pct00163
를 계산하기 위해 DNN 디코딩 부분 2 모듈을 통과한다. 압축된 표현
Figure pct00164
및 복원된 출력 이미지
Figure pct00165
는 목표 λt 값에 의한 수식 (1)의 최적에 가까운 R-D 손실(즉, λt로 R-D 손실을 최적화하여 훈련되었을 가상 모델 Mt와 유사한 R-D 손실)을 가질 것이다.
본 개시내용에서, 어텐션 모델의 DNN 네트워크 구조들에는 어떤 제한들이 없다. 실시형태들에서, 어텐션 맵
Figure pct00166
은 특징 f와 동일한 형상을 가질 것이며, 어텐션 맵의 큰 값들은 f의 대응하는 특징들이 더 중요하다는 것을 의미하며, 반대의 경우도 마찬가지이다.
본 개시내용에서, 대체 발생기(710 또는 760)의 DNN 네트워크 구조들에는 어떤 제한들이 없다. 실시형태들에서, 대체 발생기(710 또는 760)는 기본 NIC 모델보다 휠씬 더 작으며, 입력 특징 f 및 입력 어텐션 맵 a는 예컨대, 엘리먼트별 곱셈(element-wise multiplication)에 의해 결합되어, 발생기 DNN를 통과하는 어텐션-마스킹된 입력을 발생시킨다.
실시형태들에서, 주어진 목표 λt 값에 대해, 목표 λt에 적응시키기 위한 앵커 λo에 대한 앵커 모델 인스턴스가 λt에 가장 가까운 λo를 가진 것으로 선택된다. 또한, 본 개시내용의 일 실시형태가 하나의 앵커 λo 값에 대해 훈련된 오직 하나의 모델 인스턴스를 갖는 것이고 모든 다른 중간 R-D 절충 값들이 각각의 중간 λt에 대해 하나씩, 상이한 컴팩트 발생기들을 통해서 시뮬레이션된다는 점을 언급할 가치가 있다.
도 8a, 도 8b 및 도 8c는 실시형태들에 따른, 어텐션-기반 적대적 발생기들에 의한 레이트-적응형 신경 이미지 압축을 위한 훈련 장치들(800A, 800B 및 800C)의 블록도들이다.
목표 λo로 수식 (1)의 R-D 손실을 최적화하기 위해 모델 인스턴스 Mo로 사전-훈련되는 NIC 모델이 있다. 발생기
Figure pct00167
는 기본 NIC 모델을 재훈련함이 없이, 관심있는 다른 λt에 대해 모델 Mo를 적응시키도록 학습된다. 대응하는 테스트 스테이지와 유사하게, 도 8a는 발생기가 인코더 측 상에 배치될 때 작업흐름을 제공하며, 여기서 대응하는 훈련 DNN 인코더가 2 부분들: 훈련 DNN 인코더(802) 부분 1 및 훈련 DNN 인코더(806) 부분 2로 분할된다. 도 8b 및 도 8c는 발생기가 디코더 측 상에 배치될 때 작업흐름을 제공하며, 여기서, 대응하는 훈련 DNN 디코더가 2 부분들: 훈련 DNN 디코더(834) 부분 1 및 훈련 DNN 디코더(838) 부분 2로 분할된다.
도 8a에 나타낸 바와 같이, 훈련 장치(800A)는 훈련 DNN 인코더(802), 대체 발생기(804), 훈련 DNN 인코더(806), 훈련 인코더(808), 훈련 디코더(810), 훈련 DNN 디코더(812), 어텐션 발생기(814), 레이트 손실 발생기(816), 왜곡 손실 발생기(818), 특징 식별 손실 발생기(820), 훈련 DNN 인코더(822), 표현 식별 손실 발생기(824) 및 가중치 업데이트 부분(826)을 포함한다.
발생기가 인코더 측 상에 배치될 때, 훈련 데이터셋 S로부터의 입력 훈련 이미지 x
Figure pct00168
가 주어지면, 모델 인스턴스 Mo로부터 사전-훈련된 훈련 DNN 인코더(802) 부분 1을 이용하여 특징 f를 계산하기 위해 DNN 인코딩 부분 1 모듈을 먼저 통과한다. 또한, 훈련 DNN 인코더(802) 부분 1의 j 번째 계층의 출력 및 (j+1) 번째 계층의 입력으로서의 특징 a가 어텐션 모델을 이용하여 어텐션 맵
Figure pct00169
를 발생시키기 위해, 어텐션 발생기(814)를 통과한다. 이후, 특징 f 및 어텐션 맵
Figure pct00170
가 현재의 발생기
Figure pct00171
를 이용하여 대체 특징
Figure pct00172
를 계산하기 위해, 대체 발생기(804)를 통과한다. 실시형태들에서, 어텐션 맵
Figure pct00173
및 특징 f는 동일한 형상을 가지며, 이들은 예를 들어, 엘리먼트별 곱셈에 의해 결합되어, 어텐션-마스킹된 입력
Figure pct00174
를 발생시켜, 어텐션-마스킹된 입력에 기초하여 대체 섭동
Figure pct00175
을 계산하는 대체 발생기(804)를 통과한다. 대체 특징
Figure pct00176
Figure pct00177
로서 계산된다. 대체
Figure pct00178
가 이후 사전-훈련된 모델 인스턴스 Mo로부터 훈련 DNN 인코더(806) 부분 2를 이용하여 DNN 인코딩된 표현
Figure pct00179
를 계산하기 위해 DNN 인코딩 부분 2 모듈을 통과한다. 이후, 인코딩 프로세스는 훈련 인코더(808)를 이용하여 압축된 표현
Figure pct00180
를 계산한다.
Figure pct00181
로, 레이트 손실 발생기(816)는 레이트 손실
Figure pct00182
를 계산한다. 이후, 디코딩 모듈은 훈련 디코더(810)를 이용하여
Figure pct00183
에 기초하여 압축해제된
Figure pct00184
를 계산하며, DNN 디코딩 프로세스는 훈련 DNN 디코더(812)를 이용하여 복원된
Figure pct00185
를 추가로 발생시킨다. 왜곡 손실 발생기(818)는 복원된
Figure pct00186
와 원래 입력 이미지 x 사이의 왜곡 손실
Figure pct00187
를 계산한다. 레이트 손실
Figure pct00188
는 인코딩된 표현
Figure pct00189
의 비트 레이트와 관련되며, 그리고, 실시형태들에서, 엔트로피 추정 접근법이 레이트 손실
Figure pct00190
를 계산하기 위해 레이트 손실 발생기(816)에 의해 이용된다. 관심 목표 λt를 이용하여, 수식 (1)의 R-D 손실이
Figure pct00191
로서 계산될 수 있다.
도 8b 및 도 8c에 나타낸 바와 같이, 훈련 장치(800B 또는 800C)는 훈련 DNN 인코더(828), 훈련 인코더(830), 훈련 디코더(832), 훈련 DNN 디코더(834), 대체 발생기(836), 훈련 DNN 디코더(838), 레이트 손실 발생기(842), 왜곡 손실 발생기(844), 특징 식별 손실 발생기(846), 훈련 DNN 디코더(848), 복원 식별 손실 발생기(850) 및 가중치 업데이트 부분(852)을 포함한다. 도 8b의 훈련 장치(800B)는 어텐션 발생기(840)를 포함하며, 도 8c의 훈련 장치(800C)는 어텐션 발생기(854)를 포함한다.
도 8b 및 도 8c를 참조하면, 발생기가 디코더 측 상에 배치될 때, 훈련 데이터셋 S로부터의 입력 훈련 이미지 x
Figure pct00192
는 훈련 DNN 인코더(828)에 기초하여 DNN 인코딩된 표현 y를 계산하기 위해 먼저 DNN 인코딩 모듈을 통과한다. 이후, 인코딩 프로세스는 훈련 인코더(830)를 이용하여 압축된 표현
Figure pct00193
를 계산한다.
Figure pct00194
에 기초하여, 레이트 손실 발생기(842)는 레이트 손실
Figure pct00195
를 계산한다. 이후, 디코더 측 상에서, 디코딩 모듈은 훈련 디코더(832)를 이용하여
Figure pct00196
에 기초하여 압축해제된
Figure pct00197
를 계산한다. 압축해제된
Figure pct00198
가 이후 모델 인스턴스 Mo로부터 사전-훈련된 훈련 DNN 디코더(834) 부분 1을 이용하여 특징 f 를 계산하기 위해 DNN 디코딩 부분 1 모듈을 통과한다.
도 8b에서 설명된 구성에 대해, 훈련 DNN 인코더(828)의 j 번째 계층의 출력 및 (j+1) 번째 계층의 입력으로서의 특징 a가 어텐션 모델을 이용하여 어텐션 맵
Figure pct00199
를 발생시키기 위해 어텐션 발생기(840)를 통과한다. 플러그인된 적대적 발생기
Figure pct00200
로, 특징 f 및 어텐션 맵
Figure pct00201
가 대체 특징
Figure pct00202
를 계산하기 위해 대체 발생기(836)를 통과한다. 도 8a와 유사하게, 실시형태들에서, 어텐션 맵
Figure pct00203
및 특징 f는 동일한 형상을 가지며, 이들은 예를 들어, 엘리먼트별 곱셈에 의해 결합되어, 어텐션-마스킹된 입력
Figure pct00204
를 발생시켜, 어텐션-마스킹된 입력에 기초하여 대체 섭동
Figure pct00205
를 계산하는 대체 발생기(836)를 통과한다. 대체 특징
Figure pct00206
Figure pct00207
로서 계산된다. 대체
Figure pct00208
가 이후 사전-훈련된 모델 인스턴스 Mo로부터 훈련 DNN 디코더(838) 부분 2를 이용하여 복원된 출력 이미지
Figure pct00209
를 계산하기 위해 DNN 디코딩 부분 2 모듈을 통과한다. 왜곡 손실 발생기(844)는 복원된
Figure pct00210
와 원래 입력 이미지 x 사이의 왜곡 손실
Figure pct00211
를 계산한다. 레이트 손실
Figure pct00212
는 인코딩된 표현
Figure pct00213
의 비트 레이트에 관련되며, 그리고, 실시형태들에서, 엔트로피 추정 접근법이 레이트 손실
Figure pct00214
를 계산하기 위해 레이트 손실 발생기(842)에 의해 이용된다. 관심 목표 λt를 이용하여, 수식 (1)의 R-D 손실이
Figure pct00215
로서 계산될 수 있다.
도 8c의 구성에 대해, 훈련 DNN 디코더(834) 부분 1의 j 번째 계층의 출력 및 (j+1) 번째 계층의 입력으로서의 특징 a가 어텐션 모델을 이용하여 어텐션 맵
Figure pct00216
를 발생시키기 위해, 어텐션 발생기를 통과한다. 도 8b의 상기 경우와 유사하게, 특징 f 및 어텐션 맵
Figure pct00217
가 대체 특징
Figure pct00218
를 계산하기 위해 대체 발생기(836)를 통과하며, 여기서, 실시형태들에서, 어텐션 맵
Figure pct00219
및 특징 f는 동일한 형상을 가지며, 이들은 예를 들어, 엘리먼트별 곱셈에 의해 결합되어, 대체 발생기(836)를 통과하는 어텐션-마스킹된 입력
Figure pct00220
를 발생한다. 대체 발생기(836)는 어텐션-마스킹된 입력에 기초하여 대체 섭동
Figure pct00221
를 계산하며, 대체 특징
Figure pct00222
Figure pct00223
로서 계산된다. 대체
Figure pct00224
가 이후 사전-훈련된 모델 인스턴스 Mo로부터 훈련 DNN 디코더(838) 부분 2를 이용하여 복원된 출력 이미지
Figure pct00225
를 계산하기 위해, DNN 디코딩 부분 2 모듈을 통과한다. 왜곡 손실 발생기(844)는 복원된
Figure pct00226
와 원래 입력 이미지 x 사이의 왜곡 손실
Figure pct00227
를 계산한다. 레이트 손실
Figure pct00228
는 인코딩된 표현
Figure pct00229
의 비트 레이트에 관련되며, 그리고, 실시형태들에서, 엔트로피 추정 접근법이 레이트 손실
Figure pct00230
를 계산하기 위해 레이트 손실 발생기(842)에 의해 이용된다. 관심 목표 λt를 이용하여, 수식 (1)의 R-D 손실이
Figure pct00231
로서 계산될 수 있다.
도 8a 내지 도 8c를 참조하면, 동시에, 원래 특징 f 및 대체 특징
Figure pct00232
에 기초하여, 특징 식별 손실 발생기(820 또는 846)는 계산 특징 식별 손실 프로세스를 통해서 특징 식별 손실
Figure pct00233
를 계산할 수 있다. 실시형태들에서, 특징 식별 손실 발생기(820 또는 846)는 대체 특징
Figure pct00234
로부터 원래 특징 f를 식별하는 DNN이다. 예를 들어, 특징 식별 손실 발생기(820 또는 846)는 원래 어텐션-마스킹된 특징들을 하나의 클래스로서 그리고 대체 특징들을 다른 클래스로서 식별하는 2진 DNN 분류기일 수 있다.
또한, 발생기가 도 8a에서와 같이 인코더 측 상에 있을 때, 원래 특징 f를 이용하여, 훈련 DNN 인코더(822) 부분 2는 또한 DNN 인코딩된 표현 y를 발생시킬 수 있다.
Figure pct00235
및 y 둘 다에 기초하여, 표현 식별 손실 발생기(824)는 계산 표현 식별 손실 프로세스를 통해서 표현 식별 손실
Figure pct00236
를 계산한다. 실시형태들에서, 표현 식별 손실 발생기(824)는 대체 특징
Figure pct00237
에 기초하여 발생되는 표현
Figure pct00238
로부터 원래 특징 f에 기초하여 발생되는 인코딩된 특징 표현 y를 식별하는 DNN이다. 예를 들어, 표현 식별 손실 발생기(824)는 원래 특징들로부터 발생된 표현들을 하나의 클래스로서 그리고 대체 특징들로부터 발생된 표현들을 다른 클래스로서 식별하는 2진 DNN 분류기일 수 있다.
발생기가 도 8b 및 도 8c에서와 같이 디코더 측 상에 있을 때, 원래 특징 f를 이용하여, 훈련 DNN 디코더(848) 부분 2는 또한 복원된 출력 이미지
Figure pct00239
를 계산할 수 있다.
Figure pct00240
Figure pct00241
모두에 기초하여, 복원 식별 손실 발생기(850)는 계산 복원 식별 손실 프로세스를 통해서 복원 식별 손실
Figure pct00242
를 계산한다. 실시형태들에서, 복원 식별 손실 발생기(850)는 대체 특징
Figure pct00243
에 기초하여 발생되는 복원된 출력 이미지
Figure pct00244
로부터 원래 특징 f에 기초하여 발생되는 복원된 출력 이미지
Figure pct00245
를 식별하는 DNN이다. 예를 들어, 복원 식별 손실 발생기(850)는 원래 특징들로부터 발생된 복원된 출력 이미지들을 하나의 클래스로서 그리고 대체 특징들로부터 발생된 복원된 출력 이미지들을 다른 클래스로서 식별하는 2진 DNN 분류기일 수 있다.
발생기가 인코더 측 상에 있을 때, 도 8a에 나타낸 바와 같이, 특징 식별 손실
Figure pct00246
및 표현 식별 손실
Figure pct00247
에 기초하여, 가중치 업데이트 부분(826)은 적대적 손실
Figure pct00248
을 다음으로서 (α를 하이퍼파라미터로서) 계산한다:
Figure pct00249
(4)
그리고,
Figure pct00250
Figure pct00251
를 이용하여, 가중치 업데이트 부분(826)은 역-전파 최적화를 통한 기울기들(gradients)을 이용하여 DNN 모델들의 학습 가능한 부분들의 가중치 계수들을 업데이트한다. 실시형태들에서, 훈련 DNN 인코더(802) 부분 1, 훈련 DNN 인코더(806) 부분 2, 훈련 인코더(808), 훈련 디코더(810), 및 훈련 DNN 디코더(812)를 포함하는) 모델 인스턴스 Mo의 가중치 계수들은 상기 설명된 훈련 스테이지 동안 고정된다. 또한, 레이트 손실 발생기(816)도 미리 결정되어 고정된다. 대체 발생기(804), 특징 식별 손실 발생기(820) 및 표현 식별 손실 발생기(824)의 가중치 계수들은 GAN 훈련 프레임워크에 의해 상기 설명된 훈련 스테이지를 통해서 학습 가능하며 업데이트된다. 예를 들어, 실시형태들에서, R-D 손실
Figure pct00252
의 기울기들이 대체 발생기(804)의 가중치 계수들을 업데이트하는데 이용되며, 적대적 손실
Figure pct00253
의 기울기들이 특징 식별 손실 발생기(820) 및 표현 식별 손실 발생기(824)의 가중치 계수들을 업데이트하는데 이용된다.
발생기가 도 8b 및 도 8c에 나타낸 바와 같이 디코더 측 상에 있을 때, 특징 식별 손실
Figure pct00254
및 복원 식별 손실
Figure pct00255
에 기초하여, 가중치 업데이트 부분(852)은 적대적 손실
Figure pct00256
를 다음으로서 (α를 하이퍼파라미터로서) 계산한다:
Figure pct00257
(5)
Figure pct00258
Figure pct00259
에 기초하여, 가중치 업데이트 부분(852)은 역-전파 최적화를 통한 기울기들(gradients)을 이용하여 DNN 모델들의 학습 가능한 부분들의 가중치 계수들을 업데이트한다. 실시형태들에서, (훈련 DNN 인코더(828), 훈련 인코더(830), 훈련 디코더(832), 훈련 DNN 디코더(834) 부분 1, 및 훈련 DNN 디코더(838) 부분 2를 포함하는) 모델 인스턴스 Mo의 가중치 계수들은 상기 설명된 훈련 스테이지 동안 고정된다. 또한, 레이트 손실 발생기(842)도 미리 결정되어 고정된다. 대체 발생기(836), 특징 식별 손실 발생기(846) 및 복원 식별 손실 발생기(850)의 가중치 계수들은 GAN 훈련 프레임워크에 의해 상기 설명된 훈련 스테이지를 통해서 학습 가능하며 업데이트된다. 예를 들어, 실시형태들에서, R-D 손실
Figure pct00260
의 기울기들이 대체 발생기(836)의 가중치 계수들을 업데이트하는데 이용되며, 적대적 손실
Figure pct00261
의 기울기들이 특징 식별 손실 발생기(846) 및 복원 식별 손실 발생기(850)의 가중치 계수들을 업데이트하는데 이용된다.
본 개시내용에서, 모델 인스턴스 Mo 및 레이트 손실 발생기(816 또는 842)가 결정되는 사전-훈련 프로세스에는 어떤 제한들이 없다. 일 예로서, 실시형태들에서, 훈련 이미지들의 세트 Spre가 훈련 데이터 세트 S와 동일하거나 또는 상이할 수 있는 사전-훈련 프로세스에서 이용된다. 각각의 이미지
Figure pct00262
에 대해, 동일한 정방향 추론 계산이 인코딩된 표현
Figure pct00263
및 복원된
Figure pct00264
를 계산하기 위해 DNN 인코딩, 인코딩, 디코딩, DNN 디코딩을 통해서 수행된다. 이후, 왜곡 손실
Figure pct00265
및 레이트 손실
Figure pct00266
가 계산될 수 있다. 이후, 사전-훈련 하이퍼파라미터 λpre가 주어지면, 전체 R-D 손실
Figure pct00267
는 수식 (1)에 기초하여 계산될 수 있으며, 그 기울기들이 역-전파를 통해 훈련 DNN 인코더(802, 806 또는 828), 훈련 인코더(808 또는 830), 훈련 디코더(810 또는 832), 훈련 DNN 디코더(812, 834 또는 838), 및 레이트 손실 발생기(816 또는 842)의 가중치들을 업데이트하는데 이용된다.
또한, 실시형태들에서, 도 8a에서의 인코더-측 대체 발생기(804)의 경우, 훈련 DNN 인코더(802) 부분 1, 훈련 DNN 인코더(806) 부분 2, 및 훈련 DNN 디코더(812)가 대응하는 테스트 DNN 인코더(705) 부분 1, 테스트 DNN 인코더(715) 부분 2, 및 테스트 DNN 디코더(730)와 동일하다는 점을 언급할 가치가 있다. 이와 유사하게, 도 8b 및 도 8c에서의 디코더-사이즈 대체 발생기(836)의 경우에 대해, 훈련 DNN 인코더(828), 훈련 DNN 디코더(834) 부분 1, 및 훈련 DNN 디코더(838) 부분 2는 대응하는 테스트 DNN 인코더(740), 테스트 DNN 디코더(755) 부분 1, 및 테스트 DNN 디코더(765) 부분 2와 동일하다. 다른 한편으로는, 훈련 인코더(808 또는 830) 및 훈련 디코더(810 또는 832)는 대응하는 테스트 인코더(720 또는 745) 및 테스트 디코더(725 또는 750)와 상이하다. 예를 들어, 테스트 인코더(720 또는 745) 및 테스트 디코더(725 또는 75)는 각각 일반 테스트 양자화기 및 테스트 엔트로피 인코더, 및 일반 테스트 엔트로피 디코더 및 테스트 역양자화기를 포함한다. 훈련 인코더(808 또는 830) 및 훈련 디코더(810 또는 832)의 각각은 통계 샘플러를 이용하여, 테스트 양자화기 및 테스트 역양자화기의 효과를 각각 근사화한다. 엔트로피 인코더 및 디코더는 훈련 스테이지에서 스킵된다.
도 9는 실시형태들에 따른, 적대적 발생기들에 의한 레이트-적응형 신경 이미지 압축의 방법(900)의 플로우차트이다.
일부 구현예들에서, 도 9의 하나 이상의 프로세스 블록들은 플랫폼(120)에 의해 수행될 수도 있다. 일부 구현예들에서, 도 9의 하나 이상의 프로세스 블록들은 사용자 디바이스(110)와 같은 플랫폼(120)과 분리되거나 또는 이를 포함하는 다른 디바이스 또는 디바이스들의 그룹에 의해 수행될 수도 있다.
도 9에 나타낸 바와 같이, 동작 910에서, 방법(900)은 제1 신경망의 제1 부분을 이용하여 입력 이미지의 제1 특징을 획득하는 단계를 포함한다.
동작 920에서, 방법(900)은 획득된 제1 특징에 기초하여, 제2 신경망을 이용하여 제1 대체 특징을 발생시키는 단계를 포함한다.
동작 930에서, 방법(900)은 제1 신경망의 제2 부분을 이용하여, 발생된 제1 대체 특징을 인코딩하여, 제1 인코딩된 표현을 발생시키는 단계를 포함한다.
동작 940에서, 방법(900)은 발생된 제1 인코딩된 표현을 압축하는 단계를 포함한다.
동작 950에서, 방법(900)은 압축된 표현을 압축해제하는 단계를 포함한다.
동작 960에서, 방법(900)은 제3 신경망을 이용하여, 압축해제된 표현을 디코딩하여, 제1 출력 이미지를 복원하는 단계를 포함한다.
제2 신경망은 압축된 표현의 레이트 손실을 결정하고; 입력 이미지와 복원된 제1 출력 이미지 사이의 왜곡 손실을 결정하고; 제1 신경망의 제3 부분을 이용하여, 획득된 제1 특징을 인코딩하여, 제2 인코딩된 표현을 발생시키고; 제4 신경망을 이용하여, 발생된 제1 인코딩된 표현과 발생된 제2 인코딩된 표현 사이의 표현 식별 손실을 결정하고; 제5 신경망을 이용하여, 발생된 제1 대체 특징과 획득된 제1 특징 사이의 특징 식별 손실을 결정하고; 그리고 제2 신경망, 제4 신경망 및 제5 신경망의 가중치 계수들을 업데이트하여, 결정된 레이트 손실, 결정된 왜곡 손실, 결정된 표현 식별 손실 및 결정된 특징 식별 손실을 최적화함으로써, 훈련될 수도 있다.
방법(900)은 제1 인코딩된 표현을 발생시키기 위해, 제1 신경망을 이용하여 입력 이미지를 인코딩하는 단계; 압축해제된 표현으로부터, 제3 신경망의 제1 부분을 이용하여 제2 특징을 획득하는 단계; 획득된 제2 특징에 기초하여, 제4 신경망을 이용하여 제2 대체 특징을 발생시키는 단계; 및 제1 출력 이미지를 복원하기 위해, 제3 신경망의 제2 부분을 이용하여, 발생된 제2 대체 특징을 디코딩하는 단계를 더 포함할 수도 있다.
제4 신경망은 압축된 표현의 레이트 손실을 결정하고; 입력 이미지와 복원된 제1 출력 이미지 사이의 왜곡 손실을 결정하고; 제3 신경망의 제3 부분을 이용하여, 획득된 제2 특징을 디코딩하여, 제2 출력 이미지를 복원하고; 제5 신경망을 이용하여, 복원된 제1 출력 이미지와 복원된 제2 출력 이미지 사이의 표현 식별 손실을 결정하고; 제6 신경망을 이용하여, 발생된 제2 대체 특징과 획득된 제2 특징 사이의 특징 식별 손실을 결정하고; 그리고 제4 신경망, 제5 신경망 및 제6 신경망의 가중치 계수들을 업데이트하여, 결정된 레이트 손실, 결정된 왜곡 손실, 결정된 표현 식별 손실 및 결정된 특징 식별 손실을 최적화함으로써, 훈련될 수도 있다.
방법(900)은 제1 신경망을 이용하여, 입력 이미지의 제3 특징을 획득하는 단계; 및 획득된 제3 특징에 기초하여 어텐션 맵을 발생시키는 단계를 더 포함할 수도 있다. 제2 대체 특징을 발생시키는 단계는 획득된 제2 특징 및 발생된 어텐션 맵에 기초하여, 제4 신경망을 이용하여, 제2 대체 특징을 발생시키는 단계를 포함할 수도 있다.
방법(900)은 제3 신경망의 제1 부분을 이용하여, 압축해제된 표현으로부터 제3 특징을 획득하는 단계; 및 획득된 제3 특징에 기초하여 어텐션 맵을 발생시키는 단계를 더 포함할 수도 있다. 제2 대체 특징을 발생시키는 단계는 획득된 제2 특징 및 발생된 어텐션 맵에 기초하여, 제4 신경망을 이용하여, 제2 대체 특징을 포함할 수도 있다.
방법(900)은 제1 신경망의 제1 부분을 이용하여 입력 이미지의 제2 특징을 획득하는 단계; 및 획득된 제2 특징에 기초하여 어텐션 맵을 발생시키는 단계를 더 포함할 수도 있다. 제1 대체 특징을 발생시키는 단계는 획득된 제1 특징 및 발생된 어텐션 맵에 기초하여, 제2 신경망을 이용하여, 제1 대체 특징을 발생시키는 단계를 포함할 수도 있다.
도 9는 방법(900)의 예시적인 블록들을 나타내지만, 일부 구현예들에서, 방법(900)은 도 9에 도시된 블록들보다 추가적인 블록들, 더 적은 블록들, 상이한 블록들, 또는 상이하게 배열된 블록들을 포함할 수도 있다. 추가적으로, 또는 대안적으로, 방법(900)의 블록들 중 2개 이상이 병렬로 수행될 수도 있다.
도 10은 실시형태들에 따른, 적대적 발생기들에 의한 레이트-적응형 신경 이미지 압축을 위한 장치(1000)의 블록도이다.
도 10에 나타낸 바와 같이, 장치(1000)는 제1 획득 코드(1010), 제1 발생 코드(1020), 제1 인코딩 코드(1030), 압축 코드(1040), 압축해제 코드(1050), 및 제1 디코딩 코드(1060)를 포함한다.
제1 획득 코드(1010)는 적어도 하나의 프로세서로 하여금, 제1 신경망의 제1 부분을 이용하여 입력 이미지의 제1 특징을 획득하게 하도록 구성된다.
제1 발생 코드(1020)는 적어도 하나의 프로세서로 하여금, 획득된 제1 특징에 기초하여, 제2 신경망을 이용하여 제1 대체 특징을 발생시키게 하도록 구성된다.
제1 인코딩 코드(1030)는 적어도 하나의 프로세서로 하여금, 제1 신경망의 제2 부분을 이용하여, 발생된 제1 대체 특징을 인코딩하여, 제1 인코딩된 표현을 발생시키게 하도록 구성된다.
압축 코드(1040)는 적어도 하나의 프로세서로 하여금, 발생된 제1 인코딩된 표현을 압축하게 하도록 구성된다.
압축해제 코드(1050)는 적어도 하나의 프로세서로 하여금, 압축된 표현을 압축해제하게 하도록 구성된다.
제1 디코딩 코드(1060)는 적어도 하나의 프로세서로 하여금, 제3 신경망을 이용하여, 압축해제된 표현을 디코딩하여, 제1 출력 이미지를 복원하게 하도록 구성된다.
제2 신경망은 압축된 표현의 레이트 손실을 결정하고; 입력 이미지와 복원된 제1 출력 이미지 사이의 왜곡 손실을 결정하고; 제1 신경망의 제3 부분을 이용하여, 획득된 제1 특징을 인코딩하여, 제2 인코딩된 표현을 발생시키고; 제4 신경망을 이용하여, 발생된 제1 인코딩된 표현과 발생된 제2 인코딩된 표현 사이의 표현 식별 손실을 결정하고; 제5 신경망을 이용하여, 발생된 제1 대체 특징과 획득된 제1 특징 사이의 특징 식별 손실을 결정하고; 그리고 제2 신경망, 제4 신경망 및 제5 신경망의 가중치 계수들을 업데이트하여, 결정된 레이트 손실, 결정된 왜곡 손실, 결정된 표현 식별 손실 및 결정된 특징 식별 손실을 최적화함으로써, 훈련될 수도 있다.
장치(1000)는 적어도 하나의 프로세서로 하여금, 제1 신경망을 이용하여 입력 이미지를 인코딩하여, 제1 인코딩된 표현을 발생시키게 하도록 구성된 제2 인코딩 코드; 적어도 하나의 프로세서로 하여금, 제3 신경망의 제1 부분을 이용하여, 압축해제된 표현으로부터 제2 특징을 획득하게 하도록 구성된 제2 획득 코드; 적어도 하나의 프로세서로 하여금, 획득된 제2 특징에 기초하여, 제4 신경망을 이용하여, 제2 대체 특징을 발생시키게 하도록 구성된 제2 발생 코드; 및 적어도 하나의 프로세서로 하여금, 제3 신경망의 제2 부분을 이용하여, 발생된 제2 대체 특징을 디코딩하여, 제1 출력 이미지를 복원하게 하도록 구성된 제2 디코딩 코드를 더 포함할 수도 있다.
제4 신경망은 압축된 표현의 레이트 손실을 결정하고; 입력 이미지와 복원된 제1 출력 이미지 사이의 왜곡 손실을 결정하고; 제3 신경망의 제3 부분을 이용하여, 획득된 제2 특징을 디코딩하여, 제2 출력 이미지를 복원하고; 제5 신경망을 이용하여, 복원된 제1 출력 이미지와 복원된 제2 출력 이미지 사이의 표현 식별 손실을 결정하고; 제6 신경망을 이용하여, 발생된 제2 대체 특징과 획득된 제2 특징 사이의 특징 식별 손실을 결정하고; 그리고 제4 신경망, 제5 신경망 및 제6 신경망의 가중치 계수들을 업데이트하여, 결정된 레이트 손실, 결정된 왜곡 손실, 결정된 표현 식별 손실 및 결정된 특징 식별 손실을 최적화함으로써, 훈련될 수도 있다.
장치(1000)는 적어도 하나의 프로세서로 하여금, 제1 신경망을 이용하여, 입력 이미지의 제3 특징을 획득하게 하도록 구성된 제3 획득 코드; 및 적어도 하나의 프로세서로 하여금, 획득된 제3 특징에 기초하여, 어텐션 맵을 발생시키게 하도록 구성된 제3 발생 코드를 더 포함할 수도 있다. 제2 발생 코드는 적어도 하나의 프로세서로 하여금, 획득된 제2 특징 및 발생된 어텐션 맵에 기초하여, 제4 신경망을 이용하여, 제2 대체 특징을 발생시키게 하도록 추가로 구성될 수도 있다.
장치(1000)는 적어도 하나의 프로세서로 하여금, 제3 신경망의 제1 부분을 이용하여, 압축해제된 표현으로부터 제3 특징을 획득하게 하도록 구성된 제3 획득 코드; 및 적어도 하나의 프로세서로 하여금, 획득된 제3 특징에 기초하여 어텐션 맵을 발생시키게 하도록 구성된 제3 발생 코드를 더 포함할 수도 있다. 제2 발생 코드는 획득된 제2 특징 및 발생된 어텐션 맵에 기초하여, 제4 신경망을 이용하여, 제2 대체 특징을 발생시키는 것을 포함하여, 적어도 하나의 프로세서로 하여금, 제2 대체 특징을 발생시키게 하도록 추가로 구성될 수도 있다.
장치(1000)는 적어도 하나의 프로세서로 하여금, 제1 신경망의 제1 부분을 이용하여 입력 이미지의 제2 특징을 획득하게 하도록 구성된 제2 획득 코드; 및 적어도 하나의 프로세서로 하여금, 획득된 제2 특징에 기초하여 어텐션 맵을 발생시키게 하도록 구성된 제2 발생 코드를 더 포함할 수도 있다. 제1 발생 코드(1020)는 적어도 하나의 프로세서로 하여금, 획득된 제1 특징 및 발생된 어텐션 맵에 기초하여, 제2 신경망을 이용하여, 제1 대체 특징을 발생시키게 하도록 추가로 구성될 수도 있다.
종래의 단-대-단(E2E) 이미지 압축 방법들과 비교하여, 설명된 실시형태들은 다음 새로운 특징들을 갖는다. 컴팩트 적대적 발생기는 앵커 R-D 절충 λo 값에 대해 훈련된 NIC 모델 인스턴스를 적응시켜 중간 R-D 절충 λt 값의 압축 효과를 시뮬레이션한다. 공통 발생기는 데이터 독립적인 방법으로 NIC 모델 인스턴스를 적응시키기 위해 오프라인으로 훈련되므로, 온라인 학습 또는 피드백이 이러한 적응에 필요하지 않다.
종래의 E2E 이미지 압축 방법들과 비교하여, 설명된 실시형태들은 다음 이점들을 갖는다: 멀티-레이트 압축을 달성하는 크게 감소된 배치 스토리지, 및 다양한 유형들의 NIC 모델들을 수용하는 유연한 프레임워크. 또, 어텐션-기반 발생기는 모델 적응을 위한 현저한 정보에 초점을 맞출 수도 있다.
본 방법들은 별도로 이용되거나 또는 임의의 순서로 결합될 수도 있다. 또, 방법들(또는, 실시형태들), 인코더, 및 디코더의 각각은 프로세싱 회로부(예컨대, 하나 이상의 프로세서들 또는 하나 이상의 집적 회로들)에 의해 구현될 수도 있다. 일 예에서, 하나 이상의 프로세서들은 비일시적 컴퓨터-판독가능 매체에 저장된 프로그램을 실행한다.
전술한 개시물은 예시 및 설명을 제공하지만, 포괄적이거나 또는 구현예들을 개시된 정확한 형태로 한정하려는 것은 아니다. 변경들 및 변형들이 상기 개시물에 비추어 가능하거나 또는 구현예들의 실시로부터 획득될 수도 있다.
본원에서 사용될 때, 용어 컴포넌트는 하드웨어, 펌웨어, 또는 하드웨어와 소프트웨어의 조합으로서 넓게 해석되도록 의도된다.
본원에서 설명되는, 시스템들 및/또는 방법들이 상이한 유형들의 하드웨어, 펌웨어, 또는 하드웨어와 소프트웨어의 조합으로 구현될 수도 있음은 명백할 것이다. 이들 시스템들 및/또는 방법들을 구현하는데 사용되는 실제 특수화된 제어 하드웨어 또는 소프트웨어 코드는 구현예들을 제한하지 않는다. 따라서, 시스템들 및/또는 방법들의 동작 및 거동은 특정의 소프트웨어 코드에 대한 참조 없이 본원에서 설명되었지만-소프트웨어 및 하드웨어가 본원의 설명에 기초하여 시스템들 및/또는 방법들을 구현하도록 설계될 수도 있는 것으로 이해해야 한다.
특징들의 조합들이 청구범위에 인용되거나 및/또는 명세서에 개시되지만, 이들 조합들은 가능한 구현예들의 개시를 제한하도록 의도되지 않는다. 실제로, 이들 특징들 중 다수가 청구범위에서 구체적으로 인용되거나 및/또는 명세서에서 개시되지 않은 방법들로 결합될 수도 있다. 아래에 열거된 각각의 종속항은 오직 하나의 청구항에만 직접 종속할 수도 있지만, 가능한 구현예들의 개시는 청구항 세트에서의 모든 다른 청구항과 함께 각각의 종속항을 포함한다.
본원에서 사용되는 엘리먼트, 행위, 또는 명령은 중요하거나 또는 필수적인 것으로, 이와 같이 명시적으로 설명되지 않는 한, 해석되지 않을 수도 있다. 또한, 본원에서 사용할 때, 단수표현은 하나 이상의 아이템들을 포함하도록 의도되며, "하나 이상의"와 상호교환가능하게 사용될 수도 있다. 더욱이, 본원에서 사용할 때, 용어 "세트"는 하나 이상의 아이템들(예컨대, 관련된 아이템들, 비관련된 아이템들, 관련된 아이템과 비관련된 아이템의 조합, 등)을 포함하도록 의도되며, "하나 이상의"와 상호교환가능하게 사용될 수도 있다. 오직 하나의 아이템만이 의도되는 경우, 용어 "하나의" 또는 유사한 언어가 사용된다. 또한, 본원에서 사용할 때, 용어들 "갖는다", "가진다", "갖는", 또는 기타 등등은 제한없는 용어들로 의도된다. 또, 어구 "에 기초하여"는 명시적으로 달리 언급되지 않는 한, "에 적어도 부분적으로 기초하여"를 의미하도록 의도된다.

Claims (20)

  1. 적대적 발생기들에 의한 레이트-적응형 신경 이미지 압축의 방법으로서,
    상기 방법은, 적어도 하나의 프로세서에 의해 수행되며,
    상기 방법은,
    제1 신경망의 제1 부분을 이용하여 입력 이미지의 제1 특징을 획득하는 단계;
    획득된 상기 제1 특징에 기초하여, 제2 신경망을 이용하여 제1 대체 특징을 발생시키는 단계;
    제1 인코딩된 표현을 발생시키기 위해, 상기 제1 신경망의 제2 부분을 이용하여, 발생된 상기 제1 대체 특징을 인코딩하는 단계;
    발생된 상기 제1 인코딩된 표현을 압축하는 단계;
    압축된 상기 표현을 압축해제하는 단계; 및
    제1 출력 이미지를 복원하기 위해, 제3 신경망을 이용하여, 압축해제된 상기 표현을 디코딩하는 단계를 포함하는, 적대적 발생기들에 의한 레이트-적응형 신경 이미지 압축의 방법.
  2. 제1항에 있어서,
    상기 제2 신경망은,
    상기 압축된 표현의 레이트 손실을 결정하고;
    상기 입력 이미지와 복원된 상기 제1 출력 이미지 사이의 왜곡 손실을 결정하고;
    상기 제1 신경망의 제3 부분을 이용하여 상기 획득된 제1 특징을 인코딩하여, 제2 인코딩된 표현을 발생시키고;
    제4 신경망을 이용하여, 발생된 상기 제1 인코딩된 표현과 발생된 상기 제2 인코딩된 표현 사이의 표현 식별 손실을 결정하고;
    제5 신경망을 이용하여, 상기 발생된 제1 대체 특징과 상기 획득된 제1 특징 사이의 특징 식별 손실을 결정하고;
    상기 제2 신경망, 상기 제4 신경망 및 상기 제5 신경망의 가중치 계수들을 업데이트하여, 결정된 상기 레이트 손실, 결정된 상기 왜곡 손실, 결정된 상기 표현 식별 손실 및 결정된 상기 특징 식별 손실을 최적화함으로써, 훈련되는, 적대적 발생기들에 의한 레이트-적응형 신경 이미지 압축의 방법.
  3. 제1항에 있어서,
    상기 제1 인코딩된 표현을 발생시키기 위해, 상기 제1 신경망을 이용하여 상기 입력 이미지를 인코딩하는 단계;
    상기 제3 신경망의 제1 부분을 이용하여, 상기 압축해제된 표현으로부터 제2 특징을 획득하는 단계;
    획득된 상기 제2 특징에 기초하여, 제4 신경망을 이용하여, 제2 대체 특징을 발생시키는 단계; 및
    상기 제1 출력 이미지를 복원하기 위해, 상기 제3 신경망의 제2 부분을 이용하여, 발생된 상기 제2 대체 특징을 디코딩하는 단계를 더 포함하는, 적대적 발생기들에 의한 레이트-적응형 신경 이미지 압축의 방법.
  4. 제3항에 있어서,
    상기 제4 신경망은,
    상기 압축된 표현의 레이트 손실을 결정하고;
    상기 입력 이미지와 복원된 상기 제1 출력 이미지 사이의 왜곡 손실을 결정하고;
    상기 제3 신경망의 제3 부분을 이용하여, 상기 획득된 제2 특징을 디코딩하여, 제2 출력 이미지를 복원하고;
    제5 신경망을 이용하여, 상기 복원된 제1 출력 이미지와 상기 복원된 제2 출력 이미지 사이의 표현 식별 손실을 결정하고;
    제6 신경망을 이용하여, 상기 발생된 제2 대체 특징과 상기 획득된 제2 특징 사이의 특징 식별 손실을 결정하고;
    상기 제4 신경망, 상기 제5 신경망 및 상기 제6 신경망의 가중치 계수들을 업데이트하여, 결정된 상기 레이트 손실, 결정된 상기 왜곡 손실, 결정된 상기 표현 식별 손실 및 결정된 상기 특징 식별 손실을 최적화함으로써, 훈련되는, 적대적 발생기들에 의한 레이트-적응형 신경 이미지 압축의 방법.
  5. 제3항에 있어서,
    상기 제1 신경망을 이용하여, 상기 입력 이미지의 제3 특징을 획득하는 단계; 및
    획득된 상기 제3 특징에 기초하여 어텐션 맵을 발생시키는 단계를 더 포함하며,
    상기 제2 대체 특징을 발생시키는 단계는 상기 획득된 제2 특징 및 발생된 상기 어텐션 맵에 기초하여, 상기 제4 신경망을 이용하여, 상기 제2 대체 특징을 발생시키는 단계를 포함하는, 적대적 발생기들에 의한 레이트-적응형 신경 이미지 압축의 방법.
  6. 제3항에 있어서,
    상기 제3 신경망의 상기 제1 부분을 이용하여, 상기 압축해제된 표현으로부터 제3 특징을 획득하는 단계; 및
    획득된 상기 제3 특징에 기초하여 어텐션 맵을 발생시키는 단계를 더 포함하며,
    상기 제2 대체 특징을 발생시키는 단계는 상기 획득된 제2 특징 및 발생된 상기 어텐션 맵에 기초하여, 상기 제4 신경망을 이용하여, 상기 제2 대체 특징을 발생시키는 단계를 포함하는, 적대적 발생기들에 의한 레이트-적응형 신경 이미지 압축의 방법.
  7. 제1항에 있어서,
    상기 제1 신경망의 상기 제1 부분을 이용하여, 상기 입력 이미지의 제2 특징을 획득하는 단계; 및
    획득된 상기 제2 특징에 기초하여, 어텐션 맵을 발생시키는 단계를 더 포함하며,
    상기 제1 대체 특징을 발생시키는 단계는 상기 획득된 제1 특징 및 발생된 상기 어텐션 맵에 기초하여, 상기 제2 신경망을 이용하여, 상기 제1 대체 특징을 발생시키는 단계를 포함하는, 적대적 발생기들에 의한 레이트-적응형 신경 이미지 압축의 방법.
  8. 적대적 발생기들에 의한 레이트-적응형 신경 이미지 압축을 위한 장치로서,
    상기 장치는,
    프로그램 코드를 저장하도록 구성된 적어도 하나의 메모리; 및
    상기 프로그램 코드를 판독하고 상기 프로그램 코드에 의해 명령되는 대로 동작하도록 구성된 적어도 하나의 프로세서를 포함하며,
    상기 프로그램 코드는,
    상기 적어도 하나의 프로세서로 하여금, 제1 신경망의 제1 부분을 이용하여 입력 이미지의 제1 특징을 획득하게 하도록 구성된 제1 획득 코드;
    상기 적어도 하나의 프로세서로 하여금, 획득된 상기 제1 특징에 기초하여, 제2 신경망을 이용하여, 제1 대체 특징을 발생시키게 하도록 구성된 제1 발생 코드;
    상기 적어도 하나의 프로세서로 하여금, 상기 제1 신경망의 제2 부분을 이용하여, 발생된 상기 제1 대체 특징을 인코딩하여, 제1 인코딩된 표현을 발생시키게 하도록 구성된 제1 인코딩 코드;
    상기 적어도 하나의 프로세서로 하여금, 발생된 상기 제1 인코딩된 표현을 압축하게 하도록 구성된 압축 코드;
    상기 적어도 하나의 프로세서로 하여금, 압축된 상기 표현을 압축해제하게 하도록 구성된 압축해제 코드; 및
    상기 적어도 하나의 프로세서로 하여금, 제3 신경망을 이용하여, 압축해제된 상기 표현을 디코딩하여, 제1 출력 이미지를 복원하게 하도록 구성된 제1 디코딩 코드를 포함하는, 적대적 발생기들에 의한 레이트-적응형 신경 이미지 압축을 위한 장치.
  9. 제8항에 있어서,
    상기 제2 신경망은,
    상기 압축된 표현의 레이트 손실을 결정하고;
    상기 입력 이미지와 복원된 상기 제1 출력 이미지 사이의 왜곡 손실을 결정하고;
    상기 제1 신경망의 제3 부분을 이용하여 상기 획득된 제1 특징을 인코딩하여, 제2 인코딩된 표현을 발생시키고;
    제4 신경망을 이용하여, 발생된 상기 제1 인코딩된 표현과 발생된 상기 제2 인코딩된 표현 사이의 표현 식별 손실을 결정하고;
    제5 신경망을 이용하여, 상기 발생된 제1 대체 특징과 상기 획득된 제1 특징 사이의 특징 식별 손실을 결정하고;
    상기 제2 신경망, 상기 제4 신경망 및 상기 제5 신경망의 가중치 계수들을 업데이트하여, 결정된 상기 레이트 손실, 결정된 상기 왜곡 손실, 결정된 상기 표현 식별 손실 및 결정된 상기 특징 식별 손실을 최적화함으로써, 훈련되는, 적대적 발생기들에 의한 레이트-적응형 신경 이미지 압축을 위한 장치.
  10. 제8항에 있어서,
    상기 프로그램 코드는,
    상기 적어도 하나의 프로세서로 하여금, 상기 제1 신경망을 이용하여, 상기 입력 이미지를 인코딩하여, 상기 제1 인코딩된 표현을 발생시키게 하도록 구성된 제2 인코딩 코드;
    상기 적어도 하나의 프로세서로 하여금, 상기 제3 신경망의 제1 부분을 이용하여, 상기 압축해제된 표현으로부터 제2 특징을 획득하게 하도록 구성된 제2 획득 코드;
    상기 적어도 하나의 프로세서로 하여금, 획득된 상기 제2 특징에 기초하여, 제4 신경망을 이용하여, 제2 대체 특징을 발생시키게 하도록 구성된 제2 발생 코드; 및
    상기 적어도 하나의 프로세서로 하여금, 상기 제3 신경망의 제2 부분을 이용하여, 상기 발생된 제2 대체 특징을 디코딩하여, 상기 제1 출력 이미지를 복원하게 하도록 구성된 제2 디코딩 코드를 더 포함하는, 적대적 발생기들에 의한 레이트-적응형 신경 이미지 압축을 위한 장치.
  11. 제10항에 있어서,
    상기 제4 신경망은,
    상기 압축된 표현의 레이트 손실을 결정하고;
    상기 입력 이미지와 복원된 상기 제1 출력 이미지 사이의 왜곡 손실을 결정하고;
    상기 제3 신경망의 제3 부분을 이용하여, 상기 획득된 제2 특징을 디코딩하여, 제2 출력 이미지를 복원하고;
    제5 신경망을 이용하여, 상기 복원된 제1 출력 이미지와 상기 복원된 제2 출력 이미지 사이의 표현 식별 손실을 결정하고;
    제6 신경망을 이용하여, 상기 발생된 제2 대체 특징과 상기 획득된 제2 특징 사이의 특징 식별 손실을 결정하고;
    상기 제4 신경망, 상기 제5 신경망 및 상기 제6 신경망의 가중치 계수들을 업데이트하여, 결정된 상기 레이트 손실, 결정된 상기 왜곡 손실, 결정된 상기 표현 식별 손실 및 결정된 상기 특징 식별 손실을 최적화함으로써, 훈련되는, 적대적 발생기들에 의한 레이트-적응형 신경 이미지 압축을 위한 장치.
  12. 제10항에 있어서,
    상기 프로그램 코드는,
    상기 적어도 하나의 프로세서로 하여금, 상기 제1 신경망을 이용하여, 상기 입력 이미지의 제3 특징을 획득하게 하도록 구성된 제3 획득 코드; 및
    상기 적어도 하나의 프로세서로 하여금, 획득된 상기 제3 특징에 기초하여, 어텐션 맵을 발생시키게 하도록 구성된 제3 발생 코드를 더 포함하며,
    상기 제2 발생 코드는 상기 적어도 하나의 프로세서로 하여금, 상기 획득된 제2 특징 및 발생된 상기 어텐션 맵에 기초하여, 상기 제4 신경망을 이용하여, 상기 제2 대체 특징을 발생시키게 하도록 추가로 구성되는, 적대적 발생기들에 의한 레이트-적응형 신경 이미지 압축을 위한 장치.
  13. 제10항에 있어서,
    상기 프로그램 코드는,
    상기 적어도 하나의 프로세서로 하여금, 상기 제3 신경망의 상기 제1 부분을 이용하여, 상기 압축해제된 표현으로부터 제3 특징을 획득하게 하도록 구성된 제3 획득 코드; 및
    상기 적어도 하나의 프로세서로 하여금, 획득된 상기 제3 특징에 기초하여, 어텐션 맵을 발생시키게 하도록 구성된 제3 발생 코드를 더 포함하며,
    상기 제2 발생 코드는 상기 획득된 제2 특징 및 발생된 상기 어텐션 맵에 기초하여, 상기 제4 신경망을 이용하여, 상기 제2 대체 특징을 발생시키는 것을 포함하여, 상기 적어도 하나의 프로세서로 하여금, 상기 제2 대체 특징을 발생시키게 하도록 추가로 구성되는, 적대적 발생기들에 의한 레이트-적응형 신경 이미지 압축을 위한 장치.
  14. 제8항에 있어서,
    상기 프로그램 코드는,
    상기 적어도 하나의 프로세서로 하여금, 상기 제1 신경망의 상기 제1 부분을 이용하여, 상기 입력 이미지의 제2 특징을 획득하게 하도록 구성된 제2 획득 코드; 및
    상기 적어도 하나의 프로세서로 하여금, 획득된 상기 제2 특징에 기초하여, 어텐션 맵을 발생시키게 하도록 구성된 제2 발생 코드를 더 포함하며,
    상기 제1 발생 코드는 상기 적어도 하나의 프로세서로 하여금, 상기 획득된 제1 특징 및 발생된 상기 어텐션 맵에 기초하여, 상기 제2 신경망을 이용하여, 상기 제1 대체 특징을 발생시키게 하도록 추가로 구성되는, 적대적 발생기들에 의한 레이트-적응형 신경 이미지 압축을 위한 장치.
  15. 명령들을 저장하는 비일시적 컴퓨터-판독가능 매체로서,
    상기 명령들은, 적대적 발생기들에 의한 레이트-적응형 신경 이미지 압축을 위해 적어도 하나의 프로세서에 의해 실행될 때, 상기 적어도 하나의 프로세서로 하여금,
    제1 신경망의 제1 부분을 이용하여, 입력 이미지의 제1 특징을 획득하게 하고;
    획득된 상기 제1 특징에 기초하여, 제2 신경망을 이용하여, 제1 대체 특징을 발생시키게 하고;
    상기 제1 신경망의 제2 부분을 이용하여, 발생된 상기 제1 대체 특징을 인코딩하여, 제1 인코딩된 표현을 발생시키게 하고;
    발생된 상기 제1 인코딩된 표현을 압축하게 하고;
    압축된 상기 표현을 압축해제하게 하고;
    제3 신경망을 이용하여, 압축해제된 상기 표현을 디코딩하여, 제1 출력 이미지를 복원하게 하는, 비일시적 컴퓨터-판독가능 매체.
  16. 제15항에 있어서,
    상기 제2 신경망은,
    상기 압축된 표현의 레이트 손실을 결정하고;
    상기 입력 이미지와 복원된 상기 제1 출력 이미지 사이의 왜곡 손실을 결정하고;
    상기 제1 신경망의 제3 부분을 이용하여 상기 획득된 제1 특징을 인코딩하여, 제2 인코딩된 표현을 발생시키고;
    제4 신경망을 이용하여, 발생된 상기 제1 인코딩된 표현과 발생된 상기 제2 인코딩된 표현 사이의 표현 식별 손실을 결정하고;
    제5 신경망을 이용하여, 상기 발생된 제1 대체 특징과 상기 획득된 제1 특징 사이의 특징 식별 손실을 결정하고;
    상기 제2 신경망, 상기 제4 신경망 및 상기 제5 신경망의 가중치 계수들을 업데이트하고, 결정된 상기 레이트 손실, 결정된 상기 왜곡 손실, 결정된 상기 표현 식별 손실 및 결정된 상기 특징 식별 손실을 최적화함으로써, 훈련되는, 비일시적 컴퓨터-판독가능 매체.
  17. 제15항에 있어서,
    상기 명령들은, 상기 적어도 하나의 프로세서에 의해 실행될 때, 추가로, 상기 적어도 하나의 프로세서로 하여금,
    상기 제1 신경망을 이용하여, 상기 입력 이미지를 인코딩하여, 상기 제1 인코딩된 표현을 발생시키게 하고;
    상기 제3 신경망의 제1 부분을 이용하여, 상기 압축해제된 표현으로부터 제2 특징을 획득하게 하고;
    획득된 상기 제2 특징에 기초하여, 제4 신경망을 이용하여, 제2 대체 특징을 발생시키게 하고;
    상기 제3 신경망의 제2 부분을 이용하여, 발생된 상기 제2 대체 특징을 디코딩하여, 상기 제1 출력 이미지를 복원하게 하는, 비일시적 컴퓨터-판독가능 매체.
  18. 제17항에 있어서,
    상기 제4 신경망은,
    상기 압축된 표현의 레이트 손실을 결정하고;
    상기 입력 이미지와 복원된 상기 제1 출력 이미지 사이의 왜곡 손실을 결정하고;
    상기 제3 신경망의 제3 부분을 이용하여, 상기 획득된 제2 특징을 디코딩하여, 제2 출력 이미지를 복원하고;
    제5 신경망을 이용하여, 상기 복원된 제1 출력 이미지와 상기 복원된 제2 출력 이미지 사이의 표현 식별 손실을 결정하고;
    제6 신경망을 이용하여, 상기 발생된 제2 대체 특징과 상기 획득된 제2 특징 사이의 특징 식별 손실을 결정하고;
    상기 제4 신경망, 상기 제5 신경망 및 상기 제6 신경망의 가중치 계수들을 업데이트하여, 결정된 상기 레이트 손실, 결정된 상기 왜곡 손실, 결정된 상기 표현 식별 손실 및 결정된 상기 특징 식별 손실을 최적화함으로써, 훈련되는, 비일시적 컴퓨터-판독가능 매체.
  19. 제17항에 있어서,
    상기 명령들은, 상기 적어도 하나의 프로세서에 의해 실행될 때, 추가로, 상기 적어도 하나의 프로세서로 하여금,
    상기 제1 신경망을 이용하여, 상기 입력 이미지의 제3 특징을 획득하게 하고;
    획득된 상기 제3 특징에 기초하여, 어텐션 맵을 발생시키게 하고;
    상기 획득된 제2 특징 및 발생된 상기 어텐션 맵에 기초하여, 상기 제4 신경망을 이용하여, 상기 제2 대체 특징을 발생시키게 하는, 비일시적 컴퓨터-판독가능 매체.
  20. 제17항에 있어서,
    상기 명령들은, 상기 적어도 하나의 프로세서에 의해 실행될 때, 추가로, 상기 적어도 하나의 프로세서로 하여금,
    상기 제3 신경망의 상기 제1 부분을 이용하여, 상기 압축해제된 표현으로부터 제3 특징을 획득하게 하고;
    획득된 상기 제3 특징에 기초하여 어텐션 맵을 발생시키게 하고;
    상기 획득된 제2 특징 및 발생된 상기 어텐션 맵에 기초하여, 상기 제4 신경망을 이용하여, 상기 제2 대체 특징을 발생시키게 하는, 비일시적 컴퓨터-판독가능 매체.
KR1020227012232A 2020-07-21 2021-07-20 적대적 발생기들에 의한 레이트-적응형 신경 이미지 압축을 위한 방법 및 장치 KR20220061223A (ko)

Applications Claiming Priority (9)

Application Number Priority Date Filing Date Title
US202063054648P 2020-07-21 2020-07-21
US202063054662P 2020-07-21 2020-07-21
US202063054665P 2020-07-21 2020-07-21
US63/054,665 2020-07-21
US63/054,648 2020-07-21
US63/054,662 2020-07-21
US17/356,722 US11622117B2 (en) 2020-07-21 2021-06-24 Method and apparatus for rate-adaptive neural image compression with adversarial generators
US17/356,722 2021-06-24
PCT/US2021/042292 WO2022020297A1 (en) 2020-07-21 2021-07-20 Method and apparatus for rate-adaptive neural image compression with adversarial generators

Publications (1)

Publication Number Publication Date
KR20220061223A true KR20220061223A (ko) 2022-05-12

Family

ID=79689555

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020227012232A KR20220061223A (ko) 2020-07-21 2021-07-20 적대적 발생기들에 의한 레이트-적응형 신경 이미지 압축을 위한 방법 및 장치

Country Status (6)

Country Link
US (1) US11622117B2 (ko)
EP (1) EP4018392A4 (ko)
JP (1) JP7420942B2 (ko)
KR (1) KR20220061223A (ko)
CN (1) CN114616576A (ko)
WO (1) WO2022020297A1 (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20220321879A1 (en) * 2021-03-30 2022-10-06 Isize Limited Processing image data
WO2023225999A1 (en) * 2022-05-27 2023-11-30 Robert Bosch Gmbh Method and apparatus for certifying defense against image transformation

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9965705B2 (en) * 2015-11-03 2018-05-08 Baidu Usa Llc Systems and methods for attention-based configurable convolutional neural networks (ABC-CNN) for visual question answering
EP3583777A4 (en) 2017-02-16 2020-12-23 Nokia Technologies Oy VIDEO PROCESSING PROCESS AND TECHNICAL EQUIPMENT
US10650245B2 (en) * 2018-06-08 2020-05-12 Adobe Inc. Generating digital video summaries utilizing aesthetics, relevancy, and generative neural networks
CN109472360B (zh) * 2018-10-30 2020-09-04 北京地平线机器人技术研发有限公司 神经网络的更新方法、更新装置和电子设备
CA3122985A1 (en) 2018-12-11 2020-06-18 Exxonmobil Upstream Research Company Training machine learning systems for seismic interpretation
US11620475B2 (en) * 2020-03-25 2023-04-04 Ford Global Technologies, Llc Domain translation network for performing image translation

Also Published As

Publication number Publication date
CN114616576A (zh) 2022-06-10
EP4018392A1 (en) 2022-06-29
EP4018392A4 (en) 2022-11-30
JP2023502526A (ja) 2023-01-24
US11622117B2 (en) 2023-04-04
JP7420942B2 (ja) 2024-01-23
US20220030246A1 (en) 2022-01-27
WO2022020297A1 (en) 2022-01-27

Similar Documents

Publication Publication Date Title
JP7374340B2 (ja) ニューラル画像圧縮のためのタスク適応型前処理のための方法、装置およびコンピュータプログラム
US11582470B2 (en) Method and apparatus for multi-scale neural image compression with intra-prediction residuals
KR20220061223A (ko) 적대적 발생기들에 의한 레이트-적응형 신경 이미지 압축을 위한 방법 및 장치
CN114450938B (zh) 多速率神经图像压缩方法、装置以及电子设备
US20220335655A1 (en) Substitutional input optimization for adaptive neural image compression with smooth quality control
US11652994B2 (en) Neural image compression with adaptive intra-prediction
KR102632258B1 (ko) 종단간 이미지 압축을 위한 피처 치환 방법 및 장치
KR102650523B1 (ko) 심층 강화 학습에 의한 종단 간 신경 압축을 위한 방법 및 장치
US20230186525A1 (en) System, method, and computer program for content adaptive online training for multiple blocks in neural image compression
US11915457B2 (en) Method and apparatus for adaptive neural image compression with rate control by meta-learning
US20230186081A1 (en) System, method, and computer program for iterative content adaptive online training in neural image compression
KR20230142767A (ko) 특정 패턴에 기반한 다수의 블록에 대한 콘텐츠 적응형 온라인 트레이닝을 위한 시스템, 방법, 및 컴퓨터 프로그램
KR20220164562A (ko) 뉴럴 이미지 압축에서 대체의 멀티-학습률들을 위한 방법 및 장치
WO2022221027A1 (en) Adaptive neural image compression with smooth quality control by meta-learning