Voiceprint comparison method, device and equipment and storage medium

By mapping the voiceprint feature vectors of different channels to a unified space using the Encoder-Decoder model, the problem of low accuracy in cross-channel voiceprint matching is solved, and higher voiceprint matching accuracy is achieved.

CN119207423BActive Publication Date: 2026-01-27PING AN TECH (SHENZHEN) CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202411176406.5
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-08-23
Publication Date
2026-01-27
Estimated Expiration
2044-08-23

AI Technical Summary

Technical Problem

Cross-channel voiceprint matching has low accuracy, especially in bank customer service systems, where customers' voices come from multiple different channels, such as telephone channels and APP channels, leading to inaccurate voiceprint feature matching.

Method used

An Encoder-Decoder model is adopted to input speech data from different channels into the corresponding voiceprint recognition model to extract feature vectors. These feature vectors are then mapped to a unified voiceprint feature space, and the voiceprint comparison result is determined by calculating the similarity of the feature vectors.

Benefits of technology

This improves the accuracy of cross-channel voiceprint matching and ensures the reliability of voiceprint feature matching results under different channels.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119207423B_ABST
    Figure CN119207423B_ABST
Patent Text Reader

Abstract

The application relates to the field of artificial intelligence, and provides a voiceprint comparison method and device, equipment and a storage medium, the method comprising the following steps: acquiring first voice data and second voice data; inputting the first voice data into a first voiceprint recognition model to obtain a first voiceprint feature vector, and inputting the second voice data into a second voiceprint recognition model to obtain a second voiceprint feature vector; inputting the first voiceprint feature vector and the second voiceprint feature vector into an Encoder-Decoder model respectively, mapping the first voiceprint feature vector and the second voiceprint feature vector to a unified voiceprint feature space, and obtaining a third voiceprint feature vector and a fourth voiceprint feature vector; determining a voiceprint comparison result of the first voice data and the second voice data according to the third voiceprint feature vector and the fourth voiceprint feature vector, so that the accuracy of cross-channel voiceprint comparison is improved. The application also relates to the blockchain technology, and voice data and voiceprint feature vectors can be stored in a blockchain node.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of artificial intelligence, and in particular to a voiceprint comparison method, apparatus, device, and storage medium. Background Technology

[0002] With the rapid development of artificial intelligence technology, voiceprint recognition technology has been widely used in many fields, such as bank customer service systems, where it is used to identify customers. However, in practical applications, because customers' voices typically come from multiple different channels, such as telephone channels and app (application) channels, and the voices of the same customer across different channels can differ significantly, comparing voiceprint features from different channels yields low accuracy.

[0003] Therefore, improving the accuracy of cross-channel voiceprint matching has become an urgent problem to be solved. Summary of the Invention

[0004] This application provides a voiceprint comparison method, apparatus, device, and storage medium, aiming to improve the accuracy of cross-channel voiceprint comparison.

[0005] To achieve the above objectives, this application provides a voiceprint comparison method, the voiceprint comparison method comprising:

[0006] Acquire first voice data and second voice data, wherein the first voice data and the second voice data come from different channels;

[0007] The first voice data is input into the corresponding first voiceprint recognition model to obtain the first voiceprint feature vector, and the second voice data is input into the corresponding second voiceprint recognition model to obtain the second voiceprint feature vector; wherein, voice data from different channels correspond to different voiceprint recognition models;

[0008] The first voiceprint feature vector and the second voiceprint feature vector are respectively input into the Encoder-Decoder model, and the first voiceprint feature vector and the second voiceprint feature vector are mapped to a unified voiceprint feature space to obtain the third voiceprint feature vector corresponding to the first voiceprint feature vector and the fourth voiceprint feature vector corresponding to the second voiceprint feature vector.

[0009] Based on the third and fourth voiceprint feature vectors, the voiceprint comparison results of the first and second speech data are determined.

[0010] Furthermore, to achieve the above objectives, this application also provides a voiceprint comparison device, the voiceprint comparison device comprising:

[0011] The voice acquisition module is used to acquire first voice data and second voice data, wherein the first voice data and the second voice data come from different channels;

[0012] The voiceprint recognition module is used to input the first voice data into the corresponding first voiceprint recognition model to obtain the first voiceprint feature vector, and to input the second voice data into the corresponding second voiceprint recognition model to obtain the second voiceprint feature vector; wherein, voice data from different channels correspond to different voiceprint recognition models;

[0013] The voiceprint encoding and decoding module is used to input the first voiceprint feature vector and the second voiceprint feature vector into the Encoder-Decoder model respectively, map the first voiceprint feature vector and the second voiceprint feature vector to a unified voiceprint feature space, and obtain the third voiceprint feature vector corresponding to the first voiceprint feature vector and the fourth voiceprint feature vector corresponding to the second voiceprint feature vector.

[0014] The voiceprint processing module is used to determine the voiceprint comparison result of the first speech data and the second speech data based on the third voiceprint feature vector and the fourth voiceprint feature vector.

[0015] In addition, to achieve the above objectives, this application also provides a computer device, which includes a memory and a processor;

[0016] The memory is used to store computer programs;

[0017] The processor is configured to execute the computer program and, when executing the computer program, implement the voiceprint comparison method as described above.

[0018] In addition, to achieve the above objectives, this application also provides a computer-readable storage medium storing a computer program that, when executed by a processor, implements the steps of the above-described voiceprint comparison method.

