Prediction device, prediction method, and program
The prediction device optimizes microphone selection and weight calculation using graph-based methods to efficiently predict future observation signals from a single microphone, addressing non-stationary noise and computational challenges.
Patent Information
- Application Number
- PCT/JP2024/004988
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-02-14
- Publication Date
- 2025-08-21
AI Technical Summary
Existing methods struggle to predict future observation signals from a single microphone effectively, especially when dealing with non-stationary noise sources and high computational loads associated with multi-channel microphone setups.
A prediction device that selects a target microphone using a graph-based approximate nearest neighbor search, optimizing weights for selected microphones to reduce calculation load while improving prediction performance by employing RNG-pruning and least squares optimization.
Enables accurate prediction of future observation signals from a single microphone, handling non-stationary noise and reducing computational complexity.
Smart Images

Figure JP2024004988_21082025_PF_FP_ABST
Abstract
Description
Prediction device, prediction method, and program
[0001] The present invention relates to a technology for predicting future observation signals to be recorded by a target microphone, which is one of a plurality of microphones, using observation signals recorded by a group of microphones other than the target microphone, which are included in the plurality of microphones.
[0002] In time series analysis for predicting general time series signals, state space models that perform linear prediction for stationary signals have long been studied (see Non-Patent Document 1).
[0003] In addition, in Non-Patent Document 2, in order to improve the noise suppression performance of earphones, microphones are placed on the outside and inside of the earphones, and a function is realized to predict and suppress noise in the surrounding environment using a predictor configured with a deep neural network (DNN).
[0004] Kalman, RE, "A new approach to linear filtering and prediction problems", Trans. ASME-J, Basic Eng.(ser.D), 82, pp.35-45., 1960.Jang, Young-Jae, Jaehyun Park, Won-Cheol Lee, and Hong-June Park., "A Convolution-Neural-Network Feedforward Active-Noise-Cancellation System on FPGA for In-Ear Headphone", Applied Sciences 12, no. 11: 5300., 2022.
[0005] Let us consider the case where Non-Patent Document 1 is applied to sound signals such as noise. First, noise is often non-stationary for the following reasons: The location of the noise source may change from moment to moment. The noise itself may be composed of a wide variety of sources, making it prone to being non-stationary.
[0006] In Non-Patent Document 1, a state space model that performs linear prediction for stationary signals is used, so it is difficult to simply apply the mean, variance, and covariance to non-stationary noise for prediction.
[0007] Furthermore, when the DNN of Non-Patent Document 2 is applied to multiple channels, the amount of calculation increases, resulting in a heavy calculation load, making it difficult to perform calculations simultaneously on multiple microphones.
[0008] The present invention aims to provide a prediction device, a prediction method, and a program that can predict future observation signals from a single microphone, which may contain sounds with non-stationary means, variances, and covariances, using observation signals recorded by multi-channel microphones.
[0009] In order to solve the above problem, according to one aspect of the present invention, a prediction device predicts an observation signal that will be recorded in the future by a target microphone that is one of multiple microphones. The prediction device includes a selection unit that selects the target microphone from the multiple microphones, and an estimation unit that performs a graph-based approximate nearest neighbor search on a time series having a specific time width to select, from microphones other than the target microphone, a microphone that will record an observation signal to be used when predicting the observation signal that will be recorded in the future by the target microphone, and calculates the contribution rate of the selected microphone to the observation signal that will be recorded in the future.
[0010] According to the present invention, it is possible to predict future observation signals from one microphone, which may contain sounds with non-stationary means, variances, and covariances, using observation signals recorded by multi-channel microphones.
[0011] FIG. 1 is a functional block diagram of a prediction system according to a first embodiment. FIG. 2 is a diagram showing an example of a processing flow of a decision stage of the prediction system according to the first embodiment. FIG. 3 is a diagram showing an example of a processing flow of a prediction stage of the prediction system according to the first embodiment. FIG. 4 is a diagram for explaining a method for predicting future observation signals in an area to be suppressed. FIG. 5 is a diagram for explaining ground truth data and explanation data. FIG. 6 is a diagram for explaining edge selection by RNG-pruning. FIG. 7 is a diagram for explaining pre-processing of RNG-pruning. FIG. 8 is a diagram for explaining processing of a weight set estimation unit. FIG. 9 is a diagram showing the results of multiplying explanation data by optimal weights at each time. FIG. 10 is a diagram showing an example configuration of a computer to which the present method is applied.
[0012] An embodiment of the present invention will be described below. In the drawings used in the following description, components having the same function and steps performing the same processing are denoted by the same reference numerals, and redundant description will be omitted. In the following description, processing performed on each element of a vector or matrix is assumed to apply to all elements of that vector or matrix, unless otherwise specified. <Key Points of the First Embodiment> In this embodiment, when predicting future observation signals using observation signals recorded by multiple microphones, a microphone to be used is selected from the multiple microphones by an approximate nearest neighbor search using a graph, and then a weight for the selected microphone is optimized to obtain a weight for the selected microphone (which may be considered the contribution rate of the selected microphone to future observation signals).
[0013] In approximate nearest neighbor search using a graph, by using effective edge selection such as RNG (Relative Neighborhood Graph)-pruning to select the microphones and observation signals to be used and predicting future observation signals using only the selected observation signals, it is possible to reduce the amount of calculations while improving prediction performance. <First Embodiment> In this embodiment, an observation signal x(m) to be recorded in the future by a reference microphone 91-m is predicted from M-1 observation signals x(m') recorded by M-1 reference microphones 91-m', respectively. Note that M is any integer equal to or greater than 2, m is any of 1, 2, ..., M, and m' = 1, 2, ..., M (where m' ≠ m).
[0014] FIG. 1 is a functional block diagram of a prediction system according to a first embodiment, FIG. 2 is a process flow of the prediction system at a decision stage, and FIG. 3 is a process flow of the prediction system at a prediction stage.
[0015] The prediction system includes M reference microphones 91-n, a storage unit 110, a selection unit 120, a weight set estimation unit 130, a weight set selection unit 140, and a prediction unit 150, where n=1, 2, ..., M. A configuration including the storage unit 110, the selection unit 120, the weight set estimation unit 130, the weight set selection unit 140, and the prediction unit 150 is also referred to as a prediction device.
[0016] The processing of the prediction system consists of a decision stage and a prediction stage. (When Noise Suppression is Performed) When noise suppression is performed using a predicted value predicted using the prediction system of this embodiment, if the sound field is considered to be a linear system, the sound field around area A to be suppressed in FIG. 4 can be expressed as a simple superposition of sounds present around area A. Apart from the sound that first occurred and was recorded in area A, there is always a sound that was first recorded in area B. It is assumed that the sound that first occurred and was recorded in area A is likely to have been produced by a person using area A, and is therefore an important sound (not to be suppressed) for the person using area A. It is sufficient to estimate the sound to be suppressed (predicted) from the sound recorded in area B. Therefore, in this embodiment, future observed signals in the area to be suppressed (predicted) are predicted by superimposing current or past observed signals recorded in areas not to be suppressed.
[0017] There is already a method for predicting a signal over time by estimating it from the superposition of two past signals (see Reference 1). It is believed possible to estimate a future signal as the superposition of past signals. (Reference 1) Japanese Patent Application Laid-Open Publication No. 8-314476. Note that if a noise source or scatterer exists between Area A and Area B in Figure 4, the above assumptions fail, and the signal to be predicted is excluded from the optimization monitoring target. In this case, a hardware solution can be considered by adding physical microphones around Area A. Alternatively, a software solution, as described below, can be considered. If a noise source is located near Area A, the acoustic transmission characteristics to Area A can be very simple, so modeling of the sound source itself is sufficient. There are multiple methods for modeling the sound source itself. For example, AI for generating voices, etc., can be considered. Furthermore, in this case, direct sound can be captured directly, reducing modeling costs. This method can also be combined with sound source localization methods and sound field estimation methods for the presence of scatterers. (Outline of Prediction Stage and Determination Stage) In this embodiment, in the prediction stage, an observed signal x(m) to be recorded in the future is predicted from an observed signal x(m') other than the observed signal x(m) to be predicted.
[0018] In the determination stage, the observed signal x(m') other than the observation signal x(m) to be predicted and its weight are determined to be used when predicting the future observation signal of the prediction target. Since optimal weight combinations for each time period and optimal weight combinations for the entire time period are possible, the least squares method, for example, is used for optimization for each time period, and the greedy method, for example, is used for optimization for the entire time period.
[0019] First, the determination stage will be described. <Determination Stage> In the determination stage, sounds that are thought to include unsteady sounds are first recorded using M reference microphones 91-n (S91-1), and the observed signals x(n,t) are stored in the storage unit 110, where t is an index indicating the sample time. <Selection Unit 120> The selection unit selects a target microphone from the M reference microphones 91-n (S120).
[0020] The selection unit 120 may manually select a reference microphone 91-m specified by some input means (such as a mouse or keyboard) as the target microphone, or may automatically select a target microphone randomly or according to a predetermined rule. The selection unit 120 may also sequentially select M reference microphones 91-n as target microphones, or may sequentially select only a portion of the M reference microphones 91-n as target microphones.
[0021] The selector 120 extracts M observed signals x(n, t) from the storage unit 110, from the observed signal x(n, t+S) at time t+S to the observed signal x(n, t-τ1-τ2) at time t-τ1-τ2. S is the time width used for prediction. τ1 is a parameter indicating the time difference between the current time and the time to be predicted, and τ2 is a parameter indicating the time width to go back for prediction. τ_2=0 may also be used.
[0022] The selection unit 120 receives M observed signals x(n,t) from the observed signal x(n,t+S) at time t+S to the observed signal x(n,t-τ1-τ2) at time t-τ1-τ2, and selects S+1 observed signals x(m,t), x(m,t+1), ..., x(m,t+S) from time t to time t+S as ground truth data X(m,t)=[x(m,t), x(m,t+1), ..., x(m,t+S)]. T ∈R (S+1)×1 Of the observation signals recorded by the (M-1) reference microphones 91-m' other than the target microphone, (τ2+S+1)×(M-1) observation signals x(m',t-τ1-τ2), x(m',t-τ1-τ2+1), ... x(m',t-τ1+S) from time t-τ1-τ2 to time t-τ1+S are defined as explanation data. Note that explanation data refers to data used to estimate the correct answer data X(m,t). m is 1, 2, ..., M and is an index indicating the observation signal corresponding to the target microphone, and m' is an index indicating the observation signal corresponding to the reference microphone 91-m' other than the target microphone, where m' = 1, 2, ..., M and m ≠ m'.
[0023] To take into account the effect of signal observation delay due to the physical distance between the target microphone and the other M-1 reference microphones 91-m', the observed signals from one reference microphone are shifted by one time and combined in the channel direction. Figure 5 is a diagram for explaining ground truth data and explanatory data. For example, the observed signals x(m',t-τ1-τ2), x(m',t-τ1-τ2+1), ... x(m',t-τ1+S) from a certain reference microphone 91-m' are treated as one set for each time span S, and τ2+1 sets are created by shifting the time by one as follows: X(m',t-τ1)=[x(m',t-τ1), x(m',t-τ1+1), ... , x(m',t-τ1+S)]∈R (S+1)×1 , X(m',t-τ1-1)=[x(m',t-τ1-1),x(m',t-τ1+0),…,x(m',t-τ1-1+S)]∈R (S+1)×1 , … X(m',t-τ1-τ2)=[x(m',t-τ1-τ2),x(m',t-τ1-τ2+1),…,x(m',t-τ1-τ2+S)]∈R (S+1)×1 Furthermore, we integrate along the channel and use the following matrix Y(m,t)∈R (S+1)×(M-1)τ_2 Here, the superscript τ_2 means τ2.
[0024]
[0025] The selection unit 120 selects the correct answer data X(m, t)∈R (S+1)×1 and explanatory data Y(m,t)∈R (S+1)×(M-1)τ_2 <Weight Set Estimation Unit 130> The weight set estimation unit 130 outputs the correct answer data X(m, t)∈R. (S+1)×1 and explanatory data Y(m,t)∈R (S+1)×(M-1)τ_2Using input, the weight set estimation unit 130 performs a graph-based approximate nearest neighbor search to select a reference microphone from among the M-1 reference microphones 91-m' that will record an observation signal to be used when predicting a future observation signal to be recorded by the target microphone, calculates the contribution rate of the selected microphone to the future observation signal (S130), and outputs the calculated value. In other words, the weight set estimation unit 130 selects an observation signal from the explanation data Y(m,t) that will be used when predicting the ground truth data X(m,t), optimizes the weight W(m,t) for the selected observation signal, and outputs the optimized weight W(m,t). Note that this optimized weight corresponds to the contribution rate of the selected observation signal or microphone to the ground truth data X(m,t).
[0026] The correct answer data is defined as a node in the graph, and one explanatory data (observed signals x(m', t-τ1-τ2), x(m', t-τ1-τ2+1), ... x(m', t-τ1+S)) recorded by each reference microphone 91-m' is defined as one node. However, a node consisting of one explanatory data contains τ2+1 sets, each set consisting of one time span S, and when calculating the distance between nodes (described later), the calculation is performed with one set for each time span S as one node.
[0027] Approximate nearest neighbor search is a problem of searching for a vector that is closest to a query vector from a set of vectors (nearest neighbor search problem). Points that are likely to be near the query are extracted in advance, and distance calculations are performed among them to search for the nearest point.
[0028] First, to determine which reference microphone 91-m' observation signal x(m',t) to use, each piece of explanatory data is regarded as a node in a graph, and edges are selected using RNG pruning to search for explanatory data relevant to the estimation. (RNG pruning) In RNG pruning, the distance between the node connected by the adopted edge and the new node is compared with the distance between the correct answer data and the new node. If the distance between the correct answer data and the new node is smallest, the edge connecting the correct answer data and the new node is adopted. This process is performed for all nodes. If the distance between the node connected by the adopted edge and the new node is smaller than the distance between the correct answer data and the new node, it means that the node connected by the adopted edge and the new node are similar, and the new node is not an effective node to adopt to explain the correct answer data. On the other hand, if the distance between the node connected by the adopted edge and the new node is greater than the distance between the correct answer data and the new node, it means that the node connected by the adopted edge and the new node are dissimilar, the correct answer data and the new node are similar, and the new node is efficient as a node to be newly adopted to explain the correct answer data.
[0029] Using Figure 6, edge selection using RNG-pruning will be explained. (Step 1) First, the explanation data (node B1 in the figure) closest to the correct answer data X(m,t) (denoted as node A in the figure) is selected, and edge AB1 is adopted. For example, the explanation data in which data similar to the correct answer data X(m,t) first appears is selected as the nearest node B1. (Step 2) The distance B1B2 between node B1 and node B2 is compared with the distance AB2 between node A and node B2. If the distance AB2 is the smallest, edge AB2 is adopted. In Figure 6, the distance B1B2 is shorter, so edge AB2 is not adopted. (Step 3) The distance B1B4 between node B1 and node B4 is compared with the distance AB4 between node A and node B4. If the distance AB4 is the smallest, edge AB4 is adopted. In Figure 6, the distance AB4 is the smallest, so edge AB4 is adopted. (Step 4) Compare the distance B1B3 between node B1 and node B3, the distance B4B3 between node B4 and node B3, and the distance AB3 between node A and node B3, and if the distance AB3 is the smallest, adopt the edge AB3. In Figure 6, the distances B1B3 and B4B3 are smaller than the distance AB3, so the edge AB3 is not adopted. (Step 5) The search is terminated since processing has been performed for all nodes. In Figure 6, edges AB1 and AB4 are adopted. (Pre-processing for RNG-pruning) When performing RNG-pruning, the time domain observed signal (ground truth data X(m,t)=[x(m,t),x(m,t+1),...,x(m,t+S)] is used. T , explanatory data x(m',t-τ1-τ2), x(m',t-τ1-τ2+1), ... x(m',t-τ1+S)) can be used as is, but if the arrival direction differs for each frequency, it may not be possible to adopt an appropriate edge.
[0030] In such cases, RNG-pruning can be performed using observed signals in the frequency domain that have been transformed using, for example, a short-time Fourier transform or a continuous wavelet transform. Edges with similar amplitude value distributions can be selected using an appropriate distance function.
[0031] Alternatively, principal component analysis may be performed on the observed signals in the time domain or frequency domain, the principal components may be extracted, the principal component scores may be calculated for each set of observed signals (one set for each time span S), and the calculated principal component scores may be used for RNG pruning. This method may sometimes be able to determine an appropriate initial state for the node.
[0032] Figure 7 is a diagram for explaining the preprocessing of RNG-pruning. With time-domain observation signals, it is not known which reference microphone has the observation signal with that frequency information, but by performing appropriate preprocessing, it is possible to determine the relationship between the reference microphones to some extent.
[0033] That is, the weight set estimation unit 130 calculates the correct answer data X(m, t)∈R (S+1)×1 and explanatory data Y(m,t)∈R (S+1)×(M-1)τ_2 Using the above, features indicating the relationship between the M reference microphones 91-n may be extracted, and approximate nearest neighbor search may be performed using the extracted features as nodes. For example, the features may be observed signals in the frequency domain, principal component scores, etc. (Distance between nodes) In edge selection using RNG-pruning, distance is calculated using a function that defines similarity. For example, a coherence function may be used as an index representing the distance between nodes. Other appropriate functions that define similarity may also be used. Furthermore, an information criterion may be used as an index representing the distance between nodes.
[0034] The coherence function is a function that quantifies the similarity between two time series signals x and y.
[0035]
[0036] X and Y are the time-frequency domain signals of the time series signals x and y, and the subscript i is an index indicating time.
[0037] The closer the coherence function is to 1, the more similar the waveforms are (the closer the distance is). Using the coherence function as distance, a map (graph) of the relevance between microphones is constructed based on the distance.
[0038] In RNG pruning, the edges selected using the coherence function are adopted, and the weights of the adopted edges are appropriately optimized. The weights of the unadopted edges are set to 0 and excluded from the optimization target.
[0039] In this embodiment, under the assumption that the correct data X(m,t) is obtained by the regression of the explanatory data Y(m,t) corresponding to the adopted edges, the optimal weight W(m,t) is estimated by the least squares method.
[0040] The loss function is L = |X(m,t) - Y(m,t) T W(m,t)| 2 and the weight set estimation unit 130 optimizes the weights at each time, for example, by the least squares method. Fixing the time to be predicted (from t - T to t), and setting t(P) < … < t(3) < t(2) < t(1) < t, using the explanatory data Y(m,t) ∈ R (S+1)×(M-1)τ_2 the loss function L = |X(m,t) - Y(m,t) T W(m,t)| 2 is calculated.
[0041] For example, when predicting the correct data X(m,t(p)) at time t(p), as shown in FIG. 8, the explanatory data
[0042]
[0043] is multiplied by the weight W(m,t(p)) to extract the observation signal to be emphasized when predicting. In FIG. 8, X(11,t(p)) is used as the correct data. In FIG. 8, the blank cells indicate correspondence to the unadopted edges.
[0044] The weight set estimation unit 130 changes time t P times, estimates optimal weights W(m, t(1)), ..., W(m, t(P)) for each of the P times t(1), ..., t(P), and outputs them. P is an integer equal to or greater than 2. Alternatively, if edge search can be performed sufficiently quickly, the weight set estimation unit 130 can adaptively select edges and optimize weights. Figure 9 shows the results of multiplying the explanation data by the optimal weights W(m, t(1)), ..., W(m, t(P)) at each time. Black circles indicate values that remain after multiplication by the weights, and blank circles indicate edges that were not adopted.
[0045] In the example of FIG. 9 , an approximate nearest neighbor search using a graph is performed for each t(p) to reselect the reference microphone that will record the observation signal used to predict the observation signal to be recorded in the future by the target microphone. This configuration can handle changes in the sound source position of the observation signal to be recorded in the future or changes in the characteristics of the observation signal to be recorded in the future. Conversely, if the sound source position or characteristics of the observation signal to be recorded in the future will not change significantly, the reference microphone selection process may be performed only once at the beginning, and then the contribution rate of the same reference microphone may be repeatedly calculated. <Weight Set Selector 140> The weight set selector 140 receives P optimal weights W(m,t(p)), applies the weights W(m,t(1)), W(m,t(2)), ..., W(m,t(P)) obtained at each time t(1), t(2), ..., t(P) to each of the other times, and selects the weight that minimizes the loss function L as the final optimal weight W(m) (S140) and outputs the weight to the prediction unit 150. For example, a greedy algorithm is used to find the optimal weight set for the entire time period. For example, the weight W(m, t(u)) obtained at a certain time t(u) is applied to the explanatory data Y(m, t(p)) for each time t(p), P loss functions L(t(p),W(m, t(u)) are obtained, and their sum is calculated. The same process is performed for u=1, 2, ..., P, and the weight that produces the smallest sum is the final optimal weight.
[0046] The above processing is performed before moving on to the prediction stage. <Prediction Stage> In the prediction stage, first, sounds that are thought to include unsteady sounds are recorded by M reference microphones 91-n (S91-2), and the observed signals x(n,t) are stored in the storage unit 110. <Prediction Unit 150> Prior to the suppression processing, the prediction unit 150 receives an optimal weight W(m).
[0047] The prediction unit 150 retrieves M-1 observed signals x(m',t) other than the observed signal to be predicted from the storage unit 110, from the observed signal x(m',t) at time t to the observed signal x(m',t-τ2) at time t-τ2.
[0048] The prediction unit 150 uses Y(m,t) and W(m) to calculate a predicted value X'(m,t+τ1)=[x'(m,t-S+τ1),x'(m,t-S+1+τ1),...,x'(m,t+τ1)] of the observation signal to be predicted after τ1 samples. T =Y(m,t) T W(m)∈R (S+1)×1 is calculated (S150) and output.
[0049]
[0050] and X(m',t)=[x(m',tS),x(m',t-S+1),…,x(m',t)]∈R (S+1)×1<Effects> With the above configuration, it is possible to predict future observation signals from one microphone, which may contain sounds with non-stationary means, variances, and covariances, using observation signals recorded by multiple microphones. <Variation 1> The weight set estimation unit 130 changes time t P times and estimates optimal weights W(m, t(1)), ..., W(m, t(P)) at each of the P times t(1), ..., t(P). The weight set selection unit 140 determines the optimal weight set for the entire time period. However, if it is known that the optimal weights do not change significantly over time, the weight set estimation unit 130 may estimate optimal weights W(m, t(p')) at a certain time t(p') and use the weight set W(m, t(p')) in the prediction unit 150. In this case, the prediction system may not include the weight set selection unit 140. <Other Variations> The present invention is not limited to the above-described embodiments and variations. For example, the various processes described above may not only be executed chronologically as described, but may also be executed in parallel or individually depending on the processing capacity of the device executing the processes or as needed. Other modifications may be made as appropriate without departing from the spirit of the present invention. [Processor, Program, Recording Medium] The functions realized by the components described in this specification may be implemented in circuitry or processing circuitry, including general-purpose processors, application-specific processors, integrated circuits, ASICs (Application Specific Integrated Circuits), CPUs (Central Processing Units), conventional circuits, and / or combinations thereof, programmed to realize the described functions. A processor includes transistors and other circuits and is considered to be circuitry or processing circuitry. A processor may also be a programmed processor that executes a program stored in a memory.
[0051] In this specification, a circuitry, unit, or means is hardware that is programmed to realize or performs the described functions, which may be any hardware disclosed herein or any hardware known to be programmed to realize or perform the described functions.
[0052] If the hardware is a processor considered to be a type of circuitry, the circuitry, means, or unit is a combination of the hardware and software used to configure the hardware and / or processor.
[0053] The various processes described above can be implemented by loading a program that executes each step of the above method into the recording unit 2020 of the computer 2000 shown in Figure 10, and operating the control unit 2010, input unit 2030, output unit 2040, display unit 2050, etc.
[0054] The program describing the processing contents can be recorded on a computer-readable recording medium, which may be, for example, a magnetic recording device, an optical disk, a magneto-optical recording medium, a semiconductor memory, or any other suitable recording medium.
[0055] The program may be distributed by, for example, selling, transferring, lending, etc. portable recording media such as DVDs and CD-ROMs on which the program is recorded. Furthermore, the program may be stored in a storage device of a server computer, and then transferred from the server computer to other computers via a network, thereby distributing the program.
[0056] A computer that executes such a program may first temporarily store the program recorded on a portable recording medium or transferred from a server computer in its own storage device. Then, when executing a process, the computer reads the program stored on its own recording medium and executes the process in accordance with the read program. Alternatively, the computer may read the program directly from a portable recording medium and execute the process in accordance with the program. Furthermore, the computer may execute the process in accordance with the program each time a program is transferred from a server computer to the computer. Alternatively, the server computer may not transfer the program to the computer, but may instead execute the process through a so-called ASP (Application Service Provider) service, which realizes the processing function by issuing an execution instruction and obtaining the results. Furthermore, the server computer may execute the process at the terminal using a so-called SaaS (Software as a Service) service, which allows users to use part of the server computer along with the program. In this embodiment, the program includes information used for processing by an electronic computer that is equivalent to a program (such as data that is not a direct instruction to a computer but has properties that dictate computer processing).
[0057] Furthermore, in this embodiment, the device is configured by executing a predetermined program on a computer, but at least a part of the processing contents may be realized by hardware.
Claims
1. A prediction device that predicts an observation signal that will be recorded in the future by a target microphone that is one of multiple microphones, comprising: a selection unit that selects the target microphone from the multiple microphones; and an estimation unit that performs an approximate nearest neighbor search using a graph in a time series having a specific time width to select, from microphones other than the target microphone, a microphone that will record an observation signal to be used when predicting the observation signal that will be recorded in the future by the target microphone, and calculates the contribution rate of the selected microphone to the observation signal that will be recorded in the future.
2. A prediction device according to claim 1, wherein the estimation unit uses observed signals recorded by the plurality of microphones to extract features indicating relationships between the plurality of microphones, and performs the approximate nearest neighbor search using the extracted features as nodes.
3. A prediction device according to claim 1, comprising a prediction unit that uses observation signals recorded by a microphone other than the target microphone and the contribution rate to obtain a predicted value of the observation signal that will be recorded in the future by the target microphone.
4. The prediction device according to claim 1, wherein the approximate nearest neighbor search selects edges by RNG-pruning.
5. The prediction device according to claim 4, wherein the RNG-pruning uses a coherence function or an information criterion as an index representing the distance between nodes.
6. A prediction method for predicting an observation signal that will be recorded in the future by a target microphone that is one of a plurality of microphones, comprising: a selection step for selecting the target microphone from the plurality of microphones; and an estimation step for performing an approximate nearest neighbor search using a graph in a time series having a specific time width to select, from microphones other than the target microphone, a microphone that will record an observation signal to be used when predicting the observation signal that will be recorded in the future by the target microphone, and calculating the contribution rate of the selected microphone to the observation signal that will be recorded in the future.
7. A program for causing a computer to function as the prediction device of claim 1.
Citation Information
Patent Citations
Active noise control system, method for dynamic search of filter length in this system, and computer program
JP2010210895A
Noise suppression device, noise suppression system, noise suppression method, and program
WO2023140274A1