Learning device, arrival angle estimation device, arrival angle estimation system, method for generating a learning model, arrival angle estimation method, and program

By generating training data using real-world array antennas and creating a correlation matrix, the method enhances learning-based angle-of-arrival estimation accuracy in real-world conditions, addressing discrepancies between ideal and actual array antennas.

JP7893058B2Active Publication Date: 2026-07-22NEC CORP
View PDF 4 Cites 0 Cited by

Patent Information

Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
NEC CORP
Filing Date
2022-06-20
Publication Date
2026-07-22

AI Technical Summary

Technical Problem

Learning-based angle-of-arrival estimation methods face accuracy issues in real-world environments due to differences between ideal and real-world array antennas, leading to decreased estimation accuracy for angles not included in training data, even with high signal-to-noise ratios.

Method used

A method that generates training data using real-world array antennas, creating a correlation matrix based on transmission and received signal vectors, and employs a learning model to estimate arrival angles accurately by using input data with correct labels.

Benefits of technology

Enables high-accuracy angle-of-arrival estimation in real-world environments by aligning the learning model with actual antenna characteristics, improving estimation precision.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007893058000012
    Figure 0007893058000012
  • Figure 0007893058000013
    Figure 0007893058000013
  • Figure 0007893058000014
    Figure 0007893058000014
Patent Text Reader

Abstract

To use a learning model for highly accurately estimating an arrival angle of a radio wave in an actual environment.SOLUTION: A learning device includes: signal generation means for generating a transmission signal vector so as to allow signal intensity of a transmission signal corresponding to a designated arrival angle to be stronger than a transmission signal corresponding to the other arrival angle; correlation matrix generation means for generating a correlation matrix based on the transmission signal vector and a mode vector of an actual environment array antenna which is used in an actual environment; input data generation means for generating input data from an element of the correlation matrix; and learning means for generating a learning model by using the input data as an input so as to execute learning processing with the use of teacher data where data indicating the arrival angle corresponding to the input data is defined as a correct label.SELECTED DRAWING: Figure 13
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to a learning device, an arrival angle estimation device, an arrival angle estimation system, a method for generating a learning model, an arrival angle estimation method, and a program.

Background Art

[0002] As a method for estimating the arrival angle of radio waves using an array antenna, the MUSIC (Multiple Signal Classification) method based on the subspace method using eigenvalue decomposition of the correlation matrix of received signals is widely known. In addition, a method such as that disclosed in Patent Document 1 has been proposed so far. In recent years, furthermore, an arrival angle estimation method using deep learning (hereinafter referred to as a learning-based arrival angle estimation method) has been proposed (see, for example, Non-Patent Documents 1 and 2).

Prior Art Documents

Patent Documents

[0003]

Patent Document 1

Non-Patent Documents

[0004]

Non-Patent Document 1

Non-Patent Document 2

Summary of the Invention

[0005] Learning-based angle-of-arrival estimation methods have several advantages, including the ability to perform estimations with simple calculations when using a pre-trained model, and the possibility of achieving higher estimation accuracy than non-learning-based angle-of-arrival estimation methods such as the MUSIC method under certain conditions. On the other hand, a disadvantage of using learning-based angle-of-arrival estimation methods is that even if the received signal obtained by receiving radio waves has a high signal-to-noise ratio (SNR), the estimation accuracy for angles of arrival not included in the training data will be low.

[0006] To generate a learning model with high estimation accuracy for various arrival angles, training data with various arrival angles as ground truth labels is necessary. Obtaining such training data requires received signals for multiple arrival angles at fine angular intervals. However, obtaining received signals for multiple arrival angles at fine angular intervals through actual measurements would be extremely time-consuming.

[0007] In contrast, for example, the technology disclosed in Non-Patent Documents 1 and 2 assumes an ideal array antenna, generates training data using theoretical mode vectors corresponding to the ideal array antenna, and generates a learning model using the generated training data. By using mode vectors, it is possible to obtain correlation matrices for multiple arrival angles at fine angular intervals without actual measurement, thereby obtaining training data in which each of the multiple arrival angles at fine angular intervals is the correct label. By performing learning processing using the training data obtained in this way, it becomes possible to generate a learning model that reflects the characteristics of the array antenna, for example, the characteristics of the antennas that influence the estimation of the arrival angle among the multiple antennas forming the array antenna.

[0008] However, there are differences between array antennas used in real-world environments and ideal array antennas, such as differences in the distance between the transmission source and each antenna element forming the array, and subtle differences in the characteristics of the antenna elements. Therefore, there is a difference between the mode vector of an array antenna used in a real environment and the mode vector of a theoretical value. Due to this difference, even if a learning model generated from training data based on theoretical mode vectors is used in a real environment, the accuracy of estimating the angle of arrival will decrease. In contrast, there is a need to use a learning model that can estimate the angle of arrival of radio waves with high accuracy in a real environment.

[0009] Therefore, the purpose of this invention is to provide a learning device, an arrival angle estimation device, an arrival angle estimation system, a method for generating a learning model, an arrival angle estimation method, and a program that solve the above-mentioned problems. [Means for solving the problem]

[0010] According to a first aspect of the present invention, the learning device includes: a signal generation means for generating a transmission signal vector such that the signal intensity of the transmission signal corresponding to a specified angle of arrival is stronger than that of transmission signals corresponding to other angles of arrival; a correlation matrix generation means for generating a correlation matrix based on the transmission signal vector and the mode vector of a real-world array antenna used in a real environment; an input data generation means for generating input data from the elements of the correlation matrix; and a learning means for generating a learning model by performing a learning process using the input data as input and training data in which data indicating the angle of arrival corresponding to the input data are used as the correct label.

[0011] According to a second aspect of the present invention, the angle of arrival estimation device comprises an array antenna, a receiving means for generating a received signal vector from radio waves arriving at the array antenna, a correlation matrix generating means for generating a correlation matrix based on the received signal vector, an input data generating means for generating input data from the elements of the correlation matrix, an inference means for obtaining output data by providing the input data to a learning model that is generated to be an evaluation function for evaluating the probability of radio waves being present at each angle of arrival in the array antenna and is generated according to a learning process based on training data generated using the mode vector of the array antenna, and an angle of arrival calculation means for calculating the estimated angle of arrival of radio waves from the output data.

[0012] According to a third aspect of the present invention, the angle of arrival estimation system comprises the learning device described above and the angle of arrival estimation device described above, wherein the real-world array antenna in the learning device is the array antenna of the angle of arrival estimation device, and the learning model generated by the learning means of the learning device is the learning model of the inference means of the angle of arrival estimation device.

[0013] According to a fourth aspect of the present invention, a method for generating a learning model involves generating a transmission signal vector such that the signal intensity of the transmission signal corresponding to a specified angle of arrival is stronger than that of transmission signals corresponding to other angles of arrival; generating a correlation matrix based on the generated transmission signal vector and the mode vector of a real-world array antenna used in a real environment; generating input data from the elements of the generated correlation matrix; and generating a learning model by performing a learning process using training data that takes the generated input data as input and uses data indicating the angle of arrival corresponding to the input data as the correct label.

[0014] According to a fifth aspect of the present invention, the method for estimating the angle of arrival involves generating a received signal vector from radio waves arriving at an array antenna, generating a correlation matrix based on the generated received signal vector, generating input data from the elements of the generated correlation matrix, providing the input data to a learning model that is generated to serve as an evaluation function for evaluating the probability of radio waves being present at each angle of arrival in the array antenna, and which is generated according to a learning process based on training data generated using the mode vectors of the array antenna, to obtain output data, and calculating the estimated angle of arrival of the radio waves from the obtained output data.

[0015] According to a sixth aspect of the present invention, the program is a program that causes a computer to perform the following steps: generate a transmission signal vector such that the signal intensity of the transmission signal corresponding to a specified angle of arrival is stronger than that of the transmission signals corresponding to other angles of arrival; generate a correlation matrix based on the generated transmission signal vector and the mode vector of a real-world array antenna used in a real environment; generate input data from the elements of the generated correlation matrix; and generate a learning model by performing a learning process using the generated input data as input and training data in which the data indicating the angle of arrival corresponding to the input data is used as the correct label.

[0016] According to a seventh aspect of the present invention, the program is a program that causes a computer to perform the following steps: generate a received signal vector from radio waves arriving at an array antenna; generate a correlation matrix based on the generated received signal vector; generate input data from the elements of the generated correlation matrix; provide the input data to a learning model that is generated to serve as an evaluation function for evaluating the probability of radio waves being present at each arrival angle in the array antenna, and is generated according to a learning process based on training data generated using the mode vectors of the array antenna, and obtain output data; and calculate the estimated arrival angle of radio waves from the obtained output data. [Effects of the Invention]

[0017] According to the present invention, it becomes possible to use a learning model that estimates the angle of arrival of radio waves with high accuracy in real-world environments. [Brief explanation of the drawing]

[0018] [Figure 1] This is a block diagram showing the configuration of the angle of arrival estimation device according to the first embodiment. [Figure 2] This figure shows an example of the configuration of an array antenna according to the first embodiment, and the positional relationship between the array antenna and the radio waves arriving at the array antenna. [Figure 3] This is a block diagram showing an example of the hardware configuration of an arrival angle estimation device according to the first embodiment. [Figure 4] This is a flowchart showing the processing flow performed by the arrival angle estimation device according to the first embodiment. [Figure 5] This figure shows a flowchart of the subroutine for the training data generation process performed in the process carried out by the arrival angle estimation device according to the first embodiment. [Figure 6] This figure shows a flowchart of the learning process subroutine performed in the process carried out by the arrival angle estimation device according to the first embodiment. [Figure 7] This figure shows a flowchart of the inference processing subroutine performed in the processing carried out by the arrival angle estimation device according to the first embodiment. [Figure 8] This is a block diagram showing the configuration of the angle of arrival estimation device according to the second embodiment. [Figure 9] This is a block diagram showing the configuration of the angle of arrival estimation system and the internal configuration of the operating device according to the third embodiment. [Figure 10] This is a block diagram showing the internal configuration of the angle of arrival estimation device and learning device according to the third embodiment. [Figure 11] This is a block diagram showing an example of the hardware configuration of an angle of arrival estimation device, a learning device, and an operating device according to the third embodiment. [Figure 12] This is a flowchart showing the processing flow of the arrival angle estimation system according to the third embodiment. [Figure 13] This is a block diagram showing the configuration of a learning procedure related to one embodiment of the present invention. [Figure 14] This is a flowchart showing the processing flow performed by a learning device according to one embodiment of the present invention. [Figure 15] This is a block diagram showing the configuration of an angle of arrival estimation device according to one embodiment of the present invention. [Figure 16] This is a flowchart showing the processing flow performed by the angle of arrival estimation device according to one embodiment of the present invention. [Modes for carrying out the invention]

[0019] (First Embodiment) Figure 1 is a block diagram showing the configuration of the arrival angle estimation device 1 according to the first embodiment. The arrival angle estimation device 1 comprises a plurality of antenna elements 10-1 to 10-K, a receiving unit 11, a mode vector storage unit 12, a correlation matrix generation unit 13, an input data generation unit 14, a signal generation unit 15, a training data storage unit 16, a learning unit 17, an inference unit 18, and an arrival angle calculation unit 19. Here, K is an integer of 2 or more.

[0020] Multiple antenna elements 10-1 to 10-K form an array antenna 10. The receiving unit 11 acquires K digital electrical signals from radio waves of predetermined wavelengths that reach the antenna elements 10-1 to 10-K. Here, radio waves are, for example, radio waves used in wireless communication. The receiving unit 11 generates a received signal vector that includes the acquired K received signals as elements. The received signals are represented as complex numbers. The mode vector storage unit 12 stores the data of the mode vector that has been generated in advance. Here, the mode vector is a vector that indicates direction, also called a steering vector.

