WO2022064602A1 - Signal processing device, method, and program - Google Patents
Signal processing device, method, and program Download PDFInfo
- Publication number
- WO2022064602A1 WO2022064602A1 PCT/JP2020/036059 JP2020036059W WO2022064602A1 WO 2022064602 A1 WO2022064602 A1 WO 2022064602A1 JP 2020036059 W JP2020036059 W JP 2020036059W WO 2022064602 A1 WO2022064602 A1 WO 2022064602A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- separation matrix
- matrix
- auxiliary function
- separation
- signal processing
- Prior art date
Links
- 238000012545 processing Methods 0.000 title claims abstract description 51
- 238000000034 method Methods 0.000 title claims description 56
- 239000011159 matrix material Substances 0.000 claims abstract description 153
- 238000000926 separation method Methods 0.000 claims abstract description 122
- 238000005457 optimization Methods 0.000 claims abstract description 9
- 238000004364 calculation method Methods 0.000 claims description 3
- 238000003672 processing method Methods 0.000 claims description 3
- 230000005945 translocation Effects 0.000 claims description 2
- 230000006870 function Effects 0.000 description 26
- 238000010586 diagram Methods 0.000 description 6
- 238000004458 analytical method Methods 0.000 description 2
- 238000007796 conventional method Methods 0.000 description 2
- 239000000470 constituent Substances 0.000 description 1
- 238000000354 decomposition reaction Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
Images
Classifications
-
- 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
- G10L21/00—Speech or voice signal processing techniques to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
- G10L21/02—Speech enhancement, e.g. noise reduction or echo cancellation
- G10L21/0272—Voice signal separating
Definitions
- the present invention relates to a sound source separation technique for estimating an acoustic signal of an individual sound source from a mixed acoustic signal collected by a plurality of microphones.
- AuxIVA The optimization algorithm (AuxIVA) based on the auxiliary function method, which was developed for independent vector analysis (IVA), which is a method for separating sound sources based on statistical independence between sound sources, is stable and stable. It has been confirmed by experiments that it operates at high speed (see, for example, Non-Patent Document 1).
- IVA independent vector analysis
- an algorithm called an iterative projection method IP1 of Non-Patent Document 1 and IP2 of Non-Patent Document 2 has been proposed so far.
- An object of the present invention is to provide a signal processing device, method and program in which the dimension of a parameter that can be updated per iteration is larger than before and the convergence is faster than before.
- the initial setting part that sets the separation matrix W to the initial value, and h represents the complex conjugate translocation, and the positive constant value Elmeat matrix V 1 , ..., V K appearing in the auxiliary function g (W) is the separation matrix W and observation.
- a separation matrix update unit that updates the separation matrix W by solving with an update algorithm, and a control unit that controls the processing of the auxiliary function update unit and the separation matrix update unit to be alternately and repeatedly executed until a predetermined convergence condition is satisfied. And have.
- the dimension of the parameter that can be updated per iteration is larger than before, and the convergence can be made faster than before.
- FIG. 1 is a diagram showing an example of a functional configuration of a signal processing device.
- FIG. 2 is a diagram showing an example of a processing procedure of a signal processing method.
- FIG. 3 is a diagram showing an example of Algorithm 1.
- FIG. 4 is a diagram showing an example of the algorithm 2.
- FIG. 5 is a diagram showing an example of the algorithm 3.
- FIG. 6 is a diagram showing an example of a functional configuration of a computer.
- the signal processing device includes, for example, an initial setting unit 1, an auxiliary function update unit 2, a separation matrix update unit 3, and a control unit 4.
- the signal processing method is, for example, realized by each component of the signal processing apparatus performing the processing of steps S1 to S4 described below and shown in FIG.
- the initial setting unit 1 sets the separation matrix W to the initial value (step S1).
- the initial value may be a predetermined value or a random number.
- K is a positive integer greater than or equal to 2 and is the number of microphones and sound sources. It is assumed that the number of microphones and the number of sound sources are the same.
- k 1, ..., K, w k ⁇ C K is a filter for separating the signals emitted from the sound source k.
- ⁇ Auxiliary function update unit 2> The separation matrix W is input to the auxiliary function update unit 2.
- the separation matrix W set by the initial setting unit 1 is input.
- the separation matrix W updated by the separation matrix update unit 3 described later is input. Further, an observation signal is input to the auxiliary function update unit 2.
- the auxiliary function update unit 2 updates the auxiliary function g (W) by updating the definite matrix Hermitian matrices V 1 , ..., V K based on the input separation matrix W and the observed signal (step S2).
- the updated auxiliary function g (W) is output to the separation matrix update unit 3.
- the observation signal is a signal that is the target of sound source separation.
- the definite-value Hermitian matrix V 1 ,..., V K ⁇ S ++ K is a matrix that appears in the auxiliary function g (W) defined by the following equation.
- S ++ represents the set of the entire positive constant Hermitian matrix.
- the h on the right shoulder of the matrix or vector represents the complex conjugate transpose of the matrix or vector.
- the base of log is the natural logarithm e.
- the definite matrix Hermitian matrix V 1 , ..., V K is updated based on the separation matrix W and the observation signal by, for example, the method described in Non-Patent Document 1.
- the separation matrix update unit 3 updates the separation matrix W by solving the optimization problem that minimizes the updated auxiliary function g (W) with respect to the separation matrix W by the multiplication update algorithm of the separation matrix W (step S3). ).
- the updated separation matrix W is output to the control unit 4 and the auxiliary function update unit 2.
- any of the algorithms 1 to 3 described below can be adopted.
- FIG. 3 shows the algorithm 1.
- step 2 of the algorithm 1 the separation matrix update unit 3 determines a subset F ⁇ C K ⁇ K of the separation matrix W.
- the separation matrix updater 3 determines the matrix Q ⁇ F that minimizes the value of g (WQ) based on the determined F.
- step 4 of the algorithm 1 the separation matrix update unit 3 calculates WQ from the determined matrix Q, and the calculation result is the updated separation matrix W.
- the separation matrix update unit 3 repeats the processes of step 2 to step 4 of the algorithm 1. As described as “1 repeat” and “until convergence” in the algorithm 1, the separation matrix update unit 3 may repeat the processes of steps 2 to 4 of the algorithm 1 until a predetermined convergence condition is satisfied.
- the separation matrix update unit 3 determines the matrix Q ⁇ F that minimizes the value of g (WQ), calculates WQ from the determined matrix Q, and updates the calculation result of the separation matrix. Repeat the process of setting W.
- FIG. 4 shows the algorithm 2.
- Algorithm 2 can be said to be a subordinate concept of Algorithm 1. Specifically, if it is considered that the processing of Step 3 to Step 4 of Algorithm 1 is realized by the processing of Step 3 to Step 7 of Algorithm 2 or the processing of Step 8 to Step 12 of Algorithm 2, Algorithm 2 Can be said to be a subordinate concept of Algorithm 1.
- Algorithm 1 the parts different from Algorithm 1 will be mainly described.
- the separation matrix update unit 3 alternately selects the set FL and the set F U as F. In other words, when the separation matrix update unit 3 selects the set FL in the previous process of step 2, the separation matrix update unit 3 selects the set F U in the current process of step 2. Further, when the separation matrix update unit 3 selects the set F U in the previous process of step 2, the separation matrix update unit 3 selects the set FL in the process of this step 2. In the process of the first step 2, the separation matrix update unit 3 may select either the set FL or the set F U.
- FL is a set FL ⁇ C K ⁇ K of the entire matrix which is a lower triangular matrix and whose lower right component is 1.
- FU is a set FU ⁇ C K ⁇ K of the entire matrix which is an upper triangular matrix and whose upper left component is 1.
- Q L and Q U * is an arbitrary number, and the value of the blank element of the matrix is 0.
- step 4 the separation matrix update unit 3 processes V i: K ⁇ W i: K h V i W i: K ⁇ S ++ K-i + 1 .
- A be any matrix or vector
- a i: K be a matrix or vector consisting of the i-th to K-th elements of A.
- Wi: K [w i ,..., w K ] ⁇ C K ⁇ (K-i + 1) .
- step 5 the separation matrix update unit 3 processes p i: K ⁇ V i: K -1 e 1 (K-i + 1) ⁇ C K-i + 1 .
- a and b be arbitrary positive integers
- e a (b) is a vector in which the number of elements is b, the ath element is 1, and the other elements are 0.
- step 6 the separation matrix update unit 3 performs the process of q i: K ⁇ p i: K (p i: K h V i: K p i: K ) -1/2 .
- step 7 the separation matrix update unit 3 processes w i ⁇ W i: K q i: K ⁇ C K.
- step 9 the separation matrix update unit 3 processes V 1: i ⁇ W 1: i h V i W 1: i ⁇ S ++ i .
- step 10 the separation matrix update unit 3 processes p 1: i ⁇ V 1: i -1 e i (i) ⁇ C i .
- step 11 the separation matrix update unit 3 processes q 1: i ⁇ p 1: i (p 1: i h V 1: i p 1: i ) -1 / 2 ⁇ C i .
- step 12 the separation matrix update unit 3 processes w i ⁇ W 1: i q 1: i ⁇ C K.
- the separation matrix update unit 3 repeats the processes from step 2 to step 12 of the algorithm 2. As described as “1 repeat” and “until convergence” in the algorithm 2, the separation matrix update unit 3 may repeat the processes of step 2 to step 12 of the algorithm 2 until a predetermined convergence condition is satisfied.
- FIG. 5 shows the algorithm 3.
- Algorithm 2 can be said to be a subordinate concept of Algorithm 1. Specifically, if it is considered that the processing of Step 3 to Step 4 of Algorithm 1 is realized by the processing of Step 3 to Step 10 of Algorithm 3 or the processing of Step 11 to Step 18 of Algorithm 3, Algorithm 3 Can be said to be a subordinate concept of Algorithm 1.
- Algorithm 3 Can be said to be a subordinate concept of Algorithm 1.
- the parts different from Algorithm 1 will be mainly described.
- the separation matrix update unit 3 alternately selects the set FL2 and the set F U2 as F. In other words, when the separation matrix update unit 3 selects the set F L2 in the previous process of step 2, the separation matrix update unit 3 selects the set F U 2 in the process of this step 2. Further, when the separation matrix update unit 3 selects the set F U2 in the previous process of step 2, the separation matrix update unit 3 selects the set F L 2 in the process of this step 2.
- the separation matrix update unit 3 may select either the set FL 2 or the set F U 2 in the process of the first step 2.
- FL 2 is a set of all matrices in which the lower right block is I 2 and is a triangular matrix under the block, F L 2 ⁇ C K ⁇ K.
- F U 2 is a set of all matrices F U 2 ⁇ C K ⁇ K , which is a triangular matrix on the block and the upper left block is I 2 .
- K 6
- Q L2 ⁇ F L2 and Q U2 ⁇ F U 2 are the following matrices. It is assumed that the block is a 2 ⁇ 2 matrix. In the following Q L2 and Q U 2 , * is an arbitrary number, and the value of the blank element of the matrix is 0.
- the process of 2i + 2 and the process of setting the 2 ⁇ 2 submatrix in the upper left of V j: K -1 to G j: K are performed.
- step 7 the separation matrix updater 3 solves the following 2 ⁇ 2 generalized eigenvalues problem. That is, a 2i-1 and a 2i satisfying the following equations are obtained.
- a 2i-1 and a 2i are 2 ⁇ 1 matrices.
- m is a positive integer of 1 or more
- 0 m is a matrix of m ⁇ 1 in which each element is 0.
- the process is performed so that the 2 ⁇ 2 main submatrix at the lower right of 1: j -1 is G 1: j .
- the separation matrix updater 3 solves the following 2 ⁇ 2 generalized eigenvalues problem. That is, a 2i-1 and a 2i satisfying the following equations are obtained.
- the separation matrix update unit 3 repeats the processes from step 2 to step 18 of the algorithm 3. As described as “1 repeat” and "until convergence” in the algorithm 3, the separation matrix updater 3 may repeat the processes of step 2 to step 18 of the algorithm 3 until a predetermined convergence condition is satisfied.
- the algorithm 2 can update the 8 + 16 + ... + 2K dimension of the W parameter dimension K 2 at each iteration. As a result, the convergence becomes faster than before.
- Q ⁇ F U2 ⁇ can be obtained through generalized eigenvalue decomposition as shown in Proposition 4 of Reference 1. The description is omitted here due to space limitations.
- Control unit 4 The separation matrix W updated by the separation matrix update unit 3 is input to the control unit 4.
- the control unit 4 controls so that the processes of the auxiliary function update unit 2 and the separation matrix update unit 3 are alternately and repeatedly executed until a predetermined convergence condition is satisfied (step S4).
- An example of a predetermined convergence condition is until a predetermined number of repetitions is reached or the update amount of each parameter becomes equal to or less than a predetermined threshold value.
- control unit 4 When a predetermined convergence condition is satisfied, the control unit 4 outputs a separation matrix W satisfying the predetermined convergence condition.
- the separation matrix W is output to the separation unit 5 described later.
- the signal processing device may further include a separation unit 5.
- the observation signal X and the separation matrix W output by the control unit 4 are input to the separation unit 5.
- the separation unit 5 obtains K separation signals from the observation signal X by using the separation matrix W obtained by the signal processing device, in other words, the separation matrix W output by the control unit 4.
- data may be exchanged directly between the constituent units of the signal processing device, or may be performed via a storage unit (not shown).
- the program that describes this processing content can be recorded on a computer-readable recording medium.
- the computer-readable recording medium is, for example, a non-temporary recording medium, specifically, a magnetic recording device, an optical disk, or the like.
- this program is carried out, for example, by selling, transferring, renting, etc. a portable recording medium such as a DVD or CD-ROM in 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 the network.
- a computer that executes such a program for example, first transfers a program recorded on a portable recording medium or a program transferred from a server computer to an auxiliary recording unit 1050, which is its own non-temporary storage device. Store. Then, at the time of executing the process, the computer reads the program stored in the auxiliary recording unit 1050, which is its own non-temporary storage device, into the storage unit 1020, and executes the process according to the read program. Further, as another execution form of this program, a computer may read the program directly from the portable recording medium into the storage unit 1020 and execute the processing according to the program, and further, the program from the server computer to this computer may be executed. Each time the computer is transferred, the processing according to the received program may be executed sequentially.
- ASP Application Service Provider
- the program in this embodiment includes information 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 that regulates 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.
Landscapes
- Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- Quality & Reliability (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Circuit For Audible Band Transducer (AREA)
Abstract
This signal processing device comprises: an initial setting unit 1 that sets a separation matrix W to an initial value, the separation matrix W being W = [w1, ···, wK]∈CK×K where K is a positive integer of 2 or more and the number of microphones and sound sources; an auxiliary function updating unit 2 that updates an auxiliary function g(W) by updating, on the basis of the separation matrix W and an observation signal, a positive-definite Hermitian matrix V1, ···, VK appearing in the auxiliary function g(W), with h denoting a complex conjugate transpose; a separation matrix updating unit 3 that updates the separation matrix W by solving an optimization problem which minimizes the updated auxiliary function g(W) with respect to the separation matrix W by the multiplicative update algorithm of the separation matrix W; and a control unit 4 that performs control such that processing of the auxiliary function updating unit and processing of the separation matrix updating unit are alternately repeatedly performed until a predetermined convergence condition is satisfied.
Description
本発明は、複数のマイクロホンで集音した混合音響信号から、個々の音源の音響信号を推定する音源分離技術に関する。
The present invention relates to a sound source separation technique for estimating an acoustic signal of an individual sound source from a mixed acoustic signal collected by a plurality of microphones.
音源間の統計的独立性に基づいて音源分離方法を行う手法である独立ベクトル分析(independent vector analysis: IVA)に対して開発された、補助関数法に基づく最適化アルゴリズム(AuxIVA)は、安定かつ高速に動作することが実験により確認されている(例えば、非特許文献1参照。)。AuxIVAでは、補助関数(非特許文献1の式(1)のg(W))を分離行列Wについて最小化する最適化問題であるmax-det問題を繰り返し解く必要がある。この問題を解く最適化アルゴリズムとして、これまでに、反復射影法(非特許文献1のIP1と非特許文献2のIP2)と呼ばれるアルゴリズムが提案されていた。
The optimization algorithm (AuxIVA) based on the auxiliary function method, which was developed for independent vector analysis (IVA), which is a method for separating sound sources based on statistical independence between sound sources, is stable and stable. It has been confirmed by experiments that it operates at high speed (see, for example, Non-Patent Document 1). In AuxIVA, it is necessary to repeatedly solve the max-det problem, which is an optimization problem that minimizes the auxiliary function (g (W) in Eq. (1) of Non-Patent Document 1) with respect to the separation matrix W. As an optimization algorithm for solving this problem, an algorithm called an iterative projection method (IP1 of Non-Patent Document 1 and IP2 of Non-Patent Document 2) has been proposed so far.
しかし、Max-det問題を解く従来の最適化アルゴリズムIP1とIP2では、一度の反復あたりに更新できるパラメータの次元が小さく、収束が遅い場合があった。
However, with the conventional optimization algorithms IP1 and IP2 that solve the Max-det problem, the dimension of the parameters that can be updated per iteration is small, and convergence may be slow.
本発明は、一度の反復あたりに更新できるパラメータの次元が従来よりも大きく、収束が従来よりも速い信号処理装置、方法及びプログラムを提供することを目的とする。
An object of the present invention is to provide a signal processing device, method and program in which the dimension of a parameter that can be updated per iteration is larger than before and the convergence is faster than before.
この発明の一態様による信号処理装置は、Kは2以上の正の整数であり、マイクロホン及び音源の個数であり、分離行列WはW=[w1,…,wK]∈CK×Kであり、分離行列Wを初期値に設定する初期設定部と、hは複素共役転置を表し、補助関数g(W)に現れる正定値エルミート行列V1, …, VKを分離行列W及び観測信号に基づいて更新することで補助関数g(W)を更新する補助関数更新部と、更新された補助関数g(W)を分離行列Wについて最小化する最適化問題を、分離行列Wの乗算更新アルゴリズムにより解くことで、分離行列Wを更新する分離行列更新部と、所定の収束条件を満たすまで、補助関数更新部及び分離行列更新部の処理を交互に繰り返し実行させるように制御する制御部と、を備えている。
In the signal processing device according to one aspect of the present invention, K is a positive integer of 2 or more, the number of microphones and sound sources, and the separation matrix W is W = [w 1 , ..., w K ] ∈ C K × K. The initial setting part that sets the separation matrix W to the initial value, and h represents the complex conjugate translocation, and the positive constant value Elmeat matrix V 1 , ..., V K appearing in the auxiliary function g (W) is the separation matrix W and observation. Multiplying the separation matrix W with the auxiliary function updater that updates the auxiliary function g (W) by updating based on the signal and the optimization problem that minimizes the updated auxiliary function g (W) for the separation matrix W. A separation matrix update unit that updates the separation matrix W by solving with an update algorithm, and a control unit that controls the processing of the auxiliary function update unit and the separation matrix update unit to be alternately and repeatedly executed until a predetermined convergence condition is satisfied. And have.
一度の反復あたりに更新できるパラメータの次元が従来よりも大きく、収束を従来よりも速くすることができる。
The dimension of the parameter that can be updated per iteration is larger than before, and the convergence can be made faster than before.
以下、本発明の実施の形態について詳細に説明する。なお、図面中において同じ機能を有する構成部には同じ番号を付し、重複説明を省略する。
Hereinafter, embodiments of the present invention will be described in detail. In the drawings, the components having the same function are given the same number, and duplicate description is omitted.
[信号処理装置及び方法]
信号処理装置は、図1に示すように、初期設定部1、補助関数更新部2、分離行列更新部3及び制御部4を例えば備えている。 [Signal processing device and method]
As shown in FIG. 1, the signal processing device includes, for example, aninitial setting unit 1, an auxiliary function update unit 2, a separation matrix update unit 3, and a control unit 4.
信号処理装置は、図1に示すように、初期設定部1、補助関数更新部2、分離行列更新部3及び制御部4を例えば備えている。 [Signal processing device and method]
As shown in FIG. 1, the signal processing device includes, for example, an
信号処理方法は、信号処理装置の各構成部が、以下に説明する及び図2に示すステップS1からステップS4の処理を行うことにより例えば実現される。
The signal processing method is, for example, realized by each component of the signal processing apparatus performing the processing of steps S1 to S4 described below and shown in FIG.
以下、信号処理装置の各構成部について説明する。なお、以下の処理は、各周波数ビン毎に行われるとする。
Hereinafter, each component of the signal processing device will be described. It is assumed that the following processing is performed for each frequency bin.
<初期設定部1>
初期設定部1は、分離行列Wを初期値に設定する(ステップS1)。 <Initial setting unit 1>
Theinitial setting unit 1 sets the separation matrix W to the initial value (step S1).
初期設定部1は、分離行列Wを初期値に設定する(ステップS1)。 <
The
初期値は予め定められた値であってもよいし、乱数であってもよい。
The initial value may be a predetermined value or a random number.
ここで、分離行列WはW=[w1,…,wK]∈CK×Kである。Kは2以上の正の整数であり、マイクロホン及び音源の個数である。マイクロホンの個数及び音源の個数は、同じであるとする。k=1,…,Kとして、wk∈CKは、音源kから発せられた信号を分離するためのフィルタである。
Here, the separation matrix W is W = [w 1 ,…, w K ] ∈ C K × K. K is a positive integer greater than or equal to 2 and is the number of microphones and sound sources. It is assumed that the number of microphones and the number of sound sources are the same. As k = 1, ..., K, w k ∈ C K is a filter for separating the signals emitted from the sound source k.
<補助関数更新部2>
補助関数更新部2には、分離行列Wが入力される。補助関数更新部2の第1回目の処理では、初期設定部1により設定された分離行列Wが入力される。補助関数更新部2の第2回目以降の処理では、後述する分離行列更新部3により更新された分離行列Wが入力される。また、補助関数更新部2には、観測信号が入力される。 <Auxiliaryfunction update unit 2>
The separation matrix W is input to the auxiliaryfunction update unit 2. In the first process of the auxiliary function update unit 2, the separation matrix W set by the initial setting unit 1 is input. In the second and subsequent processes of the auxiliary function update unit 2, the separation matrix W updated by the separation matrix update unit 3 described later is input. Further, an observation signal is input to the auxiliary function update unit 2.
補助関数更新部2には、分離行列Wが入力される。補助関数更新部2の第1回目の処理では、初期設定部1により設定された分離行列Wが入力される。補助関数更新部2の第2回目以降の処理では、後述する分離行列更新部3により更新された分離行列Wが入力される。また、補助関数更新部2には、観測信号が入力される。 <Auxiliary
The separation matrix W is input to the auxiliary
補助関数更新部2は、正定値エルミート行列V1, …, VKを、入力された分離行列W及び観測信号に基づいて更新することで補助関数g(W)を更新する(ステップS2)。
The auxiliary function update unit 2 updates the auxiliary function g (W) by updating the definite matrix Hermitian matrices V 1 , ..., V K based on the input separation matrix W and the observed signal (step S2).
更新された補助関数g(W)は、分離行列更新部3に出力される。
The updated auxiliary function g (W) is output to the separation matrix update unit 3.
観測信号は、音源分離の対象となる信号である。
The observation signal is a signal that is the target of sound source separation.
正定値エルミート行列V1, …, VK∈S++
Kは、以下の式で定義される補助関数g(W)に現れる行列である。S++は、正定値エルミート行列全体の集合を表す。行列又はベクトルの右肩のhはその行列又はそのベクトルの複素共役転置を表す。以下の式において、logの底は、自然対数eである。
正定値エルミート行列V1, …, VKは、例えば、非特許文献1に記載の方法により、分離行列W及び観測信号に基づいて更新される。
The definite-value Hermitian matrix V 1 ,…, V K ∈ S ++ K is a matrix that appears in the auxiliary function g (W) defined by the following equation. S ++ represents the set of the entire positive constant Hermitian matrix. The h on the right shoulder of the matrix or vector represents the complex conjugate transpose of the matrix or vector. In the following equation, the base of log is the natural logarithm e.
The definite matrix Hermitian matrix V 1 , ..., V K is updated based on the separation matrix W and the observation signal by, for example, the method described in Non-Patent Document 1.
<分離行列更新部3>
分離行列更新部3には、補助関数更新部2で更新された補助関数g(W)が入力される。 <Separationmatrix update unit 3>
The auxiliary function g (W) updated by the auxiliaryfunction update unit 2 is input to the separation matrix update unit 3.
分離行列更新部3には、補助関数更新部2で更新された補助関数g(W)が入力される。 <Separation
The auxiliary function g (W) updated by the auxiliary
分離行列更新部3は、更新された補助関数g(W)を分離行列Wについて最小化する最適化問題を、分離行列Wの乗算更新アルゴリズムにより解くことで、分離行列Wを更新する(ステップS3)。
The separation matrix update unit 3 updates the separation matrix W by solving the optimization problem that minimizes the updated auxiliary function g (W) with respect to the separation matrix W by the multiplication update algorithm of the separation matrix W (step S3). ).
更新された分離行列Wは、制御部4及び補助関数更新部2に出力される。
The updated separation matrix W is output to the control unit 4 and the auxiliary function update unit 2.
分離行列Wの乗算更新アルゴリズムとして、以下に説明するアルゴリズム1からアルゴリズム3の何れかのアルゴリズムを採用することができる。
As the multiplication update algorithm of the separation matrix W, any of the algorithms 1 to 3 described below can be adopted.
<<アルゴリズム1>>
図3に、アルゴリズム1を示す。 <<Algorithm 1 >>
FIG. 3 shows thealgorithm 1.
図3に、アルゴリズム1を示す。 <<
FIG. 3 shows the
アルゴリズム1のステップ2において、分離行列更新部3は、分離行列Wの部分集合F⊆CK×Kを決定する。
In step 2 of the algorithm 1, the separation matrix update unit 3 determines a subset F ⊆ C K × K of the separation matrix W.
アルゴリズム1のステップ3において、分離行列更新部3は、決定されたFに基づいて、g(WQ)の値を最小化する行列Q∈Fを決定する。
In step 3 of the algorithm 1, the separation matrix updater 3 determines the matrix Q ∈ F that minimizes the value of g (WQ) based on the determined F.
アルゴリズム1のステップ4において、分離行列更新部3は、決定された行列QからWQを計算し、その計算結果を更新後の分離行列Wとする。
In step 4 of the algorithm 1, the separation matrix update unit 3 calculates WQ from the determined matrix Q, and the calculation result is the updated separation matrix W.
分離行列更新部3は、アルゴリズム1のステップ2からステップ4の処理を、繰り返し行う。アルゴリズム1で「1 repeat」「until convergence」と記載されているように、分離行列更新部3は、アルゴリズム1のステップ2からステップ4の処理を、所定の収束条件を満たすまで繰り返してもよい。
The separation matrix update unit 3 repeats the processes of step 2 to step 4 of the algorithm 1. As described as "1 repeat" and "until convergence" in the algorithm 1, the separation matrix update unit 3 may repeat the processes of steps 2 to 4 of the algorithm 1 until a predetermined convergence condition is satisfied.
このようにして、分離行列更新部3は、g(WQ)の値を最小化する行列Q∈Fを決定し、決定された行列QからWQを計算し、その計算結果を更新後の分離行列Wとする処理を繰り返し行う。
In this way, the separation matrix update unit 3 determines the matrix Q ∈ F that minimizes the value of g (WQ), calculates WQ from the determined matrix Q, and updates the calculation result of the separation matrix. Repeat the process of setting W.
このように、乗算更新アルゴリズムを用いて分離行列を更新することで、一度の反復で更新できるパラメータの次元を大きくできる。これにより、収束が従来よりも早くなる。
In this way, by updating the separation matrix using the multiplication update algorithm, the dimension of the parameter that can be updated in one iteration can be increased. As a result, the convergence becomes faster than before.
<<アルゴリズム2>>
図4に、アルゴリズム2を示す。 <<Algorithm 2 >>
FIG. 4 shows thealgorithm 2.
図4に、アルゴリズム2を示す。 <<
FIG. 4 shows the
アルゴリズム2は、アルゴリズム1の下位概念とも言える。具体的には、アルゴリズム1のステップ3からステップ4の処理が、アルゴリズム2のステップ3からステップ7の処理、又は、アルゴリズム2のステップ8からステップ12の処理で実現されると捉えれば、アルゴリズム2は、アルゴリズム1の下位概念であると言える。以下、アルゴリズム1と異なる部分を中心に説明する。
Algorithm 2 can be said to be a subordinate concept of Algorithm 1. Specifically, if it is considered that the processing of Step 3 to Step 4 of Algorithm 1 is realized by the processing of Step 3 to Step 7 of Algorithm 2 or the processing of Step 8 to Step 12 of Algorithm 2, Algorithm 2 Can be said to be a subordinate concept of Algorithm 1. Hereinafter, the parts different from Algorithm 1 will be mainly described.
アルゴリズム2では、ステップ2において、分離行列更新部3は、Fとして、集合FL及び集合FUを交互に選択する。言い換えれば、分離行列更新部3が前回のステップ2の処理において集合FLを選択した場合には、分離行列更新部3は今回のステップ2の処理において集合FUを選択する。また、分離行列更新部3が前回のステップ2の処理において集合FUを選択した場合には、分離行列更新部3は今回のステップ2の処理において集合FLを選択する。なお、分離行列更新部3は、初回のステップ2の処理において、集合FL及び集合FUのどちらを選択してもよい。
In the algorithm 2, in step 2, the separation matrix update unit 3 alternately selects the set FL and the set F U as F. In other words, when the separation matrix update unit 3 selects the set FL in the previous process of step 2, the separation matrix update unit 3 selects the set F U in the current process of step 2. Further, when the separation matrix update unit 3 selects the set F U in the previous process of step 2, the separation matrix update unit 3 selects the set FL in the process of this step 2. In the process of the first step 2, the separation matrix update unit 3 may select either the set FL or the set F U.
ここで、FLは、下三角行列であって右下の成分が1である行列全体の集合FL∈CK×Kである。また、FUは、上三角行列であって左上の成分が1である行列全体の集合FU∈CK×Kである。例えば、K=4のとき、QL⊆FL及びQU⊆FUは次のような行列である。なお、以下のQL及びQUにおいて、*は任意の数であり、行列の空白の要素の値は0である。
ステップ2の処理でFLを選択した場合には、分離行列更新部3は、ステップ3からステップ7の処理を行う。すなわち、この場合、分離行列更新部3は、i=1,…,K-1のそれぞれについて、ステップ4からステップ7の処理を行う。
Here, FL is a set FL ∈ C K × K of the entire matrix which is a lower triangular matrix and whose lower right component is 1. Further, FU is a set FU ∈ C K × K of the entire matrix which is an upper triangular matrix and whose upper left component is 1. For example, when K = 4, Q L ⊆ F L and Q U ⊆ F U are the following matrices. In the following Q L and Q U , * is an arbitrary number, and the value of the blank element of the matrix is 0.
When FL is selected in the process of step 2, the separation matrix update unit 3 performs the processes of steps 3 to 7. That is, in this case, the separation matrix update unit 3 performs the processes of steps 4 to 7 for each of i = 1, ..., K-1.
ステップ4では、分離行列更新部3は、Vi:K←Wi:K
hViWi:K∈S++
K-i+1の処理を行う。任意の行列又はベクトルをAとして、Ai:KはAのi番目からK番目の要素からなる行列又はベクトルであるとする。例えば、Wi:K=[wi,…,wK]∈CK×(K-i+1)である。
In step 4, the separation matrix update unit 3 processes V i: K ← W i: K h V i W i: K ∈ S ++ K-i + 1 . Let A be any matrix or vector, and let A i: K be a matrix or vector consisting of the i-th to K-th elements of A. For example, Wi: K = [w i ,…, w K ] ∈ C K × (K-i + 1) .
ステップ5では、分離行列更新部3は、pi:K←Vi:K
-1e1
(K-i+1)∈CK-i+1の処理を行う。ここで、a,bを任意の正の整数として、ea
(b)は、要素数がbであり、a番目の要素が1であり他の要素が0であるベクトルである。
In step 5, the separation matrix update unit 3 processes p i: K ← V i: K -1 e 1 (K-i + 1) ∈ C K-i + 1 . Here, let a and b be arbitrary positive integers, e a (b) is a vector in which the number of elements is b, the ath element is 1, and the other elements are 0.
ステップ6では、分離行列更新部3は、qi:K←pi:K(pi:K
h Vi:K pi:K)-1/2の処理を行う。
In step 6, the separation matrix update unit 3 performs the process of q i: K ← p i: K (p i: K h V i: K p i: K ) -1/2 .
ステップ7では、分離行列更新部3は、wi←Wi:K qi:K∈CKの処理を行う。
In step 7, the separation matrix update unit 3 processes w i ← W i: K q i: K ∈ C K.
ステップ2の処理でFUを選択した場合には、分離行列更新部3は、ステップ8からステップ12の処理を行う。すなわち、この場合、分離行列更新部3は、i=K,…,2のそれぞれについて、ステップ8からステップ12の処理を行う。
When FU is selected in the process of step 2, the separation matrix update unit 3 performs the processes of steps 8 to 12. That is, in this case, the separation matrix update unit 3 performs the processes of steps 8 to 12 for each of i = K, ..., 2.
ステップ9では、分離行列更新部3は、V1:i←W1:i
hViW1:i∈S++
iの処理を行う。
In step 9, the separation matrix update unit 3 processes V 1: i ← W 1: i h V i W 1: i ∈ S ++ i .
ステップ10では、分離行列更新部3は、p1:i←V1:i
-1ei
(i)∈Ciの処理を行う。
In step 10, the separation matrix update unit 3 processes p 1: i ← V 1: i -1 e i (i) ∈ C i .
ステップ11では、分離行列更新部3は、q1:i←p1:i(p1:i
h V1:i p1:i)-1/2∈Ciの処理を行う。
In step 11, the separation matrix update unit 3 processes q 1: i ← p 1: i (p 1: i h V 1: i p 1: i ) -1 / 2 ∈ C i .
ステップ12では、分離行列更新部3は、wi←W1:i q1:i∈CKの処理を行う。
In step 12, the separation matrix update unit 3 processes w i ← W 1: i q 1: i ∈ C K.
分離行列更新部3は、アルゴリズム2のステップ2からステップ12の処理を、繰り返し行う。アルゴリズム2で「1 repeat」「until convergence」と記載されているように、分離行列更新部3は、アルゴリズム2のステップ2からステップ12の処理を、所定の収束条件を満たすまで繰り返してもよい。
The separation matrix update unit 3 repeats the processes from step 2 to step 12 of the algorithm 2. As described as "1 repeat" and "until convergence" in the algorithm 2, the separation matrix update unit 3 may repeat the processes of step 2 to step 12 of the algorithm 2 until a predetermined convergence condition is satisfied.
従来手法のIP1では、各反復において、K次元だけ更新することができた。一方、アルゴリズム2により、各反復において、Wのパラメータの次元K2のうち、2+3+…+K次元を更新できる。これにより、収束が従来よりも速くなる。
With the conventional method IP1, only the K dimension could be updated at each iteration. On the other hand, the algorithm 2 allows the 2 + 3 + ... + K dimensions of the W parameter dimension K 2 to be updated at each iteration. As a result, the convergence becomes faster than before.
以下、アルゴリズム2の理論的背景について説明する。
The theoretical background of Algorithm 2 will be described below.
任意の正則行列Qに対して、ある置換行列Pが存在して、PQはLU分解可能であることが知られている。すなわち、PQ=LUとなるL∈FLとU∈FUが存在することが知られている。さらに、一般のQに対しては、Pは単位行列にとれることが知られている。このことから、max-det問題
を直接解くことを諦めて、次の2つの最適化問題を交互に解くことにする。
以降では、Q∈argmin{g(WQ)|Q∈F}を厳密に解くアルゴリズムを導出する。まずは、F=FUの場合を考える。Q∈FUの第i列の非零成分からなるベクトルをq1:i∈Ciとおき、また、W1:i=[w1,…,wi]∈CK×iと書くと、g(WQ)は、定数項を除いて、以下のように表される。
ただし,qiiはQの第(i,i)成分である。このg(WQ)をQについて最小化する問題の大域的最適解は、gが各q1:iについて分離されているため、以下のように求めることができる。
次に、F=FLの場合を考える。Q∈FLの第i列の非零成分からなるベクトルをqi:K∈CK-i+1とおき、また、Wi:K=[wi,…,wK]∈CK×(K-i+1)とおくと、g(WQ)は、定数項を除いて、以下のように表される。
このg(WQ)をQについて最小化する問題の大域的最適解は、先ほどと同様にして、以下のように求めることができる。
このことから、アルゴリズム2は、図4のようになる。
It is known that for any regular matrix Q, there is a permutation matrix P, and PQ can be LU decomposed. That is, it is known that L ∈ FL and U ∈ FU for which PQ = LU exist. Furthermore, for general Q, it is known that P can be taken as an identity matrix. From this, the max-det problem
I give up solving directly and decide to solve the following two optimization problems alternately.
In the following, we derive an algorithm that exactly solves Q ∈ argmin {g (WQ) | Q ∈ F}. First, consider the case of F = F U. If we set the vector consisting of the non-zero components of the i-th column of Q ∈ F U as q 1: i ∈ C i , and write W 1: i = [w 1 ,…, w i ] ∈ C K × i . , G (WQ) is expressed as follows, except for the constant term.
However, q ii is the (i, i) component of Q. The global optimal solution to the problem of minimizing this g (WQ) with respect to Q can be obtained as follows because g is separated for each q 1: i .
Next, consider the case of F = FL. Let q i: K ∈ C K-i + 1 be the vector consisting of the non-zero components of the i-th column of Q ∈ FL, and W i: K = [w i ,…, w K ] ∈ C K × ( Assuming K-i + 1) , g (WQ) is expressed as follows, except for the constant term.
The global optimum solution of the problem that minimizes this g (WQ) with respect to Q can be obtained as follows in the same manner as before.
From this, the algorithm 2 is as shown in FIG.
<<アルゴリズム3>>
図5に、アルゴリズム3を示す。 <<Algorithm 3 >>
FIG. 5 shows thealgorithm 3.
図5に、アルゴリズム3を示す。 <<
FIG. 5 shows the
アルゴリズム2は、アルゴリズム1の下位概念とも言える。具体的には、アルゴリズム1のステップ3からステップ4の処理が、アルゴリズム3のステップ3からステップ10の処理、又は、アルゴリズム3のステップ11からステップ18の処理で実現されると捉えれば、アルゴリズム3は、アルゴリズム1の下位概念であると言える。以下、アルゴリズム1と異なる部分を中心に説明する。
Algorithm 2 can be said to be a subordinate concept of Algorithm 1. Specifically, if it is considered that the processing of Step 3 to Step 4 of Algorithm 1 is realized by the processing of Step 3 to Step 10 of Algorithm 3 or the processing of Step 11 to Step 18 of Algorithm 3, Algorithm 3 Can be said to be a subordinate concept of Algorithm 1. Hereinafter, the parts different from Algorithm 1 will be mainly described.
アルゴリズム3では、Kは偶数であるとする。
In Algorithm 3, K is even.
アルゴリズム3では、ステップ2において、分離行列更新部3は、Fとして、集合FL2及び集合FU2を交互に選択する。言い換えれば、分離行列更新部3が前回のステップ2の処理において集合FL2を選択した場合には、分離行列更新部3は今回のステップ2の処理において集合FU2を選択する。また、分離行列更新部3が前回のステップ2の処理において集合FU2を選択した場合には、分離行列更新部3は今回のステップ2の処理において集合FL2を選択する。なお、分離行列更新部3は、初回のステップ2の処理において、集合FL2及び集合FU2のどちらを選択してもよい。
In the algorithm 3, in step 2, the separation matrix update unit 3 alternately selects the set FL2 and the set F U2 as F. In other words, when the separation matrix update unit 3 selects the set F L2 in the previous process of step 2, the separation matrix update unit 3 selects the set F U 2 in the process of this step 2. Further, when the separation matrix update unit 3 selects the set F U2 in the previous process of step 2, the separation matrix update unit 3 selects the set F L 2 in the process of this step 2. The separation matrix update unit 3 may select either the set FL 2 or the set F U 2 in the process of the first step 2.
ここで、FL2は、ブロック下三角行列であって右下のブロックがI2である行列全体の集合FL2∈CK×Kである。また、FU2は、ブロック上三角行列であって左上のブロックがI2である行列全体の集合FU2∈CK×Kである。例えば、K=6のとき、QL2⊆FL2及びQU2⊆FU2は次のような行列である。なお、ブロックは2×2の行列であるとする。以下のQL2及びQU2において、*は任意の数であり、行列の空白の要素の値は0である。
ステップ2の処理でFL2を選択した場合には、分離行列更新部3は、ステップ3からステップ10の処理を行う。すなわち、この場合、分離行列更新部3は、i=1,…,K/2-1のそれぞれについて、ステップ4からステップ10の処理を行う。
Here, FL 2 is a set of all matrices in which the lower right block is I 2 and is a triangular matrix under the block, F L 2 ∈ C K × K. Also, F U 2 is a set of all matrices F U 2 ∈ C K × K , which is a triangular matrix on the block and the upper left block is I 2 . For example, when K = 6, Q L2 ⊆ F L2 and Q U2 ⊆ F U 2 are the following matrices. It is assumed that the block is a 2 × 2 matrix. In the following Q L2 and Q U 2 , * is an arbitrary number, and the value of the blank element of the matrix is 0.
When FL2 is selected in the process of step 2, the separation matrix update unit 3 performs the process of step 3 to step 10. That is, in this case, the separation matrix update unit 3 performs the processes from step 4 to step 10 for each of i = 1, ..., K / 2-1.
ステップ4から6において、分離行列更新部3は、j=2i-1,2iのそれぞれについて、Vj:K←W2i-1:K
hVj W2i-1:K∈S++
K-2i+2という処理と、Vj:K
-1の左上の2×2主小行列をGj:Kとする処理とを行う。
In steps 4 to 6, the separation matrix updater 3 performs V j: K ← W 2i-1: K h V j W 2i-1: K ∈ S ++ K- for each of j = 2i-1, 2i. The process of 2i + 2 and the process of setting the 2 × 2 submatrix in the upper left of V j: K -1 to G j: K are performed.
ステップ7において、分離行列更新部3は、次の2×2の一般化固有値問題を解く。すなわち、以下の式を満たすa2i-1,a2iを求める。ここで、a2i-1,a2iは、2×1の行列である。
ステップ8から10において、分離行列更新部3は、j=2i-1,2iのそれぞれについて、以下の処理を行う。ここで、mを1以上の正の整数として、0mは各要素が0であるm×1の行列である。
ステップ2の処理でFUを選択した場合には、分離行列更新部3は、ステップ11からステップ18の処理を行う。すなわち、この場合、分離行列更新部3は、i=K/2,…,2のそれぞれについて、ステップ12からステップ18の処理を行う。
In step 7, the separation matrix updater 3 solves the following 2 × 2 generalized eigenvalues problem. That is, a 2i-1 and a 2i satisfying the following equations are obtained. Here, a 2i-1 and a 2i are 2 × 1 matrices.
In steps 8 to 10, the separation matrix update unit 3 performs the following processing for each of j = 2i-1, 2i. Here, where m is a positive integer of 1 or more, 0 m is a matrix of m × 1 in which each element is 0.
When FU is selected in the process of step 2, the separation matrix update unit 3 performs the processes of steps 11 to 18. That is, in this case, the separation matrix update unit 3 performs the processes from step 12 to step 18 for each of i = K / 2, ..., 2.
ステップ12から14において、分離行列更新部3は、j=2i-1,2iのそれぞれについて、V1:j←W1:2i
hVj W1:2i∈S++
2iという処理と、V1:j
-1の右下の2×2主小行列をG1:jとする処理とを行う。
In steps 12 to 14, the separation matrix updater 3 performs the process of V 1: j ← W 1: 2i h V j W 1: 2i ∈ S ++ 2i and V for each of j = 2i-1, 2i. The process is performed so that the 2 × 2 main submatrix at the lower right of 1: j -1 is G 1: j .
ステップ15において、分離行列更新部3は、次の2×2の一般化固有値問題を解く。すなわち、以下の式を満たすa2i-1,a2iを求める。
ステップ16から18において、分離行列更新部3は、j=2i-1,2iのそれぞれについて、以下の処理を行う。
分離行列更新部3は、アルゴリズム3のステップ2からステップ18の処理を、繰り返し行う。アルゴリズム3で「1 repeat」「until convergence」と記載されているように、分離行列更新部3は、アルゴリズム3のステップ2からステップ18の処理を、所定の収束条件を満たすまで繰り返してもよい。
In step 15, the separation matrix updater 3 solves the following 2 × 2 generalized eigenvalues problem. That is, a 2i-1 and a 2i satisfying the following equations are obtained.
In steps 16 to 18, the separation matrix update unit 3 performs the following processing for each of j = 2i-1, 2i.
The separation matrix update unit 3 repeats the processes from step 2 to step 18 of the algorithm 3. As described as "1 repeat" and "until convergence" in the algorithm 3, the separation matrix updater 3 may repeat the processes of step 2 to step 18 of the algorithm 3 until a predetermined convergence condition is satisfied.
従来手法のIP1では、各反復において、K次元だけ更新することができた。一方、アルゴリズム2により、各反復において、Wのパラメータの次元K2のうち、8+16+…+2K次元を更新できる。これにより、収束が従来よりも速くなる。
With the conventional method IP1, only the K dimension could be updated at each iteration. On the other hand, the algorithm 2 can update the 8 + 16 + ... + 2K dimension of the W parameter dimension K 2 at each iteration. As a result, the convergence becomes faster than before.
以下、アルゴリズム3の理論的背景について説明する。
The theoretical background of Algorithm 3 will be described below.
まずは、F=FU2の場合を考える。Q∈FU2の第(2i-1)列と第2i列の非零成分からなるベクトルをq2i-1, q2i∈C2iとおき、Qの第(2i-1)列と第2i列にある2×2の対角ブロックをQ2i-1:2i∈C2×2と書くことにする。また、W1:2i=[w1,…,w2i]∈CK×2iとおく。すると、g(WQ)は、定数項を除いて、以下のように表される。
g(WQ)のQ∈FU2に関する停留条件は、各q2i-1, q2i∈C2i(i=2,…,K2)について、以下のように書ける。
この停留条件を満たすQや大域的最適解Q∈argmin{g(WQ)|Q∈FU2}は、参考文献1の命題4にあるように,一般化固有値分解を通して求めることができる。ここでは紙面の都合上説明は省略する。
First, consider the case of F = F U2 . Let q 2i-1 , q 2i ∈ C 2i be the vector consisting of the non-zero components of the (2i-1) and 2i columns of Q ∈ F U2 , and the (2i-1) and 2i columns of Q. Let us write the 2 × 2 diagonal block in Q 2i-1: 2i ∈ C 2 × 2 . Also, let W 1: 2i = [w 1 ,…, w 2i ] ∈ C K × 2i . Then, g (WQ) is expressed as follows, except for the constant term.
The stagnation condition for Q ∈ F U 2 of g (WQ) can be written as follows for each q 2i-1 and q 2i ∈ C 2i (i = 2,…, K 2 ).
Q that satisfies this retention condition and the global optimal solution Q ∈ argmin {g (WQ) | Q ∈ F U2 } can be obtained through generalized eigenvalue decomposition as shown in Proposition 4 of Reference 1. The description is omitted here due to space limitations.
〔参考文献1〕R. Ikeshita, N. Ito, T. Nakatani, and H. Sawada, "Independent Low-rank Matrix Analysis with Decorrelation Learning," Proc. IEEE Workshop Applications of Signal Processing to Audio and Acoustics (WASPAA), pp. 283 - 287, Oct. 2019.
次に、F=FL2の場合を考える。Q∈FL2の第(2i-1)列と第2i列の非零成分からなるベクトルをq2i-1, q2i∈CK-2i+2とおき、また、W(2i-1):K=[w2i-1,…,wK]∈CK×(K-2i+2)と書くことにすると、g(WQ)は、定数項を除いて、以下のように表される。
このg(WQ)をQについて最小化する問題の大域的最適解は、先ほどと同様に、参考文献1の命題4によって求めることができる。
[Reference 1] R. Ikeshita, N. Ito, T. Nakatani, and H. Sawada, "Independent Low-rank Matrix Analysis with Decorrelation Learning," Proc. IEEE Workshop Applications of Signal Processing to Audio and Acoustics (WASPAA), pp. 283 --287, Oct. 2019.
Next, consider the case of F = F L2 . Let q 2i-1 , q 2i ∈ C K-2i + 2 be the vector consisting of the non-zero components of the (2i-1) and 2i columns of Q ∈ F L2 , and W (2i-1) :. If we write K = [w 2i-1 ,…, w K ] ∈ C K × (K-2i + 2) , g (WQ) is expressed as follows, except for the constant term.
The global optimal solution of the problem of minimizing this g (WQ) with respect to Q can be obtained by Proposition 4 of Reference 1 as before.
次に、F=FL2の場合を考える。Q∈FL2の第(2i-1)列と第2i列の非零成分からなるベクトルをq2i-1, q2i∈CK-2i+2とおき、また、W(2i-1):K=[w2i-1,…,wK]∈CK×(K-2i+2)と書くことにすると、g(WQ)は、定数項を除いて、以下のように表される。
Next, consider the case of F = F L2 . Let q 2i-1 , q 2i ∈ C K-2i + 2 be the vector consisting of the non-zero components of the (2i-1) and 2i columns of Q ∈ F L2 , and W (2i-1) :. If we write K = [w 2i-1 ,…, w K ] ∈ C K × (K-2i + 2) , g (WQ) is expressed as follows, except for the constant term.
このことから、アルゴリズム3は、図5のようになる。
From this, the algorithm 3 is as shown in FIG.
<制御部4>
制御部4には、分離行列更新部3により更新された分離行列Wが入力される。 <Control unit 4>
The separation matrix W updated by the separationmatrix update unit 3 is input to the control unit 4.
制御部4には、分離行列更新部3により更新された分離行列Wが入力される。 <
The separation matrix W updated by the separation
制御部4は、所定の収束条件を満たすまで、補助関数更新部2及び分離行列更新部3の処理を交互に繰り返し実行させるように制御する(ステップS4)。
The control unit 4 controls so that the processes of the auxiliary function update unit 2 and the separation matrix update unit 3 are alternately and repeatedly executed until a predetermined convergence condition is satisfied (step S4).
所定の収束条件の例は、予め定めた繰り返し回数に到達する、又は、各パラメータの更新量が所定の閾値以下となるまでである。
An example of a predetermined convergence condition is until a predetermined number of repetitions is reached or the update amount of each parameter becomes equal to or less than a predetermined threshold value.
所定の収束条件が満たされた場合には、制御部4は、所定の収束条件を満たした分離行列Wを出力する。例えば、分離行列Wは、後述する分離部5に出力される。
When a predetermined convergence condition is satisfied, the control unit 4 outputs a separation matrix W satisfying the predetermined convergence condition. For example, the separation matrix W is output to the separation unit 5 described later.
[変形例]
以上、本発明の実施の形態について説明したが、具体的な構成は、これらの実施の形態に限られるものではなく、本発明の趣旨を逸脱しない範囲で適宜設計の変更等があっても、本発明に含まれることはいうまでもない。 [Modification example]
Although the embodiments of the present invention have been described above, the specific configuration is not limited to these embodiments, and even if the design is appropriately changed without departing from the spirit of the present invention, the specific configuration is not limited to these embodiments. Needless to say, it is included in the present invention.
以上、本発明の実施の形態について説明したが、具体的な構成は、これらの実施の形態に限られるものではなく、本発明の趣旨を逸脱しない範囲で適宜設計の変更等があっても、本発明に含まれることはいうまでもない。 [Modification example]
Although the embodiments of the present invention have been described above, the specific configuration is not limited to these embodiments, and even if the design is appropriately changed without departing from the spirit of the present invention, the specific configuration is not limited to these embodiments. Needless to say, it is included in the present invention.
例えば、信号処理装置は、分離部5を更に備えていてもよい。
For example, the signal processing device may further include a separation unit 5.
分離部5には、観測信号X及び制御部4が出力した分離行列Wが入力される。
The observation signal X and the separation matrix W output by the control unit 4 are input to the separation unit 5.
分離部5は、信号処理装置により得られた分離行列W、言い換えれば制御部4が出力した分離行列Wを用いて、観測信号XからK個の分離信号を得る。
The separation unit 5 obtains K separation signals from the observation signal X by using the separation matrix W obtained by the signal processing device, in other words, the separation matrix W output by the control unit 4.
例えば、WhXの計算をすることで、各音源k(k=1,…,K)の信号を得ることができる。
For example, by calculating W h X, the signal of each sound source k (k = 1, ..., K) can be obtained.
実施の形態において説明した各種の処理は、記載の順に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。
The various processes described in the embodiments are not only executed in chronological order according to the order described, but may also be executed in parallel or individually as required by the processing capacity of the device that executes the processes.
例えば、信号処理装置の構成部間のデータのやり取りは直接行われてもよいし、図示していない記憶部を介して行われてもよい。
For example, data may be exchanged directly between the constituent units of the signal processing device, or may be performed via a storage unit (not shown).
[プログラム、記録媒体]
上述した各装置の各部の処理をコンピュータにより実現してもよく、この場合は各装置が有すべき機能の処理内容はプログラムによって記述される。そして、このプログラムを図6に示すコンピュータの記憶部1020に読み込ませ、演算処理部1010、入力部1030、出力部1040などに動作させることにより、上記各装置における各種の処理機能がコンピュータ上で実現される。 [Program, recording medium]
The processing of each part of each device described above may be realized by a computer, and in this case, the processing content of the function that each device should have is described by a program. Then, by loading this program into thestorage unit 1020 of the computer shown in FIG. 6 and operating it in the arithmetic processing unit 1010, the input unit 1030, the output unit 1040, etc., various processing functions in each of the above devices are realized on the computer. Will be done.
上述した各装置の各部の処理をコンピュータにより実現してもよく、この場合は各装置が有すべき機能の処理内容はプログラムによって記述される。そして、このプログラムを図6に示すコンピュータの記憶部1020に読み込ませ、演算処理部1010、入力部1030、出力部1040などに動作させることにより、上記各装置における各種の処理機能がコンピュータ上で実現される。 [Program, recording medium]
The processing of each part of each device described above may be realized by a computer, and in this case, the processing content of the function that each device should have is described by a program. Then, by loading this program into the
この処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体は、例えば、非一時的な記録媒体であり、具体的には、磁気記録装置、光ディスク、等である。
The program that describes this processing content can be recorded on a computer-readable recording medium. The computer-readable recording medium is, for example, a non-temporary recording medium, specifically, a magnetic recording device, an optical disk, or the like.
また、このプログラムの流通は、例えば、そのプログラムを記録したDVD、CD-ROM等の可搬型記録媒体を販売、譲渡、貸与等することによって行う。さらに、このプログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することにより、このプログラムを流通させる構成としてもよい。
In addition, 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 in which the program is recorded. Further, 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 the network.
このようなプログラムを実行するコンピュータは、例えば、まず、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、一旦、自己の非一時的な記憶装置である補助記録部1050に格納する。そして、処理の実行時、このコンピュータは、自己の非一時的な記憶装置である補助記録部1050に格納されたプログラムを記憶部1020に読み込み、読み込んだプログラムに従った処理を実行する。また、このプログラムの別の実行形態として、コンピュータが可搬型記録媒体から直接プログラムを記憶部1020に読み込み、そのプログラムに従った処理を実行することとしてもよく、さらに、このコンピュータにサーバコンピュータからプログラムが転送されるたびに、逐次、受け取ったプログラムに従った処理を実行することとしてもよい。また、サーバコンピュータから、このコンピュータへのプログラムの転送は行わず、その実行指示と結果取得のみによって処理機能を実現する、いわゆるASP(Application Service Provider)型のサービスによって、上述の処理を実行する構成としてもよい。なお、本形態におけるプログラムには、電子計算機による処理の用に供する情報であってプログラムに準ずるもの(コンピュータに対する直接の指令ではないがコンピュータの処理を規定する性質を有するデータ等)を含むものとする。
A computer that executes such a program, for example, first transfers a program recorded on a portable recording medium or a program transferred from a server computer to an auxiliary recording unit 1050, which is its own non-temporary storage device. Store. Then, at the time of executing the process, the computer reads the program stored in the auxiliary recording unit 1050, which is its own non-temporary storage device, into the storage unit 1020, and executes the process according to the read program. Further, as another execution form of this program, a computer may read the program directly from the portable recording medium into the storage unit 1020 and execute the processing according to the program, and further, the program from the server computer to this computer may be executed. Each time the computer is transferred, the processing according to the received program may be executed sequentially. In addition, 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 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 that regulates the processing of the computer, etc.).
また、この形態では、コンピュータ上で所定のプログラムを実行させることにより、本装置を構成することとしたが、これらの処理内容の少なくとも一部をハードウェア的に実現することとしてもよい。
Further, in this form, 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.
その他、この発明の趣旨を逸脱しない範囲で適宜変更が可能であることはいうまでもない。
Needless to say, other changes can be made as appropriate without departing from the spirit of the present invention.
Claims (7)
- Kは2以上の正の整数であり、マイクロホン及び音源の個数であり、分離行列WはW=[w1,…,wK]∈CK×Kであり、分離行列Wを初期値に設定する初期設定部と、
hは複素共役転置を表し、補助関数g(W)に現れる正定値エルミート行列V1, …, VKを分離行列W及び観測信号に基づいて更新することで補助関数g(W)を更新する補助関数更新部と、
所定の収束条件を満たすまで、前記補助関数更新部及び前記分離行列更新部の処理を交互に繰り返し実行させるように制御する制御部と、
を含む信号処理装置。 K is a positive integer of 2 or more, the number of microphones and sound sources, the separation matrix W is W = [w 1 , ..., w K ] ∈ C K × K , and the separation matrix W is set as the initial value. Initial setting part and
h represents the complex conjugate transpose, and the auxiliary function g (W) is updated by updating the definite matrix Hermitian V 1 , ..., V K appearing in the auxiliary function g (W) based on the separation matrix W and the observed signal. Auxiliary function update part and
A control unit that controls the processing of the auxiliary function update unit and the separation matrix update unit to be alternately and repeatedly executed until a predetermined convergence condition is satisfied.
Signal processing equipment including. - 請求項1の信号処理装置であって、
Fは分離行列Wの部分集合であり、前記分離行列更新部は、g(WQ)の値を最小化する行列Q∈Fを決定し、決定された行列QからWQを計算し、その計算結果を更新後の分離行列Wとする処理を繰り返し行う、
信号処理装置。 The signal processing device according to claim 1.
F is a subset of the separation matrix W, and the separation matrix updater determines the matrix Q ∈ F that minimizes the value of g (WQ), calculates WQ from the determined matrix Q, and the calculation result. Is repeatedly processed as the separation matrix W after updating.
Signal processing device. - 請求項2の信号処理装置であって、
前記Fは、下三角行列であって右下の成分が1である行列全体の集合FL∈CK×K又は上三角行列であって左上の成分が1である行列全体の集合FU∈CK×Kであり、前記分離行列更新部は、前記Fとして、前記集合FL及び前記集合FUを交互に選択する、
信号処理装置。 The signal processing device according to claim 2.
F is a set of all matrices in which the lower right component is 1 in the lower triangular matrix FL ∈ C K × K or a set of all matrices in which the upper left component is 1 in the upper triangular matrix F U ∈ C K × K , and the separation matrix updater alternately selects the set FL and the set F U as the F.
Signal processing device. - 請求項2の信号処理装置であって、
Kは偶数であり、ブロックは2×2の行列であり、
前記Fは、ブロック下三角行列であって右下のブロックがI2である行列全体の集合FL2∈CK×K又はブロック上三角行列であって左上のブロックがI2である行列全体の集合FU2∈CK×Kであり、前記分離行列更新部は、前記Fとして、前記集合FL2及び前記集合FU2を交互に選択する、
信号処理装置。 The signal processing device according to claim 2.
K is an even number, the block is a 2x2 matrix,
The F is a set of all matrices in which the lower right block is I 2 in the lower block triangular matrix FL 2 ∈ C K × K or the entire matrix in which the upper left block is I 2 in the upper triangular matrix. The set F U2 ∈ C K × K , and the separation matrix updater alternately selects the set FL2 and the set F U2 as the F.
Signal processing device. - 請求項1から4の何れかの信号処理装置であって、
前記信号処理装置により得られた分離行列Wを用いて、観測信号XからK個の分離信号を得る分離部を更に含む、
信号処理装置。 The signal processing device according to any one of claims 1 to 4.
Using the separation matrix W obtained by the signal processing device, a separation unit for obtaining K separation signals from the observation signal X is further included.
Signal processing device. - 初期設定部が、Kは2以上の正の整数であり、マイクロホン及び音源の個数であり、分離行列WはW=[w1,…,wK]∈CK×Kであり、分離行列Wを初期値に設定する初期設定ステップと、
補助関数更新部が、hは複素共役転置を表し、補助関数g(W)に現れる正定値エルミート行列V1, …, VKを分離行列W及び観測信号に基づいて更新することで補助関数g(W)を更新する補助関数更新ステップと、
制御部が、所定の収束条件を満たすまで、前記補助関数更新部及び前記分離行列更新部の処理を交互に繰り返し実行させるように制御する制御ステップと、
を含む信号処理方法。 In the initial setting part, K is a positive integer of 2 or more, the number of microphones and sound sources, the separation matrix W is W = [w 1 , ..., w K ] ∈ C K × K , and the separation matrix W. And the initial setting step to set to the initial value,
The auxiliary function updater represents the complex conjugate translocation, and the auxiliary function g is updated by updating the positive-definite Hermitian matrix V 1 , ..., V K appearing in the auxiliary function g (W) based on the separation matrix W and the observed signal. Auxiliary function update step to update (W) and
A control step for controlling the control unit to alternately and repeatedly execute the processes of the auxiliary function update unit and the separation matrix update unit until a predetermined convergence condition is satisfied.
Signal processing methods including. - 請求項1から5の何れかの信号処理装置の各部としてコンピュータを機能させるためのプログラム。 A program for operating a computer as each part of the signal processing device according to any one of claims 1 to 5.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2020/036059 WO2022064602A1 (en) | 2020-09-24 | 2020-09-24 | Signal processing device, method, and program |
JP2022551496A JPWO2022064602A1 (en) | 2020-09-24 | 2020-09-24 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2020/036059 WO2022064602A1 (en) | 2020-09-24 | 2020-09-24 | Signal processing device, method, and program |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2022064602A1 true WO2022064602A1 (en) | 2022-03-31 |
Family
ID=80844636
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2020/036059 WO2022064602A1 (en) | 2020-09-24 | 2020-09-24 | Signal processing device, method, and program |
Country Status (2)
Country | Link |
---|---|
JP (1) | JPWO2022064602A1 (en) |
WO (1) | WO2022064602A1 (en) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013068938A (en) * | 2011-09-05 | 2013-04-18 | Research Organization Of Information & Systems | Signal processing apparatus, signal processing method, and computer program |
-
2020
- 2020-09-24 WO PCT/JP2020/036059 patent/WO2022064602A1/en active Application Filing
- 2020-09-24 JP JP2022551496A patent/JPWO2022064602A1/ja active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013068938A (en) * | 2011-09-05 | 2013-04-18 | Research Organization Of Information & Systems | Signal processing apparatus, signal processing method, and computer program |
Non-Patent Citations (2)
Title |
---|
KUBO, YUKI : "Rank-constrainedspatial covariance matrix estimation based on multivariate complex generalized Gaussian distribution and its acceleration for blind speech extraction", IEICE TECHNICAL REPORT, vol. 119, no. 334, 5 December 2019 (2019-12-05), JP , pages 85 - 92, XP009535758, ISSN: 0913-5685 * |
ROBIN SCHEIBLER: "Independent Vector Analysis via Log-Quadratically Penalized Quadratic Minimization", ARXIV.ORG, CORNELL UNIVERSITY LIBRARY, 201 OLIN LIBRARY CORNELL UNIVERSITY ITHACA, NY 14853, 23 August 2020 (2020-08-23), 201 Olin Library Cornell University Ithaca, NY 14853 , XP081746784 * |
Also Published As
Publication number | Publication date |
---|---|
JPWO2022064602A1 (en) | 2022-03-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Herold et al. | Improved algorithms for the approximate k-list problem in Euclidean norm | |
Bogdanov et al. | High-performance secure multi-party computation for data mining applications | |
Bartels et al. | Unitarity corrections in high energy QCD | |
Vanli et al. | A comprehensive approach to universal piecewise nonlinear regression based on trees | |
CN114207632A (en) | Pipelined hardware decoder for quantum computing devices | |
Penkovsky et al. | Efficient design of hardware-enabled reservoir computing in FPGAs | |
US20210224447A1 (en) | Grouping of pauli strings using entangled measurements | |
KR20190049537A (en) | System and method for predicting compound-protein interaction based on deep learning | |
CN113435682A (en) | Gradient compression for distributed training | |
Pande et al. | Boosted multivariate trees for longitudinal data | |
Poór et al. | The Qupit Stabiliser ZX-travaganza: Simplified Axioms, Normal Forms and Graph-Theoretic Simplification | |
CN113470672B (en) | Voice enhancement method, device, equipment and storage medium | |
JP2002518925A (en) | Adaptive state-space signal separation, discrimination, recovery architectures and their application to use in dynamic environments | |
WO2022064602A1 (en) | Signal processing device, method, and program | |
JP6087856B2 (en) | Sound field recording and reproducing apparatus, system, method and program | |
WO2022172441A1 (en) | Sound source separation device, sound source separation method, and program | |
JP6825119B2 (en) | Secret readers, secret writers, their methods, and programs | |
JP2002157237A (en) | Processor for performing preprocessing based on multilevel incomplete block decomposition | |
Schnass et al. | Compressed dictionary learning | |
Gao et al. | An asymptotic analysis of random partition based minibatch momentum methods for linear regression models | |
Sun et al. | Single-channel blind source separation based on joint dictionary with common sub-dictionary | |
JP2017151228A (en) | Signal processing method and sound signal processor | |
WO2022088140A1 (en) | Ai chip and adjacency list sampling method | |
EP4035025A1 (en) | Method and apparatus for smart and extensible schema matching framework | |
Deville | Analysis of the convergence properties of self-normalized source separation neural networks |
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: 20955196 Country of ref document: EP Kind code of ref document: A1 |
|
ENP | Entry into the national phase |
Ref document number: 2022551496 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: 20955196 Country of ref document: EP Kind code of ref document: A1 |