[0019] This application discloses a voiceprint comparison method, apparatus, device, and storage medium. It acquires first and second voice data from different channels, inputs the first voice data into a corresponding first voiceprint recognition model to obtain a first voiceprint feature vector, and inputs the second voice data into a corresponding second voiceprint recognition model to obtain a second voiceprint feature vector. The voice data from different channels correspond to different voiceprint recognition models. Then, the first and second voiceprint feature vectors are input into an Encoder-Decoder model, mapping them to a unified voiceprint feature space to obtain a third voiceprint feature vector corresponding to the first voiceprint feature vector and a fourth voiceprint feature vector corresponding to the second voiceprint feature vector. Based on the third and fourth voiceprint feature vectors, the voiceprint comparison result of the first and second voice data is determined. Since the voiceprint comparison result is obtained based on voiceprint feature vectors in a unified voiceprint feature space, the accuracy of cross-channel voiceprint comparison is improved. Attached Figure Description

[0020] To more clearly illustrate the technical solutions of the embodiments of this application, the drawings used in the description of the embodiments will be briefly introduced below. Obviously, the drawings described below are some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0021] Figure 1 This is a schematic flowchart illustrating the steps of a voiceprint comparison method provided in an embodiment of this application;

[0022] Figure 2 This is a schematic flowchart illustrating the steps of training a voiceprint recognition model according to an embodiment of this application;

[0023] Figure 3 This is a schematic flowchart illustrating the steps of training an Encoder-Decoder model according to an embodiment of this application;

[0024] Figure 4 This application provides an embodiment of a schematic flowchart illustrating the steps of inputting multiple obtained voiceprint feature vectors into an Encoder-Decoder model for model training to obtain a trained Encoder-Decoder model;

[0025] Figure 5 This is a schematic diagram of an Encoder-Decoder model training process provided in an embodiment of this application;

[0026] Figure 6 This is a schematic block diagram of a voiceprint comparison device provided in an embodiment of this application;

[0027] Figure 7 This is a schematic block diagram of the structure of a computer device provided in an embodiment of this application. Detailed Implementation

[0028] The technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this application.

[0029] The flowchart shown in the attached diagram is for illustrative purposes only and does not necessarily include all content and operations / steps, nor does it necessarily have to be performed in the order described. For example, some operations / steps can be broken down, combined, or partially merged, so the actual execution order may change depending on the actual situation.

[0030] It should be understood that the terminology used in this specification is for the purpose of describing particular embodiments only and is not intended to limit the scope of the application. As used in this specification and the appended claims, the singular forms “a,” “an,” and “the” are intended to include the plural forms unless the context clearly indicates otherwise.

[0031] It should also be understood that the term “and / or” as used in this application specification and the appended claims means any combination of one or more of the associated listed items and all possible combinations, and includes such combinations.

[0032] With the rapid development of artificial intelligence technology, voiceprint recognition technology has been widely used in many fields, such as bank customer service systems, where it is used to identify customers. However, in practical applications, because customers' voices typically come from multiple different channels, such as telephone channels and app (application) channels, and the voices of the same customer across different channels can differ significantly, comparing voiceprint features from different channels yields low accuracy.

[0033] To address the aforementioned issues, embodiments of this application provide a voiceprint comparison method, apparatus, device, and storage medium for improving the accuracy of cross-channel voiceprint comparison.

[0034] Please see Figure 1 , Figure 1 This is a schematic flowchart of a voiceprint comparison method provided in one embodiment of this application. This method can be applied to computer devices, and this application does not limit the application scenarios of this method.

[0035] like Figure 1 As shown, the voiceprint comparison method specifically includes steps S101 to S104.

[0036] S101. Acquire first voice data and second voice data, wherein the first voice data and the second voice data come from different channels.

[0037] The voice data originates from channels including telephone channels and non-telephone channels. Non-telephone channels include the channels of the corresponding recording platform / system's app. For the same person, their voice can vary significantly across different channels; for example, the voice in a telephone recording and an app recording will sound very different.

[0038] For ease of distinction and description, the two sets of voice data from different channels to be compared will be referred to as the first voice data and the second voice data in the following text.

[0039] For example, taking a bank customer service system application scenario as an example, the system obtains the customer's first voice data and second voice data. For instance, the first voice data is the voice data of the customer from the telephone channel, and the second voice data is the voice data of the customer from the APP channel.

[0040] S102. Input the first voice data into the corresponding first voiceprint recognition model to obtain the first voiceprint feature vector, and input the second voice data into the corresponding second voiceprint recognition model to obtain the second voiceprint feature vector; wherein, voice data from different channels correspond to different voiceprint recognition models.

[0041] For speech data from different channels, a voiceprint recognition model is constructed for each channel. This model can be a Gaussian Mixture Model (GMM), a Hidden Markov Model (HMM), or other types of neural network models, such as Deep Neural Networks (DNNs). Before calling the voiceprint recognition model, the model for each channel is trained. For example, supervised learning algorithms, such as regression loss functions, can be used to train the voiceprint recognition model for each channel.

[0042] In some embodiments, such as Figure 2 As shown, steps S105 and S106 may be included before step S101.

[0043] S105. Obtain speech training samples from multiple different channels;

[0044] S106. Input the voice training samples of each channel into the corresponding voiceprint recognition model for model training to obtain the trained voiceprint recognition model for each channel.