[0021] Assume that the array antenna 10 is, for example, a K-element equally spaced circular array antenna as shown in Figure 2. The angle measured clockwise from antenna element 10-1 is defined as the angle of arrival of the radio wave. Here, the angle of arrival θ iLet's assume that a plane wave radio wave 90 arrives. The dashed-dotted line segments 91 and 92 are perpendicular to the direction of propagation of the plane wave radio wave 90. Segment 91 intersects with the k-th antenna element 10-k (where k is an integer between 1 and K), and segment 92 intersects with the center position 95 of the array antenna 10. In this case, the distance l between segment 91 and segment 92 is given by equation (1).

[0022]

number

[0023] In equation (1) above, α k θ is the angle formed by the line segment connecting the center position 95 and the position of antenna element 10-1, and the line segment connecting the center position 95 and the position of antenna element 10-k. r is the radius of the circle that makes up the shape of the array antenna 10. The phase of the plane wave radio wave 90 is the same on line segment 91, and the phase of the plane wave radio wave 90 is the same on line segment 92. Therefore, with the center position 95 as the reference, the angle of arrival θ i The phase difference φ at the position of antenna element 10-k of the incoming plane wave radio wave 90 k (θ i ) can be expressed as equation (2) from equation (1).

[0024]

number

[0025] In equation (2) above, λ is the wavelength of the plane wave radio wave 90, and it matches the wavelength predetermined in the receiving unit 11. In this case, the element a of the mode vector of the array antenna 10 that can be theoretically derived is k,i This can be expressed as equation (3) below.

[0026]

number

[0027] For example, the angle of arrival is θ i When the number of elements is N, that is, when i is an integer from 1 to N, the mode vector of the array antenna formed by K antenna elements 10-1 to 10-K for one wavelength λ can be represented as a matrix with K × N elements. In this way, the mode vector can be theoretically calculated. However, in reality, it is not possible to construct an array antenna 10 that perfectly matches the theoretical mode vector. Therefore, there will be a difference between the mode vector of the actual array antenna 10 and the theoretical mode vector. To prevent this difference, the mode vector data to be stored in the mode vector storage unit 12 is generated using the following method.

[0028] When designing an array antenna 10 for use in a real environment, it is common practice to perform simulation evaluations using an electric field simulator or the like to determine the permissible frequency band and the permissible angle of arrival for reception. In this simulation evaluation, for example, antenna element 10-1 is used as a reference antenna element, and the amplitude and phase difference of the other antenna elements 10-2 to 10-K with respect to the reference antenna element 10-1 are calculated. Based on the calculated amplitude and phase difference, the mode vector of the array antenna 10 for use in the real environment is calculated. Alternatively, the mode vector of the array antenna 10 for use in the real environment may be calculated based on measurement data obtained from actual measurements using an anechoic chamber. The data showing the mode vector of the array antenna 10 for use in the real environment, calculated in this way, is pre-written and stored in the mode vector storage unit 12. However, in this case, the wavelength of the radio signal that the array antenna 10 for use in the real environment receives is predetermined to one, and the mode vector storage unit 12 stores the mode vector data corresponding to the predetermined wavelength. Here, the wavelength of the wireless signal received by the array antenna 10 used in a real environment is the wavelength predetermined in the receiving unit 11.

[0029] Returning to FIG. 1, the signal generation unit 15 generates a transmission signal vector such that the signal strength of the transmission signal corresponding to the specified arrival angle is stronger than the transmission signals corresponding to other arrival angles that are not specified. Here, the signal strength is, for example, the amplitude of the transmission signal. Note that the transmission signal is represented by a complex number. For example, in the data of the mode vectors stored in the mode vector storage unit 12, if θ1 to θ N are shown as arrival angles. In this case, when the arrival angle specified by the signal generation unit 15 is θ i , the amplitude of one transmission signal corresponding to the arrival angle θ i is set to "1", and the amplitudes of the N - 1 transmission signals corresponding to the other arrival angles θ1 to θ i-1 , θ i+1 to θ N that are not specified are set to "0", and a transmission signal vector including N transmission signals as elements is generated. The number of arrival angles specified by the signal generation unit 15 may be plural. For example, when the range of the arrival angle is 360° and the resolution is "1°", N = 360. In this case, when the number of arrival angles specified by the signal generation unit 15 is one, the signal generation unit 15 generates 360 types of transmission signal vectors. When the number of arrival angles specified by the signal generation unit 15 is two, the signal generation unit 15 generates 360 C2 = 64620 types of transmission signal vectors. Note that the range of the number of arrival angles specified by the signal generation unit 15 is appropriately determined according to the desired estimation accuracy and the like.

[0030] More specifically, the signal generation unit 15 specifies arrival angles based on a plurality of arrival angles included in the signal generation parameters given from the outside and the maximum number of arrival angles to be specified, and generates a transmission signal vector for each combination of the specified arrival angles. Here, the plurality of arrival angles included in the signal generation parameters are the arrival angles θ1 to θ shown in the data of the mode vectors stored in the mode vector storage unit 12 NThe above is true. Also, N is an integer greater than or equal to 2. Furthermore, if the maximum number of arrival angles to be specified is, for example, "3", the signal generation unit 15 will generate a transmission signal vector for each of the combinations of arrival angles that specify one arrival angle, a combination that specifies two arrival angles, and a combination of arrival angles that specifies three arrival angles. The signal generation unit 15 generates identification information that can uniquely identify each of the transmission signal vectors for each generated combination of arrival angles, and attaches the generated identification information to the transmission signal vector and the specified arrival angle data, which is data indicating the combination of arrival angles specified when generating the transmission signal vector.

[0031] When the correlation matrix generation unit 13 receives the transmitted signal vector generated by the signal generation unit 15, it generates a correlation matrix R from the transmitted signal vector and the mode vector data stored in the mode vector storage unit 12. xx The following is generated. Here, if the transmitted signal vector is represented by vector s(t), the correlation matrix generation unit 13 calculates the matrix S by the following equation (4).

[0032]

number

[0033] In equation (4) above, the operator E[·] is an operator that represents the expected value, and specifically, it is an operator that calculates the ensemble average. Also, the symbol H is a symbol that represents the Hermitian transpose. Here, if the mode vector data stored in the mode vector storage unit 12 is represented by matrix A, the correlation matrix generation unit 13 generates the correlation matrix R based on matrix A and matrix S by the following equation (5). xx Calculate.

[0034]

number

[0035] In equation (5) above, matrix I is the K×K identity matrix, and σ 2 This is the variance of the noise, and is the σ of the second term on the right-hand side.2 I represents the noise component.

[0036] In contrast, when the correlation matrix generation unit 13 receives the received signal vector generated by the receiving unit 11, it generates a correlation matrix R based on the received signal vector. xx The following is generated. Here, if the received vector is represented by vector x(t), the correlation matrix generation unit 13 generates the correlation matrix R by the following equation (6). xx Calculate.

[0037]

number

[0038] The correlation matrix R generated by the correlation matrix generation unit 13 xx Whether calculated based on the transmitted signal vector and mode vector, or based on the received signal vector, the result is a K×K matrix.

[0039] The input data generation unit 14 receives the correlation matrix R generated by the correlation matrix generation unit 13. xx Input data is generated from the correlation matrix R. The input data generation unit 14 generates the correlation matrix R. xx The vector y shown in equation (7) below is generated as input data from the components of the lower triangular matrix.

[0040]

number

[0041] In equation (7) above, "u p,q " is the correlation matrix R xx The variable represents each element of the lower triangular matrix, and the "p" attached to u is the correlation matrix R xx The variable "q" indicates the row position in the lower triangular matrix, and "q" is the correlation matrix R xx This is a variable that indicates the column position in the lower triangular matrix. Therefore, "u 1,1 ,u 2,2 ,…,u K,K " is the correlation matrix R xxThese become the diagonal elements of the correlation matrix R. xx Since it is a Hermitian matrix, its diagonal elements are real numbers. Correlation matrix R xx The off-diagonal elements are complex numbers, and the operator shown in equation (8) in equation (7) is an operator that extracts the numerical value of the real component of the complex number, and the operator shown in equation (9) is an operator that extracts the numerical value of the imaginary component of the complex number. That is, the input data generated by the input data generation unit 14 is the correlation matrix R xx This results in a vector whose elements include the numerical values ​​of the diagonal elements of the lower triangular matrix, and the real and imaginary parts of the off-diagonal elements of the same lower triangular matrix.

[0042]

number

[0043]

number

[0044] The training data storage unit 16 stores, for each of the multiple identification pieces, the specified arrival angle data corresponding to that identification piece and the corresponding input data. Hereinafter, data consisting of one identification piece, the specified arrival angle data corresponding to that identification piece, and the corresponding input data will be referred to as training data, and the entire dataset stored by the training data storage unit 16 will be referred to as the training dataset.

[0045] The learning unit 17 comprises a learning processing unit 20, a function approximator 21, and a learning model data storage unit 23. The function approximator 21 is, for example, a multilayer neural network comprising an input layer, an intermediate layer containing multiple layers, and an output layer. The input layer has a number of neurons corresponding to the number of elements contained in the input data vector y. Each of the multiple neurons in the input layer is associated with a different element contained in the vector y. For example, according to the arrangement of vector y shown in equation (7), the first neuron in the input layer is associated with the first element, "u 1,1The second neuron in the input layer is associated with the second element, "u 2,2 This association continues, and so on, up to the last element of vector y. Each of the multiple neurons in the input layer takes the numerical value of the element of vector y that is associated with it.

[0046] The output layer contains a number of neurons corresponding to the range of angles to be estimated. For example, if the estimation range is 360° and the resolution is 1°, there will be 360 ​​neurons in the output layer, and each of the 360 ​​neurons will correspond to 0°, 1°, 2°, ..., 359°.

[0047] The number of hidden layers is two or more, and the number of layers and the number of neurons in each layer are predetermined to be of an appropriate size depending on the amount of data included in the training data.

[0048] The learning model data storage unit 23 stores the weight and bias values ​​applied to each of the neurons in the hidden layer and output layer included in the function approximator 21. Hereinafter, the weight and bias data will be referred to as learning model data. In the initial state, the learning model data storage unit 23 pre-stores the initial values ​​of the learning model data.

[0049] The learning processing unit 20 applies the learning model data stored in the learning model data storage unit 23 to the function approximator 21. That is, the learning processing unit 20 applies each of the weights and biases, which are learning model data stored in the learning model data storage unit 23, to the corresponding neurons of the function approximator 21. The function approximator 21 to which the learning model data has been applied becomes the learning model 22. The learning processing unit 20 reads out the training data one by one from the training data storage unit 16 and provides each of the numerical values ​​contained in the input data contained in the read-out training data to the corresponding neurons in the input layer of the learning model 22. The learning processing unit 20 generates the correct label from the specified arrival angle data contained in the read-out training data according to the following equation (10).

[0050]

number

[0051] Let's explain the meaning of equation (10) above. As described above, the number of neurons in the output layer of the function approximator 21 is the number corresponding to the range of angles of arrival angles to be estimated. For example, if the range to be estimated is 360° and the resolution is 1°, there will be 360 ​​neurons in the output layer. In this case, the learning processing unit 20 generates a vector z which is data with 360 elements. Here, each element of vector z is associated one-to-one with each neuron in the output layer of the function approximator 21. If the specified arrival angle data included in the read-out training data contains only, for example, "60°", the learning processing unit 20 sets the numerical values ​​of the elements of vector z such that the numerical value of the element of vector z associated with the output layer neuron corresponding to "60°" is set to "1", and the numerical values ​​of the other elements are set to "0". Similarly, if the specified arrival angle data included in the read-out training data contains two arrival angles, for example, "60°" and "90°", the learning processing unit 20 sets the numerical values ​​of the elements of vector z to "1" for the elements of the vector z associated with the output layer neuron corresponding to "60°" and the output layer neuron corresponding to "90°", and to "0" for the elements of the vector z. The learning processing unit 20 uses the vector z with the numerical values ​​set under this condition as the correct label.

