TW202326594A - 使用可變輔助輸入的基於變換器的神經網路 - Google Patents
使用可變輔助輸入的基於變換器的神經網路 Download PDFInfo
- Publication number
- TW202326594A TW202326594A TW111148084A TW111148084A TW202326594A TW 202326594 A TW202326594 A TW 202326594A TW 111148084 A TW111148084 A TW 111148084A TW 111148084 A TW111148084 A TW 111148084A TW 202326594 A TW202326594 A TW 202326594A
- Authority
- TW
- Taiwan
- Prior art keywords
- input
- auxiliary
- neural network
- tensor
- image
- Prior art date
Links
- 238000013528 artificial neural network Methods 0.000 title claims abstract description 140
- 238000000034 method Methods 0.000 claims abstract description 183
- 238000012545 processing Methods 0.000 claims abstract description 124
- 230000001537 neural effect Effects 0.000 claims abstract description 83
- 238000007906 compression Methods 0.000 claims description 58
- 230000006835 compression Effects 0.000 claims description 58
- 230000005236 sound signal Effects 0.000 claims description 24
- 230000008569 process Effects 0.000 claims description 21
- 238000012549 training Methods 0.000 claims description 20
- 238000006243 chemical reaction Methods 0.000 claims description 16
- 238000010422 painting Methods 0.000 claims description 6
- 230000001131 transforming effect Effects 0.000 claims description 6
- 238000004590 computer program Methods 0.000 claims description 4
- 230000008451 emotion Effects 0.000 claims description 4
- 239000010410 layer Substances 0.000 description 196
- 238000004891 communication Methods 0.000 description 26
- 230000006870 function Effects 0.000 description 26
- 238000013527 convolutional neural network Methods 0.000 description 23
- 238000011176 pooling Methods 0.000 description 23
- 239000000463 material Substances 0.000 description 19
- 230000009466 transformation Effects 0.000 description 18
- 238000010586 diagram Methods 0.000 description 16
- 210000002569 neuron Anatomy 0.000 description 13
- 239000013598 vector Substances 0.000 description 13
- 230000004913 activation Effects 0.000 description 12
- 238000001994 activation Methods 0.000 description 12
- 238000009826 distribution Methods 0.000 description 10
- 230000003287 optical effect Effects 0.000 description 10
- 238000013139 quantization Methods 0.000 description 10
- 238000000844 transformation Methods 0.000 description 10
- 238000007781 pre-processing Methods 0.000 description 7
- 241000282326 Felis catus Species 0.000 description 6
- 230000005540 biological transmission Effects 0.000 description 6
- 238000010606 normalization Methods 0.000 description 6
- 238000001514 detection method Methods 0.000 description 5
- 238000005457 optimization Methods 0.000 description 5
- 230000000306 recurrent effect Effects 0.000 description 5
- 210000004556 brain Anatomy 0.000 description 4
- 238000004422 calculation algorithm Methods 0.000 description 4
- 239000004973 liquid crystal related substance Substances 0.000 description 4
- 238000012805 post-processing Methods 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 238000013500 data storage Methods 0.000 description 3
- 238000013135 deep learning Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 239000011159 matrix material Substances 0.000 description 3
- 239000000203 mixture Substances 0.000 description 3
- 238000003058 natural language processing Methods 0.000 description 3
- 238000013519 translation Methods 0.000 description 3
- 238000012952 Resampling Methods 0.000 description 2
- XUIMIQQOPSSXEZ-UHFFFAOYSA-N Silicon Chemical compound [Si] XUIMIQQOPSSXEZ-UHFFFAOYSA-N 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 2
- 230000003190 augmentative effect Effects 0.000 description 2
- VJBCNMFKFZIXHC-UHFFFAOYSA-N azanium;2-(4-methyl-5-oxo-4-propan-2-yl-1h-imidazol-2-yl)quinoline-3-carboxylate Chemical compound N.N1C(=O)C(C(C)C)(C)N=C1C1=NC2=CC=CC=C2C=C1C(O)=O VJBCNMFKFZIXHC-UHFFFAOYSA-N 0.000 description 2
- 230000006837 decompression Effects 0.000 description 2
- 230000001419 dependent effect Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 238000002156 mixing Methods 0.000 description 2
- 230000008447 perception Effects 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 229920006395 saturated elastomer Polymers 0.000 description 2
- 229910052710 silicon Inorganic materials 0.000 description 2
- 239000010703 silicon Substances 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- PXFBZOLANLWPMH-UHFFFAOYSA-N 16-Epiaffinine Natural products C1C(C2=CC=CC=C2N2)=C2C(=O)CC2C(=CC)CN(C)C1C2CO PXFBZOLANLWPMH-UHFFFAOYSA-N 0.000 description 1
- 241000282412 Homo Species 0.000 description 1
- 206010021403 Illusion Diseases 0.000 description 1
- 241000023320 Luma <angiosperm> Species 0.000 description 1
- 241001465754 Metazoa Species 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 238000007792 addition Methods 0.000 description 1
- 239000000654 additive Substances 0.000 description 1
- 230000000996 additive effect Effects 0.000 description 1
- 230000016571 aggressive behavior Effects 0.000 description 1
- 230000032683 aging Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 238000013529 biological neural network Methods 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 210000004027 cell Anatomy 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000013144 data compression Methods 0.000 description 1
- 238000000354 decomposition reaction Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000003745 diagnosis Methods 0.000 description 1
- 235000019800 disodium phosphate Nutrition 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 238000012886 linear function Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- OSWPMRLSEDHDFF-UHFFFAOYSA-N methyl salicylate Chemical compound COC(=O)C1=CC=CC=C1O OSWPMRLSEDHDFF-UHFFFAOYSA-N 0.000 description 1
- 230000003278 mimic effect Effects 0.000 description 1
- 238000003909 pattern recognition Methods 0.000 description 1
- 230000037452 priming Effects 0.000 description 1
- 239000011435 rock Substances 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 230000011664 signaling Effects 0.000 description 1
- 239000002356 single layer Substances 0.000 description 1
- 230000003595 spectral effect Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 210000000225 synapse Anatomy 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
- 230000002194 synthesizing effect Effects 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000009966 trimming Methods 0.000 description 1
- 238000004800 variational method Methods 0.000 description 1
- 230000035899 viability Effects 0.000 description 1
- 210000000857 visual cortex Anatomy 0.000 description 1
Images
Classifications
-
- 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/045—Combinations of networks
- G06N3/0455—Auto-encoder networks; Encoder-decoder networks
-
- 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/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
-
- 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/088—Non-supervised learning, e.g. competitive learning
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/04—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
-
- 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
-
- 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/20—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video object coding
-
- 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
-
- 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
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/513—Processing of motion vectors
- H04N19/517—Processing of motion vectors by encoding
-
- 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/80—Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
- H04N19/82—Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation involving filtering within a prediction loop
-
- 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/04—Architecture, e.g. interconnection topology
- G06N3/047—Probabilistic or stochastic networks
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Computational Linguistics (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- General Health & Medical Sciences (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Evolutionary Computation (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Data Mining & Analysis (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Acoustics & Sound (AREA)
- Human Computer Interaction (AREA)
- Image Analysis (AREA)
- Coils Or Transformers For Communication (AREA)
Abstract
本申請涉及基於變換器的神經網路。本申請提供了一種處理當前物件的方法,包括以下步驟:將表示當前物件的輸入資料張量集輸入到基於變換器的神經網路的神經層中;將至少一個輔助資料張量輸入到所述基於變換器的神經網路的神經層中,其中,所述至少一個輔助資料張量與所述輸入資料張量集中的每個輸入資料張量不同,並表示至少一個輔助輸入;所述基於變換器的神經網路使用所述至少一個輔助資料張量處理所述輸入資料張量集,以獲取輸出資料張量集。所述輸入至少一個輔助資料張量取決於關於處理所述當前物件的資訊。
Description
本申請涉及基於變換器的神經網路領域,尤其是利用可變輔助輸入資料以獲得改進的處理結果的基於變換器的神經網路。
利用人工神經網路的神經網路(neural network,NN)和深度學習(deep-learning,DL)技術現在已經在各種技術領域中使用了一段時間,包括視頻、圖像(例如靜態圖像)等的語言處理和編碼和解碼。
遞迴神經網路和卷積神經網路架構得到廣泛使用。最近,變換器在語言處理(例如文本翻譯)和影像處理領域都受到了越來越多的關注。視頻編碼可以通過使用神經網路,特別是變換器來促進。
視頻解碼(視頻編碼和解碼)廣泛用於數位視訊應用,例如廣播數位電視(TV)、基於互聯網和移動網路的視頻傳輸、視頻聊天、視訊會議等即時會話應用、DVD和藍光光碟、視頻內容採集和編輯系統以及安全應用的可攜式攝像機。
即使視頻相對較短,也需要大量的視頻資料來描述,當資料要在頻寬容量有限的通信網路中進行流式傳輸或以其它方式傳輸時,這樣可能會造成困難。因此,視頻資料通常要先壓縮,然後通過現代電信網路進行傳輸。由於記憶體資源可能有限,當在存放裝置上儲存視頻時,該視頻的大小也可能成為問題。視訊壓縮設備通常在信源側使用軟體和/或硬體對視頻數據進行編碼,然後進行傳輸或儲存,從而減少表示數位視訊圖像所需的資料量。然後,由對視頻資料進行解碼的視頻解壓縮設備在目的地側接收壓縮資料。壓縮技術也適當地應用於靜態圖像編碼的上下文中。
在網路資源有限以及對更高視頻品質的需求不斷增長的情況下,需要改進壓縮和解壓縮技術,這些改進的技術能夠在幾乎不影響圖像品質的情況下提高壓縮比。
希望進一步提高這種基於訓練後的神經網路的圖像編碼(視頻編碼或靜止圖像編碼)的效率,這些神經網路考慮到了可用記憶體和/或處理速度的限制。對於本應用以及包括語言處理和聲學信號處理在內的其他應用,希望進一步提高神經網路(特別是所使用的變換器)的操作的可靠性和效率。
本發明涉及用於通過基於變換器的神經網路處理物件(例如圖像或文本)的方法和裝置,該神經網路例如包括在下面詳細描述中描述的一個或多個神經網路。
上述和其它目的通過獨立權利要求請求保護的主題來實現。其它實現方式在從屬權利要求、說明書和附圖中顯而易見。
根據第一方面,提供了一種處理當前物件的方法,包括以下步驟:
將表示所述當前物件的輸入資料張量集輸入到基於變換器的神經網路的神經層中;
將至少一個輔助資料張量輸入到所述基於變換器的神經網路的神經層中,其中,所述至少一個輔助資料張量與所述輸入資料張量集中的每個輸入資料張量不同,並表示至少一個輔助輸入;
所述基於變換器的神經網路使用所述至少一個輔助資料張量處理所述輸入資料張量集,以獲取輸出資料張量集,
輸入到所述神經層中的所述至少一個輔助資料張量取決於關於處理所述當前物件的資訊(其中,所述資訊由所述輔助輸入提供)。例如,在影像處理的上下文中,所述當前物件包括圖像或圖像的一部分。所述圖像可以是視頻序列的幀或靜止圖像。例如,在語言處理的上下文中,所述當前物件包括一個或多個句子(口語或書面)(的單詞)。例如,在音訊處理的上下文中,所述物件包括音訊信號。
基於變換器的神經網路必須包括變換器(參見下面的詳細描述),並且還可以包括另一個神經網路,例如遞迴或卷積神經網路。變換器實現了自注意的概念,並包括至少一個自注意層(參見下面的描述)。通過使用關於處理所述當前物件的資訊(同樣參見下面的描述),改進了所述輸入資料張量的處理結果(即模型性能)。例如,經解碼圖像的品質可以通過使用此資訊來增強。有關處理所述當前物件的資訊不是通過預訓練和固定的輔助輸入提供的。通過將所述輔助輸入投影到提供額外模型輸入的所述至少一個輔助資料張量,為所述當前物件獲得的相當可變的資訊可用於基於變換器的神經網路的處理。具體地,關於處理所述當前物件的資訊可以是關於在連續或離散參數範圍內處理所述當前物件的資訊。
需要說明的是,現有的變換器模型(參見下面的詳細描述)可以相對容易地適應以實現本文提供的方法。現有的預訓練後的模型可以通過這種方法使用和改進。
具體地,所述當前物件可以在神經網路推理期間或在神經網路訓練期間被處理。事實上,本文提供的方法改善了訓練和推理結果。
根據一種實現方式,所述輸入資料張量集與所述至少一個輔助資料張量分開輸入。這允許容易地將基於變換器的神經網路的操作適應任意和任意變化數量的輔助輸入,使得可以高度靈活地應用基於變換器的神經網路的應用。需要說明的是,表示提供關於在張量空間中處理所述當前物件的資訊的所述輔助輸入的所述至少一個輔助資料張量可以在神經層中通過與應用於所述輸入資料張量的數學運算相同或相似的數學運算來處理。具體地,相同的權重可以應用於同一神經層中的所述至少一個輔助資料張量和所述輸入資料張量(儘管不同的權重可以應用於不同的神經層)。
當所述輸入資料張量集與所述至少一個輔助資料張量分開輸入時,所述輸入資料張量集可以輸入到所述基於變換器的神經網路的第一神經層中,並且所述至少一個輔助資料張量可以輸入到所述基於變換器的神經網路的第二神經層中,其中,所述第二神經層與第一層不同。同樣,靈活性增加,因為人們可以選擇在較低層次的神經層上進行處理,而不使用輔助資訊/輸入,以及在選定的較高層次的神經層上進行處理,例如,使用輔助資訊/輸入。
根據一種替代實現方式,所述輸入資料張量集與所述至少一個輔助資料張量分開輸入。在這種情況下,輸入所述輸入資料張量集和所述至少一個輔助資料張量包括:(a)生成不同混合輸入張量集,其中,所述不同混合輸入張量集中的每個混合輸入張量包括所述至少一個輔助資料張量和所述輸入資料張量集中的一個輸入資料張量中的至少一個;(b)將所述混合輸入張量集輸入到所述基於變換器的神經網路的所述神經層中。在一些實現方式中,所述不同混合輸入張量集中的每個混合輸入張量包括所述至少一個輔助資料張量和所述輸入資料張量集中的一個輸入資料張量中的至少一個。
該實現允許通過至少一個輔助資料張量單獨影響每個或一些輸入資料張量的處理。需要說明的是,整個輸入資料張量集可以包括混合輸入張量和未與所述至少一個輔助資料張量混合(例如,級聯)的輸入張量。將至少一個輔助資料張量與輸入資料張量混合可以提高目標度量的性能。此外,可以執行由所述基於變換器的神經網路的特定神經層輸出的一個或多個資料張量與至少一個輔助資料張量的一些混合。同樣,整體架構允許使用所述輔助資訊的高度靈活性,對於具體應用,基於通過所述基於變換器的神經網路進行的數值實驗,可以很容易地實現微調。
在語義層面上,根據上述方法,根據至少一個輔助輸入來處理當前物件,所述至少一個輔助輸入可以表示用於處理所述當前物件的連續或離散品質的處理資訊。對於由所述基於變換器的神經網路進行處理,要處理的所述當前物件必須轉換為所述輸入資料張量,並且必須將所述至少一個輔助輸入轉換為所述至少一個輔助資料張量。根據一種實現方式,所述至少一個輔助資料張量是通過將所述至少一個輔助輸入線性或非線性轉換為所述至少一個輔助資料張量而生成的。這可以通過一些投影層接收所述至少一個輔助輸入並輸出在處理所述輸入資料張量時要使用的至所述少一個輔助資料張量來完成。另一個神經網路(例如,遞迴或卷積神經網路)可以被訓練並用於優化所述至少一個輔助輸入到所述至少一個輔助資料張量的轉換。
原則上,根據所述第一方面及其實現的上述方法不取決於如何提供關於處理所述當前物件的資訊。例如,在所述當前物件的編碼上下文中,在許多應用中,為所述物件(例如,由編碼器)生成碼流。這樣的碼流不僅包括關於所述物件本身的資訊,而且還包括關於如何處理所述物件(例如,在接收端或解碼端)的資訊。鑒於此,根據一種實現方式,所述方法還包括從為所述物件生成的碼流中獲取關於處理所述當前物件的資訊。因此,所需的資訊可以可靠和容易地獲取。
根據所述第一方面及其實現方式的方法可用於處理多種物件。例如,在影像處理的上下文中,所述當前物件包括圖像或圖像的一部分。所述圖像可以是視頻序列的幀或靜止圖像。
當所述待處理的當前物件包括圖像時,所述至少一個輔助輸入可以選自包括以下各者的組:
品質指示參數;
信號空間中的通道失真度量;
潛在空間中的通道失真度量;
亮度、對比度、清晰度、色溫、銳度、飽和度、顏色長條圖;
陰影、亮度、暗角控制、繪畫風格;
不連續可變濾波器強度、連續可變濾波器強度;
幀內預測或幀間預測的指示;
物件替換應用的轉換率。
所有這些處理品質都可以被證明是有助於提高處理物件品質的附加資訊,特別是在圖像編碼的上下文中。關於圖像編碼,提供了一種編碼圖像的方法,包括根據所述第一方面或其任何實現方式的方法的步驟,相應地,提供了一種對經編碼圖像進行解碼的方法,包括根據所述第一方面或其任何實現方式的方法的步驟。在視頻編碼的上下文中,所述基於變換器的神經網路可以包括在環路內濾波器中。此外,在視頻編碼的上下文中,所述基於變換器的神經網路可以適當地用於幀間預測處理。
此外,提供了一種圖像增強的方法,包括根據所述第一方面或其任意實現方式的方法的步驟。通過使用所述輔助輸入,與本領域已知的任何品質度量相比,經處理圖像的增強(根據本領域已知的任何品質度量)可以顯著改進。
根據所述第一方面或其任何實現方式的方法也可以適當地應用于文本或語言處理(例如,自然語言處理)。因此,根據另一種實現方式,所述當前物件包括一個或多個句子(的單詞)。在這種情況下,所述至少一個輔助輸入可以選自包括溫度(在自然語言處理的上下文中,是神經網路的超參數,用於通過在應用softmax之前縮放最終線性層輸出的對數來控制預測的隨機性;另請參見下面的描述)、語言和情感的組。
根據所述第一方面或其任何實現方式的方法也可以適當地應用於音訊信號處理。因此,根據另一種實現方式,所述當前物件包括音訊信號。在這種情況下,所述至少一個輔助輸入可以選自包括以下的組:
品質指示參數;
信號空間中的通道失真度量;
任一潛在空間中的通道失真度量;
等化器設置;
音量;
轉換率。
在音訊信號處理的上下文中,提供了一種對聲音信號進行編碼的方法,包括根據所述第一方面或其任意實現方式的方法的步驟。對應地,提供了一種對經編碼聲音信號進行解碼的方法,包括根據所述第一方面或其任意實現方式的方法的步驟。
根據第二方面,提供了一種通過神經網路推理處理當前物件的方法。所述第二方面提供的方法包括以下步驟:
將表示所述當前物件的輸入資料張量集輸入到基於訓練後的變換器的神經網路的神經層中;
將至少一個輔助資料張量輸入到所述基於訓練後的變換器的神經網路的神經層中,其中,所述至少一個輔助資料張量與所述輸入資料張量集中的每個輸入資料張量不同,並表示至少一個輔助輸入;
所述基於訓練後的變換器的神經網路使用所述至少一個輔助資料張量處理所述輸入資料張量集,以獲取輸出資料張量集。
輸入到所述神經層的所述至少一個輔助資料張量取決於關於所述當前物件的屬性(由輔助輸入提供)的資訊和關於處理所述當前物件的資訊(由輔助輸入提供)中的至少一個。
通過使用關於所述當前物件的屬性的資訊(例如,所述當前物件的內容或內容的類型/類)和/或關於處理所述當前物件的資訊(參見下面的描述),改進神經網路推理期間所述輸入資料張量(即模型性能)的處理結果。該資訊不是通過預訓練和固定的輔助輸入提供的,而是通過將所述輔助輸入投影到提供額外模型輸入的所述至少一個輔助資料張量,為所述當前物件獲得的相當可變的資訊可用於基於變換器的神經網路的處理。具體地,關於處理所述當前物件的資訊可以是關於在連續或離散參數範圍內處理所述當前物件的資訊。
在神經網路推理期間,關於所述當前物件的屬性的資訊,特別是關於所述物件的內容的資訊和關於處理所述當前物件的資訊可以兩者或替代地有用地使用,以便通過基於變換器的神經網路改善所述物件的處理結果(例如,經解碼圖像的品質可以提高)。
在提供與上述相同的優點的同時,可以實現根據第二方面的方法的不同實現方式。
根據一種實現方式,所述輸入資料張量集與所述至少一個輔助資料張量分開輸入。在這種情況下,所述輸入資料張量集可以被輸入到所述基於訓練後的變換器的神經網路的第一神經層中,並且所述至少一個輔助資料張量可以被輸入到所述基於訓練後的變換器的神經網路的第二神經層中,其中,所述第二神經層與所述第一層不同。表示提供關於在張量空間中處理所述當前物件的資訊的所述輔助輸入的所述至少一個輔助資料張量可以在神經層中通過與應用於所述輸入資料張量的數學運算相同或相似的數學運算來處理。具體地,相同的權重可以應用於同一神經層中的所述至少一個輔助資料張量和所述輸入資料張量。
或者,輸入所述輸入資料張量集和所述至少一個輔助資料張量可以包括:(a)生成不同混合輸入張量集,其中,所述不同混合輸入張量集中的每個混合輸入張量包括所述至少一個輔助資料張量和所述輸入資料張量集中的一個輸入資料張量中的至少一個;(b)將所述混合輸入張量集輸入到所述基於訓練後的變換器的神經網路的所述神經層中。在一些實現方式中,所述不同混合輸入張量集中的每個混合輸入張量包括所述至少一個輔助資料張量和所述輸入資料張量集中的一個輸入資料張量中的至少一個。
與以上結合本文提供的所述第一方面的方法的描述類似,根據所述第二方面的方法還可以包括:通過將所述至少一個輔助輸入線性轉換為所述至少一個輔助資料張量或者將所述至少一個輔助輸入非線性轉換為所述至少一個輔助資料張量,或者通過另一個神經網路將所述至少一個輔助輸入轉換為所述至少一個輔助資料張量,生成所述至少一個輔助資料張量。
在所述方法的一種實現方式中,根據所述第二方面,關於所述當前物件的屬性的資訊和關於處理所述當前物件的資訊中的至少一個是關於在連續或不連續參數範圍內處理所述當前物件的資訊。
如上所述,關於所述當前物件的屬性的資訊和/或關於處理所述當前物件的資訊可以從為所述物件生成的碼流中獲取。
根據所述第二方面的方法,類似於根據所述第一方面的方法,也可以應用於例如影像處理、語言處理(例如,自然語言處理)和音訊信號處理。
因此,所述當前物件可以包括圖像或圖像的一部分,例如,所述圖像可以是視頻序列的幀或靜止圖像。在這種情況下,所述至少一個輔助輸入可以選自包括以下的組:
內容,內容類別別/類型;
品質指示參數;
信號空間中的通道失真度量;
潛在空間中的通道失真度量;
亮度、對比度、清晰度、色溫、銳度、飽和度、顏色長條圖;
陰影、亮度、暗角控制、繪畫風格;
不連續可變濾波器強度、連續可變濾波器強度;
幀內預測或幀間預測的指示;
物件替換應用的轉換率。
此外,提供了一種對圖像進行編碼或或經編碼圖像進行解碼的方法,包括根據所述第二方面或其任何實現方式的方法的步驟。此外,提供了一種圖像壓縮的方法,包括根據所述第二方面或其任何實現方式的方法的步驟。
解決本文提供的特定應用的其他方法包括視訊壓縮、圖像自動編碼、視頻編碼和圖像增強的方法,包括根據所述第二方面或其任何實現方式的方法的步驟,只要它被認為合適。特別地,所述基於訓練後的變換器的神經網路可以包括在環路內濾波器中。
根據所述第二方面的方法的另一種實現方式,所述當前物件包括一個或多個句子(的單詞)。在這種情況下,所述至少一個輔助輸入選自包括內容、內容類別型、溫度(見上文描述)、語言和情感的組。
或者,所述當前物件包括音訊信號。在音訊信號的上下文中,所述至少一個輔助輸入可以選自包括以下的組:
內容,內容類別型;
品質指示參數;
信號空間中的通道失真度量;
任一潛在空間中的通道失真度量;
等化器設置;
音量;
轉換率。
在音訊信號處理的上下文中,提供了一種對聲音信號進行編碼的方法,包括根據所述第二方面或其任意描述的實施例的方法的步驟。對應地,提供了一種對經編碼聲音信號進行解碼的方法,包括根據所述第二方面或其任意描述的實施例的方法的步驟。
根據第三方面,提供了一種儲存在非暫態性介質上的電腦程式,所述電腦程式包括代碼,當在一個或多個處理器上執行時,所述代碼執行根據所述第一方面和所述第二方面中的任一個以及上述相同方面的具體實施方式的方法的步驟。
第四方面,提供了一種處理裝置,包括處理電路,用於執行根據上述第一方面或第二方面以及上述實現方式的方法的步驟。
根據第五方面,提供了一種處理裝置,包括:一個或多個處理器;非暫態性電腦可讀儲存介質,耦合至所述一個或多個處理器,並儲存由所述一個或多個處理器執行的程式,其中,當所述一個或多個處理器執行所述程式時,使得所述處理裝置執行根據上文所述第一方面或第二方面以及上述實現方式的方法。
用於對經編碼圖像(例如視頻序列的靜止圖像或幀)進行解碼的解碼設備或用於對圖像(例如視頻序列的靜止圖像或幀)進行編碼的編碼設備都可以包括上述處理裝置中的任何一個。此外,本文提供了一種自動編碼設備,用於對圖像進行編碼,並包括上述裝置中的任何一個。
在以下描述中,參考構成本發明一部分的附圖,附圖通過說明的方式示出了本發明實施例的特定方面或可使用本發明實施例的特定方面。應理解,本發明的實施例可用於其它方面,並且包括未在附圖中描繪的結構或邏輯變化。因此,以下詳細的描述並不當作限定,本發明的範圍由所附申請專利範圍界定。
可以理解的是,與所描述的方法有關的公開內容對於與用於執行方法對應的設備或系統也同樣適用,反之亦然。例如,如果描述了一個或多個特定方法步驟,則對應的設備可以包括一個或多個單元,例如,功能單元,用於執行所描述的一個或多個方法步驟(例如,執行所述一個或多個步驟的一個單元,或各自執行所述多個步驟中的一個或多個步驟的多個單元),即使圖中未明確描述或說明此類一個或多個單元。另一方面,例如,如果根據一個或多個單元(例如,功能單元)來描述特定裝置,對應的方法可以包括一個步驟來執行一個或多個單元的功能(例如,執行所述一個或多個單元的功能的一個步驟,或各自執行所述多個單元中的一個或多個單元的功能的多個步驟),即使圖中未明確描述或說明此類一個或多個步驟。此外,應理解,除非另外具體指出,否則本文中描述的各種示例性實施例和/或方面的特徵可彼此組合。
下面概述了一些使用的技術術語。
人工神經網路,人工神經網路(artificial neural network,ANN)或連接主義系統是模糊地受構成動物大腦的生物神經網路的啟發而建立的計算系統。這些系統通過舉例來“學習”執行任務,通常不使用特定於任務的規則進行程式設計。例如,在圖像識別中,這些系統可能會學習標識包含貓的圖像,即通過分析手動標記為“貓”或“沒有貓”的示例性圖像並使用結果識別其它圖像中的貓。這些系統這樣做之前並不知道貓有毛皮、尾巴、鬍鬚和貓臉等信息。相反,這些系統會從其處理的示例中自動生成識別特徵。
ANN以一組稱為人工神經元的連接單元或節點為基礎,這些單元或節點以鬆散方式建模生物大腦中的神經元。每個連接就像生物大腦中的突觸一樣,可以向其它神經元傳遞信號。人工神經元接收信號,然後處理這個信號,並可以向與其相連的神經元發出信號。
在ANN實現方式中,連接處的“信號”是一個實數,而且每個神經元的輸出是通過其輸入和的某一非線性函數計算得到的。這些連接稱為邊。神經元和邊通常具有隨著學習的進行而調整的權重。權重增加或減少連接處的信號強度。神經元可以具有閾值,使得只有在聚合信號超過該閾值時,才發送信號。通常,神經元聚集成一層一層的。不同的層可以對其輸入執行不同的變換。信號可能在多次遍歷各層之後,從第一層(輸入層)傳輸到最後一層(輸出層)。
ANN方法的最初目標是以與人腦相同的方式解決問題。隨著時間的推移,注意力轉移到執行特定任務上,導致偏離生物學。ANN已經用於各種任務,包括電腦視覺、語音辨識、機器翻譯、社交網路過濾、棋盤和視頻遊戲、醫學診斷,甚至在傳統上被認為是為人類保留的活動,如繪畫。
卷積神經網路,“卷積神經網路”(convolutional neural network,CNN)這一名稱表示該網路採用一種稱為卷積的數學運算。卷積是一種專門的線性運算。卷積網路是簡單的神經網路,在其至少一個層中使用卷積代替一般矩陣乘法。
圖1示意性地示出了神經網路(例如,CNN)的處理的一般概念。卷積神經網路由輸入層和輸出層以及多個隱藏層組成。輸入層是提供輸入(例如,圖1所示的圖像的一部分)進行處理的層。CNN中的隱藏層通常包括一系列卷積層,這些卷積層通過乘法或其它點積進行卷積。層的結果是一個或多個特徵圖(圖1中為f.maps),有時也稱為通道。一些或所有層中可能涉及子採樣。因此,特徵圖可能會變小,如圖1所示。CNN中的啟動函數通常是修正線性單元(rectified linear unit,ReLU)層,隨後是附加卷積,例如池化層、全連接層和歸一化層,稱為隱藏層,因為它們的輸入和輸出被啟動函數和最終卷積掩蓋。雖然這些層被通俗地稱為卷積,但這只是按照慣例。從數學上講,它在技術上是一個滑動點積或互相關。這對矩陣中的索引具有重要意義,因為影響到在特定索引點確定權重的方式。
當對CNN進行程式設計以處理圖像時,如圖1所示,輸入是形狀(圖像數量)×(圖像寬度)×(圖像高度)×(圖像深度)的張量。然後,在通過卷積層後,圖像被抽象為特徵圖,具有形狀(圖像數量)×(特徵圖寬度)×(特徵圖高度)×(特徵圖通道)。神經網路中的卷積層應具有以下性質。由寬度和高度(超參數)定義的卷積核。輸入通道和輸出通道的數量(超參數)。卷積濾波器(輸入通道)的深度應等於輸入特徵映射的數量通道(深度)。
過去,傳統的多層感知器(multilayer perceptron,MLP)模型被用於圖像識別。但是,由於節點之間的完全連接,它們受到了高維度的影響,並且在較高解析度圖像中無法充分擴展。具有RGB顏色通道的1000×1000圖元圖像具有300萬權重,權重太高,無法在完全連接的情況下高效地進行大規模處理。此外,這種網路架構不考慮資料的空間結構,以與距離近的圖元相同的方式處理距離遠的輸入圖元。這忽略了圖像資料中的參考局部性,無論是在計算上還是在語義上。因此,神經元的完全連接對於由空間局部輸入模式主導的圖像識別等目的是浪費的。
卷積神經網路是多層感知器的生物學啟發變體,專門設計用於模擬視覺皮層的行為。這些模型通過利用自然圖像中存在的強空間局部相關性,減輕了MLP架構帶來的挑戰。卷積層是CNN的核心構建塊。該層的參數由一組可學習的濾波器(上述內核)組成,這些濾波器具有一個小的接受場,但延伸到輸入卷的整個深度。在正向傳遞期間,每個濾波器在輸入體積的寬度和高度上卷積,計算濾波器條目和輸入之間的點積,並生成該濾波器的二維啟動映射。因此,網路學習濾波器,當濾波器在輸入中的某個空間位置檢測到某些特定類型的特徵時啟動。
沿深度維度堆疊所有濾波器的啟動映射形成卷積層的完整輸出體積。因此,輸出體積中的每個條目也可以被解釋為神經元的輸出,該神經元查看輸入中的一個小區域,並與同一啟動映射中的神經元共用參數。特徵映射或啟動映射是指定濾波器的輸出啟動。特徵映射和啟動具有相同的含義。在一些論文中,稱為啟動圖,是因為它是一種與圖像中不同部分的啟動對應的映射關係,也稱為特徵圖,是因為它也是一種在圖像中找到某種特徵所在的映射關係。高啟動意味著找到了某個功能。
CNN的另一個重要概念是池化,是非線性下採樣的一種形式。有幾個非線性函數來實現池化,其中最大池化是最常見的。將輸入圖像劃分為一組非重疊矩形,並對於每個這種子區域輸出最大值。
直覺上,特徵的確切位置不如其相對於其它特徵的粗略位置重要。這就是在卷積神經網路中使用池化的想法。池化層用於逐步減小表示的空間大小,減少網路中參數的數量、記憶體佔用空間和計算量,因此也用於控制過擬合。在CNN架構中,在連續的卷積層之間定期插入池化層是常見的。池化操作提供了另一種形式的變換不變性。
池化層在輸入的每個深度分塊上獨立操作,並在空間上重新調整大小。最常見的形式是池化層具有大小為2×2的濾波器,這些濾波器在輸入中的每個深度切片上應用步幅為2的下採樣,沿寬度和高度均縮小二分之一,從而丟棄75%的啟動。在這種情況下,每個最大值操作都超過4個數字。深度維度保持不變。
除了最大池化之外,池化單元還可以使用其它函數,例如平均池化或ℓ2-norm池化。過去經常使用的是平均池化,但與實踐中表現更好的最大池化相比,平均池化最近已經不受歡迎。由於表示大小的大幅減小,最近有一種趨勢是使用較小的濾波器或完全捨棄池化層。“感興趣區域(Region of Interest)”池化(還稱為ROI池化)是最大池化的變體,其中的輸出大小是固定的,輸入矩形是參數。池化是卷積神經網路基於快速R-CNN架構進行目標檢測的重要組成部分。
上述ReLU是修正線性單元的縮寫,應用非飽和啟動函數。它通過將負值設置為0,有效地從啟動圖中去除這些負值。它增加了決策函數和整體網路的非線性性質,而不影響卷積層的接受場。其它函數也用於增加非線性,例如飽和雙曲正切和sigmoid函數。ReLU通常比其它函數更受歡迎,因為它訓練神經網路的速度快幾倍,而不會對泛化精度造成很大影響。
經過幾個卷積層和最大池化層之後,神經網路中的高級推理是通過全連接層完成的。全連接層中的神經元與前一個層中的所有啟動都有連接,如常規(非卷積)人工神經網路中所示。因此,這些啟動可以作為仿射變換計算,矩陣乘法之後是偏置偏移(學習或固定偏置項的向量加法)。
“損失層(loss layer)”指定訓練如何影響預測(輸出)標籤與真實標籤之間的偏差(deviation),並且通常是神經網路的最後一層。可以使用適合不同任務的各種損失函數。Softmax損失用於預測K個互斥類別的單個類別。Sigmoid交叉熵損失用於預測[0, 1]中的K個獨立概率值。歐氏損失(Euclidean loss)用於回歸到實值標籤。
總之,圖1示出了典型卷積神經網路中的資料流程。首先,輸入圖像通過卷積層,並抽象到包括幾個通道的特徵圖,對應於該層的一組可學習濾波器中的多個濾波器。然後,使用池化層等對特徵圖進行子採樣,該層減小了特徵圖中每個通道的維度。下一個資料到達另一個卷積層,該卷積層可能具有不同數量的輸出通道,導致特徵圖中的通道數量不同。如上所述,輸入通道和輸出通道的數量是層的超參數。要建立網路的連接,這些參數需要在兩個連接的層之間同步,使得當前層的輸入通道數應等於上一層的輸出通道數。對於處理圖像等輸入資料的第一層,輸入通道的數量通常等於資料表示的通道的數量,例如,3個通道用於圖像或視頻的RGB或YUV表示,或1個通道用於灰度圖像或視頻表示。
自動編碼器和無監督學習,自動編碼器是人工神經網路的一種用於以無監督的方式學習高效的資料解碼。示意圖如圖2所示。自動編碼器的目的是通過訓練網路忽略信號“雜訊”來學習一組資料的表示(編碼),通常用於降維。與簡化側一起,學習重建側,其中,自動編碼器嘗試從簡化的編碼中生成盡可能接近其原始輸入的表示,因此得名。在最簡單的情況下,給定一個隱藏層,自動編碼器的編碼器級獲取輸入
並將其映射到
:
。
此圖像
通常稱為代碼、潛在變數或潛在表示。此處,
是逐元素啟動函數,例如,sigmoid函數或修正線性單元。
是權重矩陣,
是偏置向量。權重和偏置通常經隨機初始化,然後在訓練期間通過反向傳播反覆運算更新。之後,自動編碼器的解碼器級將h映射到與
相同的形狀的重建
:
其中,解碼器
、的
和
可以與編碼器的對應
、
和
無關。
變分自動編碼器模型對潛在變數的分佈做出了強假設。這些模型使用變分方法進行潛在表示學習,產生了額外的損失分量,和訓練演算法的特定估計器,稱為隨機梯度變分貝葉斯(Stochastic Gradient Variational Bayes,SGVB)估計器。假設資料由有向圖模型
生成,並且編碼器正在學習後驗分佈
的近似
,其中,
和
分別表示編碼器(識別模型)和解碼器(生成模型)的參數。VAE的潛在向量的概率分佈通常比標準自動編碼器更接近訓練資料的概率分佈。VAE的目標具有以下形式:
此處,
表示KL散度(Kullback-Leibler divergence)。潛在變數的先驗通常設置為中心各向同性多變數高斯(centered isotropic multivariate Gaussian)
。通常,對變分和似然分佈的形狀進行選擇,使得它們為因式化高斯:
其中,
是编码器输出,而
和
)为解码器输出。
人工神經網路領域,特別是卷積神經網路的最新進展使研究人員有興趣將基於神經網路的技術應用於圖像和視訊壓縮任務。例如,人們已經提出了端到端優化的圖像壓縮,這種技術使用基於變分自動編碼器的網路。因此,資料壓縮被認為是工程中一個基本且充分研究的問題,通常是為了為給定的離散資料集設計具有最小熵的代碼。該技術方案在很大程度上依賴於對資料概率結構的瞭解,因此該問題與概率源建模密切相關。但是,由於所有實用代碼都必須具有有限熵,因此連續值資料(例如圖像圖元強度的向量)必須量化為離散值的有限集,這會引入誤差。在這種情況下,即失真壓縮問題,必須權衡兩個相互矛盾的成本:離散化表示的熵(速率)和量化引起的誤差(失真)。不同的壓縮應用,例如資料儲存或有限容量通道上的傳輸,需要不同地平衡速率和失真。速率和失真的聯合優化是困難的。如果沒有進一步的約束,高維空間中最優量化的一般問題是難以解決的。因此,大多數現有的圖像壓縮方法通過將資料向量線性轉換為合適的連續值表示,獨立量化其元素,然後使用無損熵代碼編碼得到的離散表示來操作。由於變換的核心作用,此方案稱為變換編碼。例如,JPEG在區塊上使用離散余弦變換,JPEG 2000使用多尺度正交小波分解。通常,分別對變換編碼方法的三個組成部分(變換、量化和熵編碼)進行優化(通常通過手動調整參數)。現代視訊壓縮標準,如HEVC、VVC和EVC也使用變換表示對預測後的殘差信號進行解碼。這幾個變換用於此目的,如離散余弦變換(discrete cosine transform,DCT)和離散正弦變換(discrete sine transform,DST),以及手動優化的低頻不可分離變換(low frequency non-separable manually optimized transform,LFNST)。
變分圖像壓縮
在J. Balle、L. Valero Lapara和E. P. Simoncelli(2015年)“使用廣義歸一化變換對圖像進行密度建模(Density Modeling of Images Using a Generalized Normalization Transformation)”,2016年第四屆國際會議學習表示會議(以下稱為“Balle”)發表的arXiv電子列印版本中,作者提出了一個基於非線性變換的圖像壓縮模型端到端優化框架。此前,作者證明,與針對均方誤差(mean squared error,MSE)優化的模型相比,由線性-非線性塊變換組成的模型在視覺上表現出優越的性能,該模型針對感知失真測量進行了優化。在此,作者對MSE進行了優化,但使用了由線性卷積和非線性級聯構建的更靈活的變換。具體來說,作者使用了廣義除法歸一化(generalized divisive normalization,GDN)聯合非線性,該非線性受到生物視覺系統中神經元模型的啟發,並已被證明在高斯化圖像密度方面是有效的。這種級聯變換之後是均勻標量量化(即,每個元素都四捨五入到最近的整數),有助於在原始圖像空間上實現向量量化的參數形式。使用近似參數非線性逆變換從這些量化值重建壓縮圖像。
對於沿速率-失真曲線的任何期望點,分析和合成變換的參數都使用隨機梯度下降聯合優化。為了在存在量化(幾乎在任何地方都產生零梯度)的情況下實現這一目標,作者使用了基於概率模型連續鬆弛的代理損失函數,用加性均勻雜訊取代量化步驟。鬆弛的速率失真優化問題與用於擬合生成圖像模型的問題,特別是變分自動編碼器的問題有一些相似之處,但作者為確保它沿著速率失真曲線近似離散問題而施加的約束不同。最後,作者沒有報告差分或離散熵估計,而是使用實際位元速率實現熵代碼並報告性能,從而證明了解決方案作為完全失真壓縮方法的可行性。
在J.Balle中,描述了一種基於變分自動編碼器的端到端可訓練圖像壓縮模型。該模型包含了超先驗,以有效地捕獲潛在表示中的空間依賴關係。這種超先驗涉及也發送到解碼端的邊資訊,這是一個對幾乎所有現代圖像編碼器都通用的概念,但在使用ANN的圖像壓縮中基本上沒有經過探索。與現有的自動編碼器壓縮方法不同,這種模型與底層自動編碼器聯合訓練複雜的先驗。作者證明,在使用流行的MS-SSIM指數測量視覺品質時,該模型會導致最先進的圖像壓縮,並在使用基於峰值信噪比(PSNR)的更傳統度量評估時,產生的速率失真性能超過了已發表的基於ANN的神經網路的方法。
圖3示出了包括超先驗模型的網路架構。左側(g
a、g
s)示出了圖像自動編碼器架構,右側(h
a、h
s)對應於實現超先驗的自動編碼器。因式化先驗模型使用相同的架構進行分析和合成變換g
a和g
s。Q表示量化,AE、AD分別表示算術編碼器和算術解碼器。編碼器將輸入圖像x輸入到g
a,產生具有空間變化標準差的回應y(潛在表示)。編碼g
a包括具有子採樣的多個卷積層和作為啟動函數的廣義除法歸一化(generalized divisive normalization,GDN)。
將回應饋送到h
a中,匯總z中的標準差分佈。然後量化、壓縮,並作為邊資訊傳輸z。然後,編碼器使用量化向量
來估計
,即標準差的空間分佈,用於獲得算術解碼(arithmetic coding,AE)的概率值(或頻率值),並使用它來壓縮和傳輸量化圖像表示
(或潛在表示)。解碼器首先從壓縮信號中恢復
。然後,使用h
s獲得
,這為它提供了正確的概率估計,以成功恢復
。然後,將
饋入g
s以獲得重建圖像。
在進一步的工作中,通過引入例如基於PixelCNN++架構的自回歸模型,進一步改進了超先驗的概率建模,該模型允許利用潛在空間的已經解碼符號的上下文,以更好地估計待解碼的進一步符號,例如,就像圖2中示出的L. Zhou、Zh. Sun、X. Wu、J. Wu,帶注意機制的端到端優化圖像壓縮,CVPR 2019(以下簡稱“周”)。
適用於機器任務的雲技術方案
機器視頻編碼(Video Coding for Machine,VCM)是當今流行的另一個電腦科學方向。這種方法背後的主要思想是傳輸圖像或視頻資訊的編碼表示,以便通過電腦視覺(computer vision,CV)演算法進一步處理,如物件分割、檢測和識別。與針對人類感知的傳統圖像和視頻編碼相比,品質特徵是電腦視覺任務的性能,例如,物體檢測精度,而不是重建品質。這在圖4中示出。
機器視頻編碼也被稱為協作智慧,它是在移動雲基礎設施中高效部署深度神經網路的一個相對較新的範式。通過例如在移動設備和雲之間劃分網路,可以分配計算工作負載,使得系統的總能量和/或時延最小化。一般來說,協作智慧是一種範式,其中,神經網路的處理分佈在兩個或兩個以上不同的計算節點(例如設備,但一般是任何功能定義的節點)之間。這裡,術語“節點”並不指上述神經網路節點。相反,這裡的(計算)節點指的是實現神經網路各部分的(物理上或至少邏輯上)獨立的設備/模組。這些設備可以是不同的伺服器、不同的終端使用者設備、伺服器和/或使用者設備和/或雲和/或處理器的組合,等等。換句話說,可以認為計算節點是屬於同一神經網路且相互通信以在神經網路內/為神經網路傳送經解碼資料的節點。例如,為了能夠執行複雜計算,一個或多個層可以在第一設備上執行,一個或多個層可以在另一個設備上執行。但是,分佈也可以更精細,單層可以在多個設備上執行。在本發明中,術語“多個”是指兩個或更多個。在一些現有技術方案中,神經網路功能的一部分在設備(使用者設備或邊緣設備等)或多個這樣的設備中執行,然後將輸出(特徵圖)傳遞給雲。雲是位於設備外部的處理系統或計算系統的集合,該設備運行神經網路的一部分。協作智慧的概念也擴展到了模型訓練。在這種情況下,資料流程雙向流動:在訓練中反向傳播期間從雲端到移動端,在訓練中正向傳遞期間從移動端到雲端,以及推理。
一些作品通過對深度特徵進行編碼,然後從這些特徵中重建輸入圖像,提出了語義圖像壓縮。示出了基於均勻量化的壓縮,然後是H.264的基於上下文的自我調整算術編碼(context-based adaptive arithmetic coding,CABAC)。在一些場景中,從移動部分向雲傳輸隱藏層(深度特徵圖)的輸出可能更高效,而不是向雲發送壓縮的自然圖像資料並使用重建圖像執行物件檢測。特徵圖的高效壓縮有利於圖像和視訊壓縮和重建,無論是人類感知還是機器視覺。熵編碼方法(例如算術編碼)是深度特徵(即特徵映射)壓縮的流行方法。
如今,視頻(即影片)內容對互聯網流量的貢獻超過80%,預計這一比例將進一步上升。因此,建立一個高效的視訊壓縮系統,並在給定的頻寬預算下生成更高品質的幀是至關重要的。此外,大多數視頻相關的電腦視覺任務,如視頻物件檢測或視頻物件跟蹤,對壓縮視頻的品質敏感,高效的視訊壓縮可能為其他電腦視覺任務帶來好處。同時,視訊壓縮技術也有助於動作識別和模型壓縮。然而,在過去的幾十年裡,視訊壓縮演算法依賴於手工製作的模組,例如基於塊的運動估計和離散余弦變換(Discrete Cosine Transform,DCT),以減少視頻序列中的冗餘,如上所述。雖然每個模組都設計得很好,但整個壓縮系統並沒有端到端優化。希望通過聯合優化整個壓縮系統來進一步提高視訊壓縮性能。
端到端圖像或視訊壓縮
最近,基於深度神經網路(deep neural network,DNN)的圖像壓縮自動編碼器取得了與傳統圖像編碼器如JPEG、JPEG2000或BPG相當甚至更好的性能。一種可能的解釋是,基於DNN的圖像壓縮方法可以利用大規模端到端訓練和高度非線性變換,而這些方法在傳統方法中並不使用。然而,直接應用這些技術來構建視訊壓縮的端到端學習系統並不常見。首先,學習如何生成和壓縮為視訊壓縮量身定制的運動資訊仍然是一個懸而未決的問題。視訊壓縮方法非常依賴運動資訊來減少視頻序列中的時間冗餘。一個簡單的技術方案是使用基於學習的光流來表示運動資訊。然而,當前基於學習的光流方法的目的是盡可能準確地生成流場。精確的光流通常不是特定視頻任務的最佳選擇。此外,與傳統壓縮系統中的運動資訊相比,光流的資料量顯著增加,直接應用現有的壓縮方法來壓縮光流值將顯著增加儲存運動資訊所需的比特數。其次,目前還不清楚如何通過最小化殘差和運動資訊的基於速率失真的目的來構建基於DNN的視訊壓縮系統。速率失真優化(Rate-distortion optimization,RDO)的目的是在給出壓縮的比特數(或位元速率)時,實現更高品質(即更少的失真)的重建幀。RDO對於視訊壓縮性能非常重要。為了利用基於學習的壓縮系統的端到端訓練的力量,需要RDO策略來優化整個系統。
在Guo Lu、Wanli Ouyang、Dong Xu、Xiaoyun Zhang、Chunlei Cai、Zhiyong Gao在2019年IEEE/CVF電腦視覺與模式識別大會(Computer Vision and Pattern Recognition,CVPR)的會議記錄“DVC:端到端深度視訊壓縮框架(DVC: An End-to-end Deep Video Compression Framework)”第11006至11015頁中,作者提出了聯合學習運動估計、運動壓縮、和殘差解碼的端到端深度視訊壓縮(deep video compression,DVC)模型。
這種編碼器在圖5中示出。具體地,圖5示出了端到端可訓練視訊壓縮框架的總體結構。為了壓縮運動資訊,指定了CNN將光流轉換為適合更好壓縮的相應表示。具體來說,使用自動編碼器風格的網路來壓縮光流。運動向量(motion vector,MV)壓縮網路如圖6所示。網路架構與圖3中的ga/gs有些相似。具體地,光流被饋送到包括GDN和IGDN在內的一系列卷積運算和非線性變換中。卷積(反卷積)的輸出通道數為128,但最後一個反卷積層等於2。給定光流大小為M×N×2,MV編碼器將生成大小為M/16×N/16×128的運動表示。然後,運動表示被量化,被熵解碼並發送到碼流。MV解碼器接收量化表示並使用MV編碼器重建運動資訊。
圖7為可以根據本發明改進的包括自動編碼器和本領域的超先驗元件的特定學習圖像壓縮配置的框圖。待壓縮的輸入圖像表示為大小為
的3D張量,其中,
和
分別是圖像的高度和寬度(維度),
是分量的數量(例如,1個亮度分量和2個色度分量)。輸入圖像通過編碼器71。編碼器通過應用多個卷積和非線性變換對輸入圖像進行下採樣,並產生潛在張量
。需要說明的是,在深度學習的背景下,術語“下採樣”和“上採樣”並不是指經典意義上的重新採樣,而是用於改變張量H維度和W維度大小的常見術語。編碼器71輸出的潛在張量
表示潛在空間中的圖像,並具有大小
,其中,
是編碼器71的下採樣因數,
是通道數(例如,參與表示輸入圖像的張量變換的神經網路層數)。
潛在張量
由超編碼器72通過卷積和非線性變換進一步下採樣為超潛在張量
。超潛在張量
的大小是
,其中,
是超編碼器72的下採樣因數。
超潛在張量
由塊Q量化,以獲得量化的超潛在張量
。利用因式化熵模型估計了量化超潛在張量
值的統計性質。算術編碼器AE使用這些統計性質來創建張量
的碼流表示。在不需要自回歸過程的情況下,張量
的所有元素都被寫入碼流中。
因式化熵模型用作碼本,其參數在解碼端可用。算術解碼器AD通過使用因式化熵模型從碼流恢復的超潛在張量
。通過應用多個卷積操作和非線性變換,在超解碼器73中對恢復的超潛在張量
進行上採樣。上採樣恢復的超潛在張量表示為
。根據上採樣恢復的超潛在張量
,自回歸估計量化潛在張量
的熵。由此獲得的自回歸熵模型用於估計量化潛在張量
的統計性質。
算術編碼器AE使用這些估計的統計性質來創建量化潛在張量
的碼流表示。換句話說,自動編碼器元件的算術編碼器AE根據超先驗元件提供的邊資訊,通過熵編碼壓縮潛在空間中的圖像資訊。潛在張量
由接收端的算術解碼器AD通過自回歸熵模型從碼流中恢復。通過應用多個卷積操作和非線性變換,由解碼器74上採樣恢復的潛在張量
,以便獲得重建圖像的張量表示。
上述神經網路可以在圖7所示的配置中實現(例如,用於編碼和解碼目的)。
變換器
最近,一種新的神經網路被引入,稱為“變換器”。變換器不包括遞迴或卷積神經網路,而是依賴於自注意。例如,變換器也可以圖5和圖7中所示的配置實現。具體地,變換器可以與遞迴或卷積神經網路結合。
圖8示出了本領域的變換器800的示例。變換器800包括神經層810(變換器層)。變換器800可以包括編碼器-解碼器架構,編碼器-解碼器架構包括編碼器神經層和解碼器神經層。或者,變換器800可以僅包括神經層的編碼器堆疊。輸入資料登錄到變換器中,然後輸出輸出資料。例如,變換器800用於影像處理,並且可以輸出增強圖像。例如,輸入資料可以包括圖像塊或句子的單詞。例如,權杖器從待處理的圖像塊或句子中的單詞的形式生成權杖。這些權杖可以通過某些嵌入演算法轉換為(連續值)嵌入。根據圖8中所示的示例,線性投影層820將輸入塊轉換為待處理的物件部分的張量表示(嵌入)(在潛在空間中)。信號輸入的這些張量表示由變換器800處理。提供位置編碼層830可以提供關於待處理物件的部分(例如,圖像或句子)相對於彼此的位置的資訊,例如,圖像塊或句子的單詞相對於彼此的位置。可以使用位置編碼的正弦函數。
神經層810中的最後一個神經層輸出潛在空間中的輸出資料張量,所述輸出資料張量由線性反向投影層840轉換回物件空間(例如,圖像或句子空間)。
神經層(變換器層)810的處理基於自注意的概念。根據特定示例的變換器800的神經層810的細節如圖9所示。圖9的左側示出了多個編碼器神經層中的一個,圖9的右側示出了變換器800的多個解碼器神經層中的一個。原則上,變換器800可以包括編碼器堆疊和解碼器堆疊兩者,或者僅包括編碼器堆疊。變換器800的每個神經層810包括多頭自注意層和(全連接)前饋神經網路。自注意層説明編碼器堆疊在編碼物件的特定部分(例如圖像塊或句子的單詞)時查看物件的其他部分(例如圖像塊或單詞)。自注意層的輸出被饋送到前饋神經網路。解碼器堆疊還具有這兩個元件,並在它們之間有一個額外的“編碼器-解碼器”注意層,説明解碼器堆疊關注輸入資料的相關部分。待處理物件的每一部分(例如,圖像塊或句子的單詞)在每個位置都流經編碼器中自己的路徑。在自注意層中,這些路徑之間存在依賴關係。但是,前饋層沒有這些依賴關係,因此,在流經前饋層時,各種路徑可以並存執行。
在編碼器堆疊的多頭自注意層計算查詢Q、鍵K和值V張量和自注意,
其中,
d
k 表示鍵張量的維度,而softmax函數提供最終注意權重作為概率分佈。
每個編碼器和解碼器層中的每個子層(自注意層和前饋神經網路)都有一個殘留連接,然後是一個歸一化層(見圖9)。
頂部編碼器層的輸出被轉換為一組注意向量K和V。這些將由每個解碼器層在其“編碼器-解碼器注意”層中使用。“編碼器-解碼器注意”層的操作類似於編碼器堆疊的多頭自注意層,只是它們從下面的相應層創建查詢矩陣,並從編碼器堆疊的輸出中獲取鍵和值矩陣(見圖9)。
解碼器堆疊輸出浮點向量,該浮點向量由輸出對數的最終線性層(全連接神經網路)轉換為物件的部分(例如,圖像塊或句子的單詞),然後是產生最高概率輸出的Softmax層。
圖10示出了類似於圖8中所示的變換器800的變換器1000。變換器1000還包括神經層1010、用於將輸入資料投影到張量(潛在)空間的線性投影層1020和位置編碼層1030。然而,此外,使用的類別權杖不屬於上述輸入資料,但是是梯度下降期間學習的向量。需要說明的是,本領域中的術語並不是一致固定的。例如,有時由變換器1000實際處理的額外資料由術語“權杖”表示,有時它由術語“嵌入”表示。類別權杖/嵌入路徑通過神經層1010用於分類過程。類權杖/嵌入在訓練階段學習,並在神經網路推理中保持固定,即類權杖不表示變數輸入。多層感知器(Multilayer Perceptron,MLP)頭1040輸出處理物件(例如圖像)的類別(例如人)。換句話說,變換器1000作為分類器操作。變換器1000可以至少部分地包括圖9中所示的架構。
圖11示出了本領域中類似於圖8中所示的變換器800的變換器1100。變換器1100還包括神經層1110、用於將輸入資料投影到張量(潛在)空間的線性投影層1120和位置編碼層1130。此外,使用了兩個額外的權杖,一個表示與待處理圖像的旋轉相關的資訊,另一個表示與對比學習相關的資訊。旋轉和對比權杖表示額外的輸入資料。旋轉和對比權杖在訓練階段學習,並在神經網路推理中保持固定。同樣,由變換器1100在張量空間中實際處理的額外資料可以被命名為“嵌入”。額外的權杖/嵌入通過神經層1110分別路徑到旋轉MLP頭1140和對比MLP頭1150,所述旋轉MLP頭1140和對比MLP頭1150輸出用於識別/區別圖像(塊)的特定特徵的相應值。變換器1100可以至少部分地包括圖9中所示的架構。
上文所述本領域的示例性變換器的更多細節可在以下地址找到:
只需要注意,Ashish Vaswani、Noam Shazeer、Niki Parmar、Jakob Uszkoreit、Llion Jones、Aidan N. Gomez、Lukasz Kaiser、Illia Polosukhin,https://arxiv.org/abs/1706.03762
BERT:語言理解的深度雙向變換器預訓練,Jacob Devlin Ming-Wei Chang Kenton Lee Kristina Toutanova,Google AI語言,https://arxiv.org/pdf/1810.04805.pdf/
圖像價值16×16字:比例圖像標識變換器,Alexey Dosovitskiy、Lucas Beyer、Alexander Kolesnikov等人,穀歌研究,大腦團,https://arxiv.org/pdf/2010.11929.pdf/
通過注意訓練資料高效的圖像變換器和蒸餾,Hugo Touvron、Matthieu Cord、Matthijs Douze等人,臉書AI,https://arxiv.org/pdf/2012.12877
深入使用圖像變換器。Hugo Touvron、Matthieu Cord、Alexandre Sablayrolles等人,臉書AI,https://arxiv.org/pdf/2103.17239
SiT:自監督視覺變換器,Sara Atito、Muhammad Awais、Josef Kittler,IEEE,https://arxiv.org/abs/2104.03602
本領域的上述變換器不利用關於待處理多少物體或待處理哪種特定類型的物體的資訊。與本領域相比,本發明提供了變換器的改進使用。根據本文提供的實施例的變換器1200的操作在圖12中示出。變換器1200的結構可以類似於上述任何變換器中的一個。變換器1200包括多個神經層(變換器層)1210、用於獲取輸入資料張量(信號輸入的張量表示)的線性投影層1220和用於對物件部分之間的位置關係進行編碼的位置編碼層1230。線性投影層1240將神經層1210中的最後一個輸出的結果轉換為物件空間。需要說明的是,在其他實施例中,例如,針對僅僅分類任務,沒有線性投影層1240是所需的比特,參考圖10和圖11所述提供了一些MLP頭(例如,用於提供類別輸出)。不言而喻,可以提供這樣的(例如,分類)頭和線性投影層1240。在圖12所示的實施例中,示出了影像處理。應理解,本實施例以及下文描述的其他實施例也涵蓋了其他物件(例如句子或音訊信號)的處理。
與本領域相反,輔助輸入用於通過基於變換器的神經網路處理物件,其中,輔助輸入取決於關於處理物件的資訊和/或關於待處理的物件(例如,圖像、文本或音訊信號)的屬性的資訊。該輔助輸入是可變的,因為它不是作為基於變換器的神經網路的訓練階段的結果固定的,而是與當前物件本身相關。例如,輔助輸入可以從為物件生成的碼流中獲取,該碼流包括關於如何處理物件(例如,如何解碼物件)的資訊。
所述至少一個輔助資料張量可以通過與應用于輸入資料張量的數學運算相同的神經層中的數學運算來處理。具體地,相同的權重可以應用於同一神經層中的所述至少一個輔助資料張量和所述輸入資料張量。輔助資料張量通過包括在變換器1200的神經層1210中的自注意層影響輸入資料張量的處理。
在影像處理的上下文中,輔助輸入的示例包括以下一個或多個:
內容、內容的類別/類型,例如,螢幕內容或通信、自然、體育等內容。
品質指示參數,例如,編碼器品質參數或β;
信號空間中的通道失真度量,例如,對於Y、U、V或R,G,B,為MSE、MSSIM或PSNR;
潛在空間中的通道失真度量,例如,(DCT)頻域中的更高或更低失真;
亮度、對比度、清晰度、色溫、銳度、飽和度、顏色長條圖;
陰影、亮度、暗角控制、繪畫風格;
不連續可變濾鏡強度、連續可變濾鏡強度(在某些最小值和某些最大值之間),例如,在具有捲軸控制的使用者應用程式中使用,例如,Photoshop、Instagram等,例如軟化、理想化、老化等;
幀內預測或幀間預測的指示;
物件替換應用的轉換率,例如在深度假應用中。
語言/文本處理的上下文中,輔助輸入的示例包括以下一個或多個:
內容、內容類別型,例如詩歌、小說、恐怖、偵探、文本、演講等;
溫度(神經網路的超參數,用於在應用softmax之前通過縮放最終線性層輸出的對數來控制預測的隨機性);
語言,例如英語、方言等;
情感,例如玩笑性、攻擊性、戲劇性等。
在音訊信號處理的上下文中,輔助輸入的示例包括以下一個或多個:
內容、內容類別型,例如經典、搖滾、流行、演講、音樂等;
品質指示參數,例如,編碼器品質參數;
信號空間中的通道失真度量;
潛在空間中的通道失真度量,例如,頻域中的度量;
等化器設置;
音量;
轉換率,例如,頻譜變化、語音變化等。
輔助輸入由投影單元1250轉換為一個或多個輔助資料張量(輔助輸入的張量表示)。投影單元1250可以用於將至少一個輔助輸入線性或非線性轉換為至少一個輔助資料張量而生成的。投影單元1250可以包括用於執行轉換的神經網路。
例如,當輔助輸入是標量時,就像品質參數QP一樣,通過A*QP+B獲取輔助資料張量,其中,A和B是由神經網路參數組成的張量。A和B的尺寸等於變換器模型,並與變換器模型的其他參數一樣預先訓練。在其他示例中,輔助資料張量可以非線性地依賴於QP。
輸入資料張量由變換器1200使用輔助輸入提供的資訊來處理。輔助資料張量可以添加到輸入資料張量中或與輸入資料張量級聯以進行處理。處理輸入資料張量所涉及的權重和啟動函數可以取決於一個或多個輔助資料張量。由於使用由輔助輸入提供的資訊,例如,就應用於輸出的一些品質度量(例如,更清晰的圖像、對比度更強的圖像、更準確的單詞翻譯、更低雜訊的音訊信號等)而言,變換器1200輸出的結果可以得到改進。
根據本文提供的另一個實施例的變換器1300的操作在圖13中示出。變換器1300的架構可以類似於圖12中所示的變換器1200。變換器1300包括多個神經層(變換器層)1310、用於獲取輸入資料張量(信號輸入的張量表示)的線性投影層1320和用於對物件部分之間的位置關係進行編碼的位置編碼層1330。線性投影層1340將神經層1310中的最後一個輸出的結果轉換為物件空間。
可以使用上述用於輔助輸入的示例中的一個或多個。輔助輸入由投影單元1350轉換為一個或多個輔助資料張量(輔助輸入的張量表示)。投影單元1350可以用於將至少一個輔助輸入線性或非線性轉換為至少一個輔助資料張量而生成的。投影單元1350可以包括用於執行轉換的神經網路。輸入資料張量由變換器1300使用輔助輸入提供的資訊來處理。然而,與參考圖12描述的實施例不同,在圖13所示的實施例中,一個或多個輔助資料張量在神經層1310的某個更高層次層而不是初始神經層被輸入。因此,輔助輸入對變換器1300輸出的影響可以靈活地控制。
根據本文提供的另一個實施例的變換器1400的操作在圖14中示出。變換器1400的架構可以類似於圖12中所示的變換器1200。變換器1400包括多個神經層(變換器層)1310、用於獲取輸入資料張量(信號輸入的張量表示)的線性投影層1420和用於對物件部分之間的位置關係進行編碼的位置編碼層1430。線性投影層1440將神經層1410中的最後一個輸出的結果轉換為物件空間。
可以使用上述用於輔助輸入的示例中的一個或多個。然而,與參考圖12和圖14描述的實施例不同,在本實施例中,輔助資料張量不是與輸入資料張量分開輸入,而是將一個或多個輔助資料張量和輸入資料張量的混合輸入到變換器1400中。投影單元1450從一個或多個輔助輸入獲取一個或多個輔助資料張量。投影單元1450可以用於將至少一個輔助輸入線性或非線性轉換為至少一個輔助資料張量而生成的。投影單元1450可以包括用於執行轉換的神經網路。張量的混合可以通過級聯獲取,並且混合張量被輸入到變換器1400的神經層1410中。因此,每個或一些輸入資料張量的處理可以單獨地受到至少一個輔助資料張量的影響。此外,處理混合張量比處理分別輸入到一個或多個神經層中的輸入資料張量和一個或多個輔助資料張量更容易。需要說明的是,一個或多個輔助資料張量可以另外或替代地與神經層1410中的一個神經層的一些輸出混合。
圖15的流程圖中示出了根據實施例的處理當前物件(例如圖像或句子或音訊信號)的方法。可以分別在圖12、圖13和圖14中所示的變換器1200、1300和1400中的一個中實現該方法。該方法包括將表示當前物件的輸入資料張量集輸入S152到基於變換器的神經網路的神經層中。此外,該方法包括將至少一個輔助資料張量輸入S154到基於變換器的神經網路的神經層(或者至少一個輔助資料張量輸入到同一神經層或不同的神經層)中,其中,所述至少一個輔助資料張量與輸入資料張量集中的每個輸入資料張量不同,並表示至少一個輔助輸入。此外,所述方法包括基於變換器的神經網路使用至少一個輔助資料張量處理S156輸入資料張量集,以獲取輸出資料張量集。輸入到神經層中的至少一個輔助資料張量取決於關於處理當前物件的資訊(由所述輔助輸入提供)。
可以使用上述用於輔助輸入的示例中的一個或多個。至少一個輔助資料張量可以與輸入資料張量分開輸入到神經層(參見圖12和13中所示的實施例),或者與它們中的至少一些混合(參見圖14中所示的實施例)。根據圖15中所示的方法的物件可以在神經網路推理期間或在神經網路訓練期間被處理。
圖16的流程圖中示出了一個實施例提供的通過神經網路推理處理當前物件(例如圖像或句子或音訊信號)的方法。可以分別在圖12、圖13和圖14中所示的變換器1200、1300和1400中的一個中實現該方法。圖16中示出的方法包括將表示當前物件的輸入資料張量集輸入S162到基於訓練後的變換器的神經網路的神經層中。此外,所述方法包括將至少一個輔助資料張量輸入S164到基於訓練後的變換器的神經網路的神經層中,其中,至少一個輔助資料張量與輸入資料張量集中的每個輸入資料張量不同,並表示至少一個輔助輸入。此外,所述方法包括基於訓練後的變換器的神經網路使用至少一個輔助資料張量處理S166輸入資料張量集,以獲取輸出資料張量集。輸入到所述神經層的所述至少一個輔助資料張量取決於關於所述當前物件的屬性(由輔助輸入提供)的資訊和關於處理所述當前物件的資訊(由輔助輸入提供)中的至少一個。
可以使用上述用於輔助輸入的示例中的一個或多個。至少一個輔助資料張量可以與輸入資料張量分開輸入到神經層(參見圖12和13中所示的實施例),或者與它們中的至少一些混合(參見圖14中所示的實施例)。
編碼圖像的方法或對經編碼圖像進行解碼的方法可以包括圖15和圖16中所示的方法中的至少一種。圖像增強方法或對圖像自動編碼方法可以包括圖15和圖16中所示的方法中的至少一種。
可以在包括處理電路的處理裝置中實現圖15和圖16所示的方法所述處理電路用於執行這些方法的步驟。具體地,圖15和圖16中所示的方法可以在圖17中所示的處理裝置170中實現。處理裝置170包括處理電路175。處理電路175包括一個或多個處理器176。一個或多個處理器176以資料通信連結與非暫態性電腦可讀儲存介質177耦合。非暫態性電腦可讀儲存介質177儲存由一個或多個處理器176執行的程式,其中,當一個或多個處理器176執行程式時,使得處理裝置170執行根據上述分別參考圖15和圖16描述的實施例的方法。
編碼或解碼設備可以包括處理裝置170。例如,用於對圖像(例如,靜止圖像或視頻序列的幀)進行編碼的編碼設備或用於對經編碼圖像(例如,靜止圖像或視頻序列的幀)進行解碼的解碼設備可以包括處理裝置170。自動編碼設備可以包括處理裝置170,自動編碼設備用於對圖像(例如,靜止圖像或視頻序列的幀)進行編碼。
圖15和圖16中所示的方法也可以在下面描述的設備和系統中實現。處理裝置170也可以包括在下面描述的設備和系統中。
硬體和軟體中的一些示例性實現方式
圖18為示例性譯碼系統的示意性框圖,例如可以利用本申請技術的視頻、圖像、音訊和/或其它譯碼系統(或簡稱為譯碼系統),尤其是基於變換器的神經網路,例如,圖12至圖14中任一附圖中示出的基於變換器的神經網路。視頻譯碼系統10的視訊編碼器20(或簡稱為編碼器20)和視頻解碼器30(或簡稱為解碼器30)表示可用於根據本申請中描述的各種示例執行各技術的設備示例。例如,視頻編碼和解碼可以使用基於變換器的神經網路,例如,如圖12至圖14中任一附圖所示的基於變換器的神經網路,以及可選的神經網路,如圖1至圖6中任一附圖所示的神經網路,所述神經網路可以是分散式的,並且可以應用上述碼流解析和/或碼流生成以在分散式運算節點(兩個或超過兩個)之間傳送特徵映射。
如圖18所示,譯碼系統10包括源設備12,例如,所述源設備12用於將經編碼圖像資料21提供到目的地設備14以對經編碼圖像資料13進行解碼。
源設備12包括編碼器20,另外即可選地,可包括圖像源16、圖像前置處理器18等前置處理器(或預處理單元)18、通信介面或通信單元22。
圖像源16可以包括或可以是任何類型的圖像擷取裝置,例如用於捕獲真實世界圖像的攝像機,和/或任何類型的圖像生成設備,例如用於生成電腦動畫圖像的電腦圖形處理器,或用於獲取和/或提供真實世界圖像、電腦生成圖像(例如,螢幕內容、虛擬實境(virtual reality,VR)圖像)和/或其任何組合(例如,增強現實(augmented reality,AR)圖像)的任何類型的其它設備。所述圖像源可以為儲存任一上述圖像的任何類型的記憶體(memory/storage)。
區別於前置處理器18和預處理單元18執行的處理,圖像或圖像資料17也可以稱為原始圖像或原始圖像資料17。
前置處理器18用於接收(原始)圖像資料17,對圖像資料17進行預處理,以獲得預處理圖像19或預處理圖像資料19。前置處理器18執行的預處理可包括修剪(trimming)、顏色格式轉換(例如從RGB轉換為YCbCr)、顏色校正或去噪等。應理解,預處理單元18可以是可選元件。需要說明的是,預處理還可以利用使用存在指示信令的神經網路(例如,圖12至14中任何一個圖所示的基於變換器的神經網路,以及可選地,圖1至圖7中任何一個圖所示的神經網路)。
視訊編碼器20用於接收預處理圖像資料19並提供經編碼圖像資料21。
源設備12中的通信介面22可用於:接收經編碼圖像資料21並通過通信通道13向目的地設備14等另一設備或任何其它設備發送經編碼圖像資料21(或其它任何處理後的版本),以便儲存或直接重建。
目的地設備14包括解碼器30(例如,視頻解碼器30),另外即可選地,可包括通信介面或通信單元28、後處理器32(或後處理單元32)和顯示裝置34。
目的地設備14中的通信介面28用於直接從源設備12或從存放裝置等任何其它源設備接收經編碼圖像資料21(或其它任何處理後的版本),例如,存放裝置為經編碼圖像資料存放裝置,並將經編碼圖像資料21提供給解碼器30。
通信介面22和通信介面28可以用於通過源設備12與目的地設備14之間的直接通信鏈路(例如,直接有線或無線連接),或通過任何類型的網路(例如,有線或無線網路或其任何組合,或任何類型的專用和公共網路),或其任何組合發送或接收經編碼圖像資料21或經編碼資料13。
例如,通信介面22可用於將經編碼圖像資料21封裝為報文等合適的格式,和/或使用任何類型的傳輸編碼或處理來處理經編碼圖像資料,以便在通信鏈路或通信網路上進行傳輸。
例如,與通信介面22對應的通信介面28可用於接收發送的資料,並使用任何類型的對應傳輸解碼或處理和/或解封裝對發送的資料進行處理,以獲得經編碼圖像資料21。
通信介面22和通信介面28均可配置為圖18中從源設備12指向目的地設備14的通信通道13的箭頭所表示的單向通信介面,或者配置為雙向通信介面,並且可以用於發送和接收消息等,以建立連接、確認並交換與通信鏈路和/或資料傳輸(例如經編碼的圖像資料傳輸)相關的任何其它資訊等。解碼器30用於接收經編碼圖像資料21並提供經解碼圖像資料31或經解碼圖像31(例如,採用圖12至14中任何一個圖所示的基於變換器的神經網路,以及可選地基於圖1至7中所示的一個或多個神經網路)。
目的地設備14的後處理器32用於對經解碼圖像資料31(也稱為經重建圖像資料)(例如,經解碼圖像31)進行後處理,以獲取後處理圖像資料33(例如,後處理圖像33)。後處理單元32執行的後處理可以包括顏色格式轉換(例如從YCbCr轉換為RGB)、調色、修剪或重採樣,或者任何其它處理,以便提供經解碼圖像資料31由顯示裝置34等顯示,等等。
目的地設備14中的顯示裝置34用於接收後處理圖像資料33,以向使用者或觀看者等顯示圖像。顯示裝置34可以是或可以包括任何類型的用於表示經重建圖像的顯示器,例如集成或外部顯示器或顯示幕。例如,顯示器可以包括液晶顯示器(liquid crystal display,LCD)、有機發光二極體(organic light emitting diode,OLED)顯示器、等離子顯示器、投影儀、微型LED顯示器、矽基液晶顯示器(liquid crystal on silicon,LCoS)、數位光處理器(digital light processor,DLP)或任何類型的其它顯示器。
儘管圖18將源設備12和目的地設備14描繪為單獨的設備,但是設備的實施例也可以包括源設備12和目的地設備14或同時包括源設備12的對應功能和目的地設備14的對應功能。在這些實施例中,源設備12或對應功能以及目的地設備14或對應功能可以使用相同的硬體和/或軟體或通過單獨的硬體和/或軟體或其任意組合來實現。
根據所述描述,技術人員將清楚地看到,如圖18所示的源設備12和/或目的地設備14中的不同單元或功能的存在和(精確)劃分可以根據實際設備和應用而變化。
編碼器20(例如視訊編碼器20)或解碼器30(例如視頻解碼器30)或者或編碼器20和解碼器30兩者可以通過處理電路來實現,例如一個或多個微處理器、一個或多個數位訊號處理器(digital signal processor,DSP)、一個或多個專用積體電路(application-specific integrated circuit,ASIC)、一個或多個現場可程式設計閘陣列(field-programmable gate array,FPGA)、一個或多個離散邏輯、一個或多個硬體、一個或多個視頻解碼專用處理器或其任意組合。編碼器20可以通過處理電路46實現,以體現包括如圖12到圖14中任何一個圖所示的基於變換器的神經網路以及可選的神經網路(例如圖1至圖6中任何一個圖或其部分所示的神經網路)的各種模組。解碼器30可以由處理電路46實現,以體現結合圖1至圖7所述的各種模組和/或本文描述的任何其它解碼器系統或子系統。處理電路46可以用於執行包括本文提供的方法在內的各種操作。當所述技術部分地以軟體形式實現時,設備可將軟體的指令儲存在合適的非暫態性電腦可讀儲存介質中,並且可以使用一個或多個處理器以硬體形式執行所述指令,以執行本發明的技術。視訊編碼器20或視頻解碼器30可作為組合編碼器/解碼器(編碼器)的一部分集成在單個設備中,如圖19所示。
源設備12和目的地設備14可以包括多種設備中的任一種,包括任何類型的手持或固定設備,例如,筆記型電腦或膝上型電腦、手機、智慧手機、平板電腦(tablet/tablet computer)、攝像機、臺式電腦、機上盒、電視機、顯示裝置、數位媒體播放機、視頻遊戲機、視頻流設備(如內容服務伺服器或內容分佈伺服器)、廣播接收器設備、廣播發射器設備等,並且可以不使用或使用任何類型的作業系統。在一些情況下,源設備12和目的地設備14可配備用於無線通訊的組件。因此,源設備12和目的地設備14可以是無線通訊設備。
在一些情況下,圖18所示的視頻譯碼系統10僅僅是示例性的,本申請提供的技術可適用於視頻解碼設置(例如,視頻編碼或視頻解碼),這些設置不一定包括編碼設備與解碼設備之間的任何資料通信。在其它示例中,資料從本機存放區器中檢索,通過網路發送,等等。視頻編碼設備可以對資料進行編碼並將資料儲存到記憶體中,和/或視頻解碼設備可以從記憶體中檢索資料並對資料進行解碼。在一些示例中,編碼和解碼由相互不通信而只是將資料編碼到記憶體和/或從記憶體中檢索資料並對資料進行解碼的設備來執行。
圖20為本發明實施例提供的視頻解碼設備2000的示意圖。視頻解碼設備2000適用于實現本文描述的公開實施例。在一個實施例中,視頻解碼設備2000可以是解碼器(如圖18的視頻解碼器30)或編碼器(如圖18的視訊編碼器20)。
視頻解碼設備2000包括用於接收資料的輸入埠2010和接收單元(receiver unit,Rx)2020,用於處理資料的處理器、邏輯單元或中央處理單元(central processing unit,CPU)2030,用於發送資料的發送單元(transmitter unit,Tx)2040和出埠(即輸出埠2050)以及用於儲存資料的記憶體2060。視頻解碼設備2000還可包括耦合到輸入埠2010、接收單元2020、發送單元2040和輸出埠2050的光電(optical-to-electrical,OE)組件和電光(electrical-to-optical,EO)元件,用於光信號或電信號的出口或入口。
處理器2030通過硬體和軟體實現。處理器2030可實現為一個或多個CPU晶片、核(例如,多核處理器)、FPGA、ASIC和DSP。處理器2030與輸入埠2010、接收單元2020、發送單元2040、輸出埠2050和記憶體2060通信。處理器2030包括解碼模組2070。解碼模組2070實現上文所公開的實施例。例如,解碼模組2070執行、處理、準備或提供各種解碼操作。因此,通過解碼模組2070為視頻解碼設備2000的功能提供了實質性的改進,並且影響了視頻解碼設備2000到不同狀態的切換。或者,以儲存在記憶體2060中並由處理器2030執行的指令來實現解碼模組2070。
記憶體2060可以包括一個或多個磁片、磁帶機和固態硬碟,可以用作溢出資料存放裝置,用於在選擇執行程式時儲存這些程式,並且儲存在程式執行過程中讀取的指令和資料。例如,記憶體2060可以是易失性和/或非易失性的,並且可以是唯讀記憶體(read-only memory,ROM)、隨機存取記憶體(random access memory,RAM)、三態內容定址記憶體(ternary content-addressable memory,TCAM)和/或靜態隨機存取記憶體(static random-access memory,SRAM)。
圖21為示例性實施例提供的裝置2100的簡化框圖,所述裝置2100可用作圖18中的源設備12和目的地設備14中的任一個或兩個。
裝置2100中的處理器2102可以是中央處理器。或者,處理器2102可以是現有的或今後將研發出的能夠操控或處理資訊的任何其它類型的設備或多個設備。雖然可以使用如圖所示的處理器2102等單個處理器來實現所公開的實現方式,但使用一個以上的處理器可以提高速度和效率。
在一種實現方式中,裝置2100中的記憶體2104可以是唯讀記憶體(read only memory,ROM)設備或隨機存取記憶體(random access memory,RAM)設備。任何其它合適類型的存放裝置都可以用作記憶體2104。記憶體2104可以包括處理器2102通過匯流排2112訪問的代碼和資料2106。記憶體2104還可包括作業系統2108和應用程式2110,應用程式2110包括使得處理器2102執行本文所述方法的至少一個程式。例如,應用程式2110可以包括應用1至N,還包括執行本文所述方法的視頻解碼應用。
裝置2100還可以包括一個或多個輸出設備,例如顯示器2118。在一個示例中,顯示器2118可以是將顯示器與可用於感測觸摸輸入的觸敏元件組合的觸敏顯示器。顯示器2118可以通過匯流排2112耦合到處理器2102。
雖然裝置2100中的匯流排2112在本文中描述為單個匯流排,但是匯流排2112可以包括多個匯流排。此外,次要存放裝置可以直接與裝置2100的其它元件耦合或可以通過網路訪問,並且可以包括單個集成單元(例如一個儲存卡)或多個單元(例如多個儲存卡)。因此,裝置2100可以具有各種各樣的配置。
此外,圖25中所示的處理裝置250可以包括圖18所示的源設備12或目的地設備14、圖19所示的視頻編碼系統40、圖20所示的視頻編碼設備2000或圖21所示的裝置2100。
1250:投影單元
71:編碼器
72:超編碼器
73:超解碼器
74:解碼器
800:變換器
810:神經層
820:線性投影層
830:位置編碼層
840:線性反向投影層
1000:變換器
1010:神經層
1020:線性投影層
1030:位置編碼層
1040:多層感知器頭
1100:變換器
1110:神經層
1120:線性投影層
1130:位置編碼層
1140:旋轉MLP頭
1150:對比MLP頭
1200:變換器
1210:神經層
1220:線性投影層
1230:位置編碼層
1240:線性投影層
1300:變換器
1310:神經層
1320:線性投影層
1330:位置編碼層
1340:線性投影層
1350:投影單元
1400:變換器
1410:神經層
1420:線性投影層
1430:位置編碼層
1440:線性投影層
1450:投影單元
S152、S154、S156、S162、S164、S166:步驟
170:處理裝置
175:處理電路
176:處理器
177:非暫態性電腦可讀儲存介質
10:視頻譯碼系統
12:源設備
13:通信通道
14:目的地設備
16:圖像源
17:原始圖像資料
18:前置處理器
19:預處理圖像
20:編碼器
21:經編碼圖像資料
22:通信介面
30:解碼器
31:經解碼圖像資料
32:處理器
33:後處理圖像
34:顯示裝置
40:視頻編碼系統
41:成像設備
42:天線
43:處理器
44:儲存單元
45:顯示設備
46:處理電路
2000:視頻解碼設備
2010:輸入埠
2020:接收單元
2030:處理器
2040:發送單元
2050:輸出埠
2060:記憶體
2070:解碼模組
2100:裝置
2102:處理器
2104:記憶體
2106:資料
2108:作業系統
2110:應用程式
2112:匯流排
2118:顯示器
下文參考以下附圖詳細描述本發明的技術背景和實施例,其中:
圖1為由神經網路的層處理的通道的示意圖。
圖2為神經網路的自動編碼器類型的示意圖。
圖3為包括超先驗模型的網路架構的示意圖。
圖4為用於機器視覺任務的基於機器的任務的基於雲的技術方案的結構的框圖。
圖5為端到端可訓練視訊壓縮框架的結構的框圖。
圖6為用於運動向量壓縮的網路的框圖。
圖7為本領域的學習圖像壓縮配置的框圖。
圖8為本領域的變換器架構。
圖9更詳細地示出了圖8中所示的變換器架構的變換器層。
圖10示出了本領域的採用類別權杖的另一種變換器架構。
圖11示出了本領域的採用旋轉和對比權杖的另一種變換器架構。
圖12示出了根據本發明實施例操作的變換。
圖13示出了根據本發明另一個實施例操作的變換器。
圖14示出了根據本發明另一個實施例操作的變換器。
圖15為本發明實施例提供的處理物件的方法的流程圖。
圖16為本發明另一個實施例提供的處理物件的方法的流程圖。
圖17示出了本發明實施例提供的用於執行處理物件的方法的處理裝置。
圖18為用於實現本發明實施例的視頻編碼系統的示例的框圖。
圖19為用於實現本發明實施例的視頻譯碼系統的另一示例的框圖。
圖20為用於實現本發明實施例的編碼裝置或解碼裝置的示例的框圖。
圖21為用於實現本發明實施例的編碼裝置或解碼裝置的另一示例的框圖。
1200:變換器
1210:神經層
1220:線性投影層
1230:位置編碼層
1240:線性投影層
1250:投影單元
Claims (50)
- 一種處理當前物件的方法,包括: 將表示所述當前物件的輸入資料張量集輸入(S152)到基於變換器的神經網路的神經層中; 將至少一個輔助資料張量輸入(S154)到所述基於變換器的神經網路的神經層中,其中,所述至少一個輔助資料張量與所述輸入資料張量集中的每個輸入資料張量不同,並表示至少一個輔助輸入; 所述基於變換器的神經網路使用所述至少一個輔助資料張量處理(S156)所述輸入資料張量集,以獲取輸出資料張量集, 其中,所述輸入至少一個輔助資料張量取決於關於處理所述當前物件的資訊。
- 如請求項1所述的方法,其中所述當前物件在神經網路推理期間被處理。
- 如請求項11所述的方法,其中所述當前物件在神經網路訓練期間被處理。
- 如請求項1~3中任一項所述的方法,其特徵在於,所述輸入資料張量集與所述至少一個輔助資料張量(S154)分開輸入(S152)。
- 如請求項1所述的方法,其中所述輸入資料張量集被輸入(S152)到所述基於變換器的神經網路的第一神經層中,並且所述至少一個輔助資料張量被輸入(S154)到所述基於變換器的神經網路的第二神經層中,其中,所述第二神經層與所述第一層不同。
- 如請求項1所述的方法,其中輸入(S152)所述輸入資料張量集和所述至少一個輔助資料張量(S154)包括: 生成不同混合輸入張量集,其中,所述不同混合輸入張量集中的每個混合輸入張量包括所述至少一個輔助資料張量和所述輸入資料張量集中的一個輸入資料張量中的至少一個; 將所述混合輸入張量集輸入到所述基於變換器的神經網路的所述神經層中。
- 如請求項1中任一項所述的方法,其中還包括通過以下方式之一生成所述至少一個輔助資料張量: 將所述至少一個輔助輸入線性轉換為所述至少一個輔助資料張量; 將所述至少一個輔助輸入非線性轉換為所述至少一個輔助資料張量; 通過另一神經網路將所述至少一個輔助輸入轉換為所述至少一個輔助資料張量。
- 如請求項1所述的方法,其中所述關於處理所述當前物件的資訊是關於在連續參數範圍內處理所述當前物件的資訊。
- 如請求項1所述的方法,其中還包括從為所述物件生成的碼流中獲取關於處理所述當前物件的資訊。
- 如請求項1所述的方法,其中所述當前物件包括圖像或圖像的一部分。
- 如請求項10所述的方法,其中所述圖像為視頻序列的幀。
- 如請求項10所述的方法,其中所述至少一個輔助輸入選自包括以下各者的組: 品質指示參數; 信號空間中的通道失真度量; 潛在空間中的通道失真度量; 亮度、對比度、清晰度、色溫、銳度、飽和度、顏色長條圖; 陰影、亮度、暗角控制、繪畫風格; 不連續可變濾波器強度、連續可變濾波器強度; 幀內預測或幀間預測的指示; 物件替換應用的轉換率。
- 一種對圖像進行編碼的方法,包括如請求項10~12中任一項所述的方法的步驟。
- 一種對經編碼圖像進行解碼的方法,其中包括如請求項10所述的方法的步驟。
- 一種視頻編碼方法,其中包括如請求項13或請求項14所述的方法的步驟,其中,所述基於變換器的神經網路包括在環內濾波器中。
- 一種圖像增強方法,其中包括如請求項10所述的方法的步骤。
- 如請求項1所述的方法,其中所述當前物件包括一個或多個句子。
- 如請求項17所述的方法,其中所述至少一個輔助輸入選自包括溫度、語言和情感的組。
- 如請求項1所述的方法,其中所述當前物件包括音訊信號。
- 如請求項19所述的方法,其中所述至少一個輔助輸入選自包括以下各者的組: 品質指示參數; 信號空間中的通道失真度量; 任一潛在空間中的通道失真度量; 等化器設置; 音量; 轉換率。
- 一種對聲音信號進行編碼的方法,其中包括如請求項19或請求項20所述的方法的步驟。
- 一種對經編碼聲音信號進行解碼的方法,其中包括如請求項19或請求項20所述的方法的步驟。
- 一種通過神經網路推理處理當前物件的方法,其中包括: 將表示所述當前物件的輸入資料張量集輸入(S162)到基於訓練後的變換器的神經網路的神經層中; 將至少一個輔助資料張量輸入(S164)到所述基於訓練後的變換器的神經網路的神經層中,其中,所述至少一個輔助資料張量與所述輸入資料張量集中的每個輸入資料張量不同,並表示至少一個輔助輸入; 所述基於訓練後的變換器的神經網路使用所述至少一個輔助資料張量處理(S166)所述輸入資料張量集,以獲取輸出資料張量集, 其中, 所述輸入至少一個輔助資料張量取決於關於所述當前物件的屬性的資訊和關於處理所述當前物件的資訊中的至少一個。
- 如請求項23所述的方法,其中所述輸入資料張量集與所述至少一個輔助資料張量(S164)分開輸入(S162)。
- 如請求項23或請求項24所述的方法,其中所述輸入資料張量集被輸入(S162)到所述基於訓練後的變換器的神經網路的第一神經層中,並且所述至少一個輔助資料張量被輸入(S162)到所述基於訓練後的變換器的神經網路的第二神經層中,其中,所述第二神經層與所述第一層不同。
- 如請求項23所述的方法,其中輸入(S162)所述輸入資料張量集和所述至少一個輔助資料張量(S164)包括: 生成不同混合輸入張量集,其中,所述不同混合輸入張量集中的每個混合輸入張量包括所述至少一個輔助資料張量和所述輸入資料張量集中的一個輸入資料張量中的至少一個; 將所述混合輸入張量集輸入到所述基於訓練後的變換器的神經網路的所述神經層中。
- 如請求項23所述的方法,其中還包括通過以下方式之一生成所述至少一個輔助資料張量: 將所述至少一個輔助輸入線性轉換為所述至少一個輔助資料張量; 將所述至少一個輔助輸入非線性轉換為所述至少一個輔助資料張量; 通過另一神經網路將所述至少一個輔助輸入轉換為所述至少一個輔助資料張量。
- 如請求項23所述的方法,其中關於所述當前物件的屬性的資訊和關於處理所述當前物件的資訊中的至少一個是關於在連續參數範圍內處理所述當前物件的資訊。
- 如請求項23所述的方法,其中還包括從為所述物件生成的碼流中獲取關於所述當前物件的屬性的資訊和關於處理所述當前物件的資訊中的至少一個。
- 如請求項23所述的方法,其中所述當前物件包括圖像或圖像的一部分。
- 如請求項30所述的方法,其中所述圖像為視頻序列的幀。
- 如請求項30或請求項31所述的方法,其中所述至少一個輔助輸入選自包括以下各者的組: 內容,內容類別型; 品質指示參數; 信號空間中的通道失真度量; 潛在空間中的通道失真度量; 亮度、對比度、清晰度、色溫、銳度、飽和度、顏色長條圖; 陰影、亮度、暗角控制、繪畫風格; 不連續可變濾波器強度、連續可變濾波器強度; 幀內預測或幀間預測的指示; 物件替換應用的轉換率。
- 一種對圖像進行編碼的方法,其中包括如請求項30所述的方法的步驟。
- 一種對經編碼圖像進行解碼的方法,其中包括如請求項30所述的方法的步驟。
- 一種圖像壓縮方法,其中包括如請求項30所述的方法的步驟。
- 一種視訊壓縮方法,其中包括如請求項30所述的方法的步驟。
- 一種對圖像進行自動編碼的方法,其中包括如請求項33或34所述的方法的步驟。
- 一種視頻編碼方法,其中包括如請求項30所述的方法的步驟,其中,所述基於訓練後的變換器的神經網路包括在環內濾波器中。
- 一種圖像增強方法,包括如請求項30所述的方法的步驟。
- 如請求項23所述的方法,其中所述當前物件包括一個或多個句子。
- 如請求項40所述的方法,其中所述至少一個輔助輸入選自包括內容、內容類別型、溫度、語言和情感的組。
- 如請求項23所述的方法,其中所述當前物件包括音訊信號。
- 如請求項42所述的方法,其中所述至少一個輔助輸入選自包括以下各者的組: 內容,內容類別型; 品質指示參數; 信號空間中的通道失真度量; 任一潛在空間中的通道失真度量; 等化器設置; 音量; 轉換率。
- 一種對聲音信號進行編碼的方法,其中包括如請求項42所述的方法的步驟。
- 一種對經編碼聲音信號進行解碼的方法,其中包括如請求項42所述的方法的步驟。
- 一種儲存在非暫態性介質中的電腦程式,其中所述電腦程式包括代碼,當所述代碼在一個或多個處理器上執行時,所述代碼執行根據上述權利要求中任一項所述的方法的步驟。
- 一種處理裝置(170),包括: 一個或多個處理器(176); 非暫態性電腦可讀儲存介質(177),耦合至所述一個或多個處理器(176),並儲存由所述一個或多個處理器(176)執行的程式,其中,當所述一個或多個處理器(176)執行所述程式時,使得所述處理裝置(170)執行如請求項1所述的方法。
- 一種解碼設備,用於對經編碼圖像進行解碼,並包括如請求項47所述的裝置(170)。
- 一種編碼設備,用於對圖像進行編碼,並包括如請求項47所述的裝置(170)。
- 一種自動編碼設備,用於對圖像進行編碼,並包括如請求項48所述的裝置(170)。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
WOPCT/RU2021/000569 | 2021-12-15 | ||
PCT/RU2021/000569 WO2023113635A1 (en) | 2021-12-15 | 2021-12-15 | Transformer based neural network using variable auxiliary input |
Publications (1)
Publication Number | Publication Date |
---|---|
TW202326594A true TW202326594A (zh) | 2023-07-01 |
Family
ID=81326755
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW111148084A TW202326594A (zh) | 2021-12-15 | 2022-12-14 | 使用可變輔助輸入的基於變換器的神經網路 |
Country Status (5)
Country | Link |
---|---|
EP (1) | EP4413501A1 (zh) |
KR (1) | KR20240071400A (zh) |
CN (1) | CN118451424A (zh) |
TW (1) | TW202326594A (zh) |
WO (1) | WO2023113635A1 (zh) |
-
2021
- 2021-12-15 KR KR1020247013224A patent/KR20240071400A/ko unknown
- 2021-12-15 CN CN202180105033.0A patent/CN118451424A/zh active Pending
- 2021-12-15 EP EP21878742.2A patent/EP4413501A1/en active Pending
- 2021-12-15 WO PCT/RU2021/000569 patent/WO2023113635A1/en active Application Filing
-
2022
- 2022-12-14 TW TW111148084A patent/TW202326594A/zh unknown
Also Published As
Publication number | Publication date |
---|---|
EP4413501A1 (en) | 2024-08-14 |
KR20240071400A (ko) | 2024-05-22 |
CN118451424A (zh) | 2024-08-06 |
WO2023113635A1 (en) | 2023-06-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI830107B (zh) | 通過指示特徵圖資料進行編碼 | |
TWI806199B (zh) | 特徵圖資訊的指示方法,設備以及電腦程式 | |
US20230336776A1 (en) | Method for chroma subsampled formats handling in machine-learning-based picture coding | |
US20240296593A1 (en) | Conditional Image Compression | |
EP4193595A1 (en) | Method for chroma subsampled formats handling in machine-learning-based picture coding | |
TW202348029A (zh) | 使用限幅輸入數據操作神經網路 | |
WO2024005660A1 (en) | Method and apparatus for image encoding and decoding | |
EP4423721A1 (en) | Spatial frequency transform based image modification using inter-channel correlation information | |
WO2023177318A1 (en) | Neural network with approximated activation function | |
EP4388738A1 (en) | Attention based context modelling for image and video compression | |
TW202326594A (zh) | 使用可變輔助輸入的基於變換器的神經網路 | |
TWI850806B (zh) | 基於注意力的圖像和視訊壓縮上下文建模 | |
WO2024217530A1 (en) | Method and apparatus for image encoding and decoding | |
US20240348783A1 (en) | Methods and apparatus for approximating a cumulative distribution function for use in entropy coding or decoding data | |
WO2024083405A1 (en) | Neural network with a variable number of channels and method of operating the same | |
TW202345034A (zh) | 使用條件權重操作神經網路 | |
WO2024005659A1 (en) | Adaptive selection of entropy coding parameters | |
CN118872266A (zh) | 基于多模态处理的视频译码方法 | |
CN118871924A (zh) | 使用条件权重操作神经网络 |