[0045] For example, voice data from a telephone channel is acquired as voice training samples for the voiceprint recognition model corresponding to the telephone channel, and voice data from an app channel is acquired as voice training samples for the voiceprint recognition model corresponding to the app channel.

[0046] After obtaining the voice training samples from the telephone channel, these samples are input into the corresponding voiceprint recognition model. The model is then trained until it converges, resulting in a well-trained voiceprint recognition model. This model can extract voiceprint feature vectors from the voice data of the telephone channel.

[0047] After obtaining the voice training samples for the APP channel, these samples are input into the corresponding voiceprint recognition model for the APP channel. The model is then trained until it converges, resulting in a well-trained voiceprint recognition model for the APP channel. This model can extract voiceprint feature vectors from the voice data of the APP channel.

[0048] Based on voice training samples from multiple different channels, the voiceprint recognition model corresponding to each channel is trained to obtain the trained voiceprint recognition model for each channel.

[0049] After obtaining the first and second speech data, the first speech data is input into the corresponding voiceprint recognition model according to the channel corresponding to the first speech data to extract the voiceprint and obtain the voiceprint feature vector corresponding to the first speech data. For ease of distinction, the voiceprint recognition model corresponding to the channel of the first speech data will be referred to as the first voiceprint recognition model, and the voiceprint feature vector corresponding to the first speech data will be referred to as the first voiceprint feature vector.

[0050] Based on the channel corresponding to the second speech data, the second speech data is input into the corresponding voiceprint recognition model for voiceprint extraction, thereby obtaining the voiceprint feature vector corresponding to the second speech data. For ease of distinction and description, the voiceprint recognition model corresponding to the channel of the second speech data is referred to as the second voiceprint recognition model, and the voiceprint feature vector corresponding to the second speech data is referred to as the second voiceprint feature vector.

[0051] It is understandable that the first and second voiceprint feature vectors are voiceprint feature vectors from different channels.

[0052] In some embodiments, the step of inputting the first voice data into the corresponding first voiceprint recognition model to obtain a first voiceprint feature vector, and inputting the second voice data into the corresponding second voiceprint recognition model to obtain a second voiceprint feature vector, includes: inputting telephone channel voice data into the first voiceprint recognition model to obtain the first voiceprint feature vector corresponding to the telephone channel; and inputting APP channel voice data into the second voiceprint recognition model to obtain the second voiceprint feature vector corresponding to the APP channel.

[0053] Taking the example of the first voice data being from a telephone channel and the second voice data being from an app channel, the telephone channel voice data is input into the corresponding first voiceprint recognition model for voiceprint extraction to obtain the first voiceprint feature vector for the telephone channel. Similarly, the app channel voice data is input into the corresponding second voiceprint recognition model for voiceprint extraction to obtain the second voiceprint feature vector for the app channel.

[0054] S103. Input the first voiceprint feature vector and the second voiceprint feature vector into the Encoder-Decoder model respectively, map the first voiceprint feature vector and the second voiceprint feature vector to a unified voiceprint feature space, and obtain the third voiceprint feature vector corresponding to the first voiceprint feature vector and the fourth voiceprint feature vector corresponding to the second voiceprint feature vector.

[0055] To improve the accuracy of voiceprint matching across different channels, an Encoder-Decoder model is constructed. This Encoder-Decoder model can be a DNN model, a ResNet (Deep Residual Network) model, or a Transformer (a deep learning model based on self-attention). The Encoder-Decoder model maps voiceprint feature vectors from different channels to a unified voiceprint feature space.

[0056] Before calling the Encoder-Decoder model, the Encoder-Decoder model is trained first. After obtaining the trained Encoder-Decoder model, the Encoder-Decoder model is then called.

[0057] In some embodiments, such as Figure 3 As shown, steps S107 to S109 may be included before step S101.

[0058] S107. Acquire voice data of the same person on different channels;

[0059] S108. Input the voice data of each channel into the corresponding voiceprint recognition model to obtain the corresponding voiceprint feature vector;

[0060] S109. Input the obtained multiple voiceprint feature vectors into the Encoder-Decoder model for model training to obtain a trained Encoder-Decoder model.

[0061] For example, acquire voice data from a telephone channel and voice data from an app channel from the same person. Then, input the telephone channel voice data into the voiceprint recognition model corresponding to the telephone channel to extract the voiceprint and obtain the voiceprint feature vector corresponding to the telephone channel. Input the app channel voice data into the voiceprint recognition model corresponding to the app channel to extract the voiceprint and obtain the voiceprint feature vector corresponding to the app channel.

[0062] Next, the Encoder-Decoder model is trained using the voiceprint feature vectors corresponding to the telephone channel and the APP channel, resulting in a trained Encoder-Decoder model. For example, by inputting the voiceprint feature vectors corresponding to the telephone channel and the APP channel into the Encoder-Decoder model, a unified voiceprint feature space is obtained, representing the voiceprint feature mapping vectors for the telephone channel and the APP channel. Since these two voiceprint feature mapping vectors are mapped to a unified voiceprint feature space, the cosine distance between them can be accurately calculated. This cosine distance is used as the loss function for training the Encoder-Decoder model. Based on this loss function, the Encoder-Decoder model's parameters are updated and optimized until the loss function converges, resulting in a trained Encoder-Decoder model.

[0063] In some embodiments, such as Figure 4 As shown, step S109 may include sub-step S1091 and sub-step S1092.