[0052] Furthermore, if the resolution of the angle represented in the output layer differs from the resolution of the angle of arrival included in the specified arrival angle data, the values ​​of the elements of vector z shall be determined as follows. For example, suppose the resolution of the output layer is "1°" and the resolution of the specified arrival angle data is "0.1°". In this case, for example, the values ​​of the elements of vector z shall be determined after rounding the decimal part of the specified arrival angle data. That is, if the specified arrival angle data includes "60.4°", the value of the element of vector z associated with the output layer neuron corresponding to the rounded "60°" shall be set to "1". On the other hand, if the specified arrival angle data includes "60.5°", the value of the element of vector z associated with the output layer neuron corresponding to the rounded "61°" shall be set to "1".

[0053] The learning processing unit 20 takes the output values ​​output by each output layer of the learning model 22 by providing input data. Hereinafter, a vector with multiple output values ​​as elements will be referred to as output data. Based on the output data, the correct label corresponding to the input data when the output data was obtained, a predetermined loss function, and the learning model data stored in the learning model data storage unit 23, the learning processing unit 20 calculates new learning model data, for example, using backpropagation, so that the output data approaches the correct label. The learning processing unit 20 overwrites the learning model data stored in the learning model data storage unit 23 with the newly calculated learning model data and applies the newly calculated learning model data to the function approximator 21. As a result, the learning model 22 is updated.

[0054] The inference unit 18 comprises an inference processing unit 30 and a function approximator 31. The function approximator 31 has the same configuration as the function approximator 21. When the learning process performed by the learning processing unit 20 is completed, the inference processing unit 30 applies the learned model data stored in the learned model data storage unit 23 to the function approximator 31. The function approximator 31 to which the learned model data has been applied becomes the learned model 32. The inference processing unit 30 obtains the output data output by the learned model 32 by having the input data generation unit 14 provide input data to the learned model 32. In the output data output by the learned model 32, the numerical value for the angle at which arriving radio waves exist is close to "1", and the numerical value for the angle at which arriving radio waves do not exist is close to "0". Therefore, it can be said that the learned model 32 performs calculations so that it can produce results similar to an evaluation function that evaluates the probability of radio wave existence for each arrival angle, i.e., the evaluation function of the MUSIC method. In this case, if the output data is represented on a graph where the vertical axis represents the numerical values ​​of the elements included in the output data and the horizontal axis represents the angle of arrival, the output data can be considered as data showing the spectrum related to the angle of arrival of the arriving radio waves.

[0055] As described above, the angle of arrival calculation unit 19 considers the output data acquired by the inference processing unit 30 as data showing the spectrum related to the angle of arrival of the arriving radio wave, and calculates the angle of arrival of the radio wave by performing a peak search on the spectrum. The angle of arrival calculated by the angle of arrival calculation unit 19 becomes the angle of arrival estimated by the angle of arrival estimation device 1. Hereinafter, the angle of arrival estimated by the angle of arrival estimation device 1 will be referred to as the "estimated angle of arrival".

[0056] Figure 3 shows an example of the hardware configuration of the angle of arrival estimation device 1. The angle of arrival estimation device 1 is a computer equipped with, for example, a CPU (Central Processing Unit) 201, RAM (Random Access Memory) 202, ROM (Read Only Memory) 203, auxiliary storage device 204, wireless communication module 205, and input / output interface 206. The CPU 201, RAM 202, ROM 203, auxiliary storage device 204, wireless communication module 205, and input / output interface 206 are interconnected by a bus. Here, the auxiliary storage device 204 is, for example, an HDD (Hard Disk Drive) or an SSD (Solid State Drive). The wireless communication module 205 corresponds to the hardware parts of the antenna elements 10-1 to 10-K and the receiving unit 11. An application program pre-stored in ROM 203 or auxiliary storage device 204 is executed by CPU 201, thereby configuring the functional parts: the software portion that generates a received signal vector from the received signal of the receiving unit 11, the correlation matrix generation unit 13, the input data generation unit 14, the signal generation unit 15, the learning processing unit 20, the function approximaters 21, 31, the inference processing unit 30, and the angle of arrival calculation unit 19. Memory areas corresponding to the mode vector storage unit 12, the training data storage unit 16, and the learning model data storage unit 23 are allocated in RAM 203 or auxiliary storage device 204. Input devices such as a keyboard and mouse, and output devices such as an LCD display are connected to the input / output interface 206. The correlation matrix generation unit 13, the input data generation unit 14, the signal generation unit 15, the learning processing unit 20, and the inference processing unit 30 take in data provided by the input devices via the input / output interface 206. The input data generation unit 14, the learning processing unit 20, and the angle of arrival calculation unit 19 output data to the output device via the input / output interface 206.

[0057] (Processing in the first embodiment) The process performed by the angle of arrival estimation device 1 will be explained with reference to Figures 4 to 7. Figure 4 is a flowchart showing the overall process performed by the angle of arrival estimation device 1. Before the process in Figure 4 begins, the mode vector storage unit 12 is written with pre-generated mode vector data, which are the mode vectors of the array antenna 10 used in the actual environment. In addition, the initial values ​​of the learning model data are written to the learning model data storage unit 23.

[0058] The operator of the Angle of Arrival Estimation Device 1 performs an operation on an input device connected to the Angle of Arrival Estimation Device 1 to provide the Angle of Arrival Estimation Device 1 with a processing type signal indicating the type of "training data generation". The input device, upon receiving the operator's operation, outputs a processing type signal indicating the type of "training data generation" to the correlation matrix generation unit 13, input data generation unit 14, learning processing unit 20, and inference processing unit 30 of the Angle of Arrival Estimation Device 1. Each of the correlation matrix generation unit 13, input data generation unit 14, learning processing unit 20, and inference processing unit 30 takes in the processing type signal indicating the type of "training data generation" output by the input device (step S1).

[0059] Each of the correlation matrix generation unit 13, input data generation unit 14, learning processing unit 20, and inference processing unit 30 determines the type of processing type signal it has received (step S2). If the learning processing unit 20 and the inference processing unit 30 determine that the type of processing type signal it has received is "training data generation", they do not perform any processing. On the other hand, if the correlation matrix generation unit 13 and the input data generation unit 14 determine that the type of processing type signal it has received is "training data generation" (step S2, training data generation), they start the training data generation processing subroutine shown in Figure 5 (step S3).

[0060] (Training data generation process in the first embodiment) The correlation matrix generation unit 13 reads the mode vector data from the mode vector storage unit 12 and switches the input source to the signal generation unit 15 (step Sa1-1). The input data generation unit 14 switches the output destination of the input data to be generated to the training data storage unit 16 (step Sa1-2). Note that the processes in steps Sa1-1 and Sa1-2 are performed in parallel by the correlation matrix generation unit 13 and the input data generation unit 14 after the determination process in step S2.

[0061] The operator provides predetermined signal generation parameters to the angle of arrival estimation device 1 via an input device connected to the angle of arrival estimation device 1. The signal generation parameters include the N angles of arrival θ1 to θ2 shown in the mode vector data stored in the mode vector storage unit 12, as described above. N This includes N arrival angles representing each of the specified angles, and the maximum number of arrival angles to be specified. The input device, upon receiving an operation from the operator, outputs the signal generation parameters to the signal generation unit 15 of the arrival angle estimation device 1. The signal generation unit 15 takes in the signal generation parameters output by the input device (step Sa2).

[0062] The signal generation unit 15 selects an arrival angle from the N arrival angles included in the acquired signal generation parameter, within the range of the maximum number of specified arrival angles included in the signal generation parameter. The signal generation unit 15 generates specified arrival angle data that shows the specified combination of arrival angles. The signal generation unit 15 generates a transmission signal vector corresponding to the specified combination of arrival angles. The signal generation unit 15 generates identification information and attaches the generated identification information to the specified arrival angle data and the generated transmission signal vector. The signal generation unit 15 writes the specified arrival angle data with the attached identification information to the training data storage unit 16 for storage. The signal generation unit 15 outputs the transmission signal vector with the attached identification information to the correlation matrix generation unit 13 (step Sa3).

[0063] The correlation matrix generation unit 13 takes in the transmitted signal vector to which identification information is attached, output by the signal generation unit 15, and calculates matrix S based on the acquired transmitted signal vector using equation (4). Based on the calculated matrix S and the mode vector data read from the mode vector storage unit 12, i.e., matrix A, the correlation matrix generation unit 13 calculates the correlation matrix R using equation (5). xx The correlation matrix generation unit 13 generates the correlation matrix R. xx The identification information that was attached to the captured transmitted signal vector is then added. The correlation matrix generation unit 13 generates the correlation matrix R to which the identification information has been added. xx This is output to the input data generation unit 14 (step Sa4).

[0064] The input data generation unit 14 generates a correlation matrix R to which identification information is attached, output by the correlation matrix generation unit 13. xx The data is imported, and the imported correlation matrix R xx The input data is generated from equation (7) (step Sa5). The input data generation unit 14 generates the correlation matrix R from the training data storage unit 16. xx The system detects records with identification information that match the identification information assigned to the input data. The records detected by the input data generation unit 14 include identification information and specified arrival angle data. Therefore, the input data generation unit 14 writes the generated input data to the training data storage unit 16 for storage so that it can be added to the detected record. This completes one training data set (step Sa6).

[0065] When the signal generation unit 15 finishes processing in step Sa3, it specifies a pattern of combinations of arrival angles that have not yet been specified, within the range of the maximum number of arrival angles to be specified included in the acquired signal generation parameters, and performs the processing in step Sa3 again. After the processing in step Sa3, the processing from steps Sa4 to Sa6 is performed again (loop La1s~La1e). For example, the signal generation parameters may be θ1~θ 360 If the 360 ​​angles of arrival and the maximum number of angles of arrival specified, "2", are included, the processing in the loop La1s~La1e will be: 360C2 will be repeated 64,620 times.

[0066] The signal generation unit 15 terminates processing when it has specified all combinations of arrival angles according to the signal generation parameters. The input data generation unit 14 waits for a predetermined period of time for the correlation matrix generation unit 13 to generate the correlation matrix R xx If no output is given, a notification signal indicating completion of the training data generation process is output to the output device (step Sa7). This completes the training data generation process subroutine, and the process returns to the flowchart in Figure 4.

[0067] If the output device is, for example, a liquid crystal display, when the output device receives a notification signal indicating the completion of the training data generation process output by the input data generation unit 14, it displays a message indicating the completion of the training data generation process on the screen of the liquid crystal display. When the operator of the angle of arrival estimation device 1 confirms the message indicating the completion of the training data generation process, they perform an operation on the input device connected to the angle of arrival estimation device 1 to provide the angle of arrival estimation device 1 with a processing type signal indicating the type of "learning". Upon receiving the operator's operation, the input device outputs a processing type signal indicating the type of "learning" to the correlation matrix generation unit 13, the input data generation unit 14, the learning processing unit 20, and the inference processing unit 30 of the angle of arrival estimation device 1. Each of the correlation matrix generation unit 13, the input data generation unit 14, the learning processing unit 20, and the inference processing unit 30 takes in the processing type signal indicating the type of "learning" output by the input device (step S1).

[0068] Each of the correlation matrix generation unit 13, input data generation unit 14, learning processing unit 20, and inference processing unit 30 determines the type of processing type signal it has received (step S2). If the correlation matrix generation unit 13, input data generation unit 14, and inference processing unit 30 determine that the type of processing type signal it has received is "learning", they do not perform any processing. On the other hand, if the learning processing unit 20 determines that the type of processing type signal it has received is "learning" (step S2, learning), it starts the learning processing subroutine shown in Figure 6 (step S4).

