WO2020003413A1 - 情報処理装置、制御方法、及びプログラム - Google Patents
情報処理装置、制御方法、及びプログラム Download PDFInfo
- Publication number
- WO2020003413A1 WO2020003413A1 PCT/JP2018/024391 JP2018024391W WO2020003413A1 WO 2020003413 A1 WO2020003413 A1 WO 2020003413A1 JP 2018024391 W JP2018024391 W JP 2018024391W WO 2020003413 A1 WO2020003413 A1 WO 2020003413A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- score
- voice data
- input
- registrant
- calculated
- Prior art date
Links
- 230000010365 information processing Effects 0.000 title claims abstract description 62
- 238000000034 method Methods 0.000 title claims description 46
- 238000004364 calculation method Methods 0.000 claims description 25
- 238000009826 distribution Methods 0.000 claims description 21
- 230000004044 response Effects 0.000 claims description 7
- 238000010586 diagram Methods 0.000 description 10
- 230000008569 process Effects 0.000 description 5
- 238000004891 communication Methods 0.000 description 3
- 238000010606 normalization Methods 0.000 description 3
- 238000013528 artificial neural network Methods 0.000 description 2
- 230000007423 decrease Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 239000000203 mixture Substances 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000001228 spectrum Methods 0.000 description 1
- 238000012706 support-vector machine Methods 0.000 description 1
- 210000001260 vocal cord Anatomy 0.000 description 1
- 230000001755 vocal effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L17/00—Speaker identification or verification techniques
- G10L17/06—Decision making techniques; Pattern matching strategies
- G10L17/12—Score normalisation
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L17/00—Speaker identification or verification techniques
- G10L17/06—Decision making techniques; Pattern matching strategies
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L17/00—Speaker identification or verification techniques
- G10L17/20—Pattern transformations or operations aimed at increasing system robustness, e.g. against channel noise or different working conditions
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/04—Segmentation; Word boundary detection
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L17/00—Speaker identification or verification techniques
- G10L17/02—Preprocessing operations, e.g. segment selection; Pattern representation or modelling, e.g. based on linear discriminant analysis [LDA] or principal components; Feature selection or extraction
Definitions
- the present invention relates to a technology for recognizing a speaker of voice included in voice data.
- a speaker score is calculated by calculating a feature amount of an input speech signal, and the calculated feature amount is input to a speaker model, and a speaker is calculated based on the calculated speaker score.
- An identifying technique is disclosed.
- the input voice often uses voice recorded under an arbitrary environment, and thus may include voices other than the voice of the speaker to be recognized.
- voice other than the speech of the speaker to be recognized is included in the input speech, the accuracy of speaker recognition is reduced.
- Non-Patent Document 1 describes a score normalization method that is robust against background noise. This method divides the recognized speech into two parts, a speech section and a non-speech section. Further, score normalization is performed using the SNR (signal noise ratio) of the recognized voice, the SNR of the registered voice, and the score obtained when speaker recognition is performed. Then, it is determined whether or not the speaker of the recognized voice is a registrant using the normalized score.
- SNR signal noise ratio
- ⁇ SNR ⁇ of the recognized speech mainly indicates the amount of noise (that is, background noise) included in the non-speech section.
- Recognition speech may include not only background noise but also speech of another person other than the speaker to be recognized. According to the method of Non-Patent Document 1, it is difficult to improve recognition accuracy for input voices in which voices of other people are mixed. This is because, unlike the background noise included in the non-voice section, the voice of the other person is included in the voice section along with the voice of the speaker to be recognized, and the degree of mixing of the voice of the other party cannot be expressed by the above-described ⁇ SNR ⁇ That's why.
- the present invention has been made in view of the above-described problem, and one of its objects is to improve the accuracy of speaker recognition in a case where the voice of a person other than the speaker to be recognized is included in the input voice. It is to provide.
- the information processing apparatus includes: 1) a first calculating unit that calculates a first score representing a degree of similarity between input voice data and registrant voice data that is registrant voice data; A second calculating unit that divides the input voice data into a plurality of segment voice data by dividing in a time direction, and calculates a second score representing the degree of similarity between the segment voice data and the registrant voice data for each segment voice data 3) a first determination unit that determines whether one or more speakers of the voice included in the input voice data are used by using at least the second score; and 4) a first score, a second score, And a second determination unit that determines whether or not the input voice data includes the voice of the registrant based on the determination result by the first determination unit.
- the control method of the present invention is executed by a computer.
- the control method includes: 1) a first calculation step of calculating a first score representing a degree of similarity between input voice data and registrant voice data that is registrant voice data; Dividing the input voice data into a plurality of segment voice data, and calculating a second score representing the degree of similarity between the segment voice data and the registrant voice data for each of the segment voice data; A) a first determination step of determining whether one or a plurality of speakers of the voice included in the input voice data is at least using the second score; and 4) a first score, a second score, and a first score.
- a second determining step of determining whether or not the input voice data includes the voice of the registrant based on the result of the determination in the determining step.
- the program of the present invention causes a computer to execute each step of the control method of the present invention.
- FIG. 2 is a diagram illustrating a functional configuration of the information processing apparatus according to the first embodiment.
- FIG. 2 is a diagram illustrating a computer for realizing an information processing device.
- 5 is a flowchart illustrating a flow of a process executed by the information processing apparatus according to the first embodiment.
- FIG. 4 is a diagram illustrating input voice data divided into a predetermined length. It is a figure which illustrates a 1st score and a 2nd score with a graph. It is a figure which illustrates the histogram of a 2nd score.
- each block diagram represents a configuration of a functional unit, not a configuration of a hardware unit.
- FIG. 1 is a diagram conceptually illustrating an outline of processing performed by the information processing apparatus 2000 of the present embodiment.
- the information processing device 2000 recognizes the speaker of the voice included in the input voice data 10.
- the information processing apparatus 2000 compares the input voice data 10 with the registrant voice data 22 representing the voice of the registrant 20 (not shown).
- the operation of the information processing apparatus 2000 will be described more specifically.
- the information processing apparatus 2000 calculates a first score indicating the degree of similarity between the input voice data 10 and the registrant voice data 22. Further, the information processing apparatus 2000 obtains a plurality of segment audio data 12 by dividing the input audio data 10 in the time direction. Then, the information processing device 2000 calculates a second score indicating the degree of similarity between the segment voice data 12 and the registrant voice data 22 for each segment voice data 12.
- the information processing apparatus 2000 makes a first determination of determining whether the number of speakers included in the input voice data 10 is one or more using at least the second score. However, the first score may be further used for this determination.
- FIG. 1 illustrates a case where the first score and the second score are used for the first determination. Then, the information processing device 2000 performs a second determination to determine whether or not the input voice data 10 includes the voice of the registrant 20 based on the first score, the second score, and the result of the first determination. .
- the information processing apparatus 2000 calculates a correction score using at least the second score, and sets the calculated correction score as a threshold. A second determination is made by comparing. On the other hand, when it is determined that there is only one speaker of the voice included in the input voice data 10, the information processing apparatus 2000 performs the second determination by comparing the first score with the threshold. In any case, if the score is equal to or more than the threshold, it is determined that the voice of the registrant 20 is included in the input voice data 10. If the score is less than the threshold, the voice of the registrant 20 is included in the input voice data 10. Is determined not to be present.
- the second score indicating the similarity with the registrant voice data 22 is calculated, Using at least the second score, it is determined whether the speaker included in the input voice data 10 is a single speaker or a plurality of speakers. Then, using this determination result, it is determined whether or not the voice of the registrant 20 is included in the input voice data 10. As described above, by determining whether one or more speakers are included in the input voice data 10, it is determined whether the input voice data 10 includes voices of persons other than the registrant 20.
- the accuracy of speaker recognition can be improved in the case where the input voice data 10 includes voices of people other than the registrant 20.
- a correction score is calculated, and the voice of the registrant 20 is included in the input voice data 10 using the correction score. It is determined whether or not.
- the voice of the registrant 20 is included in the input voice data 10 using the correction score. It is determined whether or not.
- the score calculated for the entire input voice data 10 that is, the first score.
- Speaker recognition using the information processing device 2000 can be used in various situations. For example, it may be used for biometric authentication using voice data. Specifically, speaker recognition is performed using voice data generated by recording a voice uttered by a person who wants to be authenticated.
- the information processing apparatus 2000 of the present embodiment even if voices of a person other than the person to be mixed into voice data obtained by recording voices uttered by a person to be recognized, speaker recognition can be performed with high accuracy. It can be carried out. Therefore, even in an environment where a person other than the person to be recognized exists, biometric authentication using voice data can be realized with high accuracy.
- FIG. 1 is an example for facilitating understanding of the information processing device 2000, and does not limit the functions of the information processing device 2000.
- the information processing apparatus 2000 of the present embodiment will be described in more detail.
- FIG. 2 is a diagram illustrating a functional configuration of the information processing apparatus 2000 according to the first embodiment.
- the information processing device 2000 includes a first calculation unit 2020, a second calculation unit 2040, a first determination unit 2060, and a second determination unit 2080.
- the first calculation unit 2020 calculates a first score indicating the degree of similarity between the input voice data 10 and the registrant voice data 22.
- the second calculating unit 2040 divides the input voice data 10 into a plurality of segment voice data 12 and calculates a second score indicating the degree of similarity between each segment voice data 12 and the registrant voice data 22. Note that the input audio data 10 is divided in the time direction.
- the first determination unit 2060 determines whether the number of speakers included in the input voice data 10 is one or more using at least the second score.
- the second determination unit 2080 determines whether or not the input voice data 10 includes the voice of the registrant 20 based on the first score, the second score, and the result of the determination by the first determination unit 2060.
- Each functional component of the information processing apparatus 2000 may be realized by hardware (for example, a hard-wired electronic circuit or the like) that realizes each functional component, or a combination of hardware and software (for example: Electronic circuit and a program for controlling the electronic circuit).
- hardware for example, a hard-wired electronic circuit or the like
- software for example: Electronic circuit and a program for controlling the electronic circuit.
- FIG. 3 is a diagram illustrating a computer 1000 for realizing the information processing device 2000.
- the computer 1000 is an arbitrary computer.
- the computer 1000 is a personal computer (PC) or a server machine.
- the computer 1000 may be a dedicated computer designed to realize the information processing device 2000, or may be a general-purpose computer.
- the computer 1000 has a bus 1020, a processor 1040, a memory 1060, a storage device 1080, an input / output interface 1100, and a network interface 1120.
- the bus 1020 is a data transmission path through which the processor 1040, the memory 1060, the storage device 1080, the input / output interface 1100, and the network interface 1120 mutually transmit and receive data.
- a method of connecting the processors 1040 and the like to each other is not limited to a bus connection.
- the processor 1040 is various processors such as a CPU (Central Processing Unit), a GPU (Graphics Processing Unit), and an FPGA (Field-Programmable Gate Array).
- the memory 1060 is a main storage device realized using a RAM (Random Access Memory) or the like.
- the storage device 1080 is an auxiliary storage device realized using a hard disk, a solid state drive (SSD), a memory card, or a read only memory (ROM).
- the input / output interface 1100 is an interface for connecting the computer 1000 and an input / output device.
- an input device such as a keyboard and an output device such as a display device are connected to the input / output interface 1100.
- the network interface 1120 is an interface for connecting the computer 1000 to a communication network.
- the communication network is, for example, a LAN (Local Area Network) or a WAN (Wide Area Network).
- the method by which the network interface 1120 connects to the communication network may be a wireless connection or a wired connection.
- the storage device 1080 stores a program module that implements each functional component of the information processing apparatus 2000.
- the processor 1040 realizes a function corresponding to each program module by reading out each of these program modules into the memory 1060 and executing them.
- the storage device 1080 may further store the registrant voice data 22.
- the registrant voice data 22 only needs to be information that can be obtained from the computer 1000, and does not have to be stored in the storage device 1080.
- the registrant voice data 22 can be stored in a database server connected to the computer 1000 via the network interface 1120.
- a feature amount extracted from the registrant voice data 22 may be stored in a storage device. In this case, the registrant voice data 22 may not be obtainable from the information processing device 2000.
- FIG. 4 is a flowchart illustrating a flow of processing executed by the information processing apparatus 2000 according to the first embodiment.
- the first calculation unit 2020 acquires the input voice data 10 (S102).
- the second calculator 2040 calculates the first score (S104).
- the second calculator 2040 divides the input audio data 10 into a plurality of segment audio data 12 (S106).
- the second calculator 2040 calculates a second score for each segment sound data 12 (S108).
- the first determination unit 2060 performs a first determination (determination of whether one or more speakers of the voice included in the input voice data 10) (S110).
- the second determination unit 2080 performs a second determination (determination of whether or not the voice of the registrant 20 is included in the input voice data 10) (S112).
- the first calculator 2020 acquires the input voice data 10 (S102).
- the input voice data 10 is voice data to be subjected to speaker recognition.
- the method by which the first calculation unit 2020 acquires the input voice data 10 is arbitrary.
- the first calculator 2020 acquires the input audio data 10 from a storage device in which the input audio data 10 is stored.
- the storage device in which the input voice data 10 is stored may be provided inside the information processing device 2000 or may be provided outside.
- the first calculation unit 2020 acquires the input audio data 10 by receiving the input audio data 10 transmitted by another device.
- the first score and the second score are calculated using a feature amount extracted from the input voice data 10. Therefore, instead of acquiring the registrant voice data 22, the first calculation unit 2020 may acquire a feature amount extracted in advance from the registrant voice data 22. In this case, the feature amount extracted from the registrant voice data 22 is stored in an arbitrary storage device in advance.
- the first calculation unit 2020 calculates a first score by comparing the input voice data 10 with the registrant voice data 22 (S104). More specifically, the first calculation unit 2020 calculates the similarity between the feature amounts extracted from each of the input voice data 10 and the registrant voice data 22, and sets the calculated similarity as the first score.
- the feature quantity that can be extracted from audio data can be used as the feature quantity used for calculating the first score and the second score.
- the feature quantity that can be extracted from the voice data is, for example, information representing a physical quantity such as an envelope characteristic of a spectrum reflecting vocal tract information and a fundamental frequency characteristic reflecting vocal cord information.
- the ⁇ i-vector ⁇ calculated using the mel frequency cepstrum coefficient (MFCC: ⁇ Mel-Frequency ⁇ Cepstrum ⁇ Coefficients ⁇ ) can be used.
- MFCC mel frequency cepstrum coefficient
- PLDA Probabilistic linear discriminant analysis
- An existing technique can be used as a specific technique for extracting a feature value from audio data and a specific technique for calculating a similarity between feature values.
- the second calculation unit 2040 divides the input audio data 10 into a plurality of segment audio data 12 by dividing the input audio data 10 in the time direction (S106).
- various methods can be adopted as a method of dividing the input audio data 10.
- a specific example of the method will be described.
- the second calculator 2040 divides the input audio data 10 into a plurality of segment audio data 12 by dividing the input audio data 10 into audio data having a predetermined length (for example, 10 seconds).
- FIG. 5 is a diagram illustrating the input audio data 10 divided into a predetermined length.
- the predetermined length that is, the length of the segment audio data 12 is 10 seconds.
- the adjacent segment audio data 12 may be divided such that a part thereof overlaps with each other.
- two adjacent segment audio data 12 overlap each other for 3 seconds.
- adjacent segment audio data 12 may be separated from each other in the time direction.
- two adjacent segment audio data 12 are separated by 3 seconds.
- the second calculator 2040 detects the speaker exchange point for the input speech data 10 and divides the input speech data 10 into a plurality of segment speech data 12 by dividing the input speech data 10 at the speaker exchange point. Is also good.
- a technique for detecting a speaker exchange point a technique described in Non-Patent Document 2 or the like can be used.
- the second calculator 2040 calculates a second score for each segment sound data 12 (S108). For this purpose, the second calculator 2040 extracts a feature amount from each segment audio data 12. Then, the second calculator 2040 calculates the similarity between the feature amount extracted from the segment voice data 12 and the feature amount extracted from the registrant voice data 22, and calculates the calculated similarity degree in the segment voice data.
- the second score is 12.
- the first determination unit 2060 determines whether the speaker included in the input voice data 10 is a single speaker or a plurality of speakers using at least the second score (S110). However, as described above, the first score may be further used for this determination. For example, the first determination unit 2060 compares the first score with the maximum value of the second score. Specifically, the first determination unit 2060 specifies the maximum value from the plurality of second scores calculated by the second calculation unit 2040, and if the first score is smaller than the maximum value, the input voice data It is determined that there are a plurality of speakers of the voice included in 10. On the other hand, if the first score is equal to or more than the maximum value of the second score, the first determination unit 2060 determines that the voice included in the input voice data 10 is a single speaker.
- FIG. 6 is a diagram illustrating the first score and the second score in a graph.
- the upper part of FIG. 6 shows a case where the input voice data 10 includes only the voice of the registrant.
- the lower part of FIG. 6 illustrates a case where the input voice data 10 includes voices other than those of the registrant.
- the score representing the similarity between feature quantities is affected by the length of the input speech. Specifically, since the amount of information used for extracting the feature amount decreases as the input voice becomes shorter, the shorter the input voice, the more accurate the extracted feature amount (the feature amount represents the speaker's feature). Degree) decreases. Therefore, if only the voice of the registrant 20 is included in the input voice data 10, the first score is higher than any of the second scores. That is, the first score is larger than the maximum value of the second score (see the upper part of FIG. 6).
- the second score may be higher than the first score (see the lower part of FIG. 6).
- the segment voice data 12 which is a part of the input voice data 10 includes the voice of the person other than the registrant 20.
- the feature value extracted from the segment voice data 12 is considered to have a higher similarity to the feature value extracted from the registrant voice data 22 than the feature value extracted from the input voice data 10. Therefore, a second score larger than the first score may exist. That is, the maximum value of the second score may be larger than the first score.
- the first determination unit 2060 determines that there are a plurality of speakers of the voice included in the input voice data 10.
- the method of determining whether the number of speakers included in the input voice data 10 is one or more is not limited to a method of comparing the first score and the maximum value of the second score.
- the first determination unit 2060 calculates an index value indicating the magnitude of the variation in the values of the plurality of second scores, and compares the index value with a predetermined threshold value, to thereby determine the value of the voice included in the input voice data 10. It is determined whether the number of speakers is one or more. Specifically, if the calculated index value is equal to or more than a predetermined threshold, the first determination unit 2060 determines that there are a plurality of speakers of the voice included in the input voice data 10, and determines that the calculated index value is a predetermined value.
- the index value representing the magnitude of the variation of the values of the plurality of second scores includes values such as the difference between the maximum value and the minimum value of the second scores, the variance of the second scores, and the standard deviation of the second scores. Can be used.
- the first determination unit 2060 inputs the first score calculated by the first calculation unit 2020 and the second score calculated by the second calculation unit 2040 to the learned prediction model. As a result, it is possible to obtain, as an output of the prediction model, a result of determining whether the number of speakers included in the input voice data 10 is one or more.
- ⁇ Learning of the prediction model is performed in advance using learning data generated from voice data in which the number of speakers is known. Specifically, a first score is calculated for the entire voice data of which the number of speakers is known, and a second score is calculated for each of a plurality of segment voice data obtained by dividing the voice data. Then, a prediction model is learned using a combination of “the number of known speakers, the calculated first score, and the calculated second score” as teacher data. The voice used for learning the prediction model does not need to include the voice of the registrant 20.
- the prediction model may be constructed so as to use only the second model without using the first score. That is, in response to the input of the second score calculated from the input voice data 10, a prediction model for determining whether one or more speakers are included in the voice included in the input voice data 10 is constructed. Keep it. The types of models that can be adopted are the same as in the case where the first score is used. In the learning of the prediction model, a second score calculated for each of a plurality of segment voice data obtained by dividing voice data having a known number of speakers is associated with a known number of speakers. Use learning data.
- the second determination unit 2080 performs a second determination (S112). Specifically, the second determination unit 2080 determines whether or not the input voice data 10 includes the voice of the registrant 20 based on the first score, the second score, and the result of the first determination ( S112).
- the specific method of the second determination differs depending on the result of the first determination.
- a specific method of the second determination will be described for each result of the first determination.
- the second determination unit 2080 compares the first score with a threshold. When the first score is equal to or greater than the threshold, the second determination unit 2080 determines that the voice of the registrant 20 is included in the input voice data 10. On the other hand, when the first score is less than the threshold, the second determination unit 2080 determines that the voice of the registrant 20 is not included in the input voice data 10.
- This threshold is stored in a storage device accessible from the information processing device 2000 in advance.
- the second determination unit 2080 calculates a correction score using at least the second score, and compares the calculated correction score with the threshold. I do. If the correction score is equal to or greater than the threshold, the second determination unit 2080 determines that the voice of the registrant 20 is included in the input voice data 10. On the other hand, when the first score is less than the threshold, the second determination unit 2080 determines that the voice of the registrant 20 is not included in the input voice data 10.
- the second determination unit 2080 generates a histogram indicating the number of second scores included in each of the plurality of partial ranges obtained by dividing the domain of the second score, and calculates a correction score using the histogram. For example, when the domain of the second score S2 is “0 ⁇ S2 ⁇ 100”, this domain has 10 partial ranges (“0 ⁇ S2 ⁇ 10”,..., “80 ⁇ S2 ⁇ 90”). , “90 ⁇ S2 ⁇ 100”). The second determination unit 2080 calculates the number of second scores calculated from the segment audio data 12 for each of these partial ranges.
- FIG. 7 is a diagram illustrating a histogram of the second score.
- the domain of the second score ⁇ S2 ⁇ is “0 ⁇ S2 ⁇ 100”, and this domain is equally divided into ten. Then, the number of second scores in each partial range is represented by a graph.
- the second determination unit 2080 specifies one or more partial ranges indicating a peak from the above-described histogram, and specifies the partial range having the largest second score among the specified partial ranges.
- the partial range specified here is called a range of interest. For example, in the example of FIG. 7, two partial ranges indicating the peak are “20 ⁇ S2 ⁇ 30” and “60 ⁇ S2 ⁇ 70”. Among them, the partial range where the second score is the maximum is “60 ⁇ S2 ⁇ 70”. Therefore, “60 ⁇ S2 ⁇ 70” is specified as the range of interest.
- the utterer of the voice included in the segment voice data 12 is mainly one.
- a speaker often speaks alternately in a conversation
- a segment voice extracted from a voice recording a conversation such as a telephone recording
- one speaker is often included in one segment voice.
- the second score calculated in comparison with the segment voice data 12 in which the main utterer is a person other than the registrant 20 is considered to be higher.
- the numerical range in which the second score is the largest in the numerical range indicating the peak that is, the range of interest is included in the second score calculated for the segment voice data 12 whose main speaker is the registrant 20. It becomes.
- the second determination unit 2080 calculates a correction score using the attention range. For example, the second determination unit 2080 sets a statistic value (such as a maximum value or an average value) of the second score included in the range of interest as a correction score.
- a statistic value such as a maximum value or an average value
- the second determination unit 2080 generates one audio data by combining the segment audio data 12 included in the range of interest, and a feature amount extracted from the generated audio data and the registrant audio data 22 Is calculated as a correction score.
- the longer the length of the audio data the more accurate the score can be calculated. Therefore, by combining the segment audio data 12 included in the range of interest to generate audio data longer than the segment audio data 12 and calculating the score for this audio data, the score calculated for the segment audio data 12 is calculated. Also, a highly accurate score can be obtained. Therefore, by using the calculated score as the correction score, it is possible to determine whether or not the input voice data 10 includes the voice of the registrant 20 using a more accurate score.
- the second determination unit 2080 includes, in the segment voice data 12 to be combined as described above, not only the segment voice data 12 included in the range of interest, but also each partial range having the second score larger than the range of interest.
- the segment audio data 12 may be included.
- the second determination unit 2080 combines all the segment audio data 12 whose calculated second scores are equal to or larger than the lower limit of the range of interest to generate one audio data. For example, in the example of FIG. 7, eight segment audio data 12 having a second score of 60 or more are combined to generate one audio data, and the similarity to the registrant audio data 22 calculated for the audio data is calculated. The corrected score is used.
- Correction Score Calculation Method 2 a prediction model that receives the first score and the second score as inputs and outputs a correction score may be prepared.
- the second determination unit 2080 obtains a correction score by inputting the first score calculated by the first calculation unit 2020 and the second score calculated by the second calculation unit 2040 to the prediction model.
- the prediction model 1) the distribution of the second score obtained from the segment voice of the speaker having the highest probability of being the registrant 20 from the distribution of all the second scores (the distribution including the above-mentioned attention range) And (2) a prediction model that calculates a correction score based on the extracted distribution.
- a Gaussian mixture model (GMM: Gaussian Mixture Model) can be used.
- the second determination unit 2080 constructs ⁇ GMM ⁇ using the plurality of second scores calculated by the second calculation unit 2040.
- GMM Gaussian Mixture Model
- the distribution of all the second scores obtained from the input voice data 10 can be divided into a plurality of Gaussian distributions.
- the distribution having the maximum average value of the second score is considered to be the distribution including the above-mentioned attention range. Therefore, the second determination unit 2080 extracts a Gaussian distribution having the maximum average value of the second score from a plurality of Gaussian distributions obtained using GMM.
- EM ExpectationExMaximization
- MAP Maximum A Posteriori
- Various prediction models that implement regression such as support vector regression (SVR: Support Vector Regression) and neural networks, can be used for the prediction model that calculates the correction score based on the distribution of the ⁇ ⁇ ⁇ second score.
- This prediction model is made to learn how the distribution of the second score corresponds to the first score in the voice of a single speaker. By performing such learning, the prediction model outputs the first score that is predicted to correspond to the distribution in response to the input of the distribution of the second score as a correction score.
- the learning data used for learning the prediction model can be generated using an arbitrary voice with a single speaker. Specifically, a first score is calculated for the entire voice data in which one speaker is one. Further, the audio data is divided into a plurality of segment audio data, and a second score is calculated for each segment audio data. By doing so, it is possible to obtain the correspondence between the first score and a plurality of second scores (distribution of the second scores) in the voice of a single speaker. Therefore, the prediction model is made to learn the correspondence between the calculated first score and the plurality of second scores. Such learning enables the prediction model to output the corresponding first score in response to the input of the distribution of the second score.
- the registrant voice data 22 used for comparison with the input voice data 10 is specified as one.
- the registrant voice data 22 to be compared with the input voice data 10 can be specified as one, for example, a case where an input of an identifier (user ID or the like) for specifying the registrant 20 is separately accepted is considered.
- the information processing apparatus 2000 receives an input of an identifier (for example, a character string) specifying the registrant 20, and acquires the registrant voice data 22 stored in the storage device in association with the received identifier. I do. Then, the information processing apparatus 2000 performs the above-described series of speaker recognition processing (the processing shown in the flowchart of FIG.
- Such speaker recognition can be used, for example, in a case where user authentication is performed using a pair of a user ID and a user's voice instead of performing user authentication using a pair of a user ID and a password.
- the registrant voice data 22 used for comparison with the input voice data 10 does not have to be specified as one.
- the information processing apparatus 2000 acquires the registrant voice data 22 one by one from a storage device in which a plurality of registrant voice data 22 are stored, and the registrant 20 corresponding to the acquired registrant voice data 22 is described above. A series of speaker recognition processing is performed.
- the information processing device 2000 ends the speaker recognition processing. In this case, it is determined that the voice of the registrant 20 corresponding to the registrant voice data 22 to be processed is included in the input voice data 10. On the other hand, it is assumed that in the speaker recognition processing performed on the acquired registrant voice data 22, it is determined that the input voice data 10 does not include the voice of the registrant 20. In this case, the information processing apparatus 2000 acquires the next registrant voice data 22 from the storage device in which the registrant voice data 22 is stored, and performs a speaker recognition process on the registrant voice data 22. Such speaker recognition can be used, for example, in a case where user authentication is performed using only a user's voice instead of performing user authentication using a pair of a user ID and a password.
- the second determination unit 2080 may output a result of the second determination, that is, information indicating whether or not the voice of the registrant 20 is included in the input voice data 10.
- a result of the second determination that is, information indicating whether or not the voice of the registrant 20 is included in the input voice data 10.
- Various methods can be adopted as a method of outputting the result of the second determination.
- the second determination unit 2080 outputs information indicating the result of the second determination to a display device connected to the information processing device 2000.
- the second determination unit 2080 may store information indicating the result of the second determination in a storage device connected to the information processing device 2000.
- the information indicating the result of the second determination is, for example, information that “input voice data 10 includes voice of registrant 20” or “input voice data 10 does not include voice of registrant 20”. Is a character string, an image, a sound, or the like representing the information.
- the second determination unit 2080 includes, in addition to the information indicating the result of the second determination, information indicating whether the voice included in the input voice data 10 is a single speaker or a plurality of voices (that is, the first voice).
- Information indicating a result of the determination) or information indicating a score (first score or correction score) compared with the threshold may be output. By doing so, the user of the information processing apparatus 2000 can grasp not only the result of the determination as to whether or not the voice of the registrant 20 is included in the input voice data 10, but also the basis of the determination.
- the information processing apparatus 2000 Information for specifying a registrant whose voice is included in the voice data 10 (for example, an identifier of the registrant) may be output.
Landscapes
- Engineering & Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Business, Economics & Management (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Game Theory and Decision Science (AREA)
- Circuit For Audible Band Transducer (AREA)
- Telephonic Communication Services (AREA)
Abstract
情報処理装置(2000)は、入力音声データ(10)と、登録者(20)の登録者音声データ(22)との類似度合いを表す第1スコアを算出する。情報処理装置(2000)は、入力音声データ(10)を時間方向に分割することで、複数のセグメント音声データ(12)を得る。情報処理装置(2000)は、各セグメント音声データ(12)について、セグメント音声データ(12)と登録者音声データ(22)との類似度合いを表す第2スコアを算出する。情報処理装置2000は、少なくとも第2スコアを用いて、入力音声データ(10)に含まれる音声の話者が、一人と複数のいずれであるかを判定する第1判定を行う。情報処理装置(2000)は、第1スコア、第2スコア、及び第1判定の結果に基づいて、入力音声データ(10)に登録者(20)の音声が含まれるか否かを判定する第2判定を行う。
Description
本発明は音声データに含まれる音声の話者を認識する技術に関する。
入力された音声からその話者を認識する技術が開発されている。例えば特許文献1には、入力された音声信号の特徴量を算出し、算出した特徴量を話者モデルに入力することで話者スコアを算出し、算出した話者スコアに基づいて話者を特定する技術が開示されている。
ここで、入力音声には、任意の環境下で収録した音声を用いられることが多いため、認識対象の話者の音声以外の音声も含まれうる。このような認識対象の話者の音声以外の音声が入力音声に含まれることにより、話者認識の精度が低下してしまう。
そこで、認識対象の話者の音声以外の音声が含まれる入力音声を対象として、話者認識の精度を向上させるための技術が開発されている。例えば非特許文献1には、背景雑音に頑健なスコア正規化手法が記載されている。この手法は、認識音声を音声区間と非音声区間の二つの部分に分ける。さらに、認識音声の SNR(signal noise ratio)、登録音声のSNR、及び話者認識を行う際に求めたスコアを用いて、スコア正規化を行う。そして、正規化したスコアを用いて、認識音声の話者が登録者であるか否かが判定される。
ここで、認識音声の SNR は、主に非音声区間に含まれている雑音(すなわち、背景雑音)の量を表しており、SNR が低ければ低いほどスコアが小さくなる。このように背景雑音を考慮して話者認識を行うことで、雑音に対して頑健な話者認識を実現している。
Harmse Jorgen、Steven D. Beck、及び Hirotaka Nakasone、「Speaker recognition score-normalization to compensate for snr and duration」、Speaker and Language Recognition Workshop、2006年
Ajmera Jitendra、Iain McCowan、及び Herve Bourlard、「Robust speaker change detection」、IEEE Signal Processing Letters、2004年.
認識音声には、背景雑音だけでなく、認識対象の話者以外の他者の音声も混在しうる。非特許文献1の手法では、このような他者の音声が混在する入力音声について認識精度を向上させることが難しい。なぜなら、非音声区間に含められる背景雑音とは異なり、他者の音声は認識対象の話者の音声と共に音声区間に含まれてしまうため、他者の音声の混入具合を上述した SNR で表現できないためである。
本発明は上述した課題に鑑みてなされたものであり、その目的の一つは、認識対象の話者以外の人の音声が入力音声に含まれるケースについて、話者認識の精度を向上させる技術を提供することである。
本発明の情報処理装置は、1)入力音声データと、登録者の音声データである登録者音声データとの類似度合いを表す第1スコアを算出する第1算出部と、2)入力音声データを時間方向に分割することにより、入力音声データを複数のセグメント音声データに分け、各セグメント音声データについて、セグメント音声データと登録者音声データとの類似度合いを表す第2スコアを算出する第2算出部と、3)少なくとも第2スコアを用いて、入力音声データに含まれる音声の話者が一人と複数のいずれであるかを判定する第1判定部と、4)第1スコア、第2スコア、及び第1判定部による判定結果に基づいて、入力音声データに登録者の音声が含まれるか否かを判定する第2判定部と、を有する。
本発明の制御方法は、コンピュータによって実行される。当該制御方法は、1)入力音声データと、登録者の音声データである登録者音声データとの類似度合いを表す第1スコアを算出する第1算出ステップと、2)入力音声データを時間方向に分割することにより、入力音声データを複数のセグメント音声データに分け、各セグメント音声データについて、セグメント音声データと登録者音声データとの類似度合いを表す第2スコアを算出する第2算出ステップと、3)少なくとも第2スコアを用いて、入力音声データに含まれる音声の話者が一人と複数のいずれであるかを判定する第1判定ステップと、4)第1スコア、第2スコア、及び第1判定ステップによる判定結果に基づいて、入力音声データに登録者の音声が含まれるか否かを判定する第2判定ステップと、を有する。
本発明のプログラムは、コンピュータに、本発明の制御方法が有する各ステップを実行させる。
本発明によれば、認識対象の話者以外の人の音声が入力音声に含まれるケースについて、話者認識の精度を向上させる技術が提供される。
上述した目的、およびその他の目的、特徴および利点は、以下に述べる好適な実施の形態、およびそれに付随する以下の図面によってさらに明らかになる。
以下、本発明の実施の形態について、図面を用いて説明する。尚、すべての図面において、同様な構成要素には同様の符号を付し、適宜説明を省略する。また、特に説明する場合を除き、各ブロック図において、各ブロックは、ハードウエア単位の構成ではなく、機能単位の構成を表している。
[実施形態1]
<概要>
図1は、本実施形態の情報処理装置2000が行う処理の概要を概念的に示す図である。情報処理装置2000は、入力音声データ10に含まれる音声の話者の認識を行う。そのために、情報処理装置2000は、入力音声データ10と、登録者20(図示せず)の音声を表す登録者音声データ22との比較を行う。以下、情報処理装置2000の動作をより具体的に説明する。
<概要>
図1は、本実施形態の情報処理装置2000が行う処理の概要を概念的に示す図である。情報処理装置2000は、入力音声データ10に含まれる音声の話者の認識を行う。そのために、情報処理装置2000は、入力音声データ10と、登録者20(図示せず)の音声を表す登録者音声データ22との比較を行う。以下、情報処理装置2000の動作をより具体的に説明する。
まず情報処理装置2000は、入力音声データ10と登録者音声データ22との類似度合いを表す第1スコアを算出する。さらに情報処理装置2000は、入力音声データ10を時間方向に分割することで、複数のセグメント音声データ12を得る。そして、情報処理装置2000は、各セグメント音声データ12について、セグメント音声データ12と登録者音声データ22との類似度合いを表す第2スコアを算出する。
情報処理装置2000は、少なくとも第2スコアを用いて、入力音声データ10に含まれる音声の話者が、一人と複数のいずれであるかを判定する第1判定を行う。ただし、この判定には、第1スコアがさらに利用されてもよい。図1では、第1判定に第1スコア及び第2スコアが利用されるケースを例示している。そして、情報処理装置2000は、第1スコア、第2スコア、及び第1判定の結果に基づいて、入力音声データ10に登録者20の音声が含まれるか否かを判定する第2判定を行う。
ここで、入力音声データ10に含まれる音声の話者が複数であると判定された場合、情報処理装置2000は、少なくとも第2スコアを用いて補正スコアを算出し、算出した補正スコアを閾値と比較することにより、第2判定を行う。一方、入力音声データ10に含まれる音声の話者が一人であると判定された場合、情報処理装置2000は、第1スコアを閾値と比較することにより、第2判定を行う。いずれの場合も、スコアが閾値以上であれば、入力音声データ10に登録者20の音声が含まれると判定され、スコアが閾値未満であれば、入力音声データ10に登録者20の音声が含まれないと判定される。
<作用効果>
本実施形態の情報処理装置2000によれば、入力音声データ10を分割することで得られる複数のセグメント音声データ12それぞれについて、登録者音声データ22との類似度を表す第2スコアが算出され、少なくとも第2スコアを用いて、入力音声データ10に含まれる音声の話者が一人と複数のいずれであるかが判定される。そして、この判定結果を利用して、入力音声データ10に登録者20の音声が含まれるか否かが判定される。このように、入力音声データ10に含まれる音声の話者が一人と複数のいずれであるかを判定することにより、入力音声データ10に登録者20以外の人の音声も含まれているか否かを考慮して、入力音声データ10に登録者20の音声が含まれるか否かを判定することができるようになる。よって、情報処理装置2000によれば、入力音声データ10に登録者20以外の人の音声も含まれているケースについて、話者認識の精度を向上させることができる。
本実施形態の情報処理装置2000によれば、入力音声データ10を分割することで得られる複数のセグメント音声データ12それぞれについて、登録者音声データ22との類似度を表す第2スコアが算出され、少なくとも第2スコアを用いて、入力音声データ10に含まれる音声の話者が一人と複数のいずれであるかが判定される。そして、この判定結果を利用して、入力音声データ10に登録者20の音声が含まれるか否かが判定される。このように、入力音声データ10に含まれる音声の話者が一人と複数のいずれであるかを判定することにより、入力音声データ10に登録者20以外の人の音声も含まれているか否かを考慮して、入力音声データ10に登録者20の音声が含まれるか否かを判定することができるようになる。よって、情報処理装置2000によれば、入力音声データ10に登録者20以外の人の音声も含まれているケースについて、話者認識の精度を向上させることができる。
より具体的には、入力音声データ10に複数の人物の音声が含まれている場合において、補正スコアが算出され、その補正スコアを用いて、入力音声データ10に登録者20の音声が含まれるか否かが判定される。このように、複数の人物の音声が含まれる入力音声データ10について、登録者20の音声が含まれるか否かの判定を、入力音声データ10全体について算出したスコア(すなわち、第1スコア)をそのまま用いて行うのではなく、補正したスコアを利用して行うようにすることで、より高い精度で判定が行えるようになる。
情報処理装置2000を利用した話者認識は、様々な場面で利用することができる。例えば、音声データを用いた生体認証に利用することが考えられる。具体的には、認証を行いたい人物が発した声を録音することで生成された音声データを利用して、話者認識を行う。
ここで、生体認証には高い精度が要求される。また、生体認証が行われる場所には、認識対象の人物以外の人物も存在する蓋然性が高い。
本実施形態の情報処理装置2000によれば、認識対象の人物が発した音声を録音した音声データに、その人物以外の人物の音声が混入してしまったとしても、高い精度で話者認識を行うことができる。よって、認識対象の人物以外の人物が存在する環境においても、音声データを用いた生体認証を高い精度で実現することができる。
なお、図1を参照した上述の説明は、情報処理装置2000の理解を容易にするための例示であり、情報処理装置2000の機能を限定するものではない。以下、本実施形態の情報処理装置2000についてさらに詳細に説明する。
<情報処理装置2000の機能構成の例>
図2は、実施形態1の情報処理装置2000の機能構成を例示する図である。情報処理装置2000は、第1算出部2020、第2算出部2040、第1判定部2060、及び第2判定部2080を有する。第1算出部2020は、入力音声データ10と登録者音声データ22との類似度合いを表す第1スコアを算出する。第2算出部2040は、入力音声データ10を複数のセグメント音声データ12に分割し、各セグメント音声データ12について、登録者音声データ22との類似度合いを表す第2スコアを算出する。なお、入力音声データ10は、時間方向に分割される。第1判定部2060は、少なくとも第2スコアを用いて、入力音声データ10に含まれる音声の話者が一人と複数のいずれであるかを判定する。第2判定部2080は、第1スコア、第2スコア、及び第1判定部2060による判定の結果に基づいて、入力音声データ10に登録者20の音声が含まれるか否かを判定する。
図2は、実施形態1の情報処理装置2000の機能構成を例示する図である。情報処理装置2000は、第1算出部2020、第2算出部2040、第1判定部2060、及び第2判定部2080を有する。第1算出部2020は、入力音声データ10と登録者音声データ22との類似度合いを表す第1スコアを算出する。第2算出部2040は、入力音声データ10を複数のセグメント音声データ12に分割し、各セグメント音声データ12について、登録者音声データ22との類似度合いを表す第2スコアを算出する。なお、入力音声データ10は、時間方向に分割される。第1判定部2060は、少なくとも第2スコアを用いて、入力音声データ10に含まれる音声の話者が一人と複数のいずれであるかを判定する。第2判定部2080は、第1スコア、第2スコア、及び第1判定部2060による判定の結果に基づいて、入力音声データ10に登録者20の音声が含まれるか否かを判定する。
<情報処理装置2000のハードウエア構成>
情報処理装置2000の各機能構成部は、各機能構成部を実現するハードウエア(例:ハードワイヤードされた電子回路など)で実現されてもよいし、ハードウエアとソフトウエアとの組み合わせ(例:電子回路とそれを制御するプログラムの組み合わせなど)で実現されてもよい。以下、情報処理装置2000の各機能構成部がハードウエアとソフトウエアとの組み合わせで実現される場合について、さらに説明する。
情報処理装置2000の各機能構成部は、各機能構成部を実現するハードウエア(例:ハードワイヤードされた電子回路など)で実現されてもよいし、ハードウエアとソフトウエアとの組み合わせ(例:電子回路とそれを制御するプログラムの組み合わせなど)で実現されてもよい。以下、情報処理装置2000の各機能構成部がハードウエアとソフトウエアとの組み合わせで実現される場合について、さらに説明する。
図3は、情報処理装置2000を実現するための計算機1000を例示する図である。計算機1000は任意の計算機である。例えば計算機1000は、Personal Computer(PC)やサーバマシンなどである。計算機1000は、情報処理装置2000を実現するために設計された専用の計算機であってもよいし、汎用の計算機であってもよい。
計算機1000は、バス1020、プロセッサ1040、メモリ1060、ストレージデバイス1080、入出力インタフェース1100、及びネットワークインタフェース1120を有する。バス1020は、プロセッサ1040、メモリ1060、ストレージデバイス1080、入出力インタフェース1100、及びネットワークインタフェース1120が、相互にデータを送受信するためのデータ伝送路である。ただし、プロセッサ1040などを互いに接続する方法は、バス接続に限定されない。
プロセッサ1040は、CPU(Central Processing Unit)、GPU(Graphics Processing Unit)、FPGA(Field-Programmable Gate Array)などの種々のプロセッサである。メモリ1060は、RAM(Random Access Memory)などを用いて実現される主記憶装置である。ストレージデバイス1080は、ハードディスク、SSD(Solid State Drive)、メモリカード、又は ROM(Read Only Memory)などを用いて実現される補助記憶装置である。
入出力インタフェース1100は、計算機1000と入出力デバイスとを接続するためのインタフェースである。例えば入出力インタフェース1100には、キーボードなどの入力装置や、ディスプレイ装置などの出力装置が接続される。ネットワークインタフェース1120は、計算機1000を通信網に接続するためのインタフェースである。この通信網は、例えば LAN(Local Area Network)や WAN(Wide Area Network)である。ネットワークインタフェース1120が通信網に接続する方法は、無線接続であってもよいし、有線接続であってもよい。
ストレージデバイス1080は、情報処理装置2000の各機能構成部を実現するプログラムモジュールを記憶している。プロセッサ1040は、これら各プログラムモジュールをメモリ1060に読み出して実行することで、各プログラムモジュールに対応する機能を実現する。
ストレージデバイス1080は、登録者音声データ22をさらに記憶していてもよい。ただし、登録者音声データ22は、計算機1000から取得可能な情報であればよく、ストレージデバイス1080に記憶されていなければならないものではない。例えば登録者音声データ22は、ネットワークインタフェース1120を介して計算機1000と接続されているデータベースサーバに記憶させておくことができる。
また、登録者音声データ22そのものではなく、登録者音声データ22から抽出される特徴量を記憶装置に記憶させておいてもよい。この場合、登録者音声データ22は、情報処理装置2000から取得可能でなくてもよい。
<処理の流れ>
図4は、実施形態1の情報処理装置2000によって実行される処理の流れを例示するフローチャートである。第1算出部2020は、入力音声データ10を取得する(S102)。第2算出部2040は第1スコアを算出する(S104)。第2算出部2040は、入力音声データ10を複数のセグメント音声データ12に分割する(S106)。第2算出部2040は、各セグメント音声データ12について第2スコアを算出する(S108)。第1判定部2060は、第1判定(入力音声データ10に含まれる音声の話者が一人と複数のいずれであるかの判定)を行う(S110)。第2判定部2080は、第2判定(入力音声データ10に登録者20の音声が含まれるか否かの判定)を行う(S112)。
図4は、実施形態1の情報処理装置2000によって実行される処理の流れを例示するフローチャートである。第1算出部2020は、入力音声データ10を取得する(S102)。第2算出部2040は第1スコアを算出する(S104)。第2算出部2040は、入力音声データ10を複数のセグメント音声データ12に分割する(S106)。第2算出部2040は、各セグメント音声データ12について第2スコアを算出する(S108)。第1判定部2060は、第1判定(入力音声データ10に含まれる音声の話者が一人と複数のいずれであるかの判定)を行う(S110)。第2判定部2080は、第2判定(入力音声データ10に登録者20の音声が含まれるか否かの判定)を行う(S112)。
<入力音声データ10の取得:S102>
第1算出部2020は入力音声データ10を取得する(S102)。入力音声データ10は、話者認識の対象となる音声データである。第1算出部2020が入力音声データ10を取得する方法は任意である。例えば第1算出部2020は、入力音声データ10が記憶されている記憶装置から入力音声データ10を取得する。入力音声データ10が記憶されている記憶装置は、情報処理装置2000の内部に設けられていてもよいし、外部に設けられていてもよい。その他にも例えば、第1算出部2020は、他の装置によって送信される入力音声データ10を受信することで、入力音声データ10を取得する。
第1算出部2020は入力音声データ10を取得する(S102)。入力音声データ10は、話者認識の対象となる音声データである。第1算出部2020が入力音声データ10を取得する方法は任意である。例えば第1算出部2020は、入力音声データ10が記憶されている記憶装置から入力音声データ10を取得する。入力音声データ10が記憶されている記憶装置は、情報処理装置2000の内部に設けられていてもよいし、外部に設けられていてもよい。その他にも例えば、第1算出部2020は、他の装置によって送信される入力音声データ10を受信することで、入力音声データ10を取得する。
なお、後述するように、第1スコアや第2スコアの算出には、入力音声データ10から抽出される特徴量を利用する。そこで第1算出部2020は、登録者音声データ22を取得する代わりに、登録者音声データ22から予め抽出しておいた特徴量を取得してもよい。この場合、登録者音声データ22から抽出した特徴量を予め任意の記憶装置に記憶させておく。
<第1スコアの算出:S104>
第1算出部2020は、入力音声データ10と登録者音声データ22との比較により、第1スコアの算出を行う(S104)。より具体的には、第1算出部2020は、入力音声データ10と登録者音声データ22のそれぞれから抽出される特徴量の類似度を算出し、算出した類似度を第1スコアとする。
第1算出部2020は、入力音声データ10と登録者音声データ22との比較により、第1スコアの算出を行う(S104)。より具体的には、第1算出部2020は、入力音声データ10と登録者音声データ22のそれぞれから抽出される特徴量の類似度を算出し、算出した類似度を第1スコアとする。
第1スコアと第2スコアの算出に利用する特徴量には、音声データから抽出できる任意の特徴量を利用することができる。音声データから抽出できる特徴量は、例えば、声道情報を反映したスペクトルの包絡特性や、声帯情報を反映した基本周波数特性などの物理量を表す情報である。より具体的な例としては、メル周波数ケプストラム係数(MFCC: Mel-Frequency Cepstrum Coefficients)を用いて算出した i-vector を利用できる。例えば、Probabilistic linear discriminant analysis(PLDA)により、i-vector 空間上で話者の識別に寄与しない情報を低減することにより、特徴量同士の類似度をより正確に表すスコアを算出することができる。なお、音声データから特徴量を抽出する具体的な技術、及び特徴量同士の類似度を算出する具体的な技術には、既存の技術を利用することができる。
<入力音声データ10の分割:S106>
第2算出部2040は、入力音声データ10を時間方向に分割することで、入力音声データ10を複数のセグメント音声データ12に分ける(S106)。ここで、入力音声データ10の分割の方法には、様々な方法を採用できる。以下、その方法の具体例を説明する。
第2算出部2040は、入力音声データ10を時間方向に分割することで、入力音声データ10を複数のセグメント音声データ12に分ける(S106)。ここで、入力音声データ10の分割の方法には、様々な方法を採用できる。以下、その方法の具体例を説明する。
<<所定長の時間で分割する方法>>
例えば第2算出部2040は、入力音声データ10を所定長(10秒など)の音声データに分割することにより、入力音声データ10を複数のセグメント音声データ12に分ける。図5は、所定長に分割された入力音声データ10を例示する図である。図5において、所定長、すなわちセグメント音声データ12の長さは10秒である。
例えば第2算出部2040は、入力音声データ10を所定長(10秒など)の音声データに分割することにより、入力音声データ10を複数のセグメント音声データ12に分ける。図5は、所定長に分割された入力音声データ10を例示する図である。図5において、所定長、すなわちセグメント音声データ12の長さは10秒である。
ここで、図5(b)に示されているように、隣接するセグメント音声データ12同士は、それらの一部が互いにオーバーラップするように分割されてもよい。図5(b)において、隣接する2つのセグメント音声データ12は、互いに3秒間オーバーラップしている。
また、図5(c)に示されているように、隣接するセグメント音声データ12同士が、時間方向で離れていてもよい。図5(c)において、隣接する2つのセグメント音声データ12は、3秒間離れている。
<<話者交換点で分割する方法>>
例えば第2算出部2040は、入力音声データ10について話者交換点を検出し、話者交換点で入力音声データ10を区切ることで、入力音声データ10を複数のセグメント音声データ12に分割してもよい。話者交換点を検出する技術には、非特許文献2記載の技術などを利用することができる。
例えば第2算出部2040は、入力音声データ10について話者交換点を検出し、話者交換点で入力音声データ10を区切ることで、入力音声データ10を複数のセグメント音声データ12に分割してもよい。話者交換点を検出する技術には、非特許文献2記載の技術などを利用することができる。
<第2スコアの算出:S108>
第2算出部2040は、各セグメント音声データ12について第2スコアを算出する(S108)。そのために第2算出部2040は、各セグメント音声データ12から特徴量を抽出する。そして第2算出部2040は、セグメント音声データ12から抽出された特徴量と、登録者音声データ22から抽出された特徴量との類似度を算出し、算出された類似度を、そのセグメント音声データ12の第2スコアとする。
第2算出部2040は、各セグメント音声データ12について第2スコアを算出する(S108)。そのために第2算出部2040は、各セグメント音声データ12から特徴量を抽出する。そして第2算出部2040は、セグメント音声データ12から抽出された特徴量と、登録者音声データ22から抽出された特徴量との類似度を算出し、算出された類似度を、そのセグメント音声データ12の第2スコアとする。
<第1判定:S110>
第1判定部2060は、少なくとも第2スコアを用いて、入力音声データ10に含まれる音声の話者が一人と複数のいずれであるかを判定する(S110)。ただし前述したように、この判定には、第1スコアをさらに利用してもよい。例えば第1判定部2060は、第1スコアを第2スコアの最大値と比較する。具体的には、第1判定部2060は、第2算出部2040によって算出された複数の第2スコアの中から最大値を特定し、第1スコアがその最大値よりも小さければ、入力音声データ10に含まれる音声の話者が複数であると判定する。一方、第1判定部2060は、第1スコアが第2スコアの最大値以上であれば、入力音声データ10に含まれる音声の話者が一人であると判定する。
第1判定部2060は、少なくとも第2スコアを用いて、入力音声データ10に含まれる音声の話者が一人と複数のいずれであるかを判定する(S110)。ただし前述したように、この判定には、第1スコアをさらに利用してもよい。例えば第1判定部2060は、第1スコアを第2スコアの最大値と比較する。具体的には、第1判定部2060は、第2算出部2040によって算出された複数の第2スコアの中から最大値を特定し、第1スコアがその最大値よりも小さければ、入力音声データ10に含まれる音声の話者が複数であると判定する。一方、第1判定部2060は、第1スコアが第2スコアの最大値以上であれば、入力音声データ10に含まれる音声の話者が一人であると判定する。
以下、図6を用いて、上述した判定の根拠について説明する。図6は、第1スコアと第2スコアをグラフで例示する図である。図6の上段は、入力音声データ10に登録者の音声のみが含まれているケースを示している。一方、図6の下段は、入力音声データ10に登録者以外の音声が含まれているケースを例示している。
一般的に、特徴量同士の類似度を表すスコアは、入力音声の長さの影響を受ける。具体的には、特徴量の抽出に用いられる情報の量が、入力音声が短くなるほど少なくなるため、入力音声が短いほど、抽出される特徴量の正確性(特徴量が話者の特徴を表す度合い)が低下する。このことから、入力音声データ10に登録者20の音声しか含まれていなければ、第1スコアは、どの第2スコアよりも大きくなる。すなわち、第1スコアは第2スコアの最大値よりも大きくなる(図6上段参照)。
一方、入力音声データ10に登録者20の音声以外の人物の音声も含まれていると、第2スコアが第1スコアよりも大きくなることがある(図6下段参照)。これは、入力音声データ10全体には登録者20以外の人物の音声が含まれていても、入力音声データ10の一部であるセグメント音声データ12の中には、登録者20以外の人物の音声をほとんど含まないものが存在しうるためである。このようなセグメント音声データ12から抽出される特徴量は、入力音声データ10から抽出される特徴量と比較し、登録者音声データ22から抽出される特徴量との類似度が高いと考えられる。そのため、第1スコアよりも大きい第2スコアが存在しうることとなる。すなわち、第2スコアの最大値が第1スコアよりも大きくなりうる。
以上のことから、第1スコアが第2スコアの最大値よりも小さい場合には、入力音声データ10に登録者20の音声以外の人物の音声も含まれている蓋然性が高いと言える。そこで前述した様に、第1判定部2060は、第1スコアが第2スコアの最大値よりも小さければ、入力音声データ10に含まれる音声の話者が複数であると判定する。
ただし、入力音声データ10に含まれる音声の話者が一人と複数のいずれであるかを判定する方法は、第1スコアと第2スコアの最大値とを比較する方法に限定されない。例えば第1判定部2060は、複数の第2スコアの値のばらつきの大きさを表す指標値を算出し、その指標値を所定の閾値と比較することで、入力音声データ10に含まれる音声の話者が一人と複数のいずれであるかを判定する。具体的には、第1判定部2060は、算出した指標値が所定の閾値以上であれば、入力音声データ10に含まれる音声の話者が複数であると判定し、算出した指標値が所定の閾値未満であれば、入力音声データ10に含まれる音声の話者が一人であると判定する。ここで、複数の第2スコアの値のばらつきの大きさを表す指標値には、第2スコアの最大値と最小値の差分、第2スコアの分散、第2スコアの標準偏差などの値を利用することができる。
その他にも例えば、入力音声データ10から算出された第1スコア及び第2スコアが入力されたことに応じて、その入力音声データ10に含まれる音声の話者が一人と複数のいずれであるかを判定する予測モデルを予め構築しておいてもよい。このような予測モデルには、サポートベクタマシン、ニューラルネットワーク、及び線形分類器など、分類を実現する種々のモデルを利用することができる。第1判定部2060は、第1算出部2020によって算出された第1スコア、及び第2算出部2040によって算出された第2スコアを、学習済みの予測モデルに入力する。これにより、予測モデルの出力として、入力音声データ10に含まれる音声の話者が一人と複数のいずれであるかを判定した結果が得られる。
予測モデルの学習は、話者の人数が既知である音声データから生成される学習データを用いて、予め実行しておく。具体的には、話者の人数が既知である音声データ全体について第1スコアを算出し、なおかつその音声データを分割することで得られる複数のセグメント音声データそれぞれについて第2スコアを算出する。そして、「既知の話者人数、算出した第1スコア、算出した第2スコア」の組み合わせを教師データとして利用して、予測モデルの学習を行う。なお、予測モデルの学習に利用する音声には、登録者20の音声が含まれている必要はない。
なお、予測モデルは、第1スコアを利用せず、第2モデルのみを利用するように構築してもよい。すなわち、入力音声データ10から算出された第2スコアが入力されたことに応じて、その入力音声データ10に含まれる音声の話者が一人と複数のいずれであるかを判定する予測モデルを構築しておく。採用可能なモデルの種類については、第1スコアを利用するケースと同様である。また、予測モデルの学習には、話者の人数が既知である音声データを分割することで得られる複数のセグメント音声データそれぞれについて算出した第2スコアと、既知の話者人数とを対応づけた学習データを利用する。
<第2判定:S112>
第2判定部2080は第2判定を行う(S112)。具体的には、第2判定部2080は、第1スコア、第2スコア、及び第1判定の結果に基づいて、入力音声データ10に登録者20の音声が含まれるか否かを判定する(S112)。ここで、第2判定の具体的な方法は、第1判定の結果によって異なる。以下、第1判定の結果ごとに、第2判定の具体的な方法を説明する。
第2判定部2080は第2判定を行う(S112)。具体的には、第2判定部2080は、第1スコア、第2スコア、及び第1判定の結果に基づいて、入力音声データ10に登録者20の音声が含まれるか否かを判定する(S112)。ここで、第2判定の具体的な方法は、第1判定の結果によって異なる。以下、第1判定の結果ごとに、第2判定の具体的な方法を説明する。
<<入力音声データ10に含まれる音声の話者が一人である場合>>
入力音声データ10に含まれる音声の話者が一人であると判定された場合、第2判定部2080は、第1スコアを閾値と比較する。第1スコアが閾値以上である場合、第2判定部2080は、入力音声データ10に登録者20の音声が含まれると判定する。一方、第1スコアが閾値未満である場合、第2判定部2080は、入力音声データ10に登録者20の音声が含まれないと判定する。この閾値は、情報処理装置2000からアクセス可能な記憶装置に予め記憶させておく。
入力音声データ10に含まれる音声の話者が一人であると判定された場合、第2判定部2080は、第1スコアを閾値と比較する。第1スコアが閾値以上である場合、第2判定部2080は、入力音声データ10に登録者20の音声が含まれると判定する。一方、第1スコアが閾値未満である場合、第2判定部2080は、入力音声データ10に登録者20の音声が含まれないと判定する。この閾値は、情報処理装置2000からアクセス可能な記憶装置に予め記憶させておく。
<<入力音声データ10に含まれる音声の話者が複数である場合>>
入力音声データ10に含まれる音声の話者が複数であると判定された場合、第2判定部2080は、少なくとも第2スコアを用いて補正スコアを算出し、算出した補正スコアを上記閾値と比較する。補正スコアが閾値以上である場合、第2判定部2080は、入力音声データ10に登録者20の音声が含まれると判定する。一方、第1スコアが閾値未満である場合、第2判定部2080は、入力音声データ10に登録者20の音声が含まれないと判定する。
入力音声データ10に含まれる音声の話者が複数であると判定された場合、第2判定部2080は、少なくとも第2スコアを用いて補正スコアを算出し、算出した補正スコアを上記閾値と比較する。補正スコアが閾値以上である場合、第2判定部2080は、入力音声データ10に登録者20の音声が含まれると判定する。一方、第1スコアが閾値未満である場合、第2判定部2080は、入力音声データ10に登録者20の音声が含まれないと判定する。
補正スコアの算出方法には、様々な方法を採用できる。以下、補正スコアの算出方法を例示する。
<<補正スコアの算出方法1>>
例えば第2判定部2080は、第2スコアの定義域を分割した複数の部分範囲それぞれに含まれる第2スコアの数を表すヒストグラムを生成し、このヒストグラムを用いて補正スコアを算出する。例えば、第2スコア S2 の定義域が「0≦S2≦100」である場合において、この定義域が10個の部分範囲(「0≦S2<10」、・・・、「80≦S2<90」、「90≦S2≦100」)に等分される。第2判定部2080は、これらの部分範囲それぞれについて、セグメント音声データ12から算出された第2スコアの数を算出する。
例えば第2判定部2080は、第2スコアの定義域を分割した複数の部分範囲それぞれに含まれる第2スコアの数を表すヒストグラムを生成し、このヒストグラムを用いて補正スコアを算出する。例えば、第2スコア S2 の定義域が「0≦S2≦100」である場合において、この定義域が10個の部分範囲(「0≦S2<10」、・・・、「80≦S2<90」、「90≦S2≦100」)に等分される。第2判定部2080は、これらの部分範囲それぞれについて、セグメント音声データ12から算出された第2スコアの数を算出する。
図7は、第2スコアのヒストグラムを例示する図である。図7の例では、前述した例の様に、第2スコア S2 の定義域が「0≦S2≦100」であり、この定義域が10等分されている。そして、各部分範囲における第2スコアの数がグラフで表されている。
第2判定部2080は、上述のヒストグラムの中から、ピークを示す部分範囲を1つ以上特定し、なおかつ特定した部分範囲の中で第2スコアが最大であるものを特定する。ここで特定された部分範囲を、注目範囲と呼ぶ。例えば図7の例において、ピークを示す部分範囲は「20≦S2<30」と「60≦S2<70」の2つである。このうち、第2スコアが最大である部分範囲は「60≦S2<70」である。そこで、「60≦S2<70」が注目範囲として特定される。
第2スコアのヒストグラムにおいてピークを示す部分範囲では、セグメント音声データ12に含まれている音声の発話者が主に一人であると考えられる。特に、会話では話者が交替で話すことが多いため、会話を収録した音声(電話の録音など)から抽出されたセグメント音声では、1つのセグメント音声に含まれる話者が一人であることが多くなる。そして、主な発話者が登録者20であるセグメント音声データ12では、主な発話者が登録者20以外の人物であるセグメント音声データ12と比較し、算出される第2スコアが高くなると考えられる。そのため、ピークを示す数値範囲のうちで第2スコアが最大である数値範囲、すなわち注目範囲に含まれるのは、主な発話者が登録者20であるセグメント音声データ12について算出された第2スコアとなる。
そこで第2判定部2080は、注目範囲を利用して補正スコアを算出する。例えば第2判定部2080は、注目範囲に含まれる第2スコアの統計値(最大値や平均値など)を補正スコアとする。
その他にも例えば、第2判定部2080は、注目範囲に含まれるセグメント音声データ12を結合して1つの音声データを生成し、生成した音声データから抽出される特徴量と、登録者音声データ22から抽出された特徴量との類似度を、補正スコアとして算出する。一般に、音声データの長さが長い方が、精度の良いスコアを算出することができる。そのため、注目範囲に含まれるセグメント音声データ12を結合して、セグメント音声データ12よりも長い音声データを生成し、この音声データについてスコアを算出することにより、セグメント音声データ12について算出されたスコアよりも精度の良いスコアを得ることができる。よって、このように算出したスコアを補正スコアとすることで、より精度の良いスコアを用いて、入力音声データ10に登録者20の音声が含まれるか否かを判定することができる。
ここで、第2判定部2080は、上述の様に結合するセグメント音声データ12に、注目範囲に含まれるセグメント音声データ12だけでなく、注目範囲よりも第2スコアが大きい各部分範囲に含まれるセグメント音声データ12を含めるようにしてもよい。言い換えれば、第2判定部2080は、算出された第2スコアが注目範囲の下限値以上である全てのセグメント音声データ12を結合して、1つの音声データを生成するようにする。例えば図7の例では、第2スコアが60以上である8個のセグメント音声データ12を結合して1つの音声データを生成し、この音声データについて算出する登録者音声データ22との類似度を補正スコアとする。
<<補正スコアの算出方法2>>
その他にも例えば、第1スコアと第2スコアを入力として受け付けて補正スコアを出力する予測モデルを用意しておいてもよい。第2判定部2080は、第1算出部2020によって算出された第1スコアと、第2算出部2040によって算出された第2スコアを予測モデルに入力することで、補正スコアを得る。
その他にも例えば、第1スコアと第2スコアを入力として受け付けて補正スコアを出力する予測モデルを用意しておいてもよい。第2判定部2080は、第1算出部2020によって算出された第1スコアと、第2算出部2040によって算出された第2スコアを予測モデルに入力することで、補正スコアを得る。
ここでは、予測モデルとして、1)全ての第2スコアの分布の中から、登録者20である確率が最も高い話者のセグメント音声から得た第2スコアの分布(前述した注目範囲を含む分布)を抽出する予測モデルと、2)抽出した分布に基づいて補正スコアを算出する予測モデルという2つを用いる。
前者の予測モデルには、例えば、ガウス混合モデル(GMM: Gaussian Mixture Model)を利用することができる。第2判定部2080は、第2算出部2040によって算出された複数の第2スコアを用いて GMM を構築する。GMM を利用することで、入力音声データ10から得られた全ての第2スコアの分布を、複数のガウス分布に分割することができる。そして、これら複数のガウス分布のうち、第2スコアの平均値が最大である分布が、前述した注目範囲を含む分布であると考えられる。そこで第2判定部2080は、GMM を利用して得られる複数のガウス分布の中から、第2スコアの平均値が最大であるガウス分布を抽出する。なお、GMM の構築には、EM(Expectation Maximization) や MAP(Maximum A Posteriori) などの既知のアルゴリズムを利用できる。
第2スコアの分布に基づいて補正スコアを算出する予測モデルには、サポートベクトル回帰(SVR: Support Vector Regression)やニューラルネットワークなど、回帰を実現する種々の予測モデルを利用することができる。この予測モデルには、話者が一人である音声において、第2スコアの分布と第1スコアとがどのように対応するかを学習させる。このような学習をすることで、予測モデルが、第2スコアの分布が入力されたことに応じて、その分布に対応すると予測される第1スコアを、補正スコアとして出力するようにする。
この予測モデルの学習に利用する学習データは、話者が一人である任意の音声を利用して生成できる。具体的には、話者が一人である音声データ全体について、第1スコアを算出する。また、その音声データを複数のセグメント音声データに分割し、各セグメント音声データについて第2スコアを算出する。こうすることで、話者が一人である音声における、第1スコアと複数の第2スコア(第2スコアの分布)との対応関係を得ることができる。そこで、算出された第1スコアと複数の第2スコアとの対応を予測モデルに学習させる。このような学習により、予測モデルが、第2スコアの分布が入力されたことに応じて、対応する第1スコアを出力することができるようになる。
<登録者音声データ22について>
上述の説明では、入力音声データ10との比較に用いる登録者音声データ22が1つに特定されている。このように入力音声データ10と比較すべき登録者音声データ22が1つに特定できるケースとしては、例えば、登録者20を特定する識別子(ユーザIDなど)の入力を別途受け付けるケースが考えられる。具体的には、情報処理装置2000は、登録者20を特定する識別子(例えば、文字列)の入力を受け付け、受け付けた識別子に対応づけて記憶装置に記憶されている登録者音声データ22を取得する。そして、情報処理装置2000は、この登録者音声データ22を用いて、上述した一連の話者認識処理(図4のフローチャートに示した処理)を行う。このような話者認識は、例えば、ユーザIDとパスワードのペアを用いてユーザ認証を行う代わりに、ユーザIDとユーザの音声のペアを用いてユーザ認証を行うケースに利用できる。
上述の説明では、入力音声データ10との比較に用いる登録者音声データ22が1つに特定されている。このように入力音声データ10と比較すべき登録者音声データ22が1つに特定できるケースとしては、例えば、登録者20を特定する識別子(ユーザIDなど)の入力を別途受け付けるケースが考えられる。具体的には、情報処理装置2000は、登録者20を特定する識別子(例えば、文字列)の入力を受け付け、受け付けた識別子に対応づけて記憶装置に記憶されている登録者音声データ22を取得する。そして、情報処理装置2000は、この登録者音声データ22を用いて、上述した一連の話者認識処理(図4のフローチャートに示した処理)を行う。このような話者認識は、例えば、ユーザIDとパスワードのペアを用いてユーザ認証を行う代わりに、ユーザIDとユーザの音声のペアを用いてユーザ認証を行うケースに利用できる。
一方で、入力音声データ10との比較に用いる登録者音声データ22は、1つに特定されていなくてもよい。例えば情報処理装置2000は、登録者音声データ22が複数記憶されている記憶装置から1つずつ登録者音声データ22を取得し、取得した登録者音声データ22に対応する登録者20について、上述した一連の話者認識処理を行う。
取得した登録者音声データ22について行った話者認識処理において、入力音声データ10に登録者20の音声が含まれていると判定されたとする。この場合、情報処理装置2000は、話者認識処理を終了する。この場合、処理対象とした登録者音声データ22に対応する登録者20の音声が、入力音声データ10に含まれていたと判定される。一方、取得した登録者音声データ22について行った話者認識処理において、入力音声データ10に登録者20の音声が含まれていないと判定されたとする。この場合、情報処理装置2000は、登録者音声データ22が記憶されている記憶装置から、次の登録者音声データ22を取得し、その登録者音声データ22を対象として話者認識処理を行う。このような話者認識は、例えば、ユーザIDとパスワードのペアを用いてユーザ認証を行う代わりに、ユーザの音声のみを用いてユーザ認証を行うケースに利用できる。
<判定結果の出力>
第2判定部2080は第2判定の結果、すなわち入力音声データ10に登録者20の音声が含まれているか否かを示す情報を出力してもよい。第2判定の結果の出力方法には、様々な方法を採用できる。例えば第2判定部2080は、第2判定の結果を表す情報を情報処理装置2000に接続されているディスプレイ装置に出力する。その他にも例えば、第2判定部2080は、第2判定の結果を表す情報を情報処理装置2000に接続されている記憶装置に記憶させてもよい。
第2判定部2080は第2判定の結果、すなわち入力音声データ10に登録者20の音声が含まれているか否かを示す情報を出力してもよい。第2判定の結果の出力方法には、様々な方法を採用できる。例えば第2判定部2080は、第2判定の結果を表す情報を情報処理装置2000に接続されているディスプレイ装置に出力する。その他にも例えば、第2判定部2080は、第2判定の結果を表す情報を情報処理装置2000に接続されている記憶装置に記憶させてもよい。
第2判定の結果を表す情報は、例えば、「入力音声データ10に登録者20の音声が含まれている」という情報、又は「入力音声データ10に登録者20の音声が含まれていない」という情報を表す文字列、画像、又は音声などである。なお、第2判定部2080は、第2判定の結果を表す情報に加え、入力音声データ10に含まれている音声の話者が一人と複数のどちらであるかを示す情報(すなわち、第1判定の結果を表す情報)や、閾値と比較したスコア(第1スコア又は補正スコア)を示す情報を出力してもよい。こうすることで、情報処理装置2000の利用者は、入力音声データ10に登録者20の音声が含まれているか否かという判定の結果だけでなく、その判定の根拠も把握することができる。
また、入力音声データ10と比較する登録者音声データ22が1つに特定されておらず、複数の登録者音声データ22それぞれについて順次入力音声データ10と比較する場合、情報処理装置2000は、入力音声データ10に音声が含まれている登録者を特定する情報(例えば、登録者の識別子)を出力してもよい。
以上、図面を参照して本発明の実施形態について述べたが、これらは本発明の例示であり、上記各実施形態の構成を組み合わせた構成や、上記以外の様々な構成を採用することもできる。
Claims (19)
- 入力音声データと、登録者の音声データである登録者音声データとの類似度合いを表す第1スコアを算出する第1算出部と、
前記入力音声データを時間方向に分割することにより、前記入力音声データを複数のセグメント音声データに分け、各前記セグメント音声データについて、前記セグメント音声データと前記登録者音声データとの類似度合いを表す第2スコアを算出する第2算出部と、
少なくとも前記第2スコアを用いて、前記入力音声データに含まれる音声の話者が一人と複数のいずれであるかを判定する第1判定部と、
前記第1スコア、前記第2スコア、及び前記第1判定部による判定結果に基づいて、前記入力音声データに前記登録者の音声が含まれるか否かを判定する第2判定部と、を有する情報処理装置。 - 前記入力音声データに含まれる音声の話者が複数であると判定された場合、前記第2判定部は、少なくとも前記第2スコアを用いて補正スコアを算出し、算出した補正スコアを閾値と比較することで、前記入力音声データに前記登録者の音声が含まれるか否かを判定し、
前記入力音声データに含まれる音声の話者が一人であると判定された場合、前記第2判定部は、前記第1スコアを閾値と比較することで、前記入力音声データに前記登録者の音声が含まれるか否かを判定する、請求項1に記載の情報処理装置。 - 前記第2判定部は、
前記第2スコアの定義域に含まれる複数の部分範囲それぞれに含まれる第2スコアの数の分布を生成し、
前記分布におけるピークに対応する部分範囲のうちで前記第2スコアが最大の部分範囲である注目範囲を特定し、
前記注目範囲に含まれる第2スコアを用いて前記補正スコアを算出する、請求項2に記載の情報処理装置。 - 前記第2判定部は、前記注目範囲に含まれる第2スコアの統計値を前記補正スコアとして算出する、請求項3に記載の情報処理装置。
- 前記第2判定部は、
前記注目範囲に含まれる第2スコアが算出された複数の前記セグメント音声データを結合して1つの音声データを生成するか、又は、前記注目範囲の下限値以上の第2スコアが算出された複数の前記セグメント音声データを結合して1つの音声データを生成し、
前記生成された音声データと前記登録者音声データとの類似度を前記補正スコアとして算出する、請求項3に記載の情報処理装置。 - 前記第2判定部は、前記第2スコアが入力されたことに応じて補正スコアを出力するように学習されている予測モデルに対して、前記第2算出部によって算出された各前記第2スコアを入力することにより、前記補正スコアを算出する、請求項2に記載の情報処理装置。
- 前記第1判定部は、前記第1スコアが前記第2スコアの最大値よりも小さい場合に、前記入力音声データに含まれる音声の話者が複数であると判定する、請求項1乃至6いずれか一項に記載の情報処理装置。
- 前記第1判定部は、複数の前記第2スコアのばらつきを表す指標値を算出し、前記算出した指標値が閾値以上である場合に、前記入力音声データに含まれる音声の話者が複数であると判定する、請求項1乃至6いずれか一項に記載の情報処理装置。
- 前記第1判定部は、学習済みの予測モデルに対し、第2スコアのみ又は第1スコア及び第2スコアを入力することで、前記入力音声データに含まれる音声の話者が一人と複数のいずれであるかを判定し、
前記予測モデルは、前記第2スコアが入力されたこと、又は前記第1スコア及び前記第2スコアが入力されたことに応じて、前記入力音声データに含まれる音声の話者が一人と複数のいずれであるかを判定するように学習されている、請求項1乃至6いずれか一項に記載の情報処理装置。 - コンピュータによって実行される制御方法であって、
入力音声データと、登録者の音声データである登録者音声データとの類似度合いを表す第1スコアを算出する第1算出ステップと、
前記入力音声データを時間方向に分割することにより、前記入力音声データを複数のセグメント音声データに分け、各前記セグメント音声データについて、前記セグメント音声データと前記登録者音声データとの類似度合いを表す第2スコアを算出する第2算出ステップと、
少なくとも前記第2スコアを用いて、前記入力音声データに含まれる音声の話者が一人と複数のいずれであるかを判定する第1判定ステップと、
前記第1スコア、前記第2スコア、及び前記第1判定ステップによる判定結果に基づいて、前記入力音声データに前記登録者の音声が含まれるか否かを判定する第2判定ステップと、を有する制御方法。 - 前記入力音声データに含まれる音声の話者が複数であると判定された場合、前記第2判定ステップにおいて、少なくとも前記第2スコアを用いて補正スコアを算出し、算出した補正スコアを閾値と比較することで、前記入力音声データに前記登録者の音声が含まれるか否かを判定し、
前記入力音声データに含まれる音声の話者が一人であると判定された場合、前記第2判定ステップにおいて、前記第1スコアを閾値と比較することで、前記入力音声データに前記登録者の音声が含まれるか否かを判定する、請求項10に記載の制御方法。 - 前記第2判定ステップにおいて、
前記第2スコアの定義域に含まれる複数の部分範囲それぞれに含まれる第2スコアの数の分布を生成し、
前記分布におけるピークに対応する部分範囲のうちで前記第2スコアが最大の部分範囲である注目範囲を特定し、
前記注目範囲に含まれる第2スコアを用いて前記補正スコアを算出する、請求項11に記載の制御方法。 - 前記第2判定ステップにおいて、前記注目範囲に含まれる第2スコアの統計値を前記補正スコアとして算出する、請求項12に記載の制御方法。
- 前記第2判定ステップにおいて、
前記注目範囲に含まれる第2スコアが算出された複数の前記セグメント音声データを結合して1つの音声データを生成するか、又は、前記注目範囲の下限値以上の第2スコアが算出された複数の前記セグメント音声データを結合して1つの音声データを生成し、
前記生成された音声データと前記登録者音声データとの類似度を前記補正スコアとして算出する、請求項12に記載の制御方法。 - 前記第2判定ステップにおいて、前記第2スコアが入力されたことに応じて補正スコアを出力するように学習されている予測モデルに対して、前記第2算出部によって算出された各前記第2スコアを入力することにより、前記補正スコアを算出する、請求項11に記載の制御方法。
- 前記第1判定ステップにおいて、前記第1スコアが前記第2スコアの最大値よりも小さい場合に、前記入力音声データに含まれる音声の話者が複数であると判定する、請求項10乃至15いずれか一項に記載の制御方法。
- 前記第1判定ステップにおいて、複数の前記第2スコアのばらつきを表す指標値を算出し、前記算出した指標値が閾値以上である場合に、前記入力音声データに含まれる音声の話者が複数であると判定する、請求項10乃至15いずれか一項に記載の制御方法。
- 前記第1判定ステップにおいて、学習済みの予測モデルに対し、第2スコアのみ又は第1スコア及び第2スコアを入力することで、前記入力音声データに含まれる音声の話者が一人と複数のいずれであるかを判定し、
前記予測モデルは、前記第2スコアが入力されたこと、又は前記第1スコア及び前記第2スコアが入力されたことに応じて、前記入力音声データに含まれる音声の話者が一人と複数のいずれであるかを判定するように学習されている、請求項10乃至15いずれか一項に記載の制御方法。 - 請求項10乃至18いずれか一項に記載の制御方法の各ステップをコンピュータに実行させるプログラム。
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2018/024391 WO2020003413A1 (ja) | 2018-06-27 | 2018-06-27 | 情報処理装置、制御方法、及びプログラム |
US17/255,511 US11437044B2 (en) | 2018-06-27 | 2018-06-27 | Information processing apparatus, control method, and program |
EP18923907.2A EP3816996B1 (en) | 2018-06-27 | 2018-06-27 | Information processing device, control method, and program |
JP2020526784A JP6996627B2 (ja) | 2018-06-27 | 2018-06-27 | 情報処理装置、制御方法、及びプログラム |
JP2021203111A JP7287442B2 (ja) | 2018-06-27 | 2021-12-15 | 情報処理装置、制御方法、及びプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2018/024391 WO2020003413A1 (ja) | 2018-06-27 | 2018-06-27 | 情報処理装置、制御方法、及びプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2020003413A1 true WO2020003413A1 (ja) | 2020-01-02 |
Family
ID=68986703
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2018/024391 WO2020003413A1 (ja) | 2018-06-27 | 2018-06-27 | 情報処理装置、制御方法、及びプログラム |
Country Status (4)
Country | Link |
---|---|
US (1) | US11437044B2 (ja) |
EP (1) | EP3816996B1 (ja) |
JP (1) | JP6996627B2 (ja) |
WO (1) | WO2020003413A1 (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022149384A1 (ja) * | 2021-01-05 | 2022-07-14 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ | 識別装置、識別方法、および、プログラム |
WO2024122304A1 (ja) * | 2022-12-05 | 2024-06-13 | 日本電気株式会社 | 声紋照合支援システム、声紋照合支援方法、及びプログラム |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7287442B2 (ja) * | 2018-06-27 | 2023-06-06 | 日本電気株式会社 | 情報処理装置、制御方法、及びプログラム |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2008117626A1 (ja) | 2007-03-27 | 2008-10-02 | Nec Corporation | 話者選択装置、話者適応モデル作成装置、話者選択方法、話者選択用プログラムおよび話者適応モデル作成プログラム |
JP2017517027A (ja) * | 2014-07-18 | 2017-06-22 | グーグル インコーポレイテッド | コロケーション情報を使用した話者照合 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
NL8500377A (nl) * | 1985-02-12 | 1986-09-01 | Philips Nv | Werkwijze en inrichting voor het segmenteren van spraak. |
US7177808B2 (en) * | 2000-11-29 | 2007-02-13 | The United States Of America As Represented By The Secretary Of The Air Force | Method for improving speaker identification by determining usable speech |
US7231019B2 (en) * | 2004-02-12 | 2007-06-12 | Microsoft Corporation | Automatic identification of telephone callers based on voice characteristics |
US11322157B2 (en) * | 2016-06-06 | 2022-05-03 | Cirrus Logic, Inc. | Voice user interface |
-
2018
- 2018-06-27 US US17/255,511 patent/US11437044B2/en active Active
- 2018-06-27 JP JP2020526784A patent/JP6996627B2/ja active Active
- 2018-06-27 WO PCT/JP2018/024391 patent/WO2020003413A1/ja unknown
- 2018-06-27 EP EP18923907.2A patent/EP3816996B1/en active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2008117626A1 (ja) | 2007-03-27 | 2008-10-02 | Nec Corporation | 話者選択装置、話者適応モデル作成装置、話者選択方法、話者選択用プログラムおよび話者適応モデル作成プログラム |
JP2017517027A (ja) * | 2014-07-18 | 2017-06-22 | グーグル インコーポレイテッド | コロケーション情報を使用した話者照合 |
Non-Patent Citations (3)
Title |
---|
AJMERA JITENDRALAIN MCCOWANHERVE BOURLARD: "Robust speaker change detection", IEEE SIGNAL PROCESSING LETTERS, 2004 |
HARMSE JORGENSTEVEN D. BECKHIROTAKA NAKASONE: "Speaker recognition score-normalization to compensate for snr and duration", SPEAKER AND LANGUAGE RECOGNITION WORKSHOP, 2006 |
See also references of EP3816996A4 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022149384A1 (ja) * | 2021-01-05 | 2022-07-14 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ | 識別装置、識別方法、および、プログラム |
EP4276817A4 (en) * | 2021-01-05 | 2024-05-29 | Panasonic Intellectual Property Corporation of America | IDENTIFICATION DEVICE, IDENTIFICATION METHOD AND PROGRAM |
WO2024122304A1 (ja) * | 2022-12-05 | 2024-06-13 | 日本電気株式会社 | 声紋照合支援システム、声紋照合支援方法、及びプログラム |
Also Published As
Publication number | Publication date |
---|---|
EP3816996A4 (en) | 2021-06-02 |
JP6996627B2 (ja) | 2022-01-17 |
US11437044B2 (en) | 2022-09-06 |
US20210287682A1 (en) | 2021-09-16 |
EP3816996A1 (en) | 2021-05-05 |
JPWO2020003413A1 (ja) | 2021-07-08 |
EP3816996B1 (en) | 2023-03-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10593336B2 (en) | Machine learning for authenticating voice | |
Sahidullah et al. | Introduction to voice presentation attack detection and recent advances | |
Hanifa et al. | A review on speaker recognition: Technology and challenges | |
EP2410514B1 (en) | Speaker authentication | |
US20170236520A1 (en) | Generating Models for Text-Dependent Speaker Verification | |
US9047866B2 (en) | System and method for identification of a speaker by phonograms of spontaneous oral speech and by using formant equalization using one vowel phoneme type | |
Muckenhirn et al. | Long-term spectral statistics for voice presentation attack detection | |
CN108346427A (zh) | 一种语音识别方法、装置、设备及存储介质 | |
US8447614B2 (en) | Method and system to authenticate a user and/or generate cryptographic data | |
JP2007133414A (ja) | 音声の識別能力推定方法及び装置、ならびに話者認証の登録及び評価方法及び装置 | |
TW201419270A (zh) | 詞語驗證的方法及裝置 | |
TW202018696A (zh) | 語音識別方法、裝置及計算設備 | |
WO2020003413A1 (ja) | 情報処理装置、制御方法、及びプログラム | |
TW202213326A (zh) | 用於說話者驗證的廣義化負對數似然損失 | |
Beigi | Speaker recognition: Advancements and challenges | |
JP2010286702A (ja) | 話者照合装置、話者照合方法およびプログラム | |
CN111737515B (zh) | 音频指纹提取方法、装置、计算机设备和可读存储介质 | |
Panda et al. | Study of speaker recognition systems | |
JP7287442B2 (ja) | 情報処理装置、制御方法、及びプログラム | |
US11257503B1 (en) | Speaker recognition using domain independent embedding | |
Kanrar | Robust threshold selection for environment specific voice in speaker recognition | |
JP2023532844A (ja) | 患者固有の音声モデルの合成 | |
CN114694689A (zh) | 声音信号处理评估方法和装置 | |
Komlen et al. | Text independent speaker recognition using LBG vector quantization | |
JP2991288B2 (ja) | 話者認識装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 18923907 Country of ref document: EP Kind code of ref document: A1 |
|
ENP | Entry into the national phase |
Ref document number: 2020526784 Country of ref document: JP Kind code of ref document: A |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
ENP | Entry into the national phase |
Ref document number: 2018923907 Country of ref document: EP Effective date: 20210127 |