[0064] S1091. Sequentially, each channel is taken as the target channel, and the voiceprint feature vector corresponding to the target channel is input into the Encoder-Decoder model corresponding to the target channel to obtain the voiceprint feature mapping vector mapped to the unified voiceprint feature space.

[0065] S1092. Iteratively train and optimize the Encoder-Decoder model corresponding to the target channel according to the voiceprint feature mapping vector until the Encoder-Decoder model corresponding to the target channel converges, and obtain the trained Encoder-Decoder model corresponding to the target channel.

[0066] For example, for telephone channels and APP channels, we design an Encoder-Decoder model for the telephone channel and an Encoder-Decoder model for the APP channel. The Encoder-Decoder model for the telephone channel and the Encoder-Decoder model for the APP channel can encode the voiceprint feature vector of their respective channels and then decode it into a voiceprint feature vector in a unified voiceprint feature space.

[0067] To train the Encoder-Decoder model for the telephone channel and the Encoder-Decoder model for the APP channel, for example, Figure 5 As shown, a recording of a person is selected from the telephone channel voice set to obtain voice data A, and another recording of the same person is selected from the APP channel voice set to obtain voice data B. Then, voice data A is input into the voiceprint recognition model 1 corresponding to the telephone channel for voiceprint extraction to obtain voiceprint feature vector e1, and voice data B is input into the voiceprint recognition model 2 corresponding to the APP channel for voiceprint extraction to obtain voiceprint feature vector e2.

[0068] Next, the voiceprint feature vector e1 is input into the Encoder-Decoder model corresponding to the telephone channel to encode the voiceprint feature vector e1, and then decoded into a unified voiceprint feature space voiceprint feature mapping vector e3. The voiceprint feature vector e2 is input into the Encoder-Decoder model corresponding to the APP channel to encode the voiceprint feature vector e2, and then decoded into a unified voiceprint feature space voiceprint feature mapping vector e4.

[0069] After obtaining the voiceprint feature mapping vectors e3 and e4, since they are mapped to a unified voiceprint feature space, the cosine loss of the Encoder-Decoder model corresponding to the telephone channel can be obtained based on these vectors. The parameters of the Encoder-Decoder model corresponding to the telephone channel are then updated based on the cosine loss until the model converges, thus obtaining the trained Encoder-Decoder model for the telephone channel.

[0070] The training method for the Encoder-Decoder model corresponding to the APP channel is the same as that for the Encoder-Decoder model corresponding to the telephone channel, so it will not be repeated here.

[0071] In some embodiments, the step of iteratively training and optimizing the Encoder-Decoder model corresponding to the target channel based on the voiceprint feature mapping vector until the Encoder-Decoder model corresponding to the target channel converges to obtain a trained Encoder-Decoder model corresponding to the target channel includes: calculating the cosine distance between the voiceprint feature mapping vector and the voiceprint feature mapping vectors corresponding to other channels, using the cosine distance as the loss function value of the Encoder-Decoder model corresponding to the target channel, and iteratively training and optimizing the Encoder-Decoder model corresponding to the target channel until the loss function value converges to obtain a trained Encoder-Decoder model corresponding to the target channel.

[0072] For example, taking the Encoder-Decoder model corresponding to a telephone channel as an example, after obtaining the voiceprint feature mapping vectors e3 and e4, since the voiceprint feature mapping vectors e3 and e4 are mapped in a unified voiceprint feature space, the cosine distance between the voiceprint feature mapping vectors e3 and e4 can be accurately calculated. The cosine distance between the voiceprint feature mapping vectors e3 and e4 is used as the loss function loss for training the Encoder-Decoder model corresponding to the telephone channel. Based on the loss function loss, the parameters of the Encoder-Decoder model corresponding to the telephone channel are updated and optimized until the loss function loss converges, thus obtaining the trained Encoder-Decoder model corresponding to the telephone channel.

[0073] The training method for the Encoder-Decoder model for other channels is the same as that for the Encoder-Decoder model for the telephone channel, so it will not be repeated here.

[0074] After obtaining the first voiceprint feature vector corresponding to the first speech data and the second voiceprint feature vector corresponding to the second speech data, the trained Encoder-Decoder model maps the first and second voiceprint feature vectors to a unified voiceprint feature space, obtaining the voiceprint feature vector mapped from the first and second voiceprint feature vectors to the unified voiceprint feature space. For ease of distinction, the voiceprint feature vector mapped from the first voiceprint feature vector to the unified voiceprint feature space is referred to as the third voiceprint feature vector, and the voiceprint feature vector mapped from the second voiceprint feature vector to the unified voiceprint feature space is referred to as the fourth voiceprint feature vector.

[0075] In some embodiments, the step of inputting the first voiceprint feature vector and the second voiceprint feature vector into an Encoder-Decoder model, mapping the first voiceprint feature vector and the second voiceprint feature vector to a unified voiceprint feature space, and obtaining a third voiceprint feature vector corresponding to the first voiceprint feature vector and a fourth voiceprint feature vector corresponding to the second voiceprint feature vector includes: inputting the first voiceprint feature vector into a corresponding first Encoder-Decoder model to obtain the third voiceprint feature vector, and inputting the second voiceprint feature vector into a corresponding second Encoder-Decoder model to obtain the fourth voiceprint feature vector; wherein, the voiceprint feature vectors corresponding to different channels correspond to different Encoder-Decoder models, and each Encoder-Decoder model maps the voiceprint feature vectors of its corresponding channel to a unified voiceprint feature space.