[0069] (Learning process in the first embodiment) The learning processing unit 20 reads the initial learning model data stored in the learning model data storage unit 23 and applies the read learning model data to the function approximator 21. This generates the learning model 22 (step Sb1). The learning processing unit 20 reads one of the training data from the training data storage unit 16. For example, if the identification information contained in the training data is represented by a series of positive integer numbers, the training data containing the smallest number as the identification information is read (step Sb2). The learning processing unit 20 provides the input data contained in the training data to the input layer of the learning model 22. The learning processing unit 20 obtains the output data output by the output layer of the learning model 22 by providing the input data (step Sb3).

[0070] The learning processing unit 20 generates correct labels from specified arrival angle data included in the training data according to the condition of equation (10). The learning processing unit 20 calculates new learning model data based on the acquired output data, the generated correct labels, a predetermined loss function, and the learning model data stored in the learning model data storage unit 23 (step Sb4). The learning processing unit 20 overwrites the learning model data stored in the learning model data storage unit 23 with the newly calculated learning model data and applies the newly calculated learning model data to the function approximator 21. As a result, the learning model 22 is updated (step Sb5).

[0071] The learning processing unit 20 reads out training data from the training data storage unit 16 that is not being used for the learning process. As described above, if the identification information contained in the training data is a number, it reads out training data containing the identification information with the next largest number after the identification information contained in the training data that was the target of the previous learning process. Based on the read training data, the learning processing unit 20 performs the processing in steps Sb2 to Sb5 again. The learning processing unit 20 performs the processing in steps Sb2 to Sb5 in the training data storage unit 16 until there is no more training data that is not being used for the learning process (loop Lb1s to Lb1e). When the processing in loop Lb1s to Lb1e is completed, the learning processing unit 20 outputs a learning process completion notification signal to the output device (step Sb6). This completes the learning process subroutine, and the process returns to the flowchart in Figure 4.

[0072] When the output device receives a learning completion notification signal output by the learning processing unit 20, it displays a message on the screen indicating that the learning process is complete. Upon confirming the message indicating the completion of the learning process, the operator of the angle of arrival estimation device 1 performs an operation on the input device connected to the angle of arrival estimation device 1 to provide the angle of arrival estimation device 1 with a processing type signal indicating the type of "inference". The input device, upon receiving the operator's operation, outputs a processing type signal indicating the type of "inference" to the correlation matrix generation unit 13, input data generation unit 14, learning processing unit 20, and inference processing unit 30 of the angle of arrival estimation device 1. Each of the correlation matrix generation unit 13, input data generation unit 14, learning processing unit 20, and inference processing unit 30 takes in the processing type signal indicating the type of "inference" output by the input device (step S1).

[0073] Each of the correlation matrix generation unit 13, input data generation unit 14, learning processing unit 20, and inference processing unit 30 determines the type of processing type signal it has received (step S2). If the learning processing unit 20 determines that the type of processing type signal it has received is "inference", it does not perform any processing. If the correlation matrix generation unit 13, input data generation unit 14, and inference processing unit 30 determine that the type of processing type signal it has received is "inference" (step S2, inference), they start the inference processing subroutine shown in Figure 7 (step S5).

[0074] (Inference processing in the first embodiment) The correlation matrix generation unit 13 switches the input source to the receiving unit 11 (step Sc1-1). The input data generation unit 14 switches the output destination of the input data to be generated to the inference processing unit 30 (step Sc1-2). The inference processing unit 30 reads the trained trained model data from the trained model data storage unit 23 and applies the read trained trained model data to the function approximator 31. This generates the trained trained model 32 (step Sc1-3). The processes in steps Sc1-1, Sc1-2, and Sc1-3 are performed in parallel after the correlation matrix generation unit 13, the input data generation unit 14, and the inference processing unit 30 have performed the determination process in step S2.

[0075] The receiving unit 11 acquires K digital electrical received signals from radio waves of predetermined wavelengths among the radio waves reaching antenna elements 10-1 to 10-K, and generates a received signal vector that includes the acquired K received signals as elements. The receiving unit 11 outputs the generated received signal vector to the correlation matrix generation unit 13 (step Sc2). The correlation matrix generation unit 13 takes in the received signal vector output by the receiving unit 11 and, based on the acquired received signal vector, generates a correlation matrix R using equation (6). xx The correlation matrix generation unit 13 generates the correlation matrix R. xx This is output to the input data generation unit 14 (step Sc3).

[0076] The input data generation unit 14 receives the correlation matrix R output by the correlation matrix generation unit 13. xx The data is imported, and the imported correlation matrix R xxInput data is generated by equation (7). The input data generation unit 14 outputs the generated input data to the inference processing unit 30 (step Sc4). The inference processing unit 30 takes in the input data output by the input data generation unit 14 and provides the taken input data to the input layer of the trained model 32. The inference processing unit 30 obtains the output data output by the output layer of the trained model 32 by providing the input data. The inference processing unit 30 outputs the obtained output data to the angle of arrival calculation unit 19 (step Sc5).

[0077] The angle of arrival calculation unit 19 receives the output data output by the inference processing unit 30, considers the received output data as data showing the spectrum related to the angle of arrival of the arriving radio wave, and calculates the estimated angle of arrival of the radio wave by performing a peak search on the spectrum. The angle of arrival calculation unit 19 outputs the calculated estimated angle of arrival data to the output device. When the output device receives the estimated angle of arrival data output by the angle of arrival calculation unit 19, it displays the estimated angle of arrival data on the screen (step Sc6).

[0078] While the receiver 11 is receiving radio waves, the processes in steps Sc2 to Sc6 are repeated (loop Lc1s to Lc1e). When the receiver 11 stops receiving radio waves, the inference processing subroutine terminates, and the process shown in Figure 4 also terminates.

[0079] In the first embodiment described above, the signal generation unit 15 generates a transmission signal vector such that the signal intensity of the transmission signal corresponding to a specified arrival angle is stronger than that of the transmission signals corresponding to other arrival angles. The correlation matrix generation unit 13 generates a correlation matrix based on the transmission signal vector and the mode vector of the real-world array antenna used in the real environment, i.e., the array antenna 10. The input data generation unit 14 generates input data from the elements of the correlation matrix. The learning unit 17 generates a learning model 22 by performing a learning process using the input data as input and training data in which data indicating the arrival angle corresponding to the input data is used as the correct label.

[0080] By having the above configuration, the mode vector of the array antenna 10 used in a real environment is used to create multiple correlation matrices R for each arrival angle at fine angular intervals. xx This can generate a correlation matrix R for each of the multiple arrival angles at fine angular intervals. xx This is a correlation matrix R that reflects the characteristics of the array antenna 10 used in the actual environment. xx The correlation matrix R is as follows: xx By generating training data from this, it is possible to generate training data in which each of multiple arrival angles at fine angular intervals is used as the correct label, without actually measuring the received signal. By performing a learning process using this training data, it becomes possible to generate a trained model 32 with high estimation accuracy for various arrival angles. Since the characteristics of the array antenna 10 used in the actual environment are reflected in the training data of the trained model 32, there is no need to perform retraining which is required when using theoretical mode vectors, and it becomes possible to estimate the arrival angle of radio waves with high accuracy in the actual environment.

[0081] When using theoretical mode vectors, as described in Non-Patent Documents 1 and 2, it is necessary to retrain the generated learning model to fit the real environment. The training data required for this retraining must be generated by measuring many received signals for multiple arrival angles at fine angular intervals in the real environment, resulting in a large number of training data. In contrast, the learned learning model 32 generated in the first embodiment described above is already adapted to the real environment. Therefore, when retraining the learned learning model 32 to further adapt it to the real environment using training data generated using actual received signals, it is possible to further improve the estimation accuracy with a smaller number of training data compared to the number of training data required when retraining using theoretical mode vectors. In other words, by using the arrival angle estimation device 1 of the first embodiment, it is possible to reduce the number of received signals measured in the real environment to generate training data for retraining compared to when using theoretical mode vectors.

[0082] (Second embodiment) Generally, when the distance between devices transmitting and receiving radio waves is shorter than the distance assumed during the design phase, the correlation matrix R xx It is thought that the distribution of input data generated by the input data generation unit 14 of the first embodiment changes, such as when the diagonal component value becomes larger. Similarly, it is thought that the distribution of input data generated by the input data generation unit 14 of the first embodiment also changes when the distance between the devices that transmit and receive radio waves is longer than the distance assumed at the time of design. In the general field of machine learning, it is known that if the distribution of input data differs between the learning process and the inference process, the estimation accuracy decreases. In contrast, Non-Patent Documents 1 and 2 evaluate performance using the signal-to-noise ratio as an indicator, and do not disclose measures to address the effects that arise depending on the distance between the devices that transmit and receive radio waves. The second embodiment is provided with a configuration that prevents a decrease in the estimation accuracy of the angle of arrival even when the distance between the devices that transmit and receive radio waves deviates from the distance assumed at the time of design.

[0083] Figure 8 is a block diagram showing the configuration of the arrival angle estimation device 1a according to the second embodiment. In the second embodiment, components identical to those in the first embodiment are denoted by the same reference numerals, and different components will be described below. The arrival angle estimation device 1a comprises a plurality of antenna elements 10-1 to 10-K, a receiving unit 11, a mode vector storage unit 12, a correlation matrix generation unit 13, an input data generation unit 14a, a signal generation unit 15, a training data storage unit 16, a learning unit 17, an inference unit 18, and an arrival angle calculation unit 19.

[0084] The input data generation unit 14a has the same configuration as the input data generation unit 14 of the first embodiment, except for the configuration shown below. The input data generation unit 14a generates a correlation matrix R xx The elements of the lower triangular matrix are extracted and a vector y is generated by equation (7), and each element of the generated vector y is normalized as shown in equation (11).

[0085]

number

[0086] The normalization shown in equation (11) above is called Min-MaX-Normalization. In equation (11), the right-hand side is "v j '' is a variable that represents each element of vector y. Here, j is the index value of the element of vector y. max(v) on the right side is the maximum value of the elements of vector y, and min(v) is the minimum value of the elements of vector y. v' on the left side of equation (11) j These are the values ​​of the elements of the normalized vector y.

[0087] The angle of arrival estimation device 1b of the second embodiment has the same hardware configuration as the angle of arrival estimation device 1 of the first embodiment shown in Figure 3, except for the configurations shown below. In the second embodiment, the functional part of the input data generation unit 14a is configured in place of the input data generation unit 14 by executing an application program pre-stored in the ROM 203 or auxiliary storage device 204 by the CPU 201. The input data generation unit 14a configured in this way takes in data provided from an input device via the input / output interface 206 and outputs data to an output device via the input / output interface 206.

[0088] In the second embodiment, the processing is the same as that shown in Figures 4 to 7 of the first embodiment, except for the processing shown below. However, in this processing, the processing that was performed by the input data generation unit 14 will be performed by the input data generation unit 14a. The difference in processing between the first embodiment and the second embodiment is the processing in step Sa5 in Figure 5 and step Sc4 in Figure 7, in which the input data generation unit 14a processes the correlation matrix R generated by the correlation matrix generation unit 13. xx Instead of generating input data using equation (7), the following process is performed: The input data generation unit 14a generates the correlation matrix R xxA vector y is generated using equation (7), and the elements of the generated vector y are normalized by applying equation (11). The normalized vector y is then used as the input data.

[0089] As a result, in the second embodiment, by applying the normalization shown in equation (11) to the vector y, even if there is a change in the distance between the devices that transmit and receive radio waves, the difference in distribution in the input data generated by the input data generation unit 14a becomes smaller, making it possible to mitigate the decrease in the accuracy of estimating the angle of arrival.

