WO2021157062A1 - 量子化ビット数拡張のための学習装置、信号推定装置、学習方法、信号推定方法、およびプログラム - Google Patents

量子化ビット数拡張のための学習装置、信号推定装置、学習方法、信号推定方法、およびプログラム Download PDF

Info

Publication number
WO2021157062A1
WO2021157062A1 PCT/JP2020/004866 JP2020004866W WO2021157062A1 WO 2021157062 A1 WO2021157062 A1 WO 2021157062A1 JP 2020004866 W JP2020004866 W JP 2020004866W WO 2021157062 A1 WO2021157062 A1 WO 2021157062A1
Authority
WO
WIPO (PCT)
Prior art keywords
signal
input
bit
output
quantization
Prior art date
Application number
PCT/JP2020/004866
Other languages
English (en)
French (fr)
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 日本電信電話株式会社
Priority to JP2021575558A priority Critical patent/JPWO2021157062A1/ja
Priority to PCT/JP2020/004866 priority patent/WO2021157062A1/ja
Priority to US17/797,686 priority patent/US20230153603A1/en
Publication of WO2021157062A1 publication Critical patent/WO2021157062A1/ja

Links

Images

Classifications

    • 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
    • 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/0464Convolutional networks [CNN, ConvNet]
    • 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/0495Quantised networks; Sparse networks; Compressed 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