[0076] For example, the first voiceprint feature vector is the voiceprint feature vector corresponding to the telephone channel, and the second voiceprint feature vector is the voiceprint feature vector corresponding to the APP channel. The first Encoder-Decoder model is the Encoder-Decoder model corresponding to the telephone channel, and the second Encoder-Decoder model is the Encoder-Decoder model corresponding to the APP channel. The first voiceprint feature vector is input into the first Encoder-Decoder model to encode it, and then decoded into a third voiceprint feature vector in a unified voiceprint feature space. Similarly, the second voiceprint feature vector is input into the second Encoder-Decoder model to encode it, and then decoded into a fourth voiceprint feature vector in a unified voiceprint feature space.

[0077] S104. Determine the voiceprint comparison result of the first speech data and the second speech data based on the third voiceprint feature vector and the fourth voiceprint feature vector.

[0078] After obtaining the third and fourth voiceprint feature vectors, since they are mapped to a unified voiceprint feature space, their similarity can be accurately calculated. Based on this similarity, the voiceprint comparison result of the first and second speech data is determined, indicating whether they belong to the same person from different channels. For example, a similarity threshold can be pre-set. If the similarity between the third and fourth voiceprint feature vectors is greater than or equal to the threshold, then the first and second speech data are determined to be from the same person from different channels. Conversely, if the similarity is less than the threshold, then the first and second speech data are determined to be from different people.

[0079] In the above embodiments, by acquiring first and second voice data from different channels, the first voice data is input into the corresponding first voiceprint recognition model to obtain a first voiceprint feature vector, and the second voice data is input into the corresponding second voiceprint recognition model to obtain a second voiceprint feature vector. The voice data from different channels correspond to different voiceprint recognition models. Then, the first and second voiceprint feature vectors are input into an Encoder-Decoder model to map them to a unified voiceprint feature space, obtaining a third voiceprint feature vector corresponding to the first voiceprint feature vector and a fourth voiceprint feature vector corresponding to the second voiceprint feature vector. Based on the third and fourth voiceprint feature vectors, the voiceprint comparison result of the first and second voice data is determined. Since the voiceprint comparison result is obtained based on the voiceprint feature vectors in a unified voiceprint feature space, the accuracy of cross-channel voiceprint comparison is improved.

[0080] Please see Figure 6 , Figure 6 This is a schematic block diagram of a voiceprint comparison device provided in an embodiment of this application. The voiceprint comparison device can be configured in a computer device to perform the aforementioned voiceprint comparison method.

[0081] like Figure 6 As shown, the voiceprint comparison device 1000 includes: a voice acquisition module 1001, a voiceprint recognition module 1002, a voiceprint encoding and decoding module 1003, and a voiceprint processing module 1004.

[0082] The voice acquisition module 1001 is used to acquire first voice data and second voice data, wherein the first voice data and the second voice data come from different channels;

[0083] The voiceprint recognition module 1002 is used to input the first voice data into the corresponding first voiceprint recognition model to obtain the first voiceprint feature vector, and to input the second voice data into the corresponding second voiceprint recognition model to obtain the second voiceprint feature vector; wherein, voice data from different channels correspond to different voiceprint recognition models.

[0084] The voiceprint encoding and decoding module 1003 is used to input the first voiceprint feature vector and the second voiceprint feature vector into the Encoder-Decoder model respectively, map the first voiceprint feature vector and the second voiceprint feature vector to a unified voiceprint feature space, and obtain the third voiceprint feature vector corresponding to the first voiceprint feature vector and the fourth voiceprint feature vector corresponding to the second voiceprint feature vector.

[0085] The voiceprint processing module 1004 is used to determine the voiceprint comparison result of the first speech data and the second speech data based on the third voiceprint feature vector and the fourth voiceprint feature vector.

[0086] In one embodiment, the voiceprint encoding / decoding module 1003 is further configured to:

[0087] The first voiceprint feature vector is input into the corresponding first Encoder-Decoder model to obtain the third voiceprint feature vector, and the second voiceprint feature vector is input into the corresponding second Encoder-Decoder model to obtain the fourth voiceprint feature vector; wherein, the voiceprint feature vectors corresponding to different channels correspond to different Encoder-Decoder models, and each Encoder-Decoder model maps the voiceprint feature vectors of its corresponding channel to a unified voiceprint feature space.

[0088] In one embodiment, the channel includes a telephone channel and an APP application channel, the first voice data is telephone channel voice data, the second voice data is APP channel voice data, the first voiceprint recognition model is the voiceprint recognition model corresponding to the telephone channel, the second voiceprint recognition model is the voiceprint recognition model corresponding to the APP channel, and the voiceprint recognition module 1002 is further configured to:

[0089] The first voiceprint recognition model is used to input the voice data from the telephone channel to obtain the first voiceprint feature vector corresponding to the telephone channel; and the second voiceprint recognition model is used to input the voice data from the APP channel to obtain the second voiceprint feature vector corresponding to the APP channel.

[0090] In one embodiment, the voiceprint comparison device 1000 further includes a first training module, used for:

[0091] Obtain speech training samples from multiple different channels;

[0092] The voice training samples of each channel are input into the corresponding voiceprint recognition model for model training, thereby obtaining the trained voiceprint recognition model for each channel.