[0090] In the second embodiment described above, the input data generation unit 14a, during the processing of step Sa5 in Figure 5, does not perform the normalization shown in equation (11), but instead generates the correlation matrix R, similar to the first embodiment. xx Alternatively, input data may be generated using equation (7), and the generated input data may be written to the training data storage unit 16 for storage. In this case, in step Sb2 of the learning process in Figure 6, the learning processing unit 20 does not directly read the training data from the training data storage unit 16, but rather performs the following processing, for example. The learning processing unit 20 outputs a training data read instruction signal to the input data generation unit 14a. When the input data generation unit 14a receives the training data read instruction signal from the learning processing unit 20, it reads one of the training data that is not the target of the learning process from the training data storage unit 16. The input data generation unit 14a uses the vector y obtained by normalizing the elements of the input data, i.e., vector y, contained in the read training data, by applying equation (11), as input data. The input data generation unit 14a outputs the input data, which is the normalized vector y, and the identification information and specified arrival angle data contained in the read training data to the learning processing unit 20.

[0091] In the first and second embodiments described above, the multiple arrival angles included in the signal generation parameters provided to the signal generation unit 15 are the arrival angles θ1 to θ shown in the mode vector data stored in the mode vector storage unit 12. NTherefore, once the mode vector data to be stored in the mode vector storage unit 12 is identified, the arrival angles θ1 to θ to be included in the signal generation parameters are determined accordingly. N This will also be identified. Therefore, when writing mode vector data to the mode vector storage unit 12, the maximum number of arrival angles to be specified may be defined, and the signal generation parameters may be stored in the internal storage unit of the signal generation unit 15. In this case, the signal generation unit 15, for example, receives an instruction signal from an external source to start training data processing, starts the processing of step Sa2, and in the processing of step Sa2 that has been started, instead of taking in the signal generation parameters from an external source, it reads out the signal generation parameters stored in the internal storage area.

[0092] (Third embodiment) Figure 9 is a block diagram showing the overall configuration of the arrival angle estimation system 100 and the internal configuration of the operating device 3 according to the third embodiment. In the third embodiment, components identical to those in the first embodiment are denoted by the same reference numerals, and the different components will be described below.

[0093] The angle of arrival estimation system 100 comprises an angle of arrival estimation device 1b, a learning device 2, an operating device 3, and a communication network 4. The communication network 4 interconnects the angle of arrival estimation device 1b, the learning device 2, and the operating device 3. The operating device 3 comprises a communication processing unit 51, an operation unit 52, an output unit 53, a control unit 54, and a storage unit 55. The communication processing unit 51 connects to the communication network 4 to send and receive data. The operation unit 52 includes an input device such as a mouse or keyboard and receives input from the operator. The output unit 53 includes an output device such as a liquid crystal display and outputs data. The control unit 54 performs various control processing on the operating device 3. The storage unit 55 stores in advance mode vector data of the array antenna 10 used in a real environment, which is provided by the angle of arrival estimation device 1b and is generated in advance by the method described in the first embodiment. However, in the third embodiment, unlike the first and second embodiments, the wavelength of the radio wave whose angle of arrival is to be estimated in the angle of arrival estimation device 1b, i.e., the center frequency, can be switched. Therefore, the storage unit 55 stores in advance mode vector data corresponding to each of the pre-selected multiple center frequencies.

[0094] Figure 10 is a block diagram showing the internal configuration of the angle of arrival estimation device 1b and the learning device 2 in the angle of arrival estimation system 100. The angle of arrival estimation device 1b comprises a plurality of antenna elements 10-1 to 10-K, a receiving unit 11a, a correlation matrix generation unit 13-1, an input data generation unit 14-1, an inference unit 18a, an angle of arrival calculation unit 19, and a communication processing unit 41-1.

[0095] The receiving unit 11a has the same configuration as the receiving unit 11 of the first embodiment, except for the configuration described below. The receiving unit 11a extracts radio waves with wavelengths corresponding to the center frequencies specified in the reception parameters provided externally via the communication processing unit 41-1 from among the radio waves reaching the antenna elements 10-1 to 10-K. The receiving unit 11a acquires K digital received signals from the extracted radio waves and generates a received signal vector that includes the acquired K received signals as elements. The correlation matrix generation unit 13-1 has the same configuration as the correlation matrix generation unit 13 of the first embodiment, in which a processing type signal indicating the type of "inference" is provided. In other words, the correlation matrix generation unit 13-1 does not receive a processing type signal, its source is fixed to the receiving unit 11a, and it generates a correlation matrix R based on the received signal vector. xx Generates.

[0096] The input data generation unit 14-1 has the same configuration as the input data generation unit 14 in the first embodiment, which is given a processing type signal indicating the type of "inference". In other words, the input data generation unit 14-1 does not receive a processing type signal and has the same configuration as the input data generation unit 14, which is fixed to the inference processing unit 30 as its output destination.

[0097] The inference unit 18a comprises an inference processing unit 30a and a function approximator 31. The inference processing unit 30a has the same configuration as the inference processing unit 30 of the first embodiment, except for the configuration shown below. The inference processing unit 30a does not receive a processing type signal like the inference processing unit 30 of the first embodiment, and when trained model data is provided from an external source via the communication processing unit 41-1, it applies the provided trained model data to the function approximator 31. The communication processing unit 41-1 connects to the communication network 4 to send and receive data.

[0098] The learning device 2 comprises a mode vector storage unit 12, a correlation matrix generation unit 13-2, an input data generation unit 14-2, a signal generation unit 15, a teacher data storage unit 16, a learning unit 17a, and a communication processing unit 41-2. The mode vector storage unit 12 stores the mode vector data corresponding to the center frequency specified in the reception parameters, from among the multiple mode vector data stored in the storage unit 55 of the operating device 3.

[0099] The correlation matrix generation unit 13-2 has the same configuration as the correlation matrix generation unit 13 of the first embodiment, in which a processing type signal indicating the type of "training data generation" is given. In other words, the correlation matrix generation unit 13-2 does not receive a processing type signal, and its input source is fixed to the signal generation unit 15. Based on the transmitted signal vector and the mode vector data stored in the mode vector storage unit 12, it generates the correlation matrix R xx Generates.

[0100] The input data generation unit 14-2 has the same configuration as the input data generation unit 14 in the first embodiment, when it is given a processing type signal indicating the type of "training data generation". In other words, the input data generation unit 14-1 does not receive a processing type signal and has the same configuration as the input data generation unit 14 when its output destination is fixed to the training data storage unit 16.

[0101] The learning unit 17a comprises a learning processing unit 20a, a function approximater 21, and a learning model data storage unit 23. The learning processing unit 20a has the same configuration as the learning processing unit 20 of the first embodiment, except for the configuration shown below. The learning processing unit 20a does not receive a processing type signal like the learning processing unit 20 of the first embodiment. When it receives a learning processing start instruction signal from an external source via the communication processing unit 41-1, it starts the processing of the learning processing subroutine shown in Figure 6, with the learning processing unit 20 replaced by the learning processing unit 20a. The communication processing unit 41-2 connects to the communication network 4 to send and receive data.

[0102] In the first embodiment, the input data generation unit 14, the learning processing unit 20, and the angle of arrival calculation unit 19 output the data to be output to an output device. However, in the third embodiment, the angle of arrival calculation unit 19 of the angle of arrival estimation device 1b outputs the data indicating the estimated angle of arrival to the communication processing unit 41-1 instead of the output device. The input data generation unit 14-2 of the learning device 2 outputs a teacher data generation processing completion notification signal to the communication processing unit 41-2 instead of the output device, and the learning processing unit 20a outputs a learning processing completion notification signal to the communication processing unit 41-2 instead of the output device.

[0103] Figure 11 shows the hardware configuration of the angle of arrival estimation device 1b, the learning device 2, and the operating device 3. Note that the same reference numerals in Figures 3 and 11, which show the hardware configuration of the first embodiment, do not mean that the same hardware is being used, but rather that the same type of hardware is being used. For example, the CPU 201 in the angle of arrival estimation device 1 in Figure 3 and the angle of arrival estimation device 1b, learning device 2, and operating device 3 in Figure 11 means that they are the same type of hardware, a CPU, but not that they are the same product or CPU with the same specifications.

[0104] The arrival angle estimation device 1b is a computer comprising, for example, a CPU 201, RAM 202, ROM 203, auxiliary storage device 204, wireless communication module 205, and communication module 206. The CPU 201, RAM 202, ROM 203, auxiliary storage device 204, wireless communication module 205, and communication module 206 are interconnected by a bus. The wireless communication module 205 corresponds to the hardware portion of the antenna elements 10-1 to 10-K and the receiving unit 11a. The communication module 206 corresponds to the hardware portion of the communication processing unit 41-1. By executing an application program pre-stored in ROM 203 or auxiliary storage device 204 by the CPU 201, the functional portions of the software portion

[0105] The learning device 2 is, for example, a computer equipped with a CPU 201, RAM 202, ROM 203, auxiliary storage device 204, and a communication module 206. The CPU 201, RAM 202, ROM 203, auxiliary storage device 204, and communication module 206 are interconnected by a bus. The communication module 206 corresponds to the hardware portion of the communication processing unit 41-2. When an application program pre-stored in ROM 203 or auxiliary storage device 204 is executed by the CPU 201, the functional parts of the correlation matrix generation unit 13-2, input data generation unit 14-2, signal generation unit 15, learning processing unit 20a, function approximater 21, and the software portion of the communication processing unit 41-2 are configured, and memory areas corresponding to the mode vector storage unit 12, training data storage unit 16, and learning model data storage unit 23 are allocated in RAM 203 or auxiliary storage device 204.

[0106] The operating device 3 is a computer comprising, for example, a CPU 201, RAM 202, ROM 203, auxiliary storage device 204, communication module 206, input device 207, and output device 208. The input device 207 is, for example, a mouse or keyboard. The output device 208 is, for example, a liquid crystal display. The communication module 206 corresponds to the hardware part of the communication processing unit 51. When an application program pre-stored in ROM 203 or auxiliary storage device 204 is executed by the CPU 201, the functional parts of the operating unit 52 including the input device 207, the output unit 53 including the output device 208, the control unit 54, and the software part of the communication processing unit 51 are configured, and a storage area corresponding to the storage unit 55 is allocated in RAM 203 or auxiliary storage device 204.

[0107] The communication module 206 of the angle of arrival estimation device 1b, the communication module 206 of the learning device 2, and the communication module 206 of the operating device 3 are interconnected by a communication network 4. Alternatively, the operating device 3 may not have an input device 207 and an output device 208, but instead may have an input / output interface 206 as shown in Figure 3, to which the input device 207 and the output device 208 are connected.

[0108] (Processing in the third embodiment) Referring to Figure 12, the processing flow of the arrival angle estimation system 100 of the third embodiment will be described. Before the processing shown in the sequence diagram in Figure 12 begins, each of the mode vectors generated in advance by the method described in the first embodiment, and representing the mode vector data for each center frequency of the array antenna 10 used in the real environment provided by the arrival angle estimation device 1b, is written to the storage unit 55 of the operating device 3, associated with its corresponding center frequency. The range of center frequencies that can be set by the receiving parameters in the receiving unit 11a of the arrival angle estimation device 1b is predetermined by specifications, etc. Therefore, mode vector data corresponding to several center frequencies selected in advance from within this range are stored in the storage unit 55. The operator selects one of the center frequencies corresponding to the multiple mode vector data stored in the storage unit 55. In addition, the initial values ​​of the learning model data are written to the learning model data storage unit 23 of the learning device 2.

[0109] The operator performs an operation on the operating unit 52 of the operating device 3 to transmit mode vector data to the learning device 2 by specifying a center frequency. Since the operation received by the operating unit 52 involves the process of reading the mode vector from the storage unit 55, the operating unit 52 specifies the learning device 2 as the destination and outputs a mode vector transmission instruction signal containing the specified center frequency to the control unit 54. When the control unit 54 receives the mode vector transmission instruction signal from the operating unit 52, it reads the mode vector data corresponding to the center frequency included in the received mode vector transmission instruction signal from the storage unit 55. The control unit 54 adds the read mode vector data to the mode vector transmission instruction signal received from the operating unit 52 and outputs the mode vector transmission instruction signal to the communication processing unit 51. The communication processing unit 51 takes in the mode vector transmission instruction signal output by the control unit 54. The communication processing unit 51 includes the mode vector data included in the received mode vector transmission instruction signal and generates transmission data with the learning device 2, which is specified as the destination in the mode vector transmission instruction signal, as the destination and the data type being "mode vector". The communication processing unit 51 sends the generated transmission data to the communication network 4. The communication network 4 forwards the transmission data to the learning device 2 according to the destination specified in the transmission data.