Definitions

  • the present invention relates to a technique for obtaining a quantization signal obtained by expanding the number of quantization bits from the quantization signal.
  • the analog signal from the sensor is quantized (digitized) by A / D conversion and taken into a computer for processing.
  • various sensor signals are often quantized in 10 to 16 bits.
  • the music signal is quantized to 16 bits.
  • Patent Document 1 an FIR or IIR filter is applied to the upper bit waveform to estimate the lower bit signal of the digital signal in which the number of quantization bits is expanded.
  • Patent Document 2 in a section where the same amplitude value continues, an intermediate time is determined based on the ratio of the amplitude value change widths before and after the interval, and the interval between the amplitude value assumed at the intermediate time and the amplitude values at both ends of the section is set between three points. Spline complement. The obtained real amplitude value is rounded off and quantized to obtain the low-order bit value.
  • the linear prediction coefficient is obtained from the high-order bit signal by the Burg method.
  • a low-order bit signal whose initial value is randomly determined is generated and added to the high-order bit signal to obtain an initial prediction signal.
  • a prediction error signal is obtained from the initial prediction signal, and the optimum arrangement of the bit values of the lower bit signal is searched and obtained by simulated annealing so that the prediction error signal is minimized.
  • the present invention has been made in view of such a point, and an object of the present invention is to reflect the fine information of the original signal and to expand the number of quantization bits with high accuracy.
  • Learning that includes a low-bit signal obtained by quantizing a signal with the number of first quantization bits and a high-bit signal obtained by quantizing the signal with a second quantization bit number larger than the first quantization bits.
  • the low-bit input signal obtained by quantizing the input signal with the first quantization bit number is used as the input
  • the estimated signal of the high-bit output signal obtained by quantizing the input signal with the second quantization bit number is used.
  • Learn the output neural network This neural network has a multi-layer structure including an input layer and an output layer, and is obtained by adding a signal output from the output layer when a low-bit input signal is input to the input layer and a low-bit input signal. It obtains and outputs an estimated signal of a high-bit output signal.
  • FIG. 1A is a block diagram illustrating the learning device of the embodiment.
  • FIG. 1B is a block diagram illustrating the signal estimation device of the embodiment.
  • FIG. 2 is a block diagram for exemplifying the neural network of the embodiment.
  • FIG. 3 is a block diagram for exemplifying the neural network of the embodiment.
  • FIG. 4 is a block diagram for exemplifying the neural network of the embodiment.
  • FIG. 5 is a block diagram for exemplifying the neural network of the embodiment.
  • FIG. 6 is a block diagram for exemplifying the hardware configuration of the embodiment.
  • a method of estimating the information of the lower bits dropped during the quantization from the quantized signal by the neural network is illustrated.
  • the neural network is trained using signals before and after low-bit quantization, that is, signals quantized with a low number of bits and a high number of bits as training data.
  • the high-bit quantized signal in the training data is used for learning the neural network, the fine information of the original input signal is utilized.
  • a gated neural network such as a gated convolutional neural network (Gated CNN) (Reference 1) is used.
  • the training data including the high bit signal obtained by quantization with the number of quantization bits (high number of bits) and the low bit input signal obtained by quantizing the input signal with the number of first quantization bits as the input. Learn a neural network that outputs an estimated signal of a high-bit output signal obtained by quantization with the second quantization bit number.
  • the neural network to be learned has a multi-layer structure including an input layer and an output layer, and a signal output from the output layer when a low-bit input signal is input to the input layer and a low-bit input signal are added.
  • the estimated signal of the high-bit output signal obtained is obtained and output.
  • the learning device 11 of the first embodiment has a storage unit 11a and a learning unit 11b.
  • the signal estimation device 12 of the first embodiment has a storage unit 12a and a model application unit 12b.
  • FIG. 2 illustrates the neural network 100 of the present embodiment that estimates the information of the lower bits dropped during quantization.
  • the neural network 100 takes a low-bit input signal x of a frame (section) composed of a signal L sample obtained by quantization of an input signal with a low number of bits as an input, and quantizes the input signal with a target high number of bits.
  • the estimated signal y ⁇ of the high-bit output signal of the frame composed of the signal L sample obtained is output.
  • the input signal x is, for example, a time-series signal, and is, for example, a time-series acoustic signal.
  • the input signal x may be an acoustic signal in the time domain or an acoustic signal in the time frequency domain.
  • L is a positive integer, for example, L is a value of several hundreds to 1000 or around it.
  • x and y ⁇ are, for example, L-dimensional vectors. Further, as illustrated in FIG. 2, the superscript " ⁇ " of "y ⁇ " should be described directly above "y", but due to the limitation of the description notation, it is like "y ⁇ ". In some cases, " ⁇ " is written in the upper right corner of "y". The same applies to other characters and superscripts.
  • the neural network 100 has a multi-layer structure including an input layer 110-1 and an output layer 110-3, and when a low-bit input signal x is input to the input layer 110-1, the output layer 110 Signal output from -3
  • the estimated signal y ⁇ z ⁇ + x of the high bit output signal obtained by adding the signal z ⁇ of the frame consisting of the L sample and the low bit input signal x is obtained and output.
  • Is. z ⁇ is, for example, an L-dimensional vector.
  • a predetermined time interval of a low-bit time-series signal is set as a frame, and the low-bit input signal x of each frame is taken out and input to the neural network 100 while shifting the frame by 1/2 shift or 1/4 shift.
  • z ⁇ + x is obtained, and the estimated signal y ⁇ is subjected to a window function and synthesized.
  • the multi-layer structure of the neural network 100 illustrated in FIG. 2 is a three-layer structure of an input layer 110-1, a hidden layer 110-2, and an output layer 110-3, but even if it is a one-layer structure or a two-layer structure. It may have a structure of four or more layers. In the case of a one-layer structure, the input layer also serves as an output layer.
  • the input layer 110-1, the hidden layer 110-2, and the output layer 110-3 may be simply referred to as layers 110-1, 110-2, 110-3, respectively. That is, the multilayer structure includes N layers 110-1, ..., 110-N. However, N is an integer of 1 or more.
  • x'and y' are, for example, L-dimensional vectors.
  • the signal z ⁇ output from the output layer 110-3 when the low bit input signal x is input to the input layer 110-1 and the low bit input signal x are added to obtain the signal z ⁇ .
  • the learning range is limited by this skip connection structure, and the estimation accuracy of the neural network 100 obtained by learning is improved.
  • each layer 110-i applies a convolutional linear conversion process W to the input X, and further applies an activation function ⁇ to obtain an output h (X).
  • the filter length of the convolution linear conversion process W is 3 to several tens of taps.
  • the number of feature vectors, that is, the number of channels, can be increased by increasing the types of filters.
  • the output h (X) of the layer 110-i composed of the CNN with respect to the input X is expressed by the following equation (1).
  • h (X) ⁇ (X * W + b) (1)
  • * is a convolution operator.
  • a function that outputs positive and negative values for example, tanh function (hyperbolic tangential function, Tangent Hyperbolic Function)
  • tanh function hyperbolic tangential function, Tangent Hyperbolic Function
  • the output h (X) is expressed by the following equation (2).
  • is an activation function
  • V is a convolutional linear transformation process
  • b and c are constant vectors.
  • the input / output size of V is the same as that of W.
  • the filter length of the convolution linear conversion process V is 3 to several tens of taps.
  • FIG. 3 illustrates layer 110-i composed of Gated CNNs.
  • the convolution linear conversion process W is applied by the convolution linear conversion processing unit 111-i to the input X of the layer 110-i, and b is added to obtain X * W + b, which is further activated.
  • the activation function ⁇ is applied to X * W in the function unit 112-i to obtain ⁇ (X * W + b).
  • the convolution linear conversion process V is applied to the input X of the layer 110-i by the convolution linear conversion process unit 113-i, and c is added to obtain X * V + c, and further, the activation function unit.
  • the activation function ⁇ is applied to X * V + c to obtain ⁇ (X * V + c).
  • ⁇ (X * W + b) and ⁇ (X * V + c) are input to the multiplication unit 115-i, and the multiplication unit 115-i obtains and outputs an output h (X) according to the equation (2).
  • Batch normalization and dropouts may be included between each Gated CNN as appropriate (Reference 2).
  • the loss cost function loss used for learning the neural network 100 for example, the function of the following equation (3) can be exemplified.
  • 1 represents the L1 norm of ⁇ . That is, for example, the neural network 100 in which the high bit signal y'included in the training data (x', y') and the low bit signal x'corresponding to the high bit signal y'are input as the low bit input signal x.
  • the L1 norm of the difference y'-y ⁇ vector from the estimated signal y ⁇ of the high-bit output signal output from is used as the loss cost function loss for learning.
  • the learning data (x', y') is stored in the storage unit 11a of the learning device 11.
  • the learning unit 11b reads the learning data (x', y') from the storage unit 11a, and outputs a high bit signal y'and a high bit output from the neural network 100 in which the low bit signal x'is input as the low bit input signal x.
  • the parameter ⁇ is learned by a known backpropagation method or the like using the loss cost function loss of the equation (3).
  • the learning device 11 outputs the parameter ⁇ obtained by learning.
  • a signal estimation process for estimating a high bit output signal from a low bit input signal will be described using the neural network 100 learned as described above.
  • the information for identifying the neural network 100 learned as described above is stored in the storage unit 12a of the signal estimation device 12.
  • the learned parameter ⁇ of the neural network 100 is stored in the storage unit 12a.
  • the low-bit input signal x of the frame composed of the signal L sample obtained by quantizing the input signal with a low number of bits (first quantization bit number) is input to the model application unit 12b.
  • the model application unit 12b extracts information for identifying the neural network 100 from the storage unit 12a.
  • the model application unit 12b inputs a low-bit input signal x obtained by quantizing an input signal with a low number of bits to the neural network 100, and inputs the input signal to a high number of bits (a third larger than the number of first quantization bits).
  • the estimated signal y ⁇ of the high-bit output signal obtained by quantization with 2 quantization bits) is obtained and output.
  • the output h (X) is not limited to the above equation (2), and the input X is subjected to the convolution linear conversion process W, and the input X is subjected to the convolution linear conversion process V. It may be obtained by the product of each element with the columns corresponding to the plurality of elements to be obtained.
  • the following equation (4) is processed instead of the equation (2) as the Gated CNN for the input X.
  • the difference between the equation (4) of the second embodiment and the equation (2) of the first embodiment is that the activation function ⁇ does not act on the first term, whereby X is subjected to the linear conversion process and the amplitude control process. Is output via. Since the processing of the equation (4) has high linearity of the output h (X) with respect to the input X, it is easy to have multiple layers.
  • the learning device 21 of the second embodiment has a storage unit 11a and a learning unit 21b.
  • the signal estimation device 22 of the second embodiment has a storage unit 12a and a model application unit 22b.
  • FIG. 2 illustrates the neural network 200 of this embodiment.
  • the difference between the neural network 200 and the neural network 100 is that the input layer 110-1, the hidden layer 110-2, and the output layer 110-3 are the input layer 210-1, the hidden layer 210-2, and the output layer, respectively. This is the point to be replaced by 210-3. Others are as described in the first embodiment.
  • the output h (X) of each layer 210-i with respect to the input X is obtained by the processing of the above equation (4).
  • the convolution linear conversion process W is applied to the input X of the layer 210-i by the convolution linear conversion processing unit 111-i to obtain X * W + b.
  • the convolution linear conversion process V is applied to the input X of the layer 210-i by the convolution linear conversion process unit 113-i to obtain X * V + c, and further, the activation function unit 114-i applies the convolution linear conversion process V to X * V + c.
  • the activation function ⁇ is applied to obtain ⁇ (X * V + c).
  • X * W + b and ⁇ (X * V + c) are input to the multiplication unit 115-i, and the multiplication unit 115-i obtains and outputs an output h (X) according to the equation (4).
  • the learning unit 21b (FIG. 1A) of the learning device 21 learns the neural network 200 instead of the neural network 100.
  • the details of the learning method of the present embodiment are as described in the first embodiment except that the neural network 200 is used instead of the neural network 100.
  • the model application unit 22b (FIG. 1B) of the signal estimation device 22 inputs the low bit input signal x to the neural network 200 instead of the neural network 100, and obtains and outputs the estimation signal y ⁇ of the high bit output signal.
  • the details of the signal estimation process of the present embodiment are as described in the first embodiment except that the neural network 200 is used instead of the neural network 100.
  • a layer with more complex gate control may be used instead of the Gated CNN for input X.
  • a column K corresponding to a plurality of elements obtained by applying a convolution linear conversion process W K to an input X, and a column Q corresponding to a plurality of elements obtained by applying a convolution linear conversion process W Q to an input X. and column a corresponding to the product may be a 'product a ⁇ V between' column V corresponding to the plurality of elements obtained by performing linear conversion processing W V convolution on the input X as an output h (X).
  • a layer using the attention structure of Reference 2 is illustrated.
  • the learning device 31 of the third embodiment has a storage unit 11a and a learning unit 31b.
  • the signal estimation device 32 of the third embodiment has a storage unit 12a and a model application unit 32b.
  • FIG. 2 illustrates the neural network 300 of this embodiment.
  • the difference between the neural network 300 and the neural network 100 is that the input layer 110-1, the hidden layer 110-2, and the output layer 110-3 are the input layer 310-1, the hidden layer 310-2, and the output layer, respectively. It is a point to be replaced with 310-3. Others are as described in the first embodiment.
  • the convolution linear conversion processing unit 312-i applies the linear conversion processing W K to the input X of the layer 310-i to obtain a key K and output it.
  • the convolution linear conversion processing unit 313-i applies the linear conversion processing W Q to the input X to obtain a Query Q and output it.
  • convolution linear transformation processing part 311-i by applying a linear transformation processing W V to the input X to give a Value V 'output.
  • the multiplication unit 314-i takes Q and K as inputs, multiplies Q and K to obtain Q ⁇ KT , and outputs the Q ⁇ KT.
  • ⁇ T is a transpose of ⁇ .
  • As input softmax processing unit 315-i is Q ⁇ K T, (applying the softmax function) performs a soft Max processing Q ⁇ K T and outputs the obtained attention A by.
  • the W K , W Q, and softmax processes form a gate that is more complicated than that of the first embodiment, and have a function of gazing at and emphasizing a part of V'. By adopting such an attention configuration, it is possible to reflect the characteristics of the original input signal in the estimation of the higher bit output signal.
  • the learning unit 31b (FIG. 1A) of the learning device 31 learns the neural network 300 instead of the neural network 100.
  • the details of the learning method of the present embodiment are as described in the first embodiment except that the neural network 300 is used instead of the neural network 100.
  • the model application unit 32b (FIG. 1B) of the signal estimation device 32 inputs the low bit input signal x to the neural network 300 instead of the neural network 100, and obtains and outputs the estimation signal y ⁇ of the high bit output signal.
  • the details of the signal estimation process of the present embodiment are as described in the first embodiment except that the neural network 300 is used instead of the neural network 100.
  • a neural network consisting of 8 layers of Gated CNN having kernel sizes 17 and 48 channels was used.
  • the effective bit of the 16-bit signal is set to 8 bits, the signal-to-distortion ratio (SDR) of the input signal x and the SDR of the estimated signal y ⁇ of the high-bit output signal obtained by the method of the first embodiment are obtained.
  • the amount of improvement was obtained as follows.
  • a neural network composed of four layers of attention structures having kernel sizes of 17 and 48 channels was used.
  • the effective bit of the 16-bit signal is set to 8 bits
  • the signal-to-distortion ratio (SDR) of the input signal and the SDR of the estimated signal y ⁇ of the high-bit output signal obtained by the method of the third embodiment are obtained.
  • the amount of improvement was obtained as follows. It was confirmed that the SDR was improved by using the neural network in any of the methods of the first and third embodiments.
  • the learning devices 11, 21, 31 and the signal estimation devices 12, 22, and 32 in each embodiment include, for example, a processor (hardware processor) such as a CPU (central processing unit), a RAM (random-access memory), or a ROM (random-access memory).
  • a processor such as a CPU (central processing unit), a RAM (random-access memory), or a ROM (random-access memory).
  • a device configured by a general-purpose or dedicated computer equipped with a memory such as read-only memory) executing a predetermined program.
  • This computer may have one processor and memory, or may have a plurality of processors and memory.
  • This program may be installed in a computer or may be recorded in a ROM or the like in advance.
  • a part or all of the processing units may be configured by using an electronic circuit that realizes a processing function independently, instead of an electronic circuit (circuitry) that realizes a function configuration by reading a program like a CPU. ..
  • the electronic circuit constituting one device may include a plurality of CPUs.
  • FIG. 6 is a block diagram illustrating the hardware configurations of the learning devices 11, 21, 31 and the signal estimation devices 12, 22, 32 in each embodiment.
  • the learning devices 11, 21, 31 and the signal estimation devices 12, 22, and 32 of this example include a CPU (Central Processing Unit) 10a, an input unit 10b, an output unit 10c, and a RAM (Random Access Memory). ) 10d, ROM (Read Only Memory) 10e, auxiliary storage device 10f, and bus 10g.
  • the CPU 10a of this example has a control unit 10aa, a calculation unit 10ab, and a register 10ac, and executes various arithmetic processes according to various programs read into the register 10ac.
  • the input unit 10b is an input terminal, a keyboard, a mouse, a touch panel, or the like into which data is input.
  • the output unit 10c is an output terminal from which data is output, a display, a LAN card controlled by a CPU 10a that has read a predetermined program, and the like.
  • the RAM 10d is a SRAM (Static Random Access Memory), a DRAM (Dynamic Random Access Memory), or the like, and has a program area 10da in which a predetermined program is stored and a data area 10db in which various data are stored.
  • the auxiliary storage device 10f is, for example, a hard disk, MO (Magneto-Optical disc), a semiconductor memory, or the like, and has a program area 10fa for storing a predetermined program and a data area 10fb for storing various data.
  • the bus 10g connects the CPU 10a, the input unit 10b, the output unit 10c, the RAM 10d, the ROM 10e, and the auxiliary storage device 10f so that information can be exchanged.
  • the CPU 10a writes the program stored in the program area 10fa of the auxiliary storage device 10f to the program area 10da of the RAM 10d according to the read OS (Operating System) program.
  • OS Operating System
  • the CPU 10a writes various data stored in the data area 10fb of the auxiliary storage device 10f to the data area 10db of the RAM 10d. Then, the address on the RAM 10d in which this program or data is written is stored in the register 10ac of the CPU 10a.
  • the control unit 10ab of the CPU 10a sequentially reads out these addresses stored in the register 10ac, reads a program or data from the area on the RAM 10d indicated by the read address, and causes the arithmetic unit 10ab to sequentially execute the operations indicated by the program.
  • the calculation result is stored in the register 10ac.
  • the above program can be recorded on a computer-readable recording medium.
  • a computer-readable recording medium is a non-transitory recording medium. Examples of such a recording medium are a magnetic recording device, an optical disk, a photomagnetic recording medium, a semiconductor memory, and the like.
  • the distribution of this program is carried out, for example, by selling, transferring, renting, etc. a portable recording medium such as a DVD or CD-ROM on which the program is recorded.
  • the program may be stored in the storage device of the server computer, and the program may be distributed by transferring the program from the server computer to another computer via a network.
  • the computer that executes such a program first temporarily stores, for example, the program recorded on the portable recording medium or the program transferred from the server computer in its own storage device. Then, when the process is executed, the computer reads the program stored in its own storage device and executes the process according to the read program.
  • a computer may read the program directly from a portable recording medium and execute processing according to the program, and further, the program is transferred from the server computer to this computer. Each time, the processing according to the received program may be executed sequentially.
  • the above processing is executed by a so-called ASP (Application Service Provider) type service that realizes the processing function only by the execution instruction and result acquisition without transferring the program from the server computer to this computer. May be.
  • the program in this embodiment includes information to be used for processing by a computer and equivalent to the program (data that is not a direct command to the computer but has a property of defining the processing of the computer, etc.).
  • the present device is configured by executing a predetermined program on a computer, but at least a part of these processing contents may be realized by hardware.
  • the present invention is not limited to the above-described embodiment.
  • the multi-layer structure of a neural network consists of (1) a layer composed of CNN, (2) a layer composed of Gated CNN, and (3) a layer composed of attention structure, which are two or more types different from each other. It may include layers.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Molecular Biology (AREA)
  • Artificial Intelligence (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Complex Calculations (AREA)
  • Image Analysis (AREA)

Abstract

信号を第1量子化ビット数で量子化して得られる低ビット信号と、信号を第1量子化ビット数よりも大きな第2量子化ビット数で量子化して得られる高ビット信号と、を含む学習データを用い、入力信号を第1量子化ビット数で量子化して得られる低ビット入力信号を入力とし、入力信号を第2量子化ビット数で量子化して得られる高ビット出力信号の推定信号を出力するニューラルネットワークを学習する。このニューラルネットワークは、入力層および出力層を含む多層構造を持ち、入力層に低ビット入力信号を入力した際に出力層から出力される信号と、低ビット入力信号と、を加算して得られる高ビット出力信号の推定信号を得て出力するものである。

Description

量子化ビット数拡張のための学習装置、信号推定装置、学習方法、信号推定方法、およびプログラム
 本発明は、量子化信号から量子化ビット数を拡張した量子化信号を得る技術に関する。
 現在、センサからのアナログ信号はA/D変換により量子化(デジタル化)されてコンピュータに取り込まれて処理されている。例えば、ロボット等では各種センサ信号は10~16ビットで量子化されることが多い。また音楽CDでは音楽信号が16ビットに量子化される。
 上記のように量子化された信号に対し、量子化ビット数を拡張したいというニーズがある。例えば、センサ信号の振幅が小さく、量子化誤差が多く含まれる信号から、量子化誤差の抑えられた滑らかな信号が必要になる場合が考えられる。また音楽CDについては、16ビットで表現された楽曲を、24ビット表現に拡張するというニーズがある。このように量子化ビット数を拡張して量子化誤差を小さくする場合、下位ビット側のビット数(下位ビット数)が拡張される。
 特に音楽を想定して、既知のデジタル信号の量子化ビット数を拡張したデジタル信号を推定する方法がいくつか提案されている。例えば、特許文献1では、上位ビット波形にFIRあるいはIIRフィルタを適用し、量子化ビット数を拡張したデジタル信号の下位ビット信号を推定している。特許文献2では、同じ振幅値が続く区間において、その前後の振幅値変化幅の比にもとづいて中間時刻を定め、中間時刻に想定する振幅値とその区間両端の振幅値との3点間をスプライン補完する。得られた実数振幅値を四捨五入して量子化して下位ビット値とする。非特許文献1では、上位ビット信号からBurg法により線形予測係数を求める。初期値をランダムに定めた下位ビット信号を生成し、上位ビット信号と加算して初期予測信号を得る。初期予測信号から予測誤差信号を得て、この予測誤差信号が最小になるよう下位ビット信号のビット値の最適配置を擬似焼きなまし法で探索して求める。
特開2010-268446 特開2011-180479
西村明,"線形量子化音響信号の振幅上位ビット値を用いた下位ビット値の予測拡張",日本音響学会講演論文集2019,2019年3月
 しかし、上記の方法では、対象とする本来の信号が持つ微細情報が推定結果に反映されるかが不明である。それは量子化ビット数を拡張する前のデジタル信号の情報のみを用いて量子化ビット数を拡張しており、より大きな量子化ビット数で量子化されたデジタル信号が本来持つ性質が使われていないためである。
 本発明はこのような点に鑑みてなされたものであり、本来の信号が持つ微細情報を反映させ、高い精度で量子化ビット数を拡張することを目的とする。
 信号を第1量子化ビット数で量子化して得られる低ビット信号と、信号を第1量子化ビット数よりも大きな第2量子化ビット数で量子化して得られる高ビット信号と、を含む学習データを用い、入力信号を第1量子化ビット数で量子化して得られる低ビット入力信号を入力とし、入力信号を第2量子化ビット数で量子化して得られる高ビット出力信号の推定信号を出力するニューラルネットワークを学習する。このニューラルネットワークは、入力層および出力層を含む多層構造を持ち、入力層に低ビット入力信号を入力した際に出力層から出力される信号と、低ビット入力信号と、を加算して得られる高ビット出力信号の推定信号を得て出力するものである。
 これにより、本来の信号が持つ微細情報を反映させ、高い精度で量子化ビット数を拡張することができる。
図1Aは実施形態の学習装置を例示したブロック図である。図1Bは実施形態の信号推定装置を例示したブロック図である。 図2は実施形態のニューラルネットワークを例示するためのブロック図である。 図3は実施形態のニューラルネットワークを例示するためのブロック図である。 図4は実施形態のニューラルネットワークを例示するためのブロック図である。 図5は実施形態のニューラルネットワークを例示するためのブロック図である。 図6は実施形態のハードウェア構成を例示するためのブロック図である。
 以下、図面を参照して本発明の実施形態を説明する。
 各実施形態では、ニューラルネットワークによって、量子化された信号から、量子化の際に落とされた下位ビットの情報を推定する方法を例示する。ニューラルネットワークは、低ビット量子化前後の信号、つまり低ビット数と高ビット数で量子化された信号をトレーニングデータとして、学習される。トレーニングデータ中の高ビット数で量子化された信号がニューラルネットの学習に使われる際に、本来の入力信号がもつ微細情報が活用される。本実施形態では、一例としてゲート付き畳み込みニューラルネットワーク(Gated CNN)(参考文献1)等のゲートつきのニューラルネットワークをもちいる。
 参考文献1:Y. N. Dauphin, A. Fan, M. Auli, and D. Grangier, "Language Modeling with Gated Convolutional Networks," arXiv: 1612.08083, Submitted on 23 Dec 2016 (v1).
 すなわち、実施形態の学習処理では、信号を第1量子化ビット数(低ビット数)で量子化して得られる低ビット信号と、信号を第1量子化ビット数(低ビット数)よりも大きな第2量子化ビット数(高ビット数)で量子化して得られる高ビット信号と、を含む学習データを用い、入力信号を第1量子化ビット数で量子化して得られる低ビット入力信号を入力とし、第2量子化ビット数で量子化して得られる高ビット出力信号の推定信号を出力するニューラルネットワークを学習する。ただし、学習されるニューラルネットワークは、入力層および出力層を含む多層構造を持ち、入力層に低ビット入力信号を入力した際に出力層から出力される信号と、低ビット入力信号と、を加算して得られる高ビット出力信号の推定信号を得て出力するものである。以下、詳細に説明する。
 [第1実施形態]
 図1Aに例示するように、第1実施形態の学習装置11は記憶部11aおよび学習部11bを有する。図1Bに例示するように、第1実施形態の信号推定装置12は記憶部12aおよびモデル適用部12bを有する。
 <学習処理>
 まず、入力信号を低ビット数で量子化して得られる低ビット入力信号を入力とし、入力信号を高ビット数で量子化して得られる高ビット出力信号の推定信号を出力するニューラルネットワークの学習処理を説明する。図2に、量子化の際に落とされた下位ビットの情報を推定する本実施形態のニューラルネットワーク100を例示する。このニューラルネットワーク100は、入力信号を低ビット数で量子化して得られる信号Lサンプルからなるフレーム(区間)の低ビット入力信号xを入力とし、当該入力信号を目標とする高ビット数で量子化して得られる信号Lサンプルからなるフレームの高ビット出力信号の推定信号y^を出力するものである。なお、入力信号xは例えば時系列信号であり、例えば、時系列の音響信号である。例えば、入力信号xは時間領域の音響信号であってもよいし、時間周波数領域の音響信号であってもよい。Lは正整数であり、例えば、Lは数百~1000またはその前後の値である。xおよびy^は例えばL次元ベクトルである。また、図2に例示するように、「y^」の上付き添え字「^」は本来「y」の真上に記載すべきであるが、記載表記の制約上、「y^」のように「^」を「y」の右上に記載する場合がある。その他の文字および上付き添え字についても同様である。図2に例示するように、ニューラルネットワーク100は、入力層110-1および出力層110-3を含む多層構造を持ち、入力層110-1に低ビット入力信号xを入力した際に出力層110-3から出力される信号Lサンプルからなるフレームの信号z^と、低ビット入力信号xと、を加算して得られる高ビット出力信号の推定信号y^=z^+xを得て出力するものである。z^は例えばL次元ベクトルである。例えば、低ビットの時系列信号の所定の時間区間をフレームとし、フレームを1/2シフトや1/4シフト等しながら各フレームの低ビット入力信号xを取り出してニューラルネットワーク100に入力し、その出力に当該多層構造を適用して合成したものを信号z^とし、入力された低ビット入力信号xをそのまま最終出力の手前で信号z^に加算して高ビット出力信号の推定信号y^=z^+xを得、推定信号y^に窓関数を施して合成する。なお、図2に例示するニューラルネットワーク100の多層構造は、入力層110-1、隠れ層110-2、および出力層110-3の3層構造だが、1層構造や2層構造であってもよいし4層以上の構造であってもよい。なお、1層構造の場合には入力層は出力層を兼ねる。2層構造の場合には隠れ層が存在しない。4層以上の場合には隠れ層が2層以上存在する。以下、入力層110-1、隠れ層110-2、および出力層110-3をそれぞれ、単に層110-1,110-2,110-3と呼ぶ場合がある。すなわち、多層構造はN個の層110-1,…,110-Nを含む。ただし、Nは1以上の整数である。
 ニューラルネットワーク100の学習は、信号を低ビット数(第1量子化ビット数)で量子化して得られる信号Lサンプルからなるフレームの低ビット信号x’と、当該信号を高ビット数(第2量子化ビット数)で量子化して得られる信号Lサンプルからなるフレームの高ビット信号y’と、を含む大量の学習データ(x’,y’)を用いて行われる。すなわち、高ビット信号y’と、低ビット信号x’を低ビット入力信号xとして入力したニューラルネットワーク100から出力される高ビット出力信号の推定信号y^=z^+x’と、の距離を最小化するようにニューラルネットワーク100が学習される。すなわち、低ビット信号x’を低ビット入力信号xとして入力層110-1に入力した際に出力層110-3から出力されるz^=y^-x’が目的信号である高ビット信号y’とそれに対応する低ビット信号x’との差分y’-x’に近づくように、ニューラルネットワーク100の多層構造の各層の学習が行われる。なお、x’およびy’は、例えば、L次元ベクトルである。このように本実施形態では、入力層110-1に低ビット入力信号xを入力した際に出力層110-3から出力される信号z^と、低ビット入力信号xと、を加算して得られる高ビット出力信号の推定信号y’=z^+x’を得て出力するスキップ接続構造のニューラルネットワーク100を用いる。このスキップ接続構造によって学習範囲が限定され、学習によって得られるニューラルネットワーク100の推定精度が高められる。
 ニューラルネットワーク100の多層構造の各層110-i(ただし、i=1,2,3)は、例えば、CNNで構成されてもよいし、Gated CNNで構成されてもよい。例えば、層110-iがCNNで構成される場合、各層110-iは、入力Xに畳み込み線形変換処理Wを適用し、さらに活性化関数σを適用して出力h(X)を得る。例えば、畳み込み線形変換処理Wのフィルタ長は3~数十タップである。フィルタの種類を増やすことで特徴ベクトルの数すなわちチャネル数を増やすことができる。入力Xに対するCNNで構成される層110-iの出力h(X)は、以下の式(1)のように表される。
 h(X)=σ(X*W+b)    (1)
ただし、「*」は畳み込み演算子である。入力および出力ともに正負の値を取るため、例えば、活性化関数σには正負の値を出力する関数(例えばtanh関数(双曲線正接関数, Tangent Hyperbolic Function))を用いる。一方、層110-iがGated CNNで構成される場合、入力Xに対するGated CNNで構成される層110-iの出力h(X)は、入力Xに畳み込み線形変換処理Wを施して得られる複数の要素に対応する列と、入力Xに畳み込み線形変換処理Vを施して得られる複数の要素に対応する列との要素ごとの積によって得られる。例えば、出力h(X)は以下の式(2)のように表される。
Figure JPOXMLDOC01-appb-M000001

ただし
Figure JPOXMLDOC01-appb-M000002

はelement-wise product(要素ごとの積)であり、σは活性化関数であり、Vは畳み込み線形変換処理であり、b、cは定数ベクトルである。Vの入出力サイズはWと同じである。例えば、畳み込み線形変換処理Vのフィルタ長は3~数十タップである。この場合も、入力および出力ともに正負の値を取るため、例えば、活性化関数σには正負の値を出力する関数(例えばtanh)を用いる。図3に、Gated CNNで構成される層110-iを例示する。図3の例では、層110-iの入力Xに対して畳み込み線形変換処理部111-iで畳み込み線形変換処理Wが適用されるとともにbが加算されてX*W+bが得られ、さらに活性化関数部112-iでX*Wに活性化関数σが適用されてσ(X*W+b)が得られる。また、層110-iの入力Xに対して畳み込み線形変換処理部113-iで畳み込み線形変換処理Vが適用されるとともにcが加算されてX*V+cが得られ、さらに活性化関数部114-iでX*V+cに活性化関数σが適用されてσ(X*V+c)が得られる。σ(X*W+b)およびσ(X*V+c)は乗算部115-iに入力され、乗算部115-iは式(2)に従って出力h(X)を得て出力する。なお各Gated CNNの間には、適宜バッチノーマライゼーションとドロップアウトを含めてもよい(参考文献2)。
参考文献2:Ian Goodfellow, Y. Bengio, and A. Courville, "Deep Learning," MIT Press, 2016.
 ニューラルネットワーク100の学習に使う損失コスト関数lossとしては、例えば以下の式(3)の関数を例示できる。
Figure JPOXMLDOC01-appb-M000003

ただし、||・||は・のL1ノルムを表す。すなわち、例えば、学習データ(x’,y’)に含まれた高ビット信号y’と、当該高ビット信号y’に対応する低ビット信号x’を低ビット入力信号xとして入力したニューラルネットワーク100から出力される高ビット出力信号の推定信号y^との差分y’-y^ベクトルのL1ノルムを損失コスト関数lossとして学習を行う。
 図1Aを用いて学習の流れを説明する。前提として、学習装置11の記憶部11aに学習データ(x’,y’)が記憶されている。学習部11bは記憶部11aから学習データ(x’,y’)を読み込み、高ビット信号y’と、低ビット信号x’を低ビット入力信号xとして入力したニューラルネットワーク100から出力される高ビット出力信号の推定信号y^=z^+x’と、の距離を最小化するようにニューラルネットワーク100を特定するパラメータθを学習する。この学習では、例えば、式(3)の損失コスト関数lossを用い公知の誤差逆伝播法等によってパラメータθを学習する。学習装置11は学習によって得たパラメータθを出力する。
 <信号推定処理>
 次に図1Bを用い、上述のように学習されたニューラルネットワーク100を用いて、低ビット入力信号から高ビット出力信号を推定する信号推定処理を説明する。信号推定処理の前提として、上述のように学習されたニューラルネットワーク100を特定するための情報が信号推定装置12の記憶部12aに格納される。例えば、学習されたニューラルネットワーク100のパラメータθが記憶部12aに格納される。
 この前提の下、以下の処理が行われる。入力信号を低ビット数(第1量子化ビット数)で量子化して得られる信号Lサンプルからなるフレームの低ビット入力信号xがモデル適用部12bに入力される。モデル適用部12bは、記憶部12aから上記のニューラルネットワーク100を特定するための情報を抽出する。モデル適用部12bは、入力信号を低ビット数で量子化して得られる低ビット入力信号xを当該ニューラルネットワーク100に入力し、当該入力信号を高ビット数(第1量子化ビット数よりも大きな第2量子化ビット数)で量子化して得られる高ビット出力信号の推定信号y^を得て出力する。
 [第2実施形態]
 次に第2実施形態を説明する。以降、既に説明した事項については同じ参照番号を引用して説明を簡略化する。出力h(X)は上述の式(2)に限定されず、入力Xに畳み込み線形変換処理Wを施して得られる複数の要素に対応する列と、入力Xに畳み込み線形変換処理Vを施して得られる複数の要素に対応する列との要素ごとの積によって得られるものであればよい。第2実施形態では、入力Xに対するGated CNNとして式(2)に代えて以下の式(4)の処理を行う。
Figure JPOXMLDOC01-appb-M000004

 第2実施形態の式(4)の第1実施形態の式(2)との違いは、第1項に活性化関数σを作用させないことであり、これによってXは線形変換処理および振幅制御処理を経て出力される。式(4)の処理は入力Xに対する出力h(X)の線形性が高いため、多層化し易い。
 図1Aに例示するように、第2実施形態の学習装置21は記憶部11aおよび学習部21bを有する。図1Bに例示するように、第2実施形態の信号推定装置22は記憶部12aおよびモデル適用部22bを有する。
 <学習処理>
 図2に、本実施形態のニューラルネットワーク200を例示する。このニューラルネットワーク200のニューラルネットワーク100との相違点は、入力層110-1、隠れ層110-2、および出力層110-3がそれぞれ、入力層210-1、隠れ層210-2、および出力層210-3に置換される点である。その他は第1実施形態で説明した通りである。
 図4に、ニューラルネットワーク200の多層構造の各層210-i(ただし、i=1,2,3)を例示する。図4に例示するように、入力Xに対する各層210-iの出力h(X)は、上述の式(4)の処理によって得られる。図4の例では、層210-iの入力Xに対して畳み込み線形変換処理部111-iで畳み込み線形変換処理Wが適用されてX*W+bが得られる。また、層210-iの入力Xに対して畳み込み線形変換処理部113-iで畳み込み線形変換処理Vが適用されてX*V+cが得られ、さらに活性化関数部114-iでX*V+cに活性化関数σが適用されてσ(X*V+c)が得られる。X*W+bおよびσ(X*V+c)は乗算部115-iに入力され、乗算部115-iは式(4)に従って出力h(X)を得て出力する。
 学習装置21の学習部21b(図1A)はニューラルネットワーク100に代えてニューラルネットワーク200の学習を行う。本実施形態の学習方法の詳細は、ニューラルネットワーク100に代えてニューラルネットワーク200が用いられる以外、第1実施形態で説明した通りである。
 <信号推定処理>
 信号推定装置22のモデル適用部22b(図1B)は、ニューラルネットワーク100に代えてニューラルネットワーク200に低ビット入力信号xを入力し、高ビット出力信号の推定信号y^を得て出力する。本実施形態の信号推定処理の詳細は、ニューラルネットワーク100に代えてニューラルネットワーク200が用いられる以外、第1実施形態で説明した通りである。
 [第3実施形態]
 次に第3実施形態を説明する。入力Xに対するGated CNNに代えてゲート制御がより複雑な層を用いてもよい。例えば、入力Xに畳み込み線形変換処理Wを施して得られる複数の要素に対応する列Kと、入力Xに畳み込み線形変換処理Wを施して得られる複数の要素に対応する列Qとの積に対応する列Aと、入力Xに畳み込み線形変換処理Wを施して得られる複数の要素に対応する列V’との積A×V’を出力h(X)としてもよい。本実施形態では、参考文献2のアテンション構造を用いた層を例示する。
 参考文献2:A. Vaswani, et al. "Attention is all you need," arXiv: 1706.03762, submitted on 12 Jun. 2017.
 図1Aに例示するように、第3実施形態の学習装置31は記憶部11aおよび学習部31bを有する。図1Bに例示するように、第3実施形態の信号推定装置32は記憶部12aおよびモデル適用部32bを有する。
 <学習処理>
 図2に本実施形態のニューラルネットワーク300を例示する。このニューラルネットワーク300のニューラルネットワーク100との相違点は、入力層110-1、隠れ層110-2、および出力層110-3がそれぞれ、入力層310-1、隠れ層310-2、および出力層310-3に置換される点である。その他は第1実施形態で説明した通りである。
 図5に、ニューラルネットワーク200の多層構造の各層310-i(ただし、i=1,2,3)を例示する。図5の例では、畳み込み線形変換処理部312-iで層310-iの入力Xに線形変換処理Wを適用してkey Kを得て出力する。同様に、畳み込み線形変換処理部313-iで当該入力Xに線形変換処理Wを適用してQuery Qを得て出力する。同様に、畳み込み線形変換処理部311-iで当該入力Xに線形変換処理Wを適用してValue V’を得て出力する。乗算部314-iはQおよびKを入力としてQとKを乗算してQ×Kを得て出力する。ただし、・は・の転置である。ソフトマックス処理部315-iはQ×Kを入力として、Q×Kにソフトマックス処理を施す(ソフトマックス関数を適用する)ことでアテンションAを得て出力する。乗算部316-iは、V’およびAを入力とし、このアテンションAをV’に乗算することで最終的な出力h(X)=A×V’を得る。WとWおよびソフトマックス処理は、実施例1よりも複雑なゲートを構成し、V’の一部を注視し強調する働きがある。このようなアテンション構成をとることで、本来の入力信号の特性をより高ビット出力信号の推定に反映させることが可能となる。
 学習装置31の学習部31b(図1A)はニューラルネットワーク100に代えてニューラルネットワーク300の学習を行う。本実施形態の学習方法の詳細は、ニューラルネットワーク100に代えてニューラルネットワーク300が用いられる以外、第1実施形態で説明した通りである。
 <信号推定処理>
 信号推定装置32のモデル適用部32b(図1B)は、ニューラルネットワーク100に代えてニューラルネットワーク300に低ビット入力信号xを入力し、高ビット出力信号の推定信号y^を得て出力する。本実施形態の信号推定処理の詳細は、ニューラルネットワーク100に代えてニューラルネットワーク300が用いられる以外、第1実施形態で説明した通りである。
 [検証実験]
 第1,3実施形態について検証実験を行った。ニューラルネットワークの学習処理には長さ3~5秒の音声280個を用い、信号推定処理および評価には別の長さ3~5秒の音声70個を用いた。
 第1実施形態について、カーネルサイズ17、48チャネルのGated CNN8層からなるニューラルネットワークを用いた。16ビット信号の有効ビットを8ビットに設定した場合について、入力信号xのsignal-to-distortion ratio (SDR)と第1実施形態の方法で得られる高ビット出力信号の推定信号y^のSDRを比較し、その改善量を次のように得た。
Figure JPOXMLDOC01-appb-T000005
 第3実施形態について、カーネルサイズ17、48チャネルのアテンション構造4層からなるニューラルネットワークをもちいた。16ビット信号の有効ビットを8ビットに設定した各場合について、入力信号のsignal-to-distortion ratio (SDR)と第3実施形態の方法で得られる高ビット出力信号の推定信号y^のSDRを比較し、その改善量を次のように得た。
Figure JPOXMLDOC01-appb-T000006
 第1,3実施形態の何れの方法でも、ニューラルネットワークを用いることにより、SDRが改善することが確認された。
 [ハードウェア構成]
 各実施形態における学習装置11,21,31および信号推定装置12,22,32は、例えば、CPU(central processing unit)等のプロセッサ(ハードウェア・プロセッサ)やRAM(random-access memory)・ROM(read-only memory)等のメモリ等を備える汎用または専用のコンピュータが所定のプログラムを実行することで構成される装置である。このコンピュータは1個のプロセッサやメモリを備えていてもよいし、複数個のプロセッサやメモリを備えていてもよい。このプログラムはコンピュータにインストールされてもよいし、予めROM等に記録されていてもよい。また、CPUのようにプログラムが読み込まれることで機能構成を実現する電子回路(circuitry)ではなく、単独で処理機能を実現する電子回路を用いて一部またはすべての処理部が構成されてもよい。また、1個の装置を構成する電子回路が複数のCPUを含んでいてもよい。
 図6は、各実施形態における学習装置11,21,31および信号推定装置12,22,32のハードウェア構成を例示したブロック図である。図6に例示するように、この例の学習装置11,21,31および信号推定装置12,22,32は、CPU(Central Processing Unit)10a、入力部10b、出力部10c、RAM(Random Access Memory)10d、ROM(Read Only Memory)10e、補助記憶装置10f及びバス10gを有している。この例のCPU10aは、制御部10aa、演算部10ab及びレジスタ10acを有し、レジスタ10acに読み込まれた各種プログラムに従って様々な演算処理を実行する。また、入力部10bは、データが入力される入力端子、キーボード、マウス、タッチパネル等である。また、出力部10cは、データが出力される出力端子、ディスプレイ、所定のプログラムを読み込んだCPU10aによって制御されるLANカード等である。また、RAM10dは、SRAM (Static Random Access Memory)、DRAM (Dynamic Random Access Memory)等であり、所定のプログラムが格納されるプログラム領域10da及び各種データが格納されるデータ領域10dbを有している。また、補助記憶装置10fは、例えば、ハードディスク、MO(Magneto-Optical disc)、半導体メモリ等であり、所定のプログラムが格納されるプログラム領域10fa及び各種データが格納されるデータ領域10fbを有している。また、バス10gは、CPU10a、入力部10b、出力部10c、RAM10d、ROM10e及び補助記憶装置10fを、情報のやり取りが可能なように接続する。CPU10aは、読み込まれたOS(Operating System)プログラムに従い、補助記憶装置10fのプログラム領域10faに格納されているプログラムをRAM10dのプログラム領域10daに書き込む。同様にCPU10aは、補助記憶装置10fのデータ領域10fbに格納されている各種データを、RAM10dのデータ領域10dbに書き込む。そして、このプログラムやデータが書き込まれたRAM10d上のアドレスがCPU10aのレジスタ10acに格納される。CPU10aの制御部10abは、レジスタ10acに格納されたこれらのアドレスを順次読み出し、読み出したアドレスが示すRAM10d上の領域からプログラムやデータを読み出し、そのプログラムが示す演算を演算部10abに順次実行させ、その演算結果をレジスタ10acに格納していく。このような構成により、学習装置11,21,31および信号推定装置12,22,32の機能構成が実現される。
 上述のプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体の例は非一時的な(non-transitory)記録媒体である。このような記録媒体の例は、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリ等である。
 このプログラムの流通は、例えば、そのプログラムを記録したDVD、CD-ROM等の可搬型記録媒体を販売、譲渡、貸与等することによって行う。さらに、このプログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することにより、このプログラムを流通させる構成としてもよい。上述のように、このようなプログラムを実行するコンピュータは、例えば、まず、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、一旦、自己の記憶装置に格納する。そして、処理の実行時、このコンピュータは、自己の記憶装置に格納されたプログラムを読み取り、読み取ったプログラムに従った処理を実行する。また、このプログラムの別の実行形態として、コンピュータが可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することとしてもよく、さらに、このコンピュータにサーバコンピュータからプログラムが転送されるたびに、逐次、受け取ったプログラムに従った処理を実行することとしてもよい。また、サーバコンピュータから、このコンピュータへのプログラムの転送は行わず、その実行指示と結果取得のみによって処理機能を実現する、いわゆるASP(Application Service Provider)型のサービスによって、上述の処理を実行する構成としてもよい。なお、本形態におけるプログラムには、電子計算機による処理の用に供する情報であってプログラムに準ずるもの(コンピュータに対する直接の指令ではないがコンピュータの処理を規定する性質を有するデータ等)を含むものとする。
 各実施形態では、コンピュータ上で所定のプログラムを実行させることにより、本装置を構成することとしたが、これらの処理内容の少なくとも一部をハードウェア的に実現することとしてもよい。
 [その他の変形例]
 なお、本発明は上述の実施形態に限定されるものではない。例えば、ニューラルネットワークが持つ多層構造に含まれる全ての層構造が同一でなくてもよい。例えば、ニューラルネットワークが持つ多層構造が(1)CNNから構成される層と(2)Gated CNNから構成される層と(3)アテンション構造から構成される層のうち、互いに相違する2種類以上の層を含んでいてもよい。
 また、上述の各種の処理は、記載に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。その他、本発明の趣旨を逸脱しない範囲で適宜変更が可能であることはいうまでもない。
11,21,31 学習装置
12,22,32 信号推定装置

Claims (7)

  1.  信号を第1量子化ビット数で量子化して得られる低ビット信号と、前記信号を前記第1量子化ビット数よりも大きな第2量子化ビット数で量子化して得られる高ビット信号と、を含む学習データを用い、
    入力信号を前記第1量子化ビット数で量子化して得られる低ビット入力信号を入力とし、前記入力信号を前記第2量子化ビット数で量子化して得られる高ビット出力信号の推定信号を出力するニューラルネットワークを学習する学習ステップを有し、
     前記ニューラルネットワークは、入力層および出力層を含む多層構造を持ち、前記入力層に前記低ビット入力信号を入力した際に前記出力層から出力される信号と、前記低ビット入力信号と、を加算して得られる前記高ビット出力信号の推定信号を得て出力するものである、学習方法。
  2.  請求項1の学習方法であって、
     前記ニューラルネットワークは、入力Xに対して出力h(X)を得る層を含む多層構造を含み、
     前記出力h(X)は、前記入力Xに畳み込み線形変換処理Wを施して得られる複数の要素に対応する列と、前記入力Xに畳み込み線形変換処理Vを施して得られる複数の要素に対応する列との要素ごとの積によって得られる、学習方法。
  3.  請求項1の学習方法であって、
     前記ニューラルネットワークは、入力Xに対して出力h(X)を得る層を含む多層構造を含み、
     前記出力h(X)は、前記入力Xに畳み込み線形変換処理Wを施して得られる複数の要素に対応する列Kと、前記入力Xに畳み込み線形変換処理Wを施して得られる複数の要素に対応する列Qとの積に対応する列Aと、前記入力Xに畳み込み線形変換処理Wを施して得られる複数の要素に対応する列V’との積A×V’である、学習方法。
  4.  入力信号を第1量子化ビット数で量子化して得られる低ビット入力信号を、請求項1から3の何れかの学習方法で学習された前記ニューラルネットワークに入力し、前記入力信号を前記第1量子化ビット数よりも大きな前記第2量子化ビット数で量子化して得られる高ビット出力信号の推定信号を得て出力するモデル適用ステップを有する、信号推定方法。
  5.  信号を第1量子化ビット数で量子化して得られる低ビット信号と、前記信号を前記第1量子化ビット数よりも大きな第2量子化ビット数で量子化して得られる高ビット信号と、を含む学習データを用い、
    入力信号を前記第1量子化ビット数で量子化して得られる低ビット入力信号を入力とし、前記入力信号を前記第2量子化ビット数で量子化して得られる高ビット出力信号の推定信号を出力するニューラルネットワークを学習する学習部を有し、
     前記ニューラルネットワークは、入力層および出力層を含む多層構造を持ち、前記入力層に前記低ビット入力信号を入力した際に前記出力層から出力される信号と、前記低ビット入力信号と、を加算して得られる前記高ビット出力信号の推定信号を得て出力するものである、学習装置。
  6.  入力信号を第1量子化ビット数で量子化して得られる低ビット入力信号を、請求項1または2の学習方法で学習された前記ニューラルネットワークに入力し、前記入力信号を前記第1量子化ビット数よりも大きな第2量子化ビット数で量子化して得られる高ビット出力信号の推定信号を得て出力するモデル適用部を有する、信号推定装置。
  7.  請求項1から3の何れかの学習方法、または請求項4の信号推定方法の処理をコンピュータに実行させるためのプログラム。
PCT/JP2020/004866 2020-02-07 2020-02-07 量子化ビット数拡張のための学習装置、信号推定装置、学習方法、信号推定方法、およびプログラム WO2021157062A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2021575558A JPWO2021157062A1 (ja) 2020-02-07 2020-02-07
PCT/JP2020/004866 WO2021157062A1 (ja) 2020-02-07 2020-02-07 量子化ビット数拡張のための学習装置、信号推定装置、学習方法、信号推定方法、およびプログラム
US17/797,686 US20230153603A1 (en) 2020-02-07 2020-02-07 Learning apparatus, signal estimation apparatus, learning method, signal estimation method, and program to dequantize

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2020/004866 WO2021157062A1 (ja) 2020-02-07 2020-02-07 量子化ビット数拡張のための学習装置、信号推定装置、学習方法、信号推定方法、およびプログラム

Publications (1)

Publication Number Publication Date
WO2021157062A1 true WO2021157062A1 (ja) 2021-08-12

Family

ID=77199447

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2020/004866 WO2021157062A1 (ja) 2020-02-07 2020-02-07 量子化ビット数拡張のための学習装置、信号推定装置、学習方法、信号推定方法、およびプログラム

Country Status (3)

Country Link
US (1) US20230153603A1 (ja)
JP (1) JPWO2021157062A1 (ja)
WO (1) WO2021157062A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117217318B (zh) * 2023-11-07 2024-01-26 瀚博半导体(上海)有限公司 基于Transformer网络模型的文本生成方法和装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018216207A1 (ja) * 2017-05-26 2018-11-29 楽天株式会社 画像処理装置、画像処理方法、および画像処理プログラム
JP2018195069A (ja) * 2017-05-17 2018-12-06 キヤノン株式会社 画像処理装置および画像処理方法
JP2019067078A (ja) * 2017-09-29 2019-04-25 国立大学法人 筑波大学 画像処理方法、及び画像処理プログラム

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6929047B2 (ja) * 2016-11-24 2021-09-01 キヤノン株式会社 画像処理装置、情報処理方法及びプログラム
JP2020537555A (ja) * 2017-09-22 2020-12-24 エヌビュー メディカル インク 機械学習レギュラライザを用いた画像再構成
JP7262933B2 (ja) * 2018-05-25 2023-04-24 キヤノンメディカルシステムズ株式会社 医用情報処理システム、医用情報処理装置、放射線診断装置、超音波診断装置、学習用データの生産方法及びプログラム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018195069A (ja) * 2017-05-17 2018-12-06 キヤノン株式会社 画像処理装置および画像処理方法
WO2018216207A1 (ja) * 2017-05-26 2018-11-29 楽天株式会社 画像処理装置、画像処理方法、および画像処理プログラム
JP2019067078A (ja) * 2017-09-29 2019-04-25 国立大学法人 筑波大学 画像処理方法、及び画像処理プログラム

Also Published As

Publication number Publication date
US20230153603A1 (en) 2023-05-18
JPWO2021157062A1 (ja) 2021-08-12

Similar Documents

Publication Publication Date Title
US12008461B2 (en) Method for determining neuron events based on cluster activations and apparatus performing same method
JP6965690B2 (ja) ニューラルネットワークの処理速度を向上させるための装置及び方法、並びにその応用
WO2019220620A1 (ja) 異常検出装置、異常検出方法及びプログラム
JP6891626B2 (ja) 情報処理装置、情報処理システム、情報処理プログラムおよび情報処理方法
US10262680B2 (en) Variable sound decomposition masks
WO2021157062A1 (ja) 量子化ビット数拡張のための学習装置、信号推定装置、学習方法、信号推定方法、およびプログラム
CN112651485A (zh) 识别图像的方法和设备以及训练神经网络的方法和设备
CN111753995A (zh) 一种基于梯度提升树的局部可解释方法
Sudo et al. Sound event aware environmental sound segmentation with Mask U-Net
US9318106B2 (en) Joint sound model generation techniques
JP2023545820A (ja) フィルタバンク領域でオーディオサンプルを処理するための生成ニューラルネットワークモデル
JP7351401B2 (ja) 信号処理装置、信号処理方法、およびプログラム
JP7298714B2 (ja) モデル学習装置、音声認識装置、それらの方法、およびプログラム
JP7428251B2 (ja) 目的音信号生成装置、目的音信号生成方法、プログラム
KR102329353B1 (ko) 심층 신경망을 이용한 음성 발생 방향 추론 방법 및 그 장치
JP6912780B2 (ja) 音源強調装置、音源強調学習装置、音源強調方法、プログラム
Tarkov et al. Time series prediction by reservoir neural networks
JP7188589B2 (ja) 復元装置、復元方法、およびプログラム
He Vocal Music Recognition Based on Deep Convolution Neural Network
Yoshikawa et al. A nonlinear parametric model based on a power law relationship for predicting the coastal tsunami height
CN111767204A (zh) 溢出风险检测方法、装置及设备
JP7000586B2 (ja) データ処理システムおよびデータ処理方法
CN111767980A (zh) 模型优化方法、装置及设备
WO2021144934A1 (ja) 音声強調装置、学習装置、それらの方法、およびプログラム
JP2020095202A (ja) 音響信号処理装置、その方法、およびプログラム

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 20917424

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2021575558

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 20917424

Country of ref document: EP

Kind code of ref document: A1