[0093] In one embodiment, the voiceprint comparison device 1000 further includes a second training module, used for:

[0094] Acquire voice data of the same person on different channels;

[0095] The voice data from each channel is input into the corresponding voiceprint recognition model to obtain the corresponding voiceprint feature vector;

[0096] The obtained multiple voiceprint feature vectors are input into the Encoder-Decoder model for model training to obtain a trained Encoder-Decoder model.

[0097] In one embodiment, the second training module is further configured to:

[0098] Each channel is sequentially used as a target channel, and the voiceprint feature vector corresponding to the target channel is input into the Encoder-Decoder model corresponding to the target channel to obtain a voiceprint feature mapping vector mapped to a unified voiceprint feature space.

[0099] The Encoder-Decoder model corresponding to the target channel is iteratively trained and optimized based on the voiceprint feature mapping vector until the Encoder-Decoder model corresponding to the target channel converges, thus obtaining the trained Encoder-Decoder model corresponding to the target channel.

[0100] In one embodiment, the second training module is further configured to:

[0101] Calculate the cosine distance between the voiceprint feature mapping vector and the voiceprint feature mapping vectors corresponding to other channels. Use the cosine distance as the loss function value of the Encoder-Decoder model corresponding to the target channel. Iteratively train and optimize the Encoder-Decoder model corresponding to the target channel until the loss function value converges, and obtain the trained Encoder-Decoder model corresponding to the target channel.

[0102] In this embodiment, each module of the voiceprint comparison device 1000 corresponds to each step of the voiceprint comparison method, and its functions and implementation process will not be described in detail here.

[0103] The methods and apparatus of this application can be used in a wide variety of general-purpose or special-purpose computer system environments or configurations. Examples include: personal computers, server computers, handheld or portable devices, tablet devices, multiprocessor systems, microprocessor-based systems, set-top boxes, programmable consumer electronics devices, network PCs, minicomputers, mainframe computers, and distributed computing environments including any of the above systems or devices. This application can be described in the general context of computer-executable instructions executed by a computer, such as program modules. Generally, program modules include routines, programs, objects, components, data structures, etc., that perform specific tasks or implement specific abstract data types. This application can also be practiced in distributed computing environments where tasks are performed by remote processing devices connected via a communication network. In distributed computing environments, program modules can reside in local and remote computer storage media, including storage devices.

[0104] For example, the above-described method and apparatus can be implemented as a computer program, which can be used in, for example... Figure 7 It runs on the computer device shown.

[0105] Please see Figure 7 , Figure 7 This is a schematic block diagram of the structure of a computer device provided in an embodiment of this application.

[0106] Please see Figure 7 The computer device includes a processor and a memory connected via a system bus, wherein the memory may include non-volatile storage media and internal memory.

[0107] The processor provides computing and control capabilities, supporting the operation of the entire computer device.

[0108] Internal memory provides an environment for the execution of computer programs in non-volatile storage media. When these computer programs are executed by a processor, the processor can perform any voiceprint comparison method.

[0109] It should be understood that the processor can be a Central Processing Unit (CPU), but it can also be other general-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. Among these, a general-purpose processor can be a microprocessor or any conventional processor.

[0110] In one embodiment, the processor is configured to run a computer program stored in memory to perform the following steps:

[0111] Acquire first voice data and second voice data, wherein the first voice data and the second voice data come from different channels;

[0112] The first voice data is input into the corresponding first voiceprint recognition model to obtain the first voiceprint feature vector, and the second voice data is input into the corresponding second voiceprint recognition model to obtain the second voiceprint feature vector; wherein, voice data from different channels correspond to different voiceprint recognition models;

[0113] The first voiceprint feature vector and the second voiceprint feature vector are respectively input into the Encoder-Decoder model, and the first voiceprint feature vector and the second voiceprint feature vector are mapped to a unified voiceprint feature space to obtain the third voiceprint feature vector corresponding to the first voiceprint feature vector and the fourth voiceprint feature vector corresponding to the second voiceprint feature vector.

[0114] Based on the third and fourth voiceprint feature vectors, the voiceprint comparison results of the first and second speech data are determined.

[0115] In one embodiment, when the processor implements the process of inputting the first voiceprint feature vector and the second voiceprint feature vector into the Encoder-Decoder model respectively, mapping the first voiceprint feature vector and the second voiceprint feature vector to a unified voiceprint feature space, and obtaining the third voiceprint feature vector corresponding to the first voiceprint feature vector and the fourth voiceprint feature vector corresponding to the second voiceprint feature vector, the processor is configured to:

[0116] The first voiceprint feature vector is input into the corresponding first Encoder-Decoder model to obtain the third voiceprint feature vector, and the second voiceprint feature vector is input into the corresponding second Encoder-Decoder model to obtain the fourth voiceprint feature vector; wherein, the voiceprint feature vectors corresponding to different channels correspond to different Encoder-Decoder models, and each Encoder-Decoder model maps the voiceprint feature vectors of its corresponding channel to a unified voiceprint feature space.

[0117] In one embodiment, the channel includes a telephone channel and an APP application channel. The first voice data is telephone channel voice data, the second voice data is APP channel voice data, the first voiceprint recognition model is the voiceprint recognition model corresponding to the telephone channel, and the second voiceprint recognition model is the voiceprint recognition model corresponding to the APP channel. When the processor implements the steps of inputting the first voice data into the corresponding first voiceprint recognition model to obtain a first voiceprint feature vector, and inputting the second voice data into the corresponding second voiceprint recognition model to obtain a second voiceprint feature vector, it is configured to:

[0118] The first voiceprint recognition model is used to input the voice data from the telephone channel to obtain the first voiceprint feature vector corresponding to the telephone channel; and the second voiceprint recognition model is used to input the voice data from the APP channel to obtain the second voiceprint feature vector corresponding to the APP channel.

[0119] In one embodiment, before acquiring the first voice data and the second voice data, which come from different channels, the processor is configured to:

[0120] Obtain speech training samples from multiple different channels;

[0121] The voice training samples of each channel are input into the corresponding voiceprint recognition model for model training, thereby obtaining the trained voiceprint recognition model for each channel.

[0122] In one embodiment, before acquiring the first voice data and the second voice data, which come from different channels, the processor is configured to:

[0123] Acquire voice data of the same person on different channels;

[0124] The voice data from each channel is input into the corresponding voiceprint recognition model to obtain the corresponding voiceprint feature vector;

[0125] The obtained multiple voiceprint feature vectors are input into the Encoder-Decoder model for model training to obtain a trained Encoder-Decoder model.

[0126] In one embodiment, when the processor implements the process of inputting the obtained multiple voiceprint feature vectors into the Encoder-Decoder model for model training to obtain a trained Encoder-Decoder model, it is used to implement:

[0127] Each channel is sequentially used as a target channel, and the voiceprint feature vector corresponding to the target channel is input into the Encoder-Decoder model corresponding to the target channel to obtain a voiceprint feature mapping vector mapped to a unified voiceprint feature space.

[0128] The Encoder-Decoder model corresponding to the target channel is iteratively trained and optimized based on the voiceprint feature mapping vector until the Encoder-Decoder model corresponding to the target channel converges, thus obtaining the trained Encoder-Decoder model corresponding to the target channel.

[0129] In one embodiment, when the processor iteratively trains and optimizes the Encoder-Decoder model corresponding to the target channel based on the voiceprint feature mapping vector until the Encoder-Decoder model corresponding to the target channel converges, and obtains the trained Encoder-Decoder model corresponding to the target channel, it is configured to:

[0130] Calculate the cosine distance between the voiceprint feature mapping vector and the voiceprint feature mapping vectors corresponding to other channels. Use the cosine distance as the loss function value of the Encoder-Decoder model corresponding to the target channel. Iteratively train and optimize the Encoder-Decoder model corresponding to the target channel until the loss function value converges, and obtain the trained Encoder-Decoder model corresponding to the target channel.

[0131] This application also provides a computer-readable storage medium.

[0132] The present application has a computer program stored on a computer-readable storage medium, which, when executed by a processor, implements the steps of the voiceprint comparison method described above.

[0133] The computer-readable storage medium may be an internal storage unit of the voiceprint comparison device or computer device described in the foregoing embodiments, such as the hard disk or memory of the voiceprint comparison device or computer device. The computer-readable storage medium may also be an external storage device of the voiceprint comparison device or computer device, such as a plug-in hard disk, smart media card (SMC), secure digital card (SD card), flash card, etc., equipped on the voiceprint comparison device or computer device.

[0134] Furthermore, the computer-readable storage medium may primarily include a program storage area and a data storage area, wherein the program storage area may store the operating system, at least one application required for a function, etc.; and the data storage area may store data created based on the use of blockchain nodes, etc.

[0135] The blockchain referred to in this application is a novel application model of computer technologies such as distributed data storage, peer-to-peer transmission, consensus mechanisms, and encryption algorithms. Essentially, a blockchain is a decentralized database, a chain of data blocks linked together using cryptographic methods. Each data block contains information about a batch of network transactions, used to verify the validity of the information (anti-counterfeiting) and generate the next block. A blockchain can include an underlying blockchain platform, a platform product service layer, and an application service layer.

[0136] It should be noted that, in this document, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or system that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or system. Unless otherwise specified, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or system that includes that element.

[0137] The above description is merely a specific embodiment of this application, but the scope of protection of this application is not limited thereto. Any person skilled in the art can easily conceive of various equivalent modifications or substitutions within the scope of the technology disclosed in this application, and these modifications or substitutions should all be covered within the scope of protection of this application.

Claims

1. A voiceprint comparison method, characterized in that, The voiceprint comparison method includes: Acquire first voice data and second voice data, wherein the first voice data and the second voice data come from different channels; The first voice data is input into the corresponding first voiceprint recognition model to obtain the first voiceprint feature vector, and the second voice data is input into the corresponding second voiceprint recognition model to obtain the second voiceprint feature vector; wherein, voice data from different channels correspond to different voiceprint recognition models; The first and second voiceprint feature vectors are input into the Encoder-Decoder model, respectively, and mapped to a unified voiceprint feature space to obtain a third voiceprint feature vector corresponding to the first voiceprint feature vector and a fourth voiceprint feature vector corresponding to the second voiceprint feature vector. The Encoder-Decoder model can map voiceprint feature vectors from different channels to a unified voiceprint feature space. Based on the third and fourth voiceprint feature vectors, the voiceprint comparison results of the first and second speech data are determined.

2. The voiceprint comparison method as described in claim 1, characterized in that, The step of inputting the first voiceprint feature vector and the second voiceprint feature vector into the Encoder-Decoder model, mapping the first voiceprint feature vector and the second voiceprint feature vector to a unified voiceprint feature space, and obtaining the third voiceprint feature vector corresponding to the first voiceprint feature vector and the fourth voiceprint feature vector corresponding to the second voiceprint feature vector includes: The first voiceprint feature vector is input into the corresponding first Encoder-Decoder model to obtain the third voiceprint feature vector, and the second voiceprint feature vector is input into the corresponding second Encoder-Decoder model to obtain the fourth voiceprint feature vector; wherein, the voiceprint feature vectors corresponding to different channels correspond to different Encoder-Decoder models, and each Encoder-Decoder model maps the voiceprint feature vectors of its corresponding channel to a unified voiceprint feature space.

3. The voiceprint comparison method as described in claim 1, characterized in that, The channels include a telephone channel and an APP application channel. The first voice data is telephone channel voice data, and the second voice data is APP channel voice data. The first voiceprint recognition model is the voiceprint recognition model corresponding to the telephone channel, and the second voiceprint recognition model is the voiceprint recognition model corresponding to the APP channel. The step of inputting the first voice data into the corresponding first voiceprint recognition model to obtain a first voiceprint feature vector, and inputting the second voice data into the corresponding second voiceprint recognition model to obtain a second voiceprint feature vector, includes: The first voiceprint recognition model is used to input the voice data from the telephone channel to obtain the first voiceprint feature vector corresponding to the telephone channel; and the second voiceprint recognition model is used to input the voice data from the APP channel to obtain the second voiceprint feature vector corresponding to the APP channel.

4. The voiceprint comparison method as described in claim 1, characterized in that, The acquisition of the first voice data and the second voice data, before they come from different channels, includes: Obtain speech training samples from multiple different channels; The voice training samples of each channel are input into the corresponding voiceprint recognition model for model training, thereby obtaining the trained voiceprint recognition model for each channel.

5. The voiceprint comparison method as described in claim 1, characterized in that, The acquisition of the first voice data and the second voice data, before they come from different channels, includes: Acquire voice data of the same person on different channels; The voice data from each channel is input into the corresponding voiceprint recognition model to obtain the corresponding voiceprint feature vector; The obtained multiple voiceprint feature vectors are input into the Encoder-Decoder model for model training to obtain a trained Encoder-Decoder model.

6. The voiceprint comparison method as described in claim 5, characterized in that, The step of inputting the obtained multiple voiceprint feature vectors into the Encoder-Decoder model for model training to obtain a trained Encoder-Decoder model includes: Each channel is sequentially used as a target channel, and the voiceprint feature vector corresponding to the target channel is input into the Encoder-Decoder model corresponding to the target channel to obtain a voiceprint feature mapping vector mapped to a unified voiceprint feature space. The Encoder-Decoder model corresponding to the target channel is iteratively trained and optimized based on the voiceprint feature mapping vector until the Encoder-Decoder model corresponding to the target channel converges, thus obtaining the trained Encoder-Decoder model corresponding to the target channel.

7. The voiceprint comparison method as described in claim 6, characterized in that, The step of iteratively training and optimizing the Encoder-Decoder model corresponding to the target channel based on the voiceprint feature mapping vector until the Encoder-Decoder model corresponding to the target channel converges, thereby obtaining the trained Encoder-Decoder model corresponding to the target channel, includes: Calculate the cosine distance between the voiceprint feature mapping vector and the voiceprint feature mapping vectors corresponding to other channels. Use the cosine distance as the loss function value of the Encoder-Decoder model corresponding to the target channel. Iteratively train and optimize the Encoder-Decoder model corresponding to the target channel until the loss function value converges, and obtain the trained Encoder-Decoder model corresponding to the target channel.

8. A voiceprint comparison device, characterized in that, The voiceprint comparison device includes: The voice acquisition module is used to acquire first voice data and second voice data, wherein the first voice data and the second voice data come from different channels; The voiceprint recognition module is used to input the first voice data into the corresponding first voiceprint recognition model to obtain the first voiceprint feature vector, and to input the second voice data into the corresponding second voiceprint recognition model to obtain the second voiceprint feature vector; wherein, voice data from different channels correspond to different voiceprint recognition models; The voiceprint encoding / decoding module is used to input the first voiceprint feature vector and the second voiceprint feature vector into the Encoder-Decoder model, respectively, and map the first voiceprint feature vector and the second voiceprint feature vector to a unified voiceprint feature space to obtain the third voiceprint feature vector corresponding to the first voiceprint feature vector and the fourth voiceprint feature vector corresponding to the second voiceprint feature vector; the Encoder-Decoder model can map voiceprint feature vectors from different channels to a unified voiceprint feature space. The voiceprint processing module is used to determine the voiceprint comparison result of the first speech data and the second speech data based on the third voiceprint feature vector and the fourth voiceprint feature vector.

9. A computer device, characterized in that, The computer device includes a memory and a processor; The memory is used to store computer programs; The processor is configured to execute the computer program and, in executing the computer program, implement the voiceprint comparison method as described in any one of claims 1 to 7.

10. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores a computer program that, when executed by a processor, implements the steps of the voiceprint comparison method as described in any one of claims 1 to 7.

Citation Information

Patent Citations

  • Voiceprint extraction model training method, voiceprint recognition method, voiceprint extraction model training device, voiceprint recognition device and medium

    CN111524521A

  • Cross-channel voiceprint comparison method and system, computer equipment and storage medium

    CN114023329A