[0110] The communication processing unit 41-2 of the learning device 2 receives the transmission data sent by the operating device 3 from the communication network 4. Since the type of data included in the transmission data is a "mode vector", the communication processing unit 41-2 writes the mode vector data included in the transmission data to the mode vector storage unit 12 for storage (step Sd1).

[0111] The operator performs an operation to specify signal generation parameters to the operation unit 52 of the operating device 3, and also sets the destination of the specified signal generation parameters to the learning device 2. Here, the signal generation parameters specified by the operator are the arrival angles θ1~θ shown in the mode vector data transmitted to the learning device 2 in the processing of step Sd1. NThis will include the maximum number of the specified angle of arrival. The operation unit 52 outputs a signal generation parameter transmission instruction signal to the communication processing unit 51, which includes the specified signal generation parameters and specifies the learning device 2 as the destination. The communication processing unit 51 receives the signal generation parameter transmission instruction signal output by the operation unit 52. The communication processing unit 51 includes the signal generation parameters contained in the received signal generation parameter transmission instruction signal and generates transmission data with the learning device 2, which is specified as the destination in the signal generation parameter transmission instruction signal, as the destination and the data type as "signal generation parameters". The communication processing unit 51 sends the generated transmission data to the communication network 4. The communication network 4 forwards the transmission data to the learning device 2 according to the destination included in the transmission data.

[0112] The communication processing unit 41-2 of the learning device 2 receives the transmission data sent by the operating device 3 from the communication network 4. Since the type of data included in the transmission data is "signal generation parameters", the communication processing unit 41-2 outputs the signal generation parameters included in the transmission data to the signal generation unit 15 (step Sd2). As a result, the same processing as steps Sa2 to Sa7 of the teacher data generation processing subroutine shown in Figure 5 is started as the teacher data generation processing subroutine of the third embodiment. However, in the teacher data generation processing subroutine of the third embodiment, in the processing of steps Sa2 to Sa7 in Figure 5, the correlation matrix generation unit 13 is read as the correlation matrix generation unit 13-2 and the input data generation unit 14 is read as the input data generation unit 14-2. In addition, in the processing of step Sa4, when the correlation matrix generation unit 13-2 first takes in the transmission signal vector to which identification information is attached, output by the signal generation unit 15, a process is added to read the mode vector data from the mode vector storage unit 12 (step Sd3).

[0113] In step Sa7 of the teacher data generation process in step Sd3, the input data generation unit 14-2 outputs a teacher data generation completion notification signal to the communication processing unit 41-2. When the communication processing unit 41-2 receives the teacher data generation completion notification signal from the input data generation unit 14-2, it generates transmission data with the destination being the operating device 3 and the data type being "teacher data generation completion notification signal," and sends the generated transmission data to the communication network 4. The communication network 4 forwards the transmission data to the operating device 3 according to the destination included in the transmission data. The communication processing unit 51 of the operating device 3 receives the transmission data sent by the learning device 2 from the communication network 4. Since the data type included in the transmission data is "teacher data generation completion notification signal," the communication processing unit 51 outputs a teacher data generation completion notification signal to the output unit 53. When the output unit 53 receives the teacher data generation completion notification signal from the communication processing unit 51, it displays a message indicating the completion of the teacher data generation process on the screen of its output device, such as a liquid crystal display (step Sd4).

[0114] When the operator confirms the message on the screen indicating the completion of the training data generation process, they perform an operation to send a learning process start instruction signal to the learning device 2 from the operation unit 52 of the operation device 3. The operation unit 52 outputs a learning process start instruction signal to the communication processing unit 51, specifying the learning device 2 as the destination. The communication processing unit 51 receives the learning process start instruction signal output by the operation unit 52 and generates transmission data with the learning device 2, which is specified as the destination in the received signal generation parameter transmission instruction signal, as the destination, and the data type as "learning process start instruction signal". The communication processing unit 51 sends the generated transmission data to the communication network 4. The communication network 4 forwards the transmission data to the learning device 2 according to the destination included in the transmission data. The communication processing unit 41-2 of the learning device 2 receives the transmission data sent by the operation device 3 from the communication network 4. Since the data type included in the transmission data is "learning process start instruction signal", the communication processing unit 41-2 outputs a learning process start instruction signal to the learning processing unit 20a (step Sd5). As a result, the same processing as the learning processing subroutine shown in Figure 6 is started as the learning processing subroutine of the third embodiment. However, in the learning processing subroutine of the third embodiment, the processing in Figure 6 is performed with the learning processing unit 20 replaced by the learning processing unit 20a (step Sd6).

[0115] In step Sb6 of the learning process subroutine in step Sd6, the learning processing unit 20a outputs a learning process completion notification signal to the communication processing unit 41-2. Upon receiving the learning process completion notification signal from the learning processing unit 20a, the communication processing unit 41-2 generates transmission data with the destination being the operating device 3 and the data type being "learning process completion notification signal," and sends the generated transmission data to the communication network 4. The communication network 4 forwards the transmission data to the operating device 3 according to the destination included in the transmission data. The communication processing unit 51 of the operating device 3 receives the transmission data sent by the learning device 2 from the communication network 4. Since the data type included in the transmission data is "learning process completion notification signal," the communication processing unit 51 outputs a learning process completion notification signal to the output unit 53. Upon receiving the learning process completion notification signal from the communication processing unit 51, the output unit 53 displays a message on the screen indicating that the learning process is complete (step Sd7).

[0116] When the communication processing unit 41-2 receives a learning completion notification signal from the learning processing unit 20a, it reads the learned model data stored in the learned model data storage unit 23. The communication processing unit 41-2 generates transmission data that includes the read learned model data, has the arrival angle estimation device 1b as the destination, and the data type is "learned model data," and sends the generated transmission data to the communication network 4. The communication network 4 forwards the transmission data to the arrival angle estimation device 1b according to the destination included in the transmission data. The communication processing unit 41-1 of the arrival angle estimation device 1b receives the transmission data sent by the learning device 2 from the communication network 4. Since the data type included in the transmission data is "learned model data," the communication processing unit 41-1 reads the learned model data from the received transmission data and outputs the read learned model data to the inference processing unit 30a. The inference processing unit 30a takes in the learned model data output by the communication processing unit 41-1 and applies the acquired learned model data to the function approximator 31. This generates a pre-trained model 32 (step Sd8).

[0117] Furthermore, the processing of step Sd7 and step Sd8, which are performed when the communication processing unit 41-2 receives a learning processing completion notification signal from the learning processing unit 20a, may be performed either after the processing of step Sd7 or after the processing of step Sd8, as shown in Figure 12.

[0118] The operator performs an operation on the operation unit 52 of the operating device 3 to generate a receiving parameter that includes a center frequency matching the center frequency specified in step Sd1, and also specifies the destination of the receiving parameter as the angle of arrival estimation device 1b. The operation unit 52 outputs a receiving parameter transmission instruction signal to the communication processing unit 51, which includes the generated receiving parameter and data indicating that the destination is the angle of arrival estimation device 1b. The communication processing unit 51 receives the receiving parameter transmission instruction signal output by the operation unit 52. The communication processing unit 51 generates transmission data that includes the receiving parameter contained in the received receiving parameter transmission instruction signal, with the destination being the angle of arrival estimation device 1b specified as the destination in the receiving parameter transmission instruction signal, and the data type being "receiving parameter". The communication processing unit 51 sends the generated transmission data to the communication network 4. The communication network 4 forwards the transmission data to the angle of arrival estimation device 1b according to the destination included in the transmission data.

[0119] The communication processing unit 41-1 of the angle of arrival estimation device 1b receives the transmission data sent by the operating device 3 from the communication network 4. Since the type of data included in the transmission data is "received parameters", the communication processing unit 41-1 outputs the received parameters included in the transmission data to the receiving unit 11a. The receiving unit 11a takes in the received parameters output by the communication processing unit 41-1. The receiving unit 11a reads out the center frequency included in the received parameters and sets the read-out center frequency to its own hardware part, the wireless communication module 205 (step Sd9). As a result, the same processing as the loop Lc1s~Lc1e of the inference processing subroutine shown in Figure 7 is started as the inference processing subroutine of the third embodiment. However, in the inference processing of the third embodiment, the following processing is performed in step Sc2. That is, the receiving unit 11a extracts radio waves with wavelengths corresponding to the center frequency specified in the received parameters from among the radio waves reaching the antenna elements 10-1~10-K. The receiving unit 11a acquires K digital electrical received signals from the extracted radio waves and generates a received signal vector that includes the acquired K received signals as elements. For the processing in steps Sc3 to Sc6 other than step Sc2, the correlation matrix generation unit 13 is replaced with the correlation matrix generation unit 13-1, the input data generation unit 14 is replaced with the input data generation unit 14-1, and the inference processing unit 30 is replaced with the inference processing unit 30a (step Sd10).

[0120] In the loop Lc1s~Lc1e of the inference processing subroutine in step Sd10, each time the processing in step Sc6 is performed, the arrival angle calculation unit 19 outputs data indicating the calculated estimated arrival angle to the communication processing unit 41-1. Each time the communication processing unit 41-1 receives the data indicating the estimated arrival angle output by the arrival angle calculation unit 19, it generates transmission data that includes the received data indicating the estimated arrival angle, has the destination as the operating device 3, and the data type as "estimated arrival angle," and sends the generated transmission data to the communication network 4. The communication network 4 forwards the transmission data to the operating device 3 according to the destination included in the transmission data. The communication processing unit 51 of the operating device 3 receives the transmission data sent by the learning device 2 from the communication network 4. Since the data type included in the transmission data is "estimated arrival angle," the communication processing unit 51 reads the data indicating the estimated arrival angle from the transmission data and outputs the read estimated arrival angle data to the output unit 53. When the output unit 53 receives data indicating the estimated angle of arrival from the communication processing unit 51, it displays the data indicating the estimated angle of arrival on the screen (step Sd11).

[0121] By configuring the system as described in the third embodiment of the arrival angle estimation system 100 above, for example, the arrival angle estimation device 1b, the learning device 2, and the operating device 3 can be installed at different locations that are far apart. For example, the arrival angle estimation device 1b can be installed at the location where radio waves are actually received, the learning device 2 can be installed in a data center or the like, and the operating device 3 can be installed at the location where the operator is present. The operating device 3 can then be used to remotely operate the learning device 2 and the arrival angle estimation device 1b.

[0122] For example, if it is required that each of the multiple angle of arrival estimation devices 1b be installed in a different location, the angle of arrival estimation system 100 may be configured to include multiple angle of arrival estimation devices 1b, each of which is connected to the communication network 4. In this case, the memory unit 55 of the operating device 3 will pre-store data for multiple mode vectors, each corresponding to an array antenna 10 provided by each of the multiple angle of arrival estimation devices 1b, for each center frequency. The learning device 2 receives input from the operator and generates training data based on the mode vector data for the angle of arrival estimation device 1b and center frequency specified by the operating device 3, and the signal generation parameters corresponding to the said mode vector data. Using the generated training data, the learning device 2 generates trained model data to be applied to the function approximator 31 of the specified angle of arrival estimation device 1b. Once the generation of the trained model data is complete, the learning device 2 transmits the generated trained model data to the specified angle of arrival estimation device 1b. The receiving unit 11a of the arrival angle estimation device 1b, to which the learning model data is transmitted, will have the center frequency corresponding to the mode vector data used by the learning device 2 when the learning model data was generated set by the receiving parameters.

