User matching method, apparatus, device, and computer readable medium
By acquiring and fusing multimodal data to generate emotion spectrum vectors, the problem of incomplete reflection of user emotional states in existing technologies is solved, achieving higher accuracy in data recommendation.
Patent Information
- Application Number
- CN202610470209.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2026-04-10
- Publication Date
- 2026-06-26
AI Technical Summary
Existing methods for obtaining user characteristic information are limited to a single type of data, which cannot fully reflect changes in users' emotional state, leading to a decline in the accuracy of data recommendations.
The system acquires multimodal data of the first user, including text, audio, and physiological signal data. It then generates an emotion spectrum vector through feature extraction to characterize the user's emotional cycle pattern and matches the second user based on the emotion spectrum vector.
By extracting and fusing features from users' multimodal data, feature vectors that comprehensively reflect users' emotional states are obtained, thereby improving the accuracy of data recommendations.
Smart Images

Figure CN122286260A_ABST
Abstract
Description
Technical Field
[0001] This application belongs to the field of computer technology, and specifically relates to a user matching method, apparatus, device and computer-readable medium. Background Technology
[0002] With the rapid development of internet technology, social media platforms, dating apps, and content recommendation systems have become indispensable parts of people's daily lives. These systems typically make recommendations based on user characteristics. However, existing methods of obtaining user characteristics are usually limited to single types of user data, failing to comprehensively reflect changes in users' emotional states, which in turn leads to a decline in the accuracy of data-driven recommendations. Summary of the Invention
[0003] The purpose of this application is to provide a user matching method, apparatus, device, and computer-readable medium to improve the accuracy of data recommendations.
[0004] Other features and advantages of this application will become apparent from the following detailed description, or may be learned in part by practice of this application.
[0005] According to one aspect of the embodiments of this application, a user matching method is provided, including:
[0006] Acquire multimodal data of a first user; the multimodal data includes data from different information channels used to indicate the emotional state of the first user; Feature extraction is performed on the multimodal data to obtain multiple emotional features; the emotional features represent the emotional state of the first user. The multiple emotional features are fused to generate an emotional spectrum vector; the emotional spectrum vector represents the emotional cycle pattern of the first user. The first user is matched with a second user based on the emotion spectrum vector.
[0007] According to one aspect of the embodiments of this application, a user matching device is provided, comprising: The data acquisition module is used to acquire multimodal data of the first user; the multimodal data includes data from different information channels used to indicate the emotional state of the first user; The feature extraction module is used to extract features from the multimodal data to obtain multiple emotional features; the emotional features represent the emotional state of the first user. The feature fusion module is used to fuse the multiple emotional features to generate an emotional spectrum vector; the emotional spectrum vector represents the emotional cycle pattern of the first user. The user matching module is used to match a second user with the first user based on the emotion spectrum vector.
[0008] According to one aspect of the embodiments of this application, a system is provided, comprising: At least one data processor; and At least one memory stores instructions that, when executed by the at least one data processor, implement the user matching method provided in any embodiment of this application.
[0009] According to one aspect of the embodiments of this application, a computer-readable medium is provided having a computer program stored thereon, which, when executed by a processor, implements the user matching method provided in any embodiment of this application.
[0010] According to one aspect of the embodiments of this application, an electronic device is provided, the electronic device comprising: a processor; and a memory for storing executable instructions of the processor; wherein the processor executes the executable instructions to cause the electronic device to perform a user matching method in any embodiment of the present application.
[0011] According to one aspect of the embodiments of this application, a computer program product or computer program is provided, the computer program product or computer program including computer instructions stored in a computer-readable storage medium. A processor of a computer device reads the computer instructions from the computer-readable storage medium, and the processor executes the computer instructions, causing the computer device to perform the user matching method in any embodiment of this application.
[0012] In the technical solution provided in this application embodiment, firstly, multimodal data of a first user is acquired; the multimodal data includes data from different information channels used to indicate the emotional state of the first user; subsequently, feature extraction is performed on the multimodal data to obtain multiple emotional features; the emotional features characterize the emotional state of the first user; next, the multiple emotional features are fused to generate an emotional spectrum vector; the emotional spectrum vector characterizes the emotional cycle pattern of the first user; finally, a second user is matched for the first user based on the emotional spectrum vector. Thus, by extracting and fusing features from the user's multimodal data, multiple feature vectors that comprehensively reflect the user's emotional state are obtained, providing a data foundation for subsequent data or user recommendations, thereby improving recommendation accuracy.
[0013] It should be understood that the above general description and the following detailed description are exemplary and explanatory only, and do not limit this application. Attached Figure Description
[0014] The accompanying drawings, which are incorporated in and form part of this specification, illustrate embodiments consistent with this application and, together with the description, serve to explain the principles of this application. It is obvious that the drawings described below are merely some embodiments of this application, and those skilled in the art can obtain other drawings based on these drawings without any inventive effort.
[0015] Figure 1 A schematic diagram illustrating a system architecture provided in one embodiment of this application is shown.
[0016] Figure 2 A flowchart illustrating a user matching method provided in one embodiment of this application is shown schematically.
[0017] Figure 3 A schematic diagram of a fusion model architecture provided in one embodiment of this application is shown.
[0018] Figure 4 A flowchart illustrating the generation of emotion spectrum vectors provided in an embodiment of this application is shown schematically.
[0019] Figure 5A A schematic diagram illustrating the frequency weighting provided in one embodiment of this application is shown.
[0020] Figure 5B The illustration shows a social scene category diagram provided in one embodiment of this application.
[0021] Figure 6 A user matching flowchart provided in an embodiment of this application is illustrated schematically.
[0022] Figure 7 A schematic block diagram of the user matching device provided in an embodiment of this application is shown.
[0023] Figure 8 A schematic diagram of the computer system architecture used to implement the technical solution of this application is shown. Detailed Implementation
[0024] Exemplary embodiments will now be described more fully with reference to the accompanying drawings. However, these exemplary embodiments can be implemented in many forms and should not be construed as limited to the examples set forth herein; rather, these embodiments are provided to make this application more comprehensive and complete, and to fully convey the concept of the exemplary embodiments to those skilled in the art.
[0025] Furthermore, the described features, structures, or characteristics can be combined in any suitable manner in one or more embodiments. Numerous specific details are provided in the following description to give a thorough understanding of embodiments of this application. However, those skilled in the art will recognize that the technical solutions of this application can be practiced without one or more of the specific details, or other methods, components, apparatuses, steps, etc., can be employed. In other instances, well-known methods, apparatuses, implementations, or operations are not shown or described in detail to avoid obscuring various aspects of this application.
[0026] The block diagrams shown in the accompanying drawings are merely functional entities and do not necessarily correspond to physically independent entities. That is, these functional entities can be implemented in software, in one or more hardware modules or integrated circuits, or in different network and / or processor devices and / or microcontroller devices.
[0027] The flowcharts shown in the accompanying drawings are merely illustrative and do not necessarily include all content and operations / steps, nor do they necessarily have to be performed in the described order. For example, some operations / steps can be broken down, while others can be combined or partially combined; therefore, the actual execution order may change depending on the specific circumstances.
[0028] Figure 1 A schematic diagram illustrating a system architecture provided in one embodiment of this application is shown.
[0029] like Figure 1 As shown, the data processing system provided in this embodiment consists of two main parts: a user terminal and an application server. The application server is equipped with a data acquisition module, an emotion spectrum generation module, an emotion spectrum database, a resonance index calculation module, and a matching recommendation module.
[0030] The user terminal serves as the entry point for user interaction and data collection. It can be a smartphone, a personal computer, or a wearable device with sensors. Its main responsibility is to collect users' multimodal emotion-related data (such as text, audio, etc.) and upload it to the application server. At the same time, it receives the candidate user matching recommendation list pushed by the application server as a social matching result that resonates with the emotional rhythm.
[0031] The data acquisition module in the application server is responsible for receiving multimodal emotion data uploaded by user terminals and performing data cleaning, format standardization, and preprocessing to provide standardized input for subsequent feature extraction. The emotion spectrum generation module extracts multi-dimensional emotion features (such as frequency domain feature vectors corresponding to each modality) from the multimodal data transmitted by the data acquisition module, and generates an emotion spectrum vector through feature fusion processing. This vector represents the user's emotional cycle within a preset time window. The emotion spectrum generation module associates the generated emotion spectrum vector with the corresponding user identifier and stores the associated emotion spectrum vector in the emotion spectrum database for persistent storage. It can also retrieve historical emotion spectrum vectors from the emotion spectrum database to achieve dynamic updates and iterative optimization of the vectors. The emotion spectrum database, as the core data storage unit of the system, is used for structured and persistent management of emotion spectrum vectors and timestamps, and supports efficient approximate nearest neighbor retrieval for large-scale vector sets.
[0032] The resonance index calculation module, as the core unit of the matching calculation, can obtain the emotional spectrum vectors of the first user and candidate users from the emotional spectrum database, and calculate the emotional resonance index and spectrum similarity between them based on the emotional rhythm synchronous matching logic. The emotional resonance index quantifies the degree of synchronousity of the emotional cycles between the first user and candidate users, while the spectrum similarity measures the similarity of their overall emotional patterns. The matching recommendation module, as the result output unit, can use the emotional resonance index and spectrum similarity provided by the resonance index calculation module, combined with preset matching rules, to weight and sort the candidate users, generate the final matching recommendation list, and push this recommendation list to the user's terminal to complete the social matching recommendation.
[0033] The user matching method provided in this application will be described in detail below with reference to specific implementation methods.
[0034] Figure 2 A flowchart illustrating a user matching method according to an embodiment of this application is shown. The implementation process of the technical solution of this application will be described below using a terminal device as the execution subject. Figure 2 As shown, the user matching method provided in this embodiment includes steps 210 to 240, as detailed below: Step 210: Obtain the multimodal data of the first user.
[0035] Specifically, the first user is the subject of multimodal data collection, which refers to a collection of raw data from different information channels that can reflect the first user's emotional state from multiple dimensions. This can include text data, audio data, and physiological signal data.
[0036] Text data refers to textual information generated by a first user on social media platforms, chat applications, or content publishing systems. It contains the first user's semantic expression and emotional inclination, including but not limited to publicly posted posts, updates, comments, and private chat logs over a period of time. Audio data refers to voice signals generated by a first user in scenarios such as voice chat, voice updates, and voice messages over a period of time. Audio data not only contains semantic information but also paralinguistic features such as tone, speech rate, and pitch, which can reflect the first user's emotional fluctuations and emotional state. Physiological signal data refers to physiological response signals collected by a first user over a period of time through wearable devices (such as smartwatches and wristbands). It can objectively reflect the first user's autonomic nervous system activity state during that time period, specifically including heart rate variability and skin conductance response.
[0037] Step 220: Extract features from the multimodal data to obtain multiple emotional features; the emotional features represent the emotional state of the first user.
[0038] Specifically, feature extraction refers to the process of extracting emotional features that can characterize a user's emotional state from raw multimodal data. Due to the differences in physical characteristics and data structure of different modalities, feature extraction needs to be performed separately for each modality, so that the extracted multiple emotional features can jointly characterize the first user's emotional state from multiple dimensions.
[0039] Step 230: Fuse multiple emotional features to generate an emotional spectrum vector; the emotional spectrum vector represents the emotional cycle pattern of the first user.
[0040] Specifically, the emotion spectrum vector is a high-dimensional digital feature vector generated by fusing multiple emotional features of the first user. This vector can comprehensively reflect the periodic and rhythmic patterns of the first user's emotions over time from a frequency domain perspective. Different dimensions of the emotion spectrum vector correspond to the energy intensity of different emotional frequency components.
[0041] The emotional cycle pattern refers to the periodic and rhythmic changes in the emotional state of the first user over time.
[0042] In one embodiment of this application, after generating the emotion spectrum vector, the emotion spectrum vector can be associated with the user identifier of the first user and stored in the emotion spectrum database.
[0043] Specifically, a user identifier is a unique identifier used to uniquely identify the first user. It can be unique information such as user account, user number, or device identifier.
[0044] The Emotion Spectrum Database is a structured database specifically designed to store user identifiers and their corresponding emotion spectrum vectors. This database supports efficient approximate nearest neighbor retrieval, updating, and iteration of large-scale vector sets.
[0045] Step 240: Match the second user to the first user based on the emotion spectrum vector.
[0046] Specifically, the second user is a user selected from the user database based on the first user's user matching request, whose emotional cycle pattern is similar to that of the first user.
[0047] In the technical solution provided in this application embodiment, firstly, multimodal data of a first user is acquired; the multimodal data includes data from different information channels used to indicate the emotional state of the first user; subsequently, feature extraction is performed on the multimodal data to obtain multiple emotional features; these emotional features characterize the emotional state of the first user; next, the multiple emotional features are fused to generate an emotional spectrum vector; the emotional spectrum vector characterizes the emotional cycle pattern of the first user; finally, a second user is matched for the first user based on the emotional spectrum vector. Thus, by extracting and fusing features from the user's multimodal data, multiple feature vectors that comprehensively reflect the user's emotional state are obtained, providing a data foundation for subsequent data or user recommendations, thereby improving recommendation accuracy.
[0048] In one embodiment of this application, the feature extraction process for multimodal data includes: first, preprocessing the multimodal data to obtain time series corresponding to each modality; wherein, the preprocessing methods for different modal data are different; then, performing frequency domain feature extraction on the time series corresponding to each modality to obtain frequency domain feature vectors under each modality as emotional features; the frequency domain feature vectors represent the periodic emotional changes of the first user.
[0049] Specifically, preprocessing refers to the process of cleaning, transforming, and standardizing data based on its original format and physical characteristics. Since different modal data have significantly different acquisition methods, data structures, and noise characteristics, preprocessing methods also vary.
[0050] Time series refers to an ordered dataset formed by arranging preprocessed multimodal data in chronological order. Each data point in the series represents the emotional characteristics of that modality at a certain moment. Because time series inherently carry temporal dimension information, they can reflect the continuous changes in a user's emotions over time.
[0051] Frequency domain feature extraction refers to the operation of using frequency domain analysis algorithms (such as Fourier transform, Mel Frequency Cepstral Analysis, etc.) on the time series corresponding to each modality to convert the emotional change signals in the time domain into frequency components and energy distributions in the frequency domain. This process decomposes complex time series signals into a series of sine wave components with different frequencies. Each frequency component corresponds to a specific fluctuation period, and the amplitude represents the energy intensity of the fluctuation in that period. In this way, periodic laws such as circadian rhythms and monthly rhythms hidden in emotional changes (i.e., at what frequencies emotions fluctuate) can be discovered, and finally, a frequency domain feature vector representing the periodic emotional changes of the first user in each modality is output.
[0052] Exemplarily, the feature extraction process for the text data of the first user includes: first, cleaning each piece of text data, including removing stop words (such as high-frequency words without actual emotional meaning like "of", "is", "in", etc.), filtering URL links and special symbols, and performing word form reduction (restoring words in different forms to their basic forms, such as restoring "running" and "ran" to "run"). Then, sort the cleaned text data in ascending order of the publication timestamp to form an ordered text time series. Next, use a pre-trained sentiment analysis model, such as a BERT-based sentiment classifier (Bidirectional Encoder Representations from Transformers, a bidirectional encoder representation model based on transformers), to perform sentiment analysis on each piece of preprocessed text content, obtaining a sentiment polarity score s i ∈[-1, + 1] (-1 represents extremely negative, +1 represents extremely positive) and a sentiment intensity score e i ∈[0, 1]. Subsequently, map the score of each piece of text to a uniform time grid according to its publication timestamp τ i (for example, a time axis in days). For vacant positions without text data at certain time points, fill them using linear interpolation, thereby obtaining an equally spaced sentiment polarity time series S_text = [s1, s2, ..., s_L] and a sentiment intensity time series E_text = [e1, e2, ..., e_L], where L is the time window length (for example, L = 30 days). Finally, perform a discrete Fourier transform on the sentiment polarity time series S_text to convert it from the time domain to the frequency domain, and then obtain the frequency domain feature vector of the text modality.
[0053] Specifically, the text modality frequency domain feature vectors under different dimensions correspond to different emotional fluctuation cycles: low-frequency dimensions correspond to long-cycle fluctuations, such as dimension 1 corresponding to a monthly cycle of approximately 30 days, dimension 2 corresponding to a bi-weekly cycle of approximately 15 days, and dimension 5 corresponding to a near-weekly cycle of approximately 6 days; high-frequency dimensions correspond to short-cycle fluctuations, such as dimension 15 corresponding to a short cycle of approximately 2 days. Meanwhile, the magnitude of each dimension's value represents the energy intensity of the fluctuation within that cycle; the larger the value, the more significant the user's emotional fluctuations within that cycle. For example, if a user experiences an energy peak at dimension 5, it indicates that the user's emotions exhibit a clear circadian rhythm characteristic within a 6-day cycle, meaning that their emotional state fluctuates regularly with a cycle of approximately 6 days.
[0054] For example, the feature extraction process for the first user's audio data includes: First, using a speech activity detection algorithm, silent segments in the audio are automatically identified and removed, retaining only the portion containing valid speech signals to reduce interference from invalid data. Then, spectral subtraction is used for noise suppression to reduce the contamination of the speech signal by ambient background noise and improve the signal-to-noise ratio. Finally, the denoised audio data is segmented into fixed-length short frames (e.g., each frame is 2 seconds long, with a sampling rate of 16kHz, then each frame contains 32,000 sampling points), forming an audio time series in frames.
[0055] After preprocessing, the frequency domain feature extraction proceeds: First, a Fast Fourier Transform is performed on each preprocessed audio frame to obtain the spectrum. Then, the spectrum is mapped onto a Mel-scale filter bank. The logarithm of the output of each filter is taken, and then a Discrete Cosine Transform is performed to obtain Mel-Frequency Cepstral Coefficients (MFCCs). MFCCs are acoustic features widely used in speech signal processing. In this embodiment, the extracted MFCC vector is typically 39-dimensional, containing 13 static MFCC coefficients and their first and second differences, which can simulate the perceptual characteristics of the human ear for different frequencies of sound.
[0056] Next, the MFCC vectors of all audio frames are arranged in chronological order to obtain an acoustic feature sequence. Each acoustic feature in the sequence is then input into a pre-trained Bidirectional Long Short-Term Memory (BiLSTM) network. This pre-trained network maps the input acoustic features into low-dimensional emotion embedding vectors that represent the emotional state of the audio. Each audio frame corresponds to a 64-dimensional emotion embedding vector, which encapsulates the emotional information of that frame, including emotional tendency and intensity. The emotion embedding vectors of all audio frames are arranged in chronological order to obtain an emotion embedding vector time series. Then, a Discrete Fourier Transform is applied to each dimension of the emotion embedding vector time series to transform it from the time domain to the frequency domain, obtaining a frequency domain representation. Finally, for each dimension, the amplitude spectrum of the frequency domain representation is obtained, yielding the frequency component energy distribution and the frequency domain feature matrix of the audio mode. To reduce dimensionality and extract more representative features, this embodiment can also perform a uniform segmentation aggregation operation on the frequency domain feature matrix. For example, the frequency domain feature matrix is divided into eight consecutive frequency bands (such as ultra-low frequency band, low frequency band, mid-low frequency band, mid frequency band, mid-high frequency band, high frequency band, ultra-high frequency band, etc.). The average energy value of all frequency components within each frequency band is taken as the representative feature of that frequency band. After frequency band aggregation, each emotion embedding dimension (64 dimensions) corresponds to the average energy of the eight frequency bands, forming the frequency domain feature vector of the audio modality.
[0057] For example, the feature extraction process for the physiological signal data of the first user includes: for heart rate variability signals in the physiological signal data, a bandpass filter is used to retain signal components within a preset frequency range (e.g., 0.04-0.4Hz), which includes ultra-low frequency, low frequency, and high frequency components related to autonomic nervous activity, while filtering out high-frequency noise and ultra-low frequency baseline drift. For skin conductance response signals in the physiological signal data, a bandpass filter is used to retain signal components within a preset frequency range (e.g., 0.05-1Hz), which includes slow changes in skin conductance levels and rapid fluctuations in skin conductance response. After filtering, the two types of signals are normalized separately to eliminate differences in physiological baselines between different individuals.
[0058] After preprocessing, frequency domain feature extraction is performed: For the preprocessed heart rate variability signal, power spectral density (PSD) analysis is used to extract the normalized energy of the ultra-low frequency, low frequency, and high frequency bands, serving as the first part of the frequency domain feature vector of the physiological modality. Power spectral density describes the distribution of signal power at different frequencies, reflecting the activity rhythm of the autonomic nervous system. For the preprocessed skin conductance response signal, signal decomposition is performed to separate the slowly changing skin conductance level and the rapidly fluctuating skin conductance response. Then, statistical features of the skin conductance level are extracted, including its mean and variance, reflecting the user's average emotional arousal level and its fluctuation over a period of time. For the skin conductance response component, a peak detection algorithm is used to identify the occurrence time and amplitude of the skin conductance response and calculate its peak frequency (i.e., the number of times the skin conductance response occurs per unit time), reflecting the user's sensitivity and response intensity to external emotional stimuli. The above data are combined to obtain the second part of the feature vector of the physiological modality. Finally, the feature vectors of the heart rate variability signal and the skin conductance response signal are concatenated to obtain the complete frequency domain feature vector of the physiological modality. This vector is objective and continuous, unaffected by the user's subjective expression, and can reflect the user's unconscious emotional response. It objectively quantifies the user's emotional state and response pattern from a physiological perspective, complementing the subjective textual and verbal emotions.
[0059] In one embodiment of this application, the process of fusing multiple emotional features to generate an emotional spectrum vector may include: projecting multiple emotional features onto the same dimensional space, and concatenating the projected emotional features to obtain a feature sequence; processing the feature sequence based on an attention mechanism to obtain the correlation between the various emotional features in the feature sequence; inputting the processed feature sequence into a neural network, and normalizing the output of the neural network to obtain an emotional spectrum vector.
[0060] Specifically, since the feature vectors obtained after frequency domain feature extraction from different modalities may have different dimensions (e.g., 16 dimensions for text modality, 512 dimensions for audio modality, and 6 dimensions for physiological modality), they cannot be directly jointly processed. Therefore, this embodiment will use linear transformation to map the emotional feature vectors of different modalities from their respective original dimensional spaces to a unified dimensional space. This dimensional space can be preset by the programmer, and its dimensional specifications should be adapted to the feature dimensions and representation requirements of all modal emotional features, thereby eliminating the heterogeneity of different modal emotional features caused by differences in original dimensions, numerical scales, and representation logic, and allowing the projected emotional features to have a unified data foundation that can be spliced and fused.
[0061] A feature sequence is a set of one-dimensional continuous feature data formed by sequentially piecing together all emotional features projected onto the same dimensional space in a predefined modal order.
[0062] Attention mechanisms are feature processing mechanisms that adaptively mine the differences in importance of emotional features at different positions in a feature sequence and capture the correlations between these emotional features. Specifically, they can include multi-head self-attention mechanisms and cross-modal attention mechanisms. The correlations between various emotional features refer to the degree of mutual dependence and influence learned between features after processing by the attention mechanism. These correlations are represented in the form of attention weights; the larger the weight, the stronger the correlation between the corresponding modalities. For example, if the attention weight between the text modality and the audio modality is high, it indicates that the user's written and spoken expressions are emotionally consistent; if the attention weight between the physiological modality and the text modality is low, it may indicate a separation between the user's physiological response and subjective expression. These correlations not only reflect the inherent structure of multimodal data but also reveal the consistency or difference in users' emotional expression across different expression channels, providing a basis for generating more realistic and comprehensive emotional spectrum vectors.
[0063] Figure 3 A schematic diagram illustrating a fusion model architecture provided in one embodiment of this application is shown. Figure 3 As shown, the fusion model provided in this embodiment adopts a layered architecture design, which includes, from bottom to top, an input layer, a linear projection layer, a multi-head self-attention layer, a cross-modal attention layer, a feedforward neural network, a layer normalization layer, and an output layer.
[0064] For example, the process of using a fusion model to fuse emotional features to obtain an emotional spectrum vector may include: first, inputting the frequency domain feature vectors of each modality into independent linear projection layers, and mapping them to the same dimensional space through linear transformation. Since the original frequency domain feature vectors of text, audio, and physiological modalities have different dimensions (e.g., L / 2+1 dimensional for text, 512 dimensional for audio, and 6 dimensional for physiological), they cannot be directly jointly processed. Therefore, it is necessary to set trainable weight matrices and bias vectors for each modality, and then project the features of each modality to a unified dimensional space (e.g., 256 dimensional) through transformation to obtain the embedding representation of each modality. Subsequently, the projected embedding representations of each modality are concatenated in a preset order to form a feature sequence containing multiple elements. The structure of this sequence can be [text embedding representation, audio embedding representation, physiological embedding representation], where each position in the sequence corresponds to a specific modality, preserving the modality's identity information and original feature content.
[0065] Next, the feature sequence is input into a multi-head self-attention layer of the Transformer fusion model based on an attention mechanism to perform global modeling of the feature sequence. This allows the embedding representation of each modality to pay attention to information from other modalities in the sequence and learn the relationships between different modalities. For example, the text modality can use the multi-head self-attention mechanism to pay attention to the parts of the audio modality related to its emotional semantics, and the audio modality can also pay attention to the components of the physiological modality corresponding to its arousal. Then, a modality is selected as the master modality to perform cross-modal attention computation. For example, the embedding representation of the text modality is used as the master modality and interacts with the embedding representations of the audio modality and the physiological modality, respectively. This allows the text features to more specifically "pay attention" to relevant information in other modalities, enhancing the dominant role of the text modality in emotional expression.
[0066] Finally, the feature sequences processed by the attention mechanism are input into a feedforward neural network for nonlinear transformation to enhance the model's expressive power. Simultaneously, the transformed output undergoes layer normalization to adjust the numerical distribution and stabilize the training process, ultimately yielding a unified high-dimensional emotion spectrum vector. Different dimensions of this vector correspond to the energy intensity of different emotional frequency components, comprehensively representing the periodic patterns of user emotional fluctuations. At this point, the generated emotion spectrum vector can be bound to the first user's unique user identifier and timestamp, establishing a one-to-one mapping relationship. Then, according to the pre-defined structured storage specifications of the emotion spectrum database, the data is persistently stored.
[0067] Figure 4 A flowchart illustrating the generation of emotion spectrum vectors provided in an embodiment of this application is shown schematically. Figure 4 As shown, the emotion spectrum vector generation process provided in this embodiment first collects multimodal data from the user terminal, including text data, audio data, and optional physiological signal data. Then, each modality's data is preprocessed and frequency domain feature extracted, transforming each modality's data into a frequency domain feature vector representing the first user's periodic emotional changes, serving as emotion features. Next, these emotion features are input into a feature fusion module, which projects multiple emotion features onto the same dimensional space and concatenates them to obtain a feature sequence. This feature sequence is then processed based on an attention mechanism to learn the correlation between various emotion features. The processed feature sequence is then input into a neural network for nonlinear transformation, and the output is normalized to ultimately generate an emotion spectrum vector representing the first user's emotional cycle. Finally, the generated emotion spectrum vector is associated with the first user's user identifier and stored in an emotion spectrum database.
[0068] For example, suppose user A is a 25-year-old female who posted 87 social media updates and 42 voice updates and messages on a social media platform in the past 30 days. Sentiment analysis is performed on the daily text content to obtain a time series consisting of 30 daily average sentiment polarity scores: S_text=[0.3,0.5,-0.1,0.2,0.4,-0.3,-0.2,0.6,0.7,0.1,0.3,0.5,-0.2,-0.4,0.1,0.2,0.4……-0.1,0.3,0.6,0.5,0.2,0.4]. A Discrete Fourier Transform is performed on this series to obtain the text modal frequency domain feature vector. The 42 audio clips are preprocessed, framed, and subjected to MFCC. After extraction, the sequence of emotion embedding vectors is input into a bidirectional LSTM network. A Discrete Fourier Transform is performed on each dimension of this sequence, followed by frequency band aggregation to obtain the audio modality frequency domain feature vector. Subsequently, the text modality frequency domain feature vector and the audio modality frequency domain feature vector are mapped to a 256-dimensional space through linear projection layers to obtain embedding representations. The two embedding representations are concatenated and input into an attention-based Transformer fusion model. After processing through multi-head self-attention, cross-modal attention, a feedforward neural network, and layer normalization, the final output emotion spectrum vector is determined. This vector integrates emotional information from both text and audio modalities, comprehensively representing the emotional cycle pattern of user A.
[0069] Analysis of the generated emotion spectrum vector reveals that User A exhibits significant energy peaks at frequency positions corresponding to approximately a 7-day cycle (weekly rhythm) and also shows relatively high energy at frequency positions corresponding to approximately a 30-day cycle (monthly rhythm). This indicates that User A's emotions exhibit clear weekly rhythmic fluctuations, while the overall emotional tone is predominantly positive.
[0070] In one embodiment of this application, after storing the emotion spectrum vector in the emotion spectrum database, candidate users who meet the preset preference conditions of the first user can be filtered from the user database according to the user matching request initiated by the first user; the emotion spectrum vectors of the first user and the candidate users are obtained from the emotion spectrum database, and the candidate users are sorted according to the emotion spectrum vectors to obtain the sorting result; and a second user matching the first user is filtered from the candidate users according to the sorting result.
[0071] Specifically, a user matching request refers to a service call instruction initiated by a user through their terminal to the system, seeking potential social matchmaking partners. This request is typically triggered by the user clicking function buttons such as "Start Matching" or "Find Friends" in the social application interface. User matching requests can include the user's currently selected social scenario type (such as "Find a soulmate" or "Find interest partners"), or they can include temporary adjustments to filtering criteria (such as expanding the geographical scope or adjusting the age range).
[0072] The user database is a database within the system used to store basic user information and static profile data. Unlike the emotion spectrum database, which stores dynamic emotion spectrum vectors, the user database primarily stores static attribute data, including but not limited to: user identifier (user ID), registration information (age, gender, occupation, educational background), geographical location (city, activity range), preset preference conditions, and structured data such as the types of social scenarios authorized by the user. Among these, preset preference conditions are basic criteria set by the first user during registration or use to filter potential matches. These conditions typically include attribute-based conditions, such as geographical location range (e.g., "within 10 kilometers" or "same city"), age range (e.g., "25-35 years old"), and gender preference; they may also include user profile-based conditions, such as interest tags (e.g., "likes music," "loves sports"), educational background, and occupation type.
[0073] Candidate users refer to one or more users selected from the user database who meet the first user's preset preference criteria. The ranking result of sorting these candidate users is a list of candidates ordered in descending order of match degree based on their sentiment spectrum vectors. The second user is the final match recommended to the first user from the ranking result. The second user can be the first user in the ranking result (i.e., the best match), or one of the top-ranked users (such as the top N users in the recommendation list).
[0074] In social matching scenarios, the second user is typically presented to the first user as a recommendation list. This list includes the avatars, nicknames, basic information, and matching level indicators (such as "high overlap in interests" or "high compatibility"). Confirmation of the second user marks the completion of a matching request process. After confirming the second user, the system returns a recommendation list containing the second user's information to the first user's device.
[0075] In one embodiment of this application, the method of sorting candidate users based on emotion spectrum vectors may include: calculating the cosine value between the emotion spectrum vector of each candidate user and the emotion spectrum vector of a first user as the spectrum similarity; calculating the emotion resonance index between each candidate user and the first user; and sorting all candidate users based on the spectrum similarity and the emotion resonance index to obtain the sorting result.
[0076] Specifically, spectral similarity is a quantitative indicator used to measure the overall similarity of the emotional spectrum of two users, calculated based on the cosine value between their emotional spectrum vectors. If the energy distribution patterns of the emotional spectrum vectors of two users are similar across their frequency components, the spectral similarity is high; if the energy distribution patterns differ significantly, the spectral similarity is low. The range of spectral similarity is [-1, 1]. In practical applications, negative values are usually truncated to 0, or only users with positive spectral similarity values are retained for subsequent processing.
[0077] The Emotional Resonance Index (ERI) is used to indicate the similarity of emotional cyclical patterns between a candidate user and the first user. Unlike spectral similarity, which focuses on the similarity of the overall vector, the ERI focuses on the degree of matching between the most prominent emotional rhythmic components of each user, aiming to answer the question of "whether the two users are truly in sync on key emotional frequencies." Similarly, the ERI value is typically normalized to [0,1] or [0,100]. A higher value indicates a stronger resonance between the two users on key emotional frequencies and better emotional compatibility.
[0078] In one embodiment of this application, the method for calculating the emotional resonance index between the candidate user and the first user may be as follows: First, identify multiple peak points with energy values greater than a first preset energy value based on the first user's emotional spectrum vector, and obtain the frequency positions of the multiple peak points in the emotional spectrum vector; then, for each peak point, search for the maximum energy value in the emotional spectrum vector corresponding to the candidate user, with the frequency position of the peak point as the center and a preset length as the radius; if the maximum energy value is greater than a second preset energy value, calculate the resonance score based on the energy value of the first user at the peak point and the maximum energy value of the candidate user; calculate the emotional resonance index between the first user and the candidate user based on the resonance score corresponding to each candidate user.
[0079] Specifically, the first preset energy value is used to identify local maxima points in the spectrum vector whose energy values are significantly higher than those of surrounding components. In practical applications, the first preset energy value can be set using either an absolute threshold or a relative threshold. The absolute threshold is a fixed value (e.g., 0.5), and only frequency points (peak points) with energy exceeding this value are considered. The relative threshold is dynamically determined based on the statistical characteristics of the spectrum vector, such as selecting the top N energy values of all peak points or peak points whose energy values exceed the maximum energy value by a certain percentage (e.g., 60%). Thus, setting the first preset energy value ensures that the frequency components selected for resonance index calculation are indeed the "dominant" components in the user's emotional rhythm, rather than weak background fluctuations. By setting a higher first preset energy value, the system can focus on the most representative and stable key rhythms in each user's corresponding emotional state, avoiding interference from secondary frequency components in the resonance index calculation.
[0080] Each peak point corresponds to a dominant frequency component in the user's emotional spectrum, representing the most significant rhythmic feature of the user's emotional fluctuations. For example, if a user experiences a single peak point in the low-frequency range (corresponding to a long period), it indicates that the user's emotional state is relatively stable; if a peak point occurs in the mid-frequency range (corresponding to a weekly period), it indicates that the user's emotions exhibit a periodic fluctuation pattern; and if multiple peak points occur in the high-frequency range (corresponding to a short period), it indicates that the user is highly sensitive to emotional responses to immediate stimuli.
[0081] Frequency position is the dimensional index of each peak point in the emotion spectrum vector, used to identify the specific frequency component corresponding to that peak point. In the emotion spectrum vector, each dimensional index k corresponds to a specific emotion fluctuation frequency, and the relationship between this frequency and the actual emotion fluctuation period T is T=L / k, where L is the length of the time window. Therefore, smaller frequency positions k (e.g., k=1, 2) correspond to long-cycle emotion fluctuations (e.g., monthly cycle, bi-weekly cycle), reflecting the user's deep emotional tone; medium frequency positions k (e.g., k=4-6) correspond to medium-cycle emotion fluctuations (e.g., weekly cycle), reflecting the user's emotional patterns related to work and life rhythms; larger frequency positions k (e.g., k=10 and above) correspond to short-cycle emotion fluctuations (e.g., daily cycle, hourly fluctuations), reflecting the user's immediate emotional response characteristics.
[0082] The preset length is the search window width set for each peak point of the first user. For example, if the frequency position of peak point A is k_A i If the preset length is 2 dimensions, then the actual search dimension index range is [k_A]. i -2,k_A i +2], this interval contains: k_A i -2、k_A i -1、k_A i k_A i +1、k_A i The system uses five discrete dimensional points (+2) with a range of four dimensions (i.e., a maximum index difference of 4). It can traverse all dimensions within this five-dimensional neighborhood to find the maximum energy value of the candidate user's emotion spectrum vector. By setting a search window with a radius of 2, the system can capture potential resonances within a frequency range of ±2, maintaining sufficient fault tolerance while avoiding the introduction of irrelevant frequency components due to an excessively large window.
[0083] The second preset energy value is a threshold parameter used in the candidate user's emotion spectrum vector to determine whether the maximum energy value found has sufficient strength. This threshold filters out frequency components with excessively low energy, preventing weak energy fluctuations, possibly caused by noise, from being misjudged as valid resonance. After the system finds the maximum energy value within the candidate user's search range, it needs to determine if the maximum energy value is greater than or equal to the second preset energy value: if the maximum energy value is greater than or equal to the second preset energy value, it is considered that the candidate user does indeed have valid energy in that frequency neighborhood, and the resonance score continues to be calculated; if the maximum energy value is less than the second preset energy value, it is considered that the candidate user's energy near that frequency is too low, failing to meet the basic conditions for resonance, and the corresponding resonance score is 0. The resonance score indicates the energy value difference between the candidate user and the first user; the first preset energy value is greater than the second preset energy value.
[0084] In one embodiment of this application, the resonance score can be calculated by first calculating the average value between the energy value of the peak point and the maximum energy value of the candidate user; then calculating the resonance score based on the frequency position of the peak point, the frequency position corresponding to the maximum energy value, and the average value; wherein, the smaller the deviation between the frequency position of the peak point and the frequency position corresponding to the maximum energy value, the higher the resonance score.
[0085] Specifically, the average value between the peak energy value and the maximum energy value of the candidate user can be the geometric mean. This is because when one of the two values is very small, the geometric mean will decrease significantly, approaching zero. This characteristic aligns with the essential requirement of "resonance," which necessitates strong energy output from both sides simultaneously. If one side has extremely low energy (even if the other side has high energy), true resonance cannot be achieved.
[0086] The absolute difference between the frequency position of the peak point and the frequency position corresponding to the maximum energy value reflects the degree of alignment between two users at a specific emotional frequency. A deviation of 0 indicates that the two are perfectly aligned at that frequency, and the resonance is ideal. The larger the deviation, the more inconsistent the main emotional rhythm frequencies of the two are, and the worse the resonance effect.
[0087] For example, firstly, the geometric mean between the energy value of the first user and the maximum energy value of the candidate user is calculated. Then, the absolute deviation between the frequency position of the first user's peak point and the frequency position corresponding to the maximum energy value of the candidate user is calculated. A frequency proximity penalty term is then calculated based on this absolute deviation and a preset radius. Specifically, this penalty term can be the result of subtracting the ratio between the absolute deviation and the preset radius. When the frequencies of both users are perfectly aligned, the absolute deviation is zero, the penalty term is one, and there is no attenuation to the resonance score. As the frequency deviation increases, the penalty term decreases linearly. When the deviation reaches the preset radius, the penalty term decays to zero. Finally, the geometric mean is multiplied by the frequency penalty term to obtain the resonance score corresponding to the peak point. The resonance score calculated in this way reflects both the energy contribution intensity of both users at a specific frequency and quantifies the degree of frequency alignment between them.
[0088] In one embodiment of this application, after calculating the resonance score, an emotional resonance index between the candidate user and the first user can be calculated based on the score. Specifically, the frequency position corresponding to each peak point identified in the first user's emotional spectrum vector is obtained, and a weighting coefficient is determined based on the frequency band to which that position belongs. Then, the resonance score of each peak point is multiplied by its corresponding weighting coefficient to obtain the weighted resonance score for that peak point. After completing the weighted calculation for all peak points, all weighted resonance scores are summed to obtain a weighted total score. Simultaneously, the weighting coefficients corresponding to all peak points are summed to obtain a weighted total score. Finally, the weighted total score is divided by the weighted total score to obtain the normalized emotional resonance index.
[0089] Figure 5A This illustration schematically shows a frequency weighting diagram provided in one embodiment of the present application, such as... Figure 5A As shown, the impact of different frequencies of emotional fluctuations on long-term emotional relationships varies significantly: low-frequency components correspond to long-term emotional fluctuations (such as weekly or monthly cycles), reflecting the user's deep emotional tone and stable personality traits, and have the strongest predictive effect on the stability of long-term relationships, thus being assigned the highest weight of 1.5; mid-frequency components correspond to medium-term emotional fluctuations, reflecting the user's emotional patterns related to work and life rhythms, and are assigned a medium weight of 1.0; high-frequency components correspond to short-term emotional fluctuations, reflecting the user's immediate emotional sensitivity, and have a relatively weaker impact on long-term relationships, thus being assigned a lower weight of 0.5. Thus, the emotional resonance index calculated based on this weighting coefficient comprehensively reflects the degree of resonance between the first user and the candidate users at all peak points, with the resonance contribution of deep emotional tone being strengthened and the resonance contribution of immediate emotional response being moderately weakened, making the final emotional resonance index more consistent with psychological principles and able to more accurately predict the compatibility of long-term emotional relationships.
[0090] In one embodiment of this application, after calculating the spectral similarity and the emotional resonance index, the comprehensive matching score of each candidate user can be determined based on the spectral similarity, the emotional resonance index, and the user profile similarity; then, all candidate users are sorted based on the comprehensive matching score to obtain the sorting result for determining the second user matching the first user.
[0091] Specifically, user profile similarity refers to the similarity calculated based on users' static attribute information and interest tags. It mainly includes the following categories of information: First, interest tag similarity, calculated by comparing the degree of overlap between user-filled interest tags (such as "music," "sports," "reading," and "travel") or those extracted by the system through behavioral analysis. Jaccard similarity coefficients or cosine similarity are typically used. Second, basic attribute matching, including the degree of matching of structured information such as age, occupation, educational background, and location. Third, social behavior preferences, such as users' preferences for specific types of content and active time periods. The value range of user profile similarity is usually normalized to [0,1] or [0,100], with higher values indicating a higher degree of compatibility between two users in terms of user profile dimensions.
[0092] The comprehensive matching score comprehensively reflects the degree of matching between each candidate user and the first user across three dimensions: spectral similarity, emotional resonance index, and user profile similarity. The score range can be normalized to [0,1] or [0,100]. A higher score indicates a higher degree of comprehensive matching between the two users, making them more suitable as recommendation targets. The ranking result is a list of candidate users sorted in descending order of their comprehensive matching scores. The ranking result includes each candidate user's user identifier and corresponding comprehensive matching score, as well as any accompanying auxiliary information (such as resonance index sub-items, spectral similarity sub-items, etc.).
[0093] For example, the comprehensive matching score can be calculated by first obtaining the social scene type selected by the first user, and then determining the weights of the spectrum similarity, emotional resonance index and user profile similarity according to the social scene type; and then weighting and summing the spectrum similarity, emotional resonance index and user profile similarity corresponding to each candidate user based on the weights to obtain the comprehensive matching score of the candidate user.
[0094] Specifically, the social scenario type refers to the scenario category selected by the first user when initiating a matching request, reflecting their current social purpose, such as... Figure 5BAs shown, the specific types of social scenarios include: "Finding a soulmate," which is suitable for users seeking deep emotional connections, and the emotional resonance index has the highest weight in this scenario; secondly, "Finding a long-term partner," which is suitable for users seeking stable relationships, and the emotional resonance index still dominates but has a slightly lower weight than the soulmate scenario; thirdly, "Finding interest partners," which is suitable for users who want to expand their circle of interests, and the user profile similarity has the highest weight in this scenario; and fourthly, "Random exploration," which is suitable for users without a clear goal, with the weights of the three types of indicators set in a balanced manner.
[0095] For example, the overall matching score of the same pair of users will change accordingly under different social scenario types due to the dynamic adjustment of weight coefficients. Suppose user A is a 30-year-old male who initiates matching requests for two different social scenario types: "Finding Interest Partners" and "Finding a Soulmate." For the same candidate user B, the system calculates the core matching indicators between the two: emotional resonance index of 0.40, spectral similarity of 0.65, and user profile similarity of 0.90. When user A selects the "Finding Interest Partners" scenario, the system retrieves the weight coefficients for that scenario: emotional resonance index weight of 0.20, spectral similarity weight of 0.30, and user profile similarity weight of 0.50. According to the overall matching score formula, the overall matching score is calculated to be 0.725. In this scenario, user B, with its high user profile similarity of 0.90 with user A, receives a higher score and is included in the recommendation list and given priority recommendation. When user A selects the "Finding a Soulmate" scenario, the system retrieves the weighted coefficients for that scenario: emotional resonance index weight is 0.60, spectral similarity weight is 0.25, and user profile similarity weight is 0.15. The recalculated overall matching score is 0.54. In this scenario, user B's ranking drops due to their lower emotional resonance index, and the system will prioritize recommending other candidate users with higher emotional resonance indices.
[0096] As can be seen from this example, the overall matching scores for the same pair of users in the "finding interest partners" and "finding a soulmate" scenarios are 0.725 and 0.54, respectively. Therefore, the system can dynamically adjust the weights of each matching indicator based on the user's current social needs, prioritizing users with similar interests in the "finding interest partners" scenario and prioritizing users with resonant emotional rhythms in the "finding a soulmate" scenario, thereby improving the matching accuracy in different scenarios.
[0097] Figure 6 A user matching flowchart provided in an embodiment of this application is illustrated schematically. Figure 6As shown, the user matching process provided in this embodiment starts from receiving a user matching request initiated by a first user. First, it retrieves all candidate users who meet the first user's preset preference conditions from the user database. Then, it reads the emotional spectrum vectors of the first user and each candidate user from the emotional spectrum database, and calculates the emotional resonance index and spectrum similarity based on these two sets of vectors. Next, it enters the resonance matrix construction stage, organizing the emotional resonance indices between the first user and each candidate user into a matrix form, providing a data foundation for subsequent group analysis. Based on this, it obtains the weight coefficients corresponding to the social scene type selected by the first user, and combines them with the user profile similarity of the candidate users, performing a weighted sum according to the comprehensive matching score calculation formula to obtain the comprehensive matching score for each candidate user. Finally, it sorts all candidate users in descending order according to the comprehensive matching score, selects the top-ranked candidate users to generate a recommendation list, and returns this recommendation list to the first user's terminal for display.
[0098] For example, user C initiates a user matching request and filters out a candidate user D. Then, based on the emotional spectrum vectors of user C and user D, the spectrum similarity between them is calculated as S_spec(C,D)=0.72, indicating that the emotional spectrum vectors of the two users are relatively close in overall distribution and their emotional patterns have a certain degree of similarity. Next, the calculation phase of the emotional resonance index begins. Peak detection is performed on user C's emotional spectrum vector to identify the top five peaks in energy value: The first peak is located at frequency k=2 with an energy value of 0.90, corresponding to a long-term emotional rhythm of approximately 15 days, belonging to the low-frequency component; the second peak is located at frequency k=5 with an energy value of 0.75, corresponding to a long-term emotional rhythm of approximately 6 days, also belonging to the low-frequency component; the third peak is located at frequency k=9 with an energy value of 0.60, corresponding to a medium-term emotional rhythm of approximately 3 days, belonging to the medium-frequency component; the fourth peak is located at frequency k=14 with an energy value of 0.45, corresponding to a short-term emotional rhythm of approximately 2 days, belonging to the high-frequency component; and the fifth peak is located at frequency k=21 with an energy value of 0.30, corresponding to a short-term emotional rhythm of approximately 1 day, also belonging to the high-frequency component. Based on the frequency band to which the components belong, low-frequency components are assigned a weighting coefficient of 1.5, medium-frequency components are assigned a weighting coefficient of 1.0, and high-frequency components are assigned a weighting coefficient of 0.5.
[0099] For each peak point of user C, the system searches the neighborhood of user D's emotional spectrum vector, using the frequency position of that peak point as the center and a preset radius of 2 as the window width, for the maximum energy value and its corresponding frequency position, and determines whether it exceeds a preset energy threshold. For the first peak point (frequency position k=2, energy value 0.90), the system searches the neighborhood range in user D's spectrum vector and finds a maximum energy value of 0.85, located at frequency position k=2, which is exactly the same as the frequency position of user C's peak point, with a frequency deviation of 0, and exceeds the preset energy threshold. The resonance score for this peak point is calculated as 0.874 according to the resonance score calculation formula. For the second peak point (frequency position k=5, energy value 0.75), the system searches the neighborhood range in user D's spectrum vector and finds a maximum energy value of 0.70, located at frequency position k=6, with a frequency deviation of 1 from user C's peak point, exceeding the preset energy threshold, and the resonance score for this peak point is 0.362. For the third peak point (frequency position k=9, energy value 0.60), a neighborhood search is performed in user D's spectrum vector, finding a maximum energy value of 0.55 at frequency position k=9 with a frequency deviation of 0, exceeding the preset energy threshold, and the resonance score for this peak point is 0.574. For the fourth peak point (frequency position k=14, energy value 0.45), a neighborhood search is performed in user D's spectrum vector, finding a maximum energy value of 0.08, below the preset energy threshold, therefore no resonance occurs at this peak point, and the resonance score is 0. For the fifth peak point (frequency position k=21, energy value 0.30), a neighborhood search is performed in user D's spectrum vector, finding a maximum energy value of 0.25 at frequency position k=22 with a frequency deviation of 1, exceeding the preset energy threshold, and the resonance score for this peak point is 0.137.
[0100] After calculating the resonance scores for all peak points, the system weights and sums the scores according to their respective weighting coefficients, resulting in an emotional resonance index of 0.555 between users C and D. This indicates that users C and D have a moderate degree of synchronous resonance in the dominant emotional frequencies, and that they resonate with each other on some key emotional rhythms, but their matching degree is insufficient on other frequencies. Therefore, the user profile similarity between users C and D is further obtained, which is 0.55. Assuming that user C's current selected social scenario type is "finding a soulmate," the system retrieves the preset weighting coefficients based on this scenario type and calculates a comprehensive matching score of 0.664.
[0101] In one embodiment of this application, after calculating the comprehensive matching score, the emotional spectrum vectors of each candidate user and the first user in multiple historical time windows can be obtained; then, based on the emotional spectrum vectors, the emotional fluctuation characteristics of the candidate user and the first user in multiple historical time windows are obtained respectively; finally, the comprehensive matching score is adjusted based on the emotional fluctuation characteristics, and all candidate users are sorted according to the adjusted comprehensive matching score to obtain the sorting result.
[0102] Specifically, multiple historical time windows are sets of time periods corresponding to multiple emotional spectrum vectors arranged chronologically, which the system retains for each user. Each window corresponds to a specific time period (e.g., week 1, week 2, week 3, week 4), and each window contains an emotional spectrum vector generated within that time period. During the generation of emotional spectrum vectors, the system repeats the generation and storage process of emotional spectrum vectors at a preset cycle (e.g., every 7 days), and retains emotional spectrum vectors for a preset number of time windows for each user (e.g., time window 4 corresponds to the data of the most recent 28 days).
[0103] Emotional fluctuation features characterize the emotional stability of candidate users or the first user across multiple historical time windows. For example, emotional fluctuation features can be obtained by first iterating through the emotional spectrum vectors of each user (including the first user and candidate users) across all their historical time windows, calculating the cosine similarity between adjacent time windows or between all pairs of time windows, resulting in a set of similarity values. This set of similarity values reflects the stability of the user's emotions. If the similarity values are generally high and the fluctuations are small, it indicates that the user's emotional rhythm remains highly consistent across different time periods, indicating strong emotional stability. If the similarity values are generally low or the fluctuations are large, it indicates that the user's emotional pattern changes significantly over time, indicating weak emotional stability. In practical applications, the average of this set of similarity values is usually taken as the quantification value of the user's emotional fluctuation features. The closer the average value is to 1, the more stable the user's emotions; the closer it is to 0, the greater the emotional fluctuations.
[0104] After obtaining the emotional fluctuation characteristics of each user, the overall matching scores of each user can be re-ranked to obtain a new ranking result. First, a preset stability weight is obtained, which controls the contribution of temporal stability to the final matching score. Then, the products of the initial overall matching score, the stability weight, and the quantified values of the emotional fluctuation characteristics are added together to obtain a revised overall matching score. Finally, the candidate users are ranked according to the revised overall matching score to obtain a new ranking result. One or more top-ranked candidate users are then selected as second users, forming a recommendation list that is sent to the first user's terminal.
[0105] In this way, through this correction process, candidate users who have historically maintained emotional synchronization with the first user will receive an additional score bonus, thus gaining a higher ranking; while those candidate users who currently match in emotion but have historically unstable emotional synchronization will be ranked lower. That is, the corrected overall matching score more comprehensively reflects the long-term compatibility of both parties in the emotional dimension, resulting in a higher degree of matching in user recommendations.
[0106] In one embodiment of this application, during the process of sorting all candidate users based on a comprehensive matching score to obtain a ranking result, if the difference in the comprehensive matching score between the first candidate user and the second candidate user is within a preset range, then the first phase value of the first user at the frequency position corresponding to the peak point, the second phase value of the first candidate user at the same frequency position as the peak point, and the third phase value of the second candidate user at the same frequency position as the peak point are obtained; the first phase difference between the first phase value and the second phase value, and the second phase difference between the first phase value and the third phase value are calculated respectively; the recommendation type of the first user is obtained, and the first candidate user and the second candidate user are ranked according to the recommendation type, the first phase difference, and the second phase difference; wherein, the phase difference between the second user and the first user matched under different recommendation types is different.
[0107] Specifically, the overall matching score difference refers to the absolute value of the difference between the overall matching scores calculated by the first candidate user and the second candidate user with the first user. The preset range is a pre-defined numerical range used to determine whether the overall matching scores of the two candidate users are "similar". When the difference in the overall matching scores of the two candidate users is within the preset range, it indicates that the two are roughly equal in overall matching degree, and the overall matching score alone cannot effectively distinguish between them.
[0108] Phase value refers to the phase spectrum information obtained through discrete Fourier transform when extracting frequency domain features from a user's multimodal data. The phase spectrum represents the starting position or offset of the frequency location on the time axis. The phase value typically ranges from [0, 2π), reflecting the alignment of the user's emotional fluctuations on the time axis.
[0109] Phase difference refers to the absolute value of the phase difference between two users at the same frequency position. It can characterize the degree of temporal alignment between the two users on the same emotional rhythm. If the first phase difference is close to 0, it means that the emotional fluctuations of the first user and the first candidate user are in sync, and they are in similar emotional states at the same time. If the first phase difference is close to π, it means that the emotional fluctuations of the first user and the first candidate user are out of sync, with one user's high mood and the other's low mood. Similarly, the second phase difference can represent the consistency of the emotional fluctuations between the first user and the second candidate user, which will not be elaborated here.
[0110] Recommendation types include a first recommendation type and a second recommendation type. The first recommendation type corresponds to a smaller phase difference, meaning the user wants to find people with similar emotional states to gain deep resonance and a sense of being understood. The second recommendation type corresponds to a phase difference closer to π (180 degrees), meaning the user wants to find people with opposite emotional states to gain emotional complementarity, support, and comfort. Recommendation types can be obtained through option buttons, sliders, or drop-down menus on the user's terminal interface, allowing users to select based on their current social needs.
[0111] For example, when the recommendation type is the first recommendation type: the system compares the first phase difference and the second phase difference, ranking candidate users with smaller phase differences higher. This means the system prioritizes recommending candidate users whose emotional state is more similar to the first user, satisfying the user's need for "resonance". When the recommendation type is the second recommendation type: the system compares the first and second phase differences to how close they are to π (180 degrees), ranking candidate users whose phase differences are closer to π higher. This means the system prioritizes recommending candidate users whose emotional state is more complementary to the first user, satisfying the user's need for "complementarity".
[0112] When the overall matching scores of multiple candidate users are difficult to distinguish, this embodiment will perform a secondary sorting of candidate users based on the recommendation type selected by the first user. If the user selects the first recommendation type, users with smaller phase differences will be prioritized, making the matching results more inclined towards resonant individuals with similar emotional states. If the user selects the second recommendation type, users with larger phase differences or close to a preset value will be prioritized, making the matching results more inclined towards supportive individuals with complementary emotional states. In this way, the overall matching score is maintained as the dominant criterion for ranking, avoiding the unreasonable situation where secondary factors overturn primary factors. At the same time, the introduction of phase differences enables a refined response to users' personalized needs, making the matching results more accurately match the user's immediate social intentions, and significantly improving user experience and matching satisfaction.
[0113] In one embodiment of this application, the emotional spectrum vectors of multiple users can also be obtained from an emotional spectrum database; an emotional resonance index between each pair of users can be calculated based on the emotional spectrum vectors; the emotional resonance index is used to indicate the similarity of the emotional cycle patterns between two users; and an emotional resonance matrix is constructed based on the emotional resonance index.
[0114] Specifically, the emotion resonance matrix is used to indicate the similarity of emotional cycle patterns among multiple users. For a set of M users, the resonance matrix RM is an M×M symmetric matrix, with its rows and columns corresponding to the M users. The matrix element RM(i,j) is the emotion resonance index between user i and user j. The range of values for the matrix element RM(i,j) is consistent with the range of values for the emotion resonance index, usually normalized to the interval [0,1] or [0,100]. The larger the value, the higher the degree of resonance between user i and user j in terms of emotional rhythm, and the better the emotional compatibility. Since the emotion resonance index between user A and user B is equal to the emotion resonance index between user B and user A, the emotion resonance matrix also has symmetry, that is, RM(i,j) = RM(j,i) holds for any i and j. Symmetry allows only the upper or lower triangular part of the matrix to be calculated in the actual calculation process, thereby reducing the amount of calculation by nearly half and improving computational efficiency.
[0115] For example, after constructing the emotion resonance matrix, it can be used for group matching. That is, spectral clustering analysis is performed on the emotion resonance matrix to automatically identify and classify users with high emotion resonance indices into user groups with high emotional compatibility, thereby realizing community recommendation based on the similarity of emotional rhythms. In addition, transitive matching can also be realized. That is, based on the known resonance indices between users in the resonance matrix, the potential emotional compatibility between two users that have not yet been directly calculated can be inferred through matrix operations or graph propagation algorithms. For example, if user A and user B have high resonance, and user B and user C have high resonance, it can be inferred that there may be a certain degree of resonance relationship between A and C.
[0116] This application's technical solution introduces two core concepts: "emotional spectrum" and "resonance index," enabling a more nuanced and dynamic depiction of users' inner emotional patterns. This represents a leap from "identifying current emotional states" to "understanding the intrinsic rhythms of emotions." Furthermore, by calculating the "resonance index," individuals highly synchronized in their emotional rhythms can be identified, achieving deeper emotional matching beyond interest tags and significantly improving user social satisfaction. Moreover, the user's emotional spectrum vector can be dynamically updated over time, and the weights of the matching algorithm can be adaptively adjusted according to the social context, ensuring that the recommendation results consistently align with the user's current real needs. Compared to collaborative filtering based solely on behavioral data, the emotional spectrum vector of this invention can be directly generated from the user's historical text data, eliminating the need to wait for users to accumulate large amounts of behavioral data on the platform. This effectively alleviates the cold start problem for new users and improves the overall user experience of the social platform.
[0117] It should be noted that although the steps of the method in this application are described in a specific order in the accompanying drawings, this does not require or imply that the steps must be performed in that specific order, or that all the steps shown must be performed to achieve the desired result. Additional or alternative steps may be omitted, multiple steps may be combined into one step, and / or one step may be broken down into multiple steps.
[0118] The following describes an embodiment of the apparatus of this application, which can be used to execute the user matching method in the above embodiments of this application. Figure 7 A schematic block diagram of the user matching device provided in an embodiment of this application is shown. Figure 7 As shown, the user matching device provided in this application embodiment includes: The data acquisition module 710 is used to acquire multimodal data of the first user; the multimodal data includes data from different information channels used to indicate the emotional state of the first user; The feature extraction module 720 is used to extract features from the multimodal data to obtain multiple emotional features; the emotional features represent the emotional state of the first user. The feature fusion module 730 is used to fuse the multiple emotional features to generate an emotional spectrum vector; the emotional spectrum vector represents the emotional cycle pattern of the first user. User matching module 740 is used to match a second user with the first user based on the emotion spectrum vector.
[0119] In one embodiment of this application, the feature extraction module 720 is specifically used for: The multimodal data is preprocessed to obtain multiple time series; wherein, each type of modal data corresponds to a time series, and each time series includes preprocessed single-modal data arranged in a preset time order; Frequency domain features are extracted from the multiple time series to obtain multiple frequency domain feature vectors as emotion features; the frequency domain feature vectors represent the periodic emotion changes of the first user.
[0120] In one embodiment of this application, the feature fusion module 730 is specifically used for: The multiple emotional features are projected onto the same dimensional space, and the projected emotional features are then concatenated to obtain a feature sequence. The feature sequence is processed based on an attention mechanism to obtain the correlation between various emotional features in the feature sequence; The processed feature sequence is input into a neural network, and the output of the neural network is normalized to obtain an emotion spectrum vector.
[0121] In one embodiment of this application, the user matching module 740 is specifically used for: Based on the user matching request initiated by the first user, candidate users who meet the preset preference conditions of the first user are selected from the user database; Obtain the emotion spectrum vectors of the first user and the candidate users, and sort the candidate users according to the emotion spectrum vectors to obtain the sorting result; Based on the sorting results, a second user matching the first user is selected from the candidate users.
[0122] In one embodiment of this application, the user matching module 740 is specifically used for: Calculate the cosine value between the emotion spectrum vector of each candidate user and the emotion spectrum vector of the first user, and use it as the spectrum similarity. Calculate the emotional resonance index between each candidate user and the first user; the emotional resonance index is used to indicate the similarity of the emotional cycle patterns between the candidate user and the first user. All candidate users are ranked based on the spectral similarity and the emotional resonance index to obtain the ranking results.
[0123] In one embodiment of this application, the user matching module 740 is specifically used for: Based on the first user's emotional spectrum vector, multiple peak points with energy values greater than a first preset energy value are identified, and the frequency positions of the multiple peak points in the emotional spectrum vector are obtained; the frequency positions are used to indicate the emotional fluctuation cycle in which the multiple peak points occur; For each peak point, in the emotional spectrum vector of each candidate user, with the frequency position of the peak point as the center and a preset length as the radius, the maximum energy value in the emotional spectrum vector corresponding to the candidate user is searched. If the maximum energy value is greater than the second preset energy value, then a resonance score is calculated based on the energy value of the first user at the peak point and the maximum energy value of the candidate user; wherein, the resonance score is used to indicate the energy difference between the candidate user and the first user; the first preset energy value is greater than the second preset energy value; The emotional resonance index between the first user and the candidate user is calculated based on the resonance score corresponding to each candidate user.
[0124] In one embodiment of this application, the user matching module 740 is specifically used for: Calculate the average value between the energy value at the peak point and the maximum energy value of the candidate user; The resonance score is calculated based on the frequency position of the peak point, the frequency position corresponding to the maximum energy value, and the average value; wherein the difference between the frequency position of the peak point and the frequency position corresponding to the maximum energy value is negatively correlated with the resonance score.
[0125] In one embodiment of this application, the user matching module 740 is specifically used for: A comprehensive matching score for each candidate user is determined based on the spectral similarity, the emotional resonance index, and the user profile similarity; the comprehensive matching score represents the degree of matching between each candidate user and the first user. All candidate users are ranked based on the comprehensive matching score to obtain the ranking result.
[0126] In one embodiment of this application, the user matching module 740 is specifically used for: Obtain the social scene type selected by the first user, and determine the weights corresponding to the spectrum similarity, the emotional resonance index, and the user profile similarity based on the social scene type; Based on the weights, the spectral similarity, the emotional resonance index, and the user profile similarity corresponding to each candidate user are weighted and summed to obtain the comprehensive matching score of the candidate user.
[0127] In one embodiment of this application, the user matching module 740 is specifically used for: Obtain the sentiment spectrum vector of each candidate user and the first user in multiple historical time windows; Based on the emotion spectrum vector, the emotion fluctuation characteristics of the candidate user and the first user in the multiple historical time windows are obtained respectively; the emotion fluctuation characteristics characterize the degree of emotional stability of the candidate user or the first user in the multiple historical time windows. The overall matching score is adjusted based on the emotional fluctuation characteristics, and all candidate users are ranked according to the adjusted overall matching score to obtain the ranking result.
[0128] In one embodiment of this application, the user matching module 740 is specifically used for: If the difference in the comprehensive matching score between the first candidate user and the second candidate user is within a preset range, then obtain the first phase value of the first user at the frequency position corresponding to the peak point, the second phase value of the first candidate user at the same frequency position as the peak point, and the third phase value of the second candidate user at the same frequency position as the peak point. Calculate the first phase difference between the first phase value and the second phase value, and the second phase difference between the first phase value and the third phase value, respectively; Obtain the recommendation type of the first user, and sort the first candidate user and the second candidate user according to the recommendation type, the first phase difference and the second phase difference; wherein the phase difference between the second user and the first user matched under different recommendation types is different.
[0129] In one embodiment of this application, the user matching module 740 is specifically used for: Obtain the sentiment spectrum vectors of multiple users; The emotional resonance index is calculated between every two users among the plurality of users based on the emotional spectrum vector; the emotional resonance index is used to indicate the similarity of the emotional cycle patterns between two users. An emotion resonance matrix is constructed based on the emotion resonance index; the emotion resonance matrix is used to indicate the similarity of the emotional cycle patterns among the multiple users.
[0130] The specific details of the user matching device provided in the various embodiments of this application have been described in detail in the corresponding method embodiments, and will not be repeated here.
[0131] Figure 8 A schematic diagram of the computer system architecture used to implement the technical solution of this application is shown.
[0132] It should be noted that, Figure 8 The computer system 800 shown is merely an example and should not impose any limitation on the functionality and scope of use of the embodiments of this application.
[0133] like Figure 8 As shown, the computer system 800 includes a central processing unit (CPU) 801, which can perform various appropriate actions and processes based on programs stored in read-only memory (ROM) 802 or programs loaded from storage section 807 into random access memory (RAM). The random access memory 803 also stores various programs and data required for system operation. The CPU 801, ROM 802, and RAM 803 are interconnected via a bus 804. An input / output interface 805 (I / O interface) is also connected to the bus 804.
[0134] The following components are connected to the input / output interface 805: an input section 806 including a keyboard, mouse, etc.; an output section 807 including a cathode ray tube (CRT), liquid crystal display (LCD), etc., and speakers, etc.; a storage section 808 including a hard disk, etc.; and a communication section 809 including a network interface card such as a local area network card, modem, etc. The communication section 809 performs communication processing via a network such as the Internet. A drive 810 is also connected to the input / output interface 805 as needed. A removable medium 811, such as a disk, optical disk, magneto-optical disk, semiconductor memory, etc., is installed on the drive 810 as needed so that computer programs read from it can be installed into the storage section 808 as needed.
[0135] It should be noted that the computer-readable medium shown in the embodiments of this application can be a computer-readable signal medium or a computer-readable storage medium, or any combination of the two. A computer-readable storage medium can be, for example,—but not limited to—an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination thereof. More specific examples of a computer-readable storage medium may include, but are not limited to: an electrical connection having one or more wires, a portable computer disk, a hard disk, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM), flash memory, optical fiber, portable compact disc read-only memory (CD-ROM), optical storage device, magnetic storage device, or any suitable combination thereof. In this application, a computer-readable storage medium can be any tangible medium containing or storing a program that can be used by or in conjunction with an instruction execution system, apparatus, or device. In this application, a computer-readable signal medium can include a data signal propagated in baseband or as part of a carrier wave, carrying computer-readable program code. Such transmitted data signals can take various forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination thereof. The computer-readable signal medium can also be any computer-readable medium other than a computer-readable storage medium, which can send, propagate, or transmit a program for use by or in connection with an instruction execution system, apparatus, or device. The program code contained on the computer-readable medium can be transmitted using any suitable medium, including but not limited to wireless, wired, etc., or any suitable combination thereof.
[0136] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of this application. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of code containing one or more executable instructions for implementing a specified logical function. It should also be noted that in some alternative implementations, the functions indicated in the blocks may occur in a different order than those indicated in the drawings. For example, two consecutively indicated blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in a block diagram or flowchart, and combinations of blocks in a block diagram or flowchart, may be implemented using a dedicated hardware-based system that performs the specified function or operation, or using a combination of dedicated hardware and computer instructions.
[0137] It should be noted that although several modules or units for the device used to perform actions have been mentioned in the detailed description above, this division is not mandatory. In fact, according to the embodiments of this application, the features and functions of two or more modules or units described above can be embodied in one module or unit. Conversely, the features and functions of one module or unit described above can be further divided and embodied by multiple modules or units.
[0138] Through the above description of the embodiments, those skilled in the art will readily understand that the exemplary embodiments described herein can be implemented by software or by combining software with necessary hardware. Therefore, the technical solutions according to the embodiments of this application can be embodied in the form of a software product, which can be stored in a non-volatile storage medium (such as a CD-ROM, USB flash drive, external hard drive, etc.) or on a network, including several instructions to cause a computing device (such as a personal computer, server, touch terminal, or network device, etc.) to execute the method according to the embodiments of this application.
[0139] Other embodiments of this application will readily occur to those skilled in the art upon consideration of the specification and practice of the invention disclosed herein. This application is intended to cover any variations, uses, or adaptations of this application that follow the general principles of this application and include common knowledge or customary techniques in the art not disclosed herein.
[0140] It should be understood that this application is not limited to the precise structure described above and shown in the accompanying drawings, and various modifications and changes can be made without departing from its scope. The scope of this application is limited only by the appended claims.
Claims
1. A user matching method, characterized by, include: Acquire multimodal data of a first user; the multimodal data includes data from different information channels used to indicate the emotional state of the first user; Feature extraction is performed on the multimodal data to obtain multiple emotional features; the emotional features represent the emotional state of the first user. The multiple emotional features are fused to generate an emotional spectrum vector; the emotional spectrum vector represents the emotional cycle pattern of the first user. The first user is matched with a second user based on the emotion spectrum vector.
2. The user matching method according to claim 1, characterized in that, The process of extracting features from the multimodal data to obtain multiple emotional features includes: The multimodal data is preprocessed to obtain multiple time series; wherein each type of data corresponds to a time series, and each time series includes preprocessed single-modal data arranged in a preset time order; Frequency domain features are extracted from the multiple time series to obtain multiple frequency domain feature vectors as emotion features; the frequency domain feature vectors represent the periodic emotion changes of the first user.
3. The user matching method according to claim 1, characterized in that, The process of fusing multiple emotional features to generate an emotional spectrum vector includes: The multiple emotional features are projected onto the same dimensional space, and the projected emotional features are then concatenated to obtain a feature sequence. The feature sequence is processed based on an attention mechanism to obtain the correlation between various emotional features in the feature sequence; The processed feature sequence is input into a neural network, and the output of the neural network is normalized to obtain an emotion spectrum vector.
4. The user matching method according to claim 1, characterized in that, The step of matching the first user with the second user based on the emotion spectrum vector includes: Based on the user matching request initiated by the first user, candidate users who meet the preset preference conditions of the first user are selected from the user database; Obtain the emotion spectrum vectors of the first user and the candidate users, and sort the candidate users according to the emotion spectrum vectors to obtain the sorting result; Based on the sorting results, a second user matching the first user is selected from the candidate users.
5. The user matching method according to claim 4, characterized in that, The step of sorting the candidate users according to the emotion spectrum vector to obtain a sorting result includes: Calculate the cosine value between the emotion spectrum vector of each candidate user and the emotion spectrum vector of the first user, and use it as the spectrum similarity. Calculate the emotional resonance index between each candidate user and the first user; the emotional resonance index is used to indicate the similarity of the emotional cycle patterns between the candidate user and the first user. All candidate users are ranked based on the spectral similarity and the emotional resonance index to obtain the ranking results.
6. The user matching method according to claim 5, characterized in that, The calculation of the emotional resonance index between each candidate user and the first user includes: Based on the first user's emotional spectrum vector, multiple peak points with energy values greater than a first preset energy value are identified, and the frequency positions of the multiple peak points in the emotional spectrum vector are obtained; the frequency positions are used to indicate the emotional fluctuation cycle in which the multiple peak points occur; For each peak point, in the emotional spectrum vector of each candidate user, with the frequency position of the peak point as the center and a preset length as the radius, the maximum energy value in the emotional spectrum vector corresponding to the candidate user is searched. If the maximum energy value is greater than the second preset energy value, then a resonance score is calculated based on the energy value of the first user at the peak point and the maximum energy value of the candidate user; wherein, the resonance score is used to indicate the energy difference between the candidate user and the first user; the first preset energy value is greater than the second preset energy value; The emotional resonance index between the first user and the candidate user is calculated based on the resonance score corresponding to each candidate user.
7. The user matching method according to claim 6, characterized in that, The calculation of the resonance score based on the energy value of the first user at the peak point and the maximum energy value of the candidate user includes: Calculate the average value between the energy value at the peak point and the maximum energy value of the candidate user; The resonance score is calculated based on the frequency position of the peak point, the frequency position corresponding to the maximum energy value, and the average value; wherein the difference between the frequency position of the peak point and the frequency position corresponding to the maximum energy value is negatively correlated with the resonance score.
8. The user matching method according to claim 5, characterized in that, The ranking of all candidate users based on the spectral similarity and the emotional resonance index to obtain the ranking result includes: A comprehensive matching score for each candidate user is determined based on the spectral similarity, the emotional resonance index, and the user profile similarity; the comprehensive matching score represents the degree of matching between each candidate user and the first user. All candidate users are ranked based on the comprehensive matching score to obtain the ranking result.
9. The user matching method according to claim 8, characterized in that, The determination of the comprehensive matching score for each candidate user based on the spectral similarity, the emotional resonance index, and the user profile similarity includes: Obtain the social scene type selected by the first user, and determine the weights corresponding to the spectrum similarity, the emotional resonance index, and the user profile similarity based on the social scene type; Based on the weights, the spectral similarity, the emotional resonance index, and the user profile similarity corresponding to each candidate user are weighted and summed to obtain the comprehensive matching score of the candidate user.
10. The user matching method according to claim 8, characterized in that, After determining the comprehensive matching score based on the spectral similarity, the emotional resonance index, and the user profile similarity, the method further includes: Obtain the sentiment spectrum vector of each candidate user and the first user in multiple historical time windows; Based on the emotion spectrum vector, the emotion fluctuation characteristics of the candidate user and the first user in the multiple historical time windows are obtained respectively; the emotion fluctuation characteristics characterize the degree of emotional stability of the candidate user or the first user in the multiple historical time windows. The overall matching score is adjusted based on the emotional fluctuation characteristics, and all candidate users are ranked according to the adjusted overall matching score to obtain the ranking result.
11. The user matching method according to claim 8, characterized in that, In the process of sorting all candidate users based on the comprehensive matching score to obtain the sorting result, the method further includes: If the difference in the comprehensive matching score between the first candidate user and the second candidate user is within a preset range, then obtain the first phase value of the first user at the frequency position corresponding to the peak point, the second phase value of the first candidate user at the same frequency position as the peak point, and the third phase value of the second candidate user at the same frequency position as the peak point. Calculate the first phase difference between the first phase value and the second phase value, and the second phase difference between the first phase value and the third phase value, respectively; The recommendation type of the first user is obtained, and the first candidate user and the second candidate user are sorted according to the recommendation type, the first phase difference and the second phase difference; wherein the phase difference between the second user and the first user matched under different recommendation types is different.
12. The user matching method according to claim 1, characterized in that, After fusing the multiple emotional features to generate an emotional spectrum vector, the method further includes: Obtain the sentiment spectrum vectors of multiple users; The emotional resonance index between each pair of users is calculated based on the emotional spectrum vector; the emotional resonance index is used to indicate the similarity of the emotional cycle patterns between the two users. An emotion resonance matrix is constructed based on the emotion resonance index; the emotion resonance matrix is used to indicate the similarity of the emotional cycle patterns among the multiple users.
13. A user matching device, characterized in that, include: The data acquisition module is used to acquire multimodal data of the first user; the multimodal data includes data from different information channels used to indicate the emotional state of the first user; The feature extraction module is used to extract features from the multimodal data to obtain multiple emotional features; the emotional features represent the emotional state of the first user. The feature fusion module is used to fuse the multiple emotional features to generate an emotional spectrum vector; the emotional spectrum vector represents the emotional cycle pattern of the first user. The user matching module is used to match a second user with the first user based on the emotion spectrum vector.
14. An electronic device, characterized in that, include: Data processor; as well as A memory for storing executable instructions of the processor; wherein the processor executes the executable instructions to cause the electronic device to perform the user matching method according to any one of claims 1 to 12.
15. A computer-readable medium having a computer program stored thereon, characterized in that, When the computer program is executed by a processor, it implements the user matching method according to any one of claims 1 to 12.