[0123] The second embodiment may be applied to the arrival angle estimation system 100 of the third embodiment described above. That is, the normalization configuration provided in the input data generation unit 14a of the second embodiment may be applied to the input data generation unit 14-1 of the arrival angle estimation device 1b of the arrival angle estimation system 100 and the input data generation unit 14-2 of the learning device 2.

[0124] (Other configuration examples (Part 1)) In the first to third embodiments described above, the wavelength of the radio waves received by the array antenna 10 is set to one, and the mode vector data for that one wavelength is used. In contrast, if there are multiple wavelengths of radio waves that the array antenna 10 is expected to receive, multiple mode vector data corresponding to each of the multiple wavelengths will be generated. In the first and second embodiments, the mode vector storage unit 12 stores the multiple mode vector data corresponding to each of the generated multiple wavelengths. In the third embodiment, the storage unit 55 of the operating device 3 stores the multiple mode vector data corresponding to each of the generated multiple wavelengths. The multiple mode vector data stored in the storage unit 55 will be written to the mode vector storage unit 12 of the learning device 2 in the process of step Sd1 in Figure 12.

[0125] In this case, in the first to third embodiments, when the processing of the subroutine La1s~La1e of the training data generation process shown in Figure 5 is performed, the correlation matrix generation units 13, 13-2 generate a correlation matrix R for each arrival angle and for each mode vector data. xx This will generate the correlation matrix R generated by the correlation matrix generation units 13 and 13-2. xx This will generate input data for each. Therefore, the training data storage unit 16 will store training data for each arrival angle and each mode vector data, in other words, for each arrival angle and each wavelength of the radio wave, and in even more terms, for each arrival angle and each center frequency of the radio wave. By performing a learning process using this training data, the learning units 17 and 17a will be able to generate a learning model 22 that estimates the arrival angles of radio waves at various arrival angles and various center frequencies.

[0126] (Other configuration examples (part 2)) In the first to third embodiments described above, the flowchart shown in Figure 6 shows that the learning processing units 20 and 20a calculate new learning model data for each set of training data and update the learning model 22. This is a learning processing method known as online learning. Alternatively, the learning processing units 20 and 20a may update the learning model 22 using a method known as mini-batch learning or batch learning.

[0127] For example, in the case of the mini-batch learning method, the learning processing units 20 and 20a perform the following processing: The learning processing units 20 and 20a divide the training dataset stored in the training data storage unit 16 into multiple subsets such that each subset contains a certain number of training data. The learning processing units 20 and 20a repeatedly perform the processing in steps Sb2 and Sb3 on the training data included in the subsets. The learning processing units 20 and 20a calculate new learning model data based on the multiple output data obtained by this processing, multiple ground truth labels generated from specified arrival angle data included in the training data targeted by the processing in steps Sb2 and Sb3, a predetermined loss function, and the learning model data stored in the learning model data storage unit 23 at that time. Here, the predetermined loss function is a loss function that calculates a single loss value for combinations of multiple output data and multiple ground truth labels. The learning processing units 20 and 20a update the learning model 22 with the newly calculated learning model data. In this way, the learning processing units 20 and 20a repeatedly perform the process of updating the learning model 22 for each subset. In other words, in the mini-batch learning method, the learning model 22 is updated a number of times corresponding to the number of subsets.

[0128] For example, when employing a batch learning method, the learning processing units 20 and 20a perform the following processing. The learning processing units 20 and 20a repeatedly perform steps Sb2 and Sb3 for all the training data stored in the training data storage unit 16. Based on the multiple output data obtained through this processing, multiple ground truth labels generated from specified arrival angle data included in all the training data, a predetermined loss function, and the learning model data stored in the learning model data storage unit 23 at that time, the learning model processing units 20 and 20a calculate new learning model data. Here, the predetermined loss function is a loss function that calculates a single loss value for combinations of multiple output data and multiple ground truth labels. The learning processing units 20 and 20a update the learning model 22 with the newly calculated learning model data. In other words, in the batch learning method, the learning model 22 is updated only once for each training dataset.

[0129] Regardless of whether an online learning method, a mini-batch learning method, or a batch learning method is used, the learning processing units 20 and 20a may repeatedly update the learning model 22 a predetermined number of times, or until the following conditions are met. For example, before calculating new learning model data, the learning processing units 20 and 20a may substitute the output data and the corresponding ground truth labels into the loss function to calculate a loss value, and repeatedly update the learning model 22 until the calculated loss value falls below a predetermined threshold.

[0130] (Other supplementary configuration examples) In the first to third embodiments described above, the input data generation units 14, 14a, 14-1, and 14-2 generate the correlation matrix R xx Not the lower triangular matrix, but the correlation matrix R xx The input data may be generated from an upper triangular matrix. Alternatively, the input data generation units 14, 14a, 14-1, and 14-2 may use a correlation matrix R instead of a lower or upper triangular matrix. xxYou could also generate input data from all elements of the upper triangular matrix or correlation matrix R. xx When generating input data from, the input data generation units 14, 14a, 14-1, 14-2 generate the correlation matrix R xx Similar to how input data is generated from a lower triangular matrix based on equation (7), for complex numbers, the real and imaginary components are separated to generate the input data.

[0131] In the first to third embodiments described above, the function approximators 21 and 31 are assumed to be multilayer neural networks. However, the multilayer neural network may be a deep neural network, or it may be a neural network other than a deep neural network. Furthermore, the learning processing units 20 and 20a may employ supervised machine learning methods other than supervised learning methods using neural networks to perform learning processing so that the function approximators 21 and 31 become learning models 22 and 32 that approximate an evaluation function that evaluates the probability of radio wave existence for each angle of arrival.

[0132] In the first to third embodiments described above, the learning processing units 20 and 20a calculate new learning model data using backpropagation, but new learning model data may also be calculated using methods other than backpropagation.

[0133] In the first to third embodiments described above, the loss function used by the learning processing units 20 and 20a may be, for example, a loss function that calculates the mean squared error, or a loss function other than a loss function that calculates the mean squared error.

[0134] In the first to third embodiments described above, the learning processing units 20 and 20a perform the learning process using all the training data stored in the training data storage unit 16. Alternatively, the learning processing units 20 and 20a may perform the learning process using only some of the training data stored in the training data storage unit 16, and use the training data not used in the learning process as test data.

[0135] In the first to third embodiments described above, the array antenna 10 formed by the plurality of antenna elements 10-1 to 10-K is, for example, a K-element equally spaced circular array antenna as shown in Figure 2, but any linear array antenna may be used.

[0136] In the first and second embodiments described above, the receiving unit 11a of the third embodiment may be replaced with the receiving unit 11a of the third embodiment, and before the processing of step Sc2 is performed, reception parameters may be provided to the receiving unit 11a from an external source, similar to the third embodiment. In this case, the mode vector data to be stored in the mode vector storage unit 12 will be the mode vector data corresponding to the center frequency specified in the reception parameters.

[0137] In the first to third embodiments described above, a function unit that demodulates the transmission signal from the received signal generated by the receiving units 11 and 11a may be connected to the receiving units 11 and 11a, so that the angle of arrival estimation devices 1, 1a and 1b function as wireless receiving devices.

[0138] Figure 13 is a block diagram showing the configuration of a learning device 500 according to one embodiment of the present invention, and Figure 14 is a flowchart showing the processing flow performed by the learning device 500. As shown in Figure 13, the learning device 500 comprises a signal generation means 501, a correlation matrix generation means 502, an input data generation means 503, and a learning means 504. As shown in Figure 14, the signal generation means 501 generates a transmission signal vector such that the signal intensity of the transmission signal corresponding to a specified arrival angle is stronger than that of the transmission signals corresponding to other arrival angles (step S511). The correlation matrix generation means 502 generates a correlation matrix based on the transmission signal vector and the mode vector of the real-world array antenna (step S512). The input data generation means 503 generates input data from the elements of the correlation matrix (step S513). The learning means 504 generates a learning model by performing a learning process using training data that takes the input data as input and data indicating the arrival angle corresponding to the input data as the correct label (step S514).

[0139] Figure 15 is a block diagram showing the configuration of an arrival angle estimation device 600 according to one embodiment of the present invention, and Figure 16 is a flowchart showing the processing flow performed by the arrival angle estimation device 600. As shown in Figure 15, the arrival angle estimation device 600 comprises an array antenna 601, a receiving means 602, a correlation matrix generation means 603, an input data generation means 604, an inference means 605, and an arrival angle calculation means 606. As shown in Figure 16, the receiving means 602 generates a received signal vector from radio waves arriving at the array antenna 601 (step S611). The correlation matrix generation means 603 generates a correlation matrix based on the received signal vector (step S612). The input data generation means 604 generates input data from the elements of the correlation matrix (step S613). The inference means 605 generates a learning model that serves as an evaluation function for evaluating the probability of radio wave presence for each angle of arrival in the array antenna 601. Input data is given to this learning model, which is generated according to a learning process based on training data generated using the mode vectors of the array antenna 601, to obtain output data (step S614). The angle of arrival calculation means 606 calculates the estimated angle of arrival of the radio wave from the output data (step S615).

[0140] The aforementioned arrival angle estimation devices 1, 1a, 1b, 600, learning device 2,500, and operating device 3 each have a computer system internally, consisting of the software portion of the receiving units 11, 11a, mode vector storage unit 12, correlation matrix generation units 13, 13-1, 13-2, input data generation units 14, 14a, 14-1, 14-2, signal generation unit 15, training data storage unit 16, learning units 17, 17a, inference units 18, 18a, arrival angle calculation unit 19, communication processing units 41-1, 41-2, 51, software portion of the operating unit 52 and output unit 53, and control The software portion of section 54, storage section 55, signal generation means 501, correlation matrix generation means 502, input data generation means 503, learning means 504, receiving means 602, correlation matrix generation means 603, input data generation means 604, inference means 605, and arrival angle calculation means 606 may be recorded on a computer-readable recording medium, and the program recorded on this recording medium may be loaded into a computer system and executed to perform the processing described with reference to Figures 4 to 7, 12, 14, and 16. Herein, "computer system" includes hardware such as the OS and peripheral devices. Furthermore, "computer system" also includes a WWW system equipped with a homepage provisioning environment (or display environment). Furthermore, "computer-readable recording medium" refers to portable media such as flexible disks, magneto-optical disks, ROMs, CD-ROMs, and storage devices such as hard disks built into a computer system. Furthermore, "computer-readable recording media" also includes volatile memory (RAM) within computer systems that act as servers or clients when programs are transmitted via networks such as the Internet or communication lines such as telephone lines, which retain programs for a certain period of time.

[0141] Furthermore, the above program may be transmitted from a computer system that stores the program in a memory device or the like to another computer system via a transmission medium or by transmission waves within the transmission medium. Here, the "transmission medium" for transmitting the program refers to a medium that has the function of transmitting information, such as a network (communication network) such as the Internet or a communication line (communication line) such as a telephone line. Also, the above program may be for the purpose of realizing only a part of the functions described above. Furthermore, it may be a so-called differential file (differential program) that can realize the above functions in combination with a program already recorded in the computer system.

[0142] Although embodiments of this invention have been described in detail above with reference to the drawings, the specific configuration is not limited to these embodiments and includes designs and the like that do not depart from the spirit of this invention.

[0143] Some or all of the above embodiments may also be described as follows, but are not limited to the following:

[0144] (Note 1) A learning device comprising: signal generation means (e.g., signal generation unit 15) that generates a transmission signal vector such that the signal strength of the transmission signal corresponding to a specified angle of arrival is stronger than that of transmission signals corresponding to other angles of arrival; correlation matrix generation means (e.g., correlation matrix generation units 13, 13-2) that generates a correlation matrix based on the transmission signal vector and the mode vector of a real-world array antenna used in a real environment; input data generation means (e.g., input data generation units 14, 14a, 14-2) that generates input data from the elements of the correlation matrix; and learning means (e.g., learning units 17, 17a) that generates a learning model by performing a learning process using the input data as input and training data in which the data indicating the angle of arrival corresponding to the input data is the correct label.

[0145] (Note 2) The learning device according to (Note 1), wherein the input data generation means (for example, input data generation units 14, 14a, 14-2) performs either a process of generating the input data from the elements of the triangular matrix of the correlation matrix, or a process of generating the input data by normalizing the elements of the triangular matrix of the correlation matrix.

[0146] (Note 3) The learning device described in (Note 2) is a lower triangular matrix.

[0147] (Note 4) The learning device according to any one of (Note 1) to (Note 3), wherein the mode vector is generated for each wavelength of the radio waves that the actual environment array antenna is expected to receive.

[0148] (Note 5) An arrival angle estimation device comprising: an array antenna (for example, an array antenna 10); receiving means (for example, receiving units 11, 11a) for generating a received signal vector from radio waves arriving at the array antenna; correlation matrix generation means (for example, correlation matrix generation units 13, 13-1) for generating a correlation matrix based on the received signal vector; input data generation means (for example, input data generation units 14, 14a, 14-1) for generating input data from the elements of the correlation matrix; inference means (for example, inference units 18, 18a) for obtaining output data by providing the input data to a learning model that is generated according to a learning process based on training data generated using the mode vectors of the array antenna, which is generated to be an evaluation function for evaluating the probability of existence of radio waves for each arrival angle at the array antenna; and an arrival angle calculation means (for example, an arrival angle calculation unit 19) for calculating the estimated arrival angle of radio waves from the output data.

[0149] (Note 6) An angle of arrival estimation device as described in (Note 5), comprising: a signal generation means (e.g., a signal generation unit 15) that generates a transmission signal vector such that the signal strength of the transmission signal corresponding to a specified angle of arrival is stronger than that of transmission signals corresponding to other angles of arrival; and a learning means (e.g., a learning unit 17) that generates a learning model by taking input data generated by the input data generation means (e.g., an input data generation unit 14, 14a) from the elements of a correlation matrix generated by the correlation matrix generation means (e.g., a correlation matrix generation unit 13) based on the transmission signal vector and the mode vector of the array antenna, and training data in which the data indicating the angle of arrival corresponding to the input data is used as the correct label.

[0150] (Note 7) The arrival angle estimation device according to (Note 5) or (Note 6), wherein the input data generation means (14, 14a, 14-1) performs either a process of generating the input data from the elements of the triangular matrix of the correlation matrix, or a process of generating the input data by normalizing the elements of the triangular matrix of the correlation matrix.

[0151] (Note 8) The triangular matrix is ​​a lower triangular matrix, as described in (Note 7) for the arrival angle estimation device.

[0152] (Note 9) The mode vector is generated for each wavelength of the radio waves that the array antenna is expected to receive, using the angle of arrival estimation device described in any one of (Note 5) to (Note 8).

[0153] (Note 10) The learning device described in (Note 1) and the angle of arrival estimation device described in (Note 5) are provided, wherein the real-world array antenna in the learning device is the array antenna of the angle of arrival estimation device, and the learning model generated by the learning means of the learning device is the learning model of the inference means of the angle of arrival estimation device. Angle of arrival estimation system.

[0154] (Note 11) The angle of arrival estimation system according to (Note 10), wherein there are multiple angle of arrival estimation devices, the real-world array antenna in the learning device is each of the array antennas of the multiple angle of arrival estimation devices, and the learning means generates the learning model corresponding to each of the multiple angle of arrival estimation devices.

[0155] (Note 12) The arrival angle estimation system according to (Note 10) or (Note 11), wherein the input data generation means performs either a process of generating the input data from the elements of the triangular matrix of the correlation matrix, or a process of generating the input data by normalizing the elements of the triangular matrix of the correlation matrix.

[0156] (Note 13) The triangular matrix is ​​a lower triangular matrix, as described in (Note 12) for the arrival angle estimation system.

[0157] (Note 14) The mode vector is generated for each wavelength of the radio waves that the array antenna is expected to receive, using the angle of arrival estimation system described in any one of (Note 10) to (Note 13).

[0158] (Note 15) A method for generating a learning model, comprising: generating a transmission signal vector such that the signal strength of the transmission signal corresponding to a specified angle of arrival is stronger than that of transmission signals corresponding to other angles of arrival; generating a correlation matrix based on the generated transmission signal vector and the mode vector of a real-world array antenna used in a real environment; generating input data from the elements of the generated correlation matrix; and generating a learning model by performing a learning process using the generated input data as input and training data in which the data indicating the angle of arrival corresponding to the input data is the correct label.

[0159] (Note 16) An arrival angle estimation method comprising: generating a received signal vector from radio waves arriving at an array antenna; generating a correlation matrix based on the generated received signal vector; generating input data from the elements of the generated correlation matrix; providing the input data to a learning model generated in accordance with a learning process based on training data generated using the mode vectors of the array antenna to obtain output data; and calculating the estimated arrival angle of radio waves from the obtained output data.

[0160] (Note 17) A program for causing a computer to perform the following steps: generate a transmission signal vector such that the signal strength of the transmission signal corresponding to a specified angle of arrival is stronger than that of the transmission signals corresponding to other angles of arrival; generate a correlation matrix based on the generated transmission signal vector and the mode vector of a real-world array antenna used in a real environment; generate input data from the elements of the generated correlation matrix; and generate a learning model by performing a learning process using the generated input data as input and training data in which the data indicating the angle of arrival corresponding to the input data is the correct label.

[0161] (Note 18) A program for causing a computer to perform the following steps: generating a received signal vector from radio waves arriving at an array antenna; generating a correlation matrix based on the generated received signal vector; generating input data from the elements of the generated correlation matrix; providing the input data to a learning model generated to serve as an evaluation function for evaluating the probability of radio waves being present at each arrival angle in the array antenna, and which is generated according to a learning process based on training data generated using the mode vectors of the array antenna, in order to obtain output data; and calculating the estimated arrival angle of radio waves from the obtained output data. [Industrial applicability]

[0162] It can be used to estimate the angle of arrival of radio waves. [Explanation of Symbols]

[0163] 1…Arrival angle estimation device, 10…Array antenna, 10-1 to 10-K…Antenna elements, 11…Receiver, 12…Mode vector storage unit, 13…Correlation matrix generation unit, 14…Input data generation unit, 15…Signal generation unit, 16…Training data storage unit, 17…Learning unit, 18…Inference unit, 19…Arrival angle calculation unit, 20…Learning processing unit, 21…Function approximator, 22…Learning model, 23…Learning model storage unit, 30…Inference processing unit, 31…Function approximator, 32…Learning model

Claims

1. A signal generation means that generates a transmission signal vector such that the signal strength of the transmission signal corresponding to a specified angle of arrival is stronger than that of transmission signals corresponding to other angles of arrival, A correlation matrix generation means that generates a correlation matrix based on the transmitted signal vector and the mode vector of a real-world array antenna used in a real environment, An input data generation means that generates input data from the elements of the correlation matrix, A learning means that generates a learning model by performing a learning process using training data which takes the aforementioned input data as input and the data indicating the angle of arrival corresponding to the input data as the correct label, A learning device equipped with the following features.

2. The input data generation means is The process involves either generating the input data from the elements of the triangular matrix of the correlation matrix, or normalizing the elements of the triangular matrix of the correlation matrix to generate the input data. The learning device according to claim 1.

3. Array antenna and Receiving means for generating a received signal vector from radio waves arriving at the array antenna, Correlation matrix generation means for generating a correlation matrix based on the received signal vector, An input data generation means that generates input data from the elements of the correlation matrix, An inference means that provides the input data to a learning model generated according to a learning process based on training data generated using the mode vectors of the array antenna, which is an evaluation function for evaluating the probability of radio wave presence for each angle of arrival in the array antenna, and to obtain output data. An angle of arrival calculation means for calculating the estimated angle of arrival of radio waves from the output data, A signal generation means that generates a transmission signal vector such that the signal strength of the transmission signal corresponding to a specified angle of arrival is stronger than that of transmission signals corresponding to other angles of arrival, A learning means that generates the learning model by taking input data generated by the input data generation means from the elements of a correlation matrix generated by the correlation matrix generation means based on the transmitted signal vector and the mode vector of the array antenna as input, and performing a learning process using training data in which the data indicating the angle of arrival corresponding to the input data is the correct label, An angle of arrival estimation device equipped with the following features.

4. The learning device according to claim 1, The device comprises the angle of arrival estimation device described in claim 3, The real-world array antenna in the learning device is the array antenna of the arrival angle estimation device, and the learning model generated by the learning means of the learning device is the learning model of the inference means of the arrival angle estimation device. Angle of arrival estimation system.

5. Multiple arrival angle estimation devices exist, The real-world array antenna in the learning device is each of the array antennas of the plurality of arrival angle estimation devices. The learning means generates the learning model corresponding to each of the plurality of arrival angle estimation devices. The arrival angle estimation system according to claim 4.

6. A transmission signal vector is generated such that the signal strength of the transmission signal corresponding to the specified angle of arrival is stronger than that of the transmission signals corresponding to other angles of arrival. A correlation matrix is ​​generated based on the generated transmission signal vector and the mode vector of the real-world array antenna used in the real environment. Input data is generated from the elements of the generated correlation matrix, A learning model is generated by performing a learning process using the generated input data as input and training data in which the data indicating the angle of arrival corresponding to the input data is used as the correct label. Methods for generating learning models.

7. A received signal vector is generated from the radio waves arriving at the array antenna. A correlation matrix is ​​generated based on the generated received signal vector. Input data is generated from the elements of the generated correlation matrix, A learning model is generated to serve as an evaluation function for evaluating the probability of radio wave presence at each angle of arrival in the array antenna, and the input data is given to the learning model generated according to a learning process based on training data generated using the mode vectors of the array antenna to obtain output data. The estimated angle of arrival of the radio wave is calculated from the acquired output data. A transmission signal vector is generated such that the signal strength of the transmission signal corresponding to the specified angle of arrival is stronger than that of the transmission signals corresponding to other angles of arrival. The learning model is generated by performing a learning process using training data, which is input data generated from the elements of the correlation matrix generated based on the transmitted signal vector and the mode vector of the array antenna, and which is used as training data, with the data indicating the angle of arrival corresponding to the input data as the ground truth label. Arrival angle estimation method.

8. On the computer, A procedure for generating a transmit signal vector such that the signal strength of the transmit signal corresponding to a specified angle of arrival is stronger than that of the transmit signals corresponding to other angles of arrival. A procedure for generating a correlation matrix based on the generated transmission signal vector and the mode vector of a real-world array antenna used in a real environment, A procedure for generating input data from the elements of the generated correlation matrix, A procedure for generating a learning model by performing a learning process using the generated input data as input and training data in which the data indicating the angle of arrival corresponding to the input data is used as the correct label. A program to execute.

9. On the computer, A procedure for generating a received signal vector from radio waves arriving at an array antenna. A procedure for generating a correlation matrix based on the generated received signal vector, A procedure for generating input data from the elements of the generated correlation matrix, A learning model generated to serve as an evaluation function for evaluating the probability of radio wave presence at each angle of arrival in the array antenna, and a procedure for obtaining output data by providing the input data to a learning model generated according to a learning process based on training data generated using the mode vectors of the array antenna. A procedure for calculating the estimated angle of arrival of radio waves from the acquired output data, A procedure for generating a transmit signal vector such that the signal strength of the transmit signal corresponding to a specified angle of arrival is stronger than that of the transmit signals corresponding to other angles of arrival. A procedure for generating a learning model by taking the input data, which is generated from the elements of the correlation matrix generated based on the transmitted signal vector and the mode vector of the array antenna, as input, and using training data, which is the data indicating the angle of arrival corresponding to the input data, as the ground truth label, and performing a learning process. A program to execute.