A fairness course recommendation method fusing heterogeneous network and text information

CN123012270APending Publication Date: 2026-10-30HENAN UNIVERSITY
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202611229606.1
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2026-08-13
Publication Date
2026-10-30

AI Technical Summary

Technical Problem

这种僵化的融合方式无法针对不同活跃度用户群体刻画差异化的偏好,导致模型对结构特征或文本特征的利用存在系统性偏差

Benefits of technology

本发明提供了一种融合异构网络与文本信息的公平性课程推荐方法,该方法通过多模态深度挖掘与自适应融合,解决了低活跃用户数据稀疏和推荐公平性不足的问题。通过构建异构信息网络并执行加权元路径游走,将用户、课程、视频、知识点等多类实体统一建模,在低活跃用户直接交互极少的情况下,利用辅助节点信息精准捕获深层复合教育实体关系,有效缓解图结构层面的数据稀疏问题。通过对课程文本的高维语义编码及用户学习序列聚合,生成独立于图结构的内容画像,从语义层面深度刻画用户兴趣,在冷启动或交互稀疏场景下准确锁定用户兴趣方向,弥补了单纯依赖协同过滤的性能缺陷。采用门控网络在特征维度级别动态生成权重,实现结构嵌入与内容嵌入的个性化自适应融合,使模型针对不同活跃度用户自动调整信息分配策略,消除了固定权重融合对特定群体造成的系统性计算偏见,提升了特征表征的鲁棒性。基于融合后的精准用户表征,通过高维相似度计算锚定相似用户群体,安全提取其交互知识生成带有时序的增强数据,实现跨群体的个性化知识迁移,避免了传统全局填充引入的噪声,从源头消除长尾用户的样本量劣势。将增强数据与原始数据合并训练推荐模型,从训练数据层面抹平群体间样本鸿沟,使模型不再被少数高活跃用户主导,在提升全局推荐准确率的同时针对性拉升低活跃用户精度,缩小群体间性能落差,实现推荐精准性与公平性的协同优化。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN123012270A_ABST
    Figure CN123012270A_ABST
Patent Text Reader

Abstract

The application relates to the technical field of data analysis, in particular to a fairness course recommendation method fusing heterogeneous networks and text information, which comprises the following steps: acquiring multi-source entities and interactive data to construct a heterogeneous information network; defining a semantic meta path and configuring a weight, generating a structural embedding vector of a user through weighted random walk and graph representation learning; extracting course text to perform semantic coding, combining a historical interactive sequence to generate a content embedding vector; splicing the two vectors to input a gate network to generate a gate weight vector, adaptively weighting and fusing the embedding vectors to obtain a fused embedding vector; calculating the similarity of a low-active user and a candidate user based on the fused embedding vector, extracting a historical course of a target candidate user to generate enhanced interactive data; merging the enhanced interactive data and original data to input a recommendation model to train a recommendation result. The application effectively alleviates the data sparsity problem and improves the recommendation accuracy of low-active users and the overall recommendation fairness.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of data analysis technology, specifically to a fair course recommendation method that integrates heterogeneous network and text information. Background Technology

[0002] With the rapid development of online education platforms, Massive Open Online Courses (MOOCs) have accumulated massive amounts of user learning behavior data and course resource data. Recommendation systems, as a core component of online education platforms, play a crucial role in helping users discover high-quality courses and improve learning efficiency. However, in practical applications, existing online education recommendation systems face severe challenges related to data sparsity and recommendation fairness. On the one hand, most users only learn a small number of courses, forming a long-tailed, low-activity user group with extremely short behavioral sequences and insufficient feature information. This leads to a severe bias in model training towards highly active users with rich behavioral data. On the other hand, existing deep sequence recommendation models, when faced with highly imbalanced distributions of interactive behaviors, learn features with significant bias, resulting in huge performance gaps between recommendation results from different active user groups, lacking fairness.

[0003] To address the aforementioned issues of data sparsity and recommendation fairness, existing technologies typically employ content-based recommendation, collaborative filtering, graph neural networks, or recommendation methods based on a single heterogeneous graph. However, all of these methods have significant limitations, specifically: First, the multimodal feature mining and fusion mechanisms are rigid. Existing content-based recommendation ignores user behavior semantics, while collaborative filtering experiences a sharp performance drop in sparse scenarios. Although some heterogeneous graph methods based on meta-paths introduce network structure features, they often ignore the deep textual semantic information of the courses themselves. More critically, when fusing multi-source features, existing technologies generally adopt fixed-weight concatenation or fusion strategies, lacking adaptive adjustment mechanisms based on feature dimensions. This rigid fusion approach fails to characterize differentiated preferences for user groups with varying activity levels, leading to a systematic bias in the model's utilization of structural or textual features.

[0004] Second, there is a lack of personalized data augmentation capabilities for inactive users. In graph neural networks, the extremely low degree of nodes belonging to inactive users limits the effectiveness of neighbor aggregation. To alleviate this problem, traditional data augmentation methods typically use global popularity-based approaches for data filling. This approach lacks personalized consideration and is prone to introducing noisy data. Furthermore, existing augmentation methods often lack the ability to mine similar user groups based on high-dimensional fusion features, making it difficult to accurately extract effective interactions from high-activity users to support inactive users. They also lack strict data temporal logic and test set isolation, resulting in low-quality augmented data that cannot fundamentally compensate for the lack of interaction from inactive users.

[0005] In summary, existing technologies still face significant technical bottlenecks in the deep integration of heterogeneous structures and textual semantics, adaptive weight allocation, and personalized data enhancement for inactive users. How to effectively integrate multi-layered entity network relationships with textual semantics to construct a personalized adaptive feature allocation mechanism, and based on this, supplement inactive users with high-quality real-world matching data, thereby ensuring recommendation accuracy while reducing performance differences between different user groups and improving recommendation fairness, has become a pressing technical problem to be solved in this field. Summary of the Invention

[0006] To address the aforementioned technical problems, the present invention aims to provide a fair course recommendation method that integrates heterogeneous networks and text information. The specific technical solution adopted is as follows: One embodiment of the present invention provides a fair course recommendation method that integrates heterogeneous networks and text information, the method comprising the following steps: To acquire multi-source entity data and interaction records from online education platforms in order to construct a heterogeneous information network; Define multiple semantic meta-paths in the heterogeneous information network and configure corresponding weights. Perform weighted random walks based on the semantic meta-paths to generate walk sequences. Extract features from the walk sequences using a graph representation learning model to generate the user's structural embedding vector. Extract course text information from the multi-source entity data, perform semantic encoding, and aggregate it with the user's historical interaction sequence to generate the user's content embedding vector. The structure embedding vector and the content embedding vector are concatenated and input into a pre-built gating network. A multi-dimensional gating weight vector is output, and the embedding vector is adaptively weighted and fused according to the gating weight vector to generate the user's fused embedding vector. The similarity between the inactive user group and the candidate user group is calculated based on the fusion embedding vector. Target candidate users are selected based on the similarity and their historical courses are extracted to generate enhanced interaction data. The inactive user group refers to target users whose number of historical interaction records is less than or equal to a preset threshold. The enhanced interactive data is combined with the original training data and input into the recommendation model for model training to obtain optimized course recommendation results.

[0007] Another embodiment of the present invention provides a fair course recommendation system that integrates heterogeneous networks and text information, comprising: The heterogeneous network construction module is used to acquire multi-source entity data and interaction records from online education platforms in order to construct a heterogeneous information network. The structural embedding generation module is used to define multiple semantic meta-paths in the heterogeneous information network and configure corresponding weights, perform weighted random walks based on the semantic meta-paths to generate walk sequences, extract features from the walk sequences through a graph representation learning model, and generate the user's structural embedding vector. The content embedding generation module is used to extract course text information from the multi-source entity data, perform semantic encoding, and aggregate it with the user's historical interaction sequence to generate the user's content embedding vector. An adaptive fusion module is used to concatenate the structure embedding vector and the content embedding vector, input them into a pre-built gating network, output a multi-dimensional gating weight vector, and perform adaptive weighted fusion of the embedding vectors based on the gating weight vector to generate the user's fused embedding vector. The data augmentation module is used to calculate the similarity between the low-activity user group and the candidate user group based on the fusion embedding vector, filter out target candidate users based on the similarity, and extract the historical courses of the target candidate users to generate enhanced interaction data; wherein, the low-activity user group is the target user whose number of historical interaction records is less than or equal to a preset number threshold. The recommendation training module is used to merge the enhanced interaction data with the original training data and input it into the recommendation model for model training to obtain optimized course recommendation results.

[0008] Another embodiment of the present invention provides a computer device including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the program to implement the steps of the above-described method for fair course recommendation that integrates heterogeneous networks and text information.

[0009] The present invention has the following beneficial effects: This invention provides a fair course recommendation method that integrates heterogeneous networks and textual information. This method addresses the issues of data sparsity and insufficient recommendation fairness for low-activity users through multimodal deep mining and adaptive fusion. By constructing a heterogeneous information network and performing weighted meta-path walking, it unifies the modeling of multiple entities such as users, courses, videos, and knowledge points. Even with minimal direct interaction from low-activity users, it accurately captures deep, complex educational entity relationships using auxiliary node information, effectively alleviating the data sparsity problem at the graph structure level. Through high-dimensional semantic encoding of course texts and aggregation of user learning sequences, it generates content profiles independent of the graph structure, deeply characterizing user interests at the semantic level. This accurately identifies user interest directions in cold-start or sparse interaction scenarios, compensating for the performance deficiencies of relying solely on collaborative filtering. By employing a gating network to dynamically generate weights at the feature dimension level, it achieves personalized adaptive fusion of structural embedding and content embedding. This allows the model to automatically adjust information allocation strategies for users with different activity levels, eliminating the systematic computational bias caused by fixed-weight fusion for specific groups and improving the robustness of feature representation. Based on the fused and accurate user representation, similar user groups are anchored through high-dimensional similarity calculation, and their interaction knowledge is securely extracted to generate time-series augmented data. This enables personalized knowledge transfer across groups, avoiding the noise introduced by traditional global filling and eliminating the sample size disadvantage of long-tail users from the source. The augmented data is then merged with the original data to train the recommendation model, bridging the sample gap between groups at the training data level. This prevents the model from being dominated by a few highly active users, improving overall recommendation accuracy while specifically boosting accuracy for inactive users, narrowing the performance gap between groups, and achieving synergistic optimization of recommendation accuracy and fairness. Attached Figure Description

[0010] To more clearly illustrate the technical solutions and advantages in the embodiments of the present invention or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0011] Figure 1 A flowchart illustrating a fair course recommendation method that integrates heterogeneous networks and text information, provided by this invention; Figure 2 This is a diagram illustrating the overall framework of a fair course recommendation method that integrates heterogeneous networks and text information, as provided by this invention. Detailed Implementation

[0012] To address the technical problems of sparse interactive data from low-activity users and a lack of fairness in recommendation results in existing online education recommendation systems, this invention provides a fair course recommendation method that integrates heterogeneous networks and textual information. The core concept of this method is to construct a heterogeneous information network containing multiple source entities such as users, courses, videos, and knowledge concepts, and define various semantic meta-paths. A gating network mechanism is then used to achieve dimensional adaptive fusion of structural information and textual content information. Based on the fusion features, high-quality, personalized, and enhanced interactive data is generated for low-activity users.

[0013] This embodiment improves system fairness while ensuring recommendation accuracy. Its core mechanism is specifically reflected in the following three aspects: First, by fully exploring the multi-level relationships between educational entities through heterogeneous information networks, it effectively compensates for the lack of feature information caused by the scarcity of direct interaction behavior among low-activity users at the structural level. Second, by designing a gating adaptive fusion strategy, it provides personalized, dimensional information weight allocation methods for different users, overcoming the systematic computational bias caused by the traditional fixed-weight fusion mechanism for specific user groups. Third, based on the high-dimensional representation after fusion, it performs similar user retrieval and personalized data filling, accurately extracting the effective interaction behavior of high-activity users to feed back to low-activity users, supplementing them with high-quality model training samples.

[0014] Based on the above mechanism, the method in this embodiment can significantly improve the overall accuracy of the recommendation model while effectively narrowing the performance gap between user groups with different activity levels, achieving synergistic optimization of recommendation accuracy and fairness. Figure 1 As shown, the technical solution of the present invention will be described in detail with reference to specific steps: S1 acquires multi-source entity data and interaction records from online education platforms to construct a heterogeneous information network.

[0015] Four types of basic entity data and their corresponding attribute information are extracted from the database of the online education platform. Specifically, this includes: extracting the user entity, obtaining the user's unique identifier and basic attribute information; extracting the course entity, obtaining the course's unique identifier, course name, and course description text; extracting the video entity, obtaining the video's unique identifier, video title, and the course identifier to which it belongs; and extracting the knowledge concept entity, obtaining the knowledge point's unique identifier, knowledge point name, and knowledge point description information.

[0016] While acquiring the aforementioned entity data, four types of interaction records and relationship data between different entities are extracted, specifically including: extracting learning interaction records between users and courses; extracting the inclusion relationship between courses and videos; extracting the inclusion relationship between videos and knowledge concepts; and extracting the inclusion relationship between courses and knowledge concepts.

[0017] Furthermore, to ensure the accuracy of subsequent network construction and feature extraction, after obtaining the aforementioned multi-source entity data and interaction records, the data is cleaned and standardized: abnormal records with missing key fields or incorrect data formats are removed, and duplicate relationship records are filtered for deduplication, ultimately obtaining a standardized set of multi-source entity data and interaction records. The implementation process of data cleaning and standardization is based on existing technology and will not be elaborated upon here.

[0018] As an exemplary implementation, a heterogeneous information network is constructed based on multi-source entity data and interaction records, including: The first step is to extract four types of entity nodes from multi-source entity data: users, courses, videos, and knowledge concepts, and then extract the relationships between nodes from interaction records and the attributes of the data itself.

[0019] In this embodiment, multi-source entity data is parsed into an entity set and a relation set. The entity set includes a user node set, a course node set, a video node set, and a knowledge concept node set; the relation set includes user-course relationships extracted based on user learning behavior, course-video relationships extracted based on the course catalog, video-knowledge concept relationships extracted based on video tags, and course-knowledge concept relationships extracted based on the course outline.

[0020] The second step involves using an offset encoding strategy. Based on a preset entity type order, the total number of entities preceding the current entity type is accumulated. The original identifiers of the four types of entity nodes are then added to the corresponding accumulated number to obtain a globally unified node identifier.

[0021] To avoid identifier conflicts between different types of entity nodes in the graph network, a pre-defined processing sequence for entity types is established, such as user, course, video, and knowledge concept in that order. For any entity node, its original identifier value is summed with its offset cardinality to obtain a globally unique mapped node identifier. The offset cardinality is the sum of the number of entity nodes of all types preceding the current entity node's type in the processing sequence.

[0022] Specifically, the number of user nodes, course nodes, video nodes, and knowledge concept nodes are respectively... For example, the offset cardinality of the user node is 0, and the encoding range is... The offset base of the course node is Nu, and the encoding range is... The offset base of the video node is The encoding range is The offset cardinality of knowledge concept nodes is The encoding range is Through the above operations, all heterogeneous entity nodes are uniformly mapped to a continuous and non-overlapping numerical space.

[0023] As an example, the expression for a node identifier can be: In the formula, This represents a globally unique node identifier after the mapping of the current type entity. This represents the original identifier of the entity of the current type in the original dataset. Indicates the type of the current entity. This indicates the entity type that precedes the current entity type in the preset entity type order. The type is The number of entity nodes, This represents the total number of entity nodes of all types preceding the current entity type.

[0024] The third step is to convert the relationships between nodes into bidirectional edges based on node identifiers and record them in the adjacency list to obtain the graph structure representing the heterogeneous information network.

[0025] Initialize an empty adjacency list data structure to store the neighbor distribution information of each node in the heterogeneous information network; traverse each association record in the relationship set to obtain the source node identifier, target node identifier, and relationship type corresponding to the association; in order to traverse the node associations in the graph across types and from any direction during subsequent metapath traversal, map each association to two edges in opposite directions and record them in the adjacency list; that is, append the "target node identifier and relationship type" to the adjacency list sub-item corresponding to the "source node identifier", and append the "source node identifier and relationship type" to the adjacency list sub-item corresponding to the "target node identifier"; after traversal, generate an adjacency list containing all nodes and their complete first-order heterogeneous neighbor information, resulting in a graph structure that supports efficient neighbor query and metapath traversal operations.

[0026] As an example, for each association, adding a bidirectional edge can be expressed as follows: ; In the formula, An adjacency list representing a stored graph structure. Indicates the source node identifier in the current relationship record. Indicates the identifier of the target node in the current relationship record. This indicates the type of association between the source node and the target node. This indicates the operation of appending a record to the corresponding node item in the adjacency list.

[0027] S2 defines multiple semantic meta-paths in heterogeneous information networks and configures corresponding weights. Based on the semantic meta-paths, a weighted random walk is performed to generate a walk sequence. The walk sequence is then used to extract features from the walk sequence through a graph representation learning model to generate the user's structural embedding vector.

[0028] Heterogeneous information networks contain rich entity relationship semantics. Traditional unbiased random walks are prone to introducing a large amount of noise and cannot distinguish the strength and importance of relationships. By defining meta-paths representing specific semantic sequences and configuring hierarchical weights based on their contribution to the recommendation task, the walk process can be guided to capture strongly related entities and deep semantic connections more selectively. Furthermore, by using weighted random walks to generate sequence corpora and combining them with graph representation learning models for high-dimensional space mapping, the high-dimensional sparse heterogeneous graph topology can be transformed into low-dimensional dense structural embedding vectors. This effectively compensates for the data gaps caused by the scarcity of direct interactions among inactive users at the network structure level, providing a solid structured feature foundation for subsequent recommendations.

[0029] As an exemplary implementation, multiple semantic meta-paths in a heterogeneous information network are defined and their corresponding weights are configured, including: The first step is to define multiple semantic meta-paths composed of combinations of users, courses, videos, and knowledge concepts, based on the type sequence of entity nodes in the heterogeneous information network.

[0030] In this embodiment, based on user nodes (U), course nodes (C), video nodes (V), and knowledge concept nodes (K), a sequence of node types representing composite relationships is defined. Specifically, eight meta-path patterns are defined: the UCU path (UCU) and CUC path (CUC) representing the direct user-course interaction pattern; the UCKCU path (UCKCU) and CKC path (CKC) representing the deep semantic association established through knowledge concepts; the CVKVC path (CVKVC) and UCVCU path (UCVCU) representing the association established using video resources as an intermediate bridge; and the supplementary paths VKV (VKV) and CVC (CVC) representing the enhanced network connectivity.

[0031] The second step is to analyze the tightness of entity relationships based on multiple semantic meta-paths and classify these semantic meta-paths into multiple importance levels.

[0032] In this embodiment, metapaths are divided into four levels based on their contribution to the course recommendation task: UCU and CUC, which represent direct interaction, are classified as core metapaths; UCKCU and CKC, which represent deep knowledge connections, are classified as important metapaths; CVKVC and UCVCU, which represent the indirect bridging role of video, are classified as auxiliary metapaths; and VKV and CVC, which represent local connectivity, are classified as supplementary metapaths.

[0033] The third step is to assign weights to different semantic meta-paths based on their importance level.

[0034] Differentiated weight values ​​are assigned to the four importance levels mentioned above to ensure that the sampling probability of core relationships is maximized. The specific configuration expression is as follows: In the formula, Indicates the meta-path. Metapath The weights, and the configured weight size satisfies As a specific example, Take 1.9, Take 1.5, Take 1, Take 0.5.

[0035] As an exemplary implementation, generating a walk sequence by performing a weighted random walk based on semantic meta-paths includes: The first step is to construct a selection probability distribution based on the weights of each semantic meta-path, and then perform weighted sampling on multiple semantic meta-paths according to the selection probability distribution to determine the target meta-path.

[0036] A selection probability distribution is constructed based on the weights of each semantic meta-path. Based on this distribution, multiple semantic meta-paths are weighted and sampled to determine the target meta-path. Specifically, this includes: The configured metapath weights are normalized to construct a selection probability distribution, expressed as follows: In the formula, Let M represent the normalized discrete probability of the k-th meta-path, i.e. the selection probability distribution, and M represent the total number of meta-paths. A meta-path is randomly selected as the target meta-path based on the selection probability.

[0037] Based on the selected probability distribution, multiple semantic meta-paths are weighted and sampled to determine the target meta-path, including: According to the preset meta-path sequence index, the selection probabilities of various semantic meta-paths are accumulated item by item to construct a cumulative probability distribution array with values ​​ranging from 0 to 1. Each meta-path corresponds to a continuous numerical mapping sub-interval in the cumulative probability distribution array. This numerical mapping sub-interval is formed by the cumulative probability value of the previous meta-path and the cumulative probability value of the current meta-path as its boundary, and the numerical span of the numerical mapping sub-interval is equal to the selection probability of the meta-path. A uniformly distributed random number with a value ranging from 0 to 1 is generated using a random number generation function. The uniformly distributed random number is compared with the boundaries of each numerical mapping sub-interval in the cumulative probability distribution array to retrieve the target sub-interval that the uniformly distributed random number falls into. The semantic meta-path corresponding to the target sub-interval is extracted and determined as the target meta-path for this walk sampling.

[0038] The second step is to determine the next-hop target node type of the current node based on the node type order set in the target metapath.

[0039] In this embodiment, the target metapath is parsed. The sequence pattern is used to extract the type of the next node immediately following the current node type and use it as the target node type for the next hop.

[0040] The third step is to select nodes that belong to the target node type from the current node's neighbor nodes to form a set of candidate neighbor nodes.

[0041] In this embodiment, the node sub-item corresponding to the current node in the adjacency table of the heterogeneous graph is queried, and all first-order neighbor nodes of the current node are extracted; by comparing the attribute identifiers of the first-order neighbor nodes, nodes that are inconsistent with the target node type are eliminated, and the remaining neighbor nodes that are consistent with the target node type are combined to form a set of candidate neighbor nodes.

[0042] Fourth step: When the set of candidate neighbor nodes is not empty, randomly select a node from the set of candidate neighbor nodes as the next walking node and update the current walking path. Repeat the walking operation until the current walking path reaches the preset walking length, and use the resulting walking path as the walking sequence. When the set of candidate neighbor nodes is empty, terminate the walking operation and use the currently generated walking path as the walking sequence.

[0043] In this embodiment, when the set of candidate neighbor nodes is not empty, uniform random sampling is performed from the set of candidate neighbor nodes according to the transition probability distribution, and a node is selected as the next walking node to update the current walking path; and the previous node derivation steps are executed repeatedly until the number of steps of the current walking path reaches the preset walking length L, and the final walking path is taken as a walking sequence.

[0044] As an example, the transition probability expression is: In the formula, Indicates the selected target metapath From the current node to neighboring nodes The transition probability, This indicates an indicator function, where E is the set of edges in the graph, and type(·) represents the operation to retrieve the node type. Indicates the type of the next node required by the target meta-path. Indicates the current node The set of all neighboring nodes, where the denominator represents the total number of nodes in the set of candidate neighboring nodes.

[0045] When the set of candidate neighbor nodes is empty, the current node's walk operation is terminated, and the currently generated valid walk path is directly saved as a walk sequence; the preset R weighted random walks are repeatedly and independently performed on each node in the heterogeneous information network, and the walk sequence set is obtained by summarizing.

[0046] It should be noted that the specific values ​​of the preset walk length L and the number of walks R can be adaptively adjusted according to the scale of the heterogeneous information network and the computing resources. The preset walk length L determines the node association depth that a single sequence can capture; too short a value will fail to capture long-range semantics, while too long a value will easily introduce noise and increase the computational burden. The number of walks R determines the sampling coverage of the local neighborhood of the same node; a larger R value results in more robust structural features, but also longer training time. As a specific example, based on the typical graph network size in an educational recommendation scenario, the preset walk length L can be set to an integer from 10 to 30 (preferably 20), and the number of walks R can be set to an integer from 5 to 20 (preferably 10).

[0047] As an exemplary implementation, a graph representation learning model is used to extract features from the walk sequence to generate the user's structural embedding vector, including: The first step is to construct training sample pairs for node co-occurrence based on the walking sequence.

[0048] In this embodiment, each wandering sequence in the sequence corpus is treated as a sentence in natural language. Each central node and its adjacent nodes within a preset context sliding window radius are extracted to form multiple positive sample node pairs. As a specific example, the context sliding window radius T can be preset to 2.

[0049] The second step is to construct an optimization objective function for the graph representation learning model by combining negative sampling techniques.

[0050] In this embodiment, a Skip-Gram graph representation is used to represent the node embeddings learned by the learning model. To reduce computational complexity, nodes not located within the context window of the central node are extracted from a preset noise distribution to form a negative sample set. Based on the positive sample node pairs and the negative sample set, a loss function optimized by negative sampling is constructed, the expression of which can be: In the formula, This represents the loss function for negative sampling optimization. This represents the Sigmoid activation function. and These represent the center nodes of the positive sample node pairs. and co-occurring nodes Embedded vector, Indicates based on noise distribution The l-th negative sample node sampled. Indicates the number of negative samples (e.g.) (The default value is 5), E represents the mathematical expectation of the sampling operation based on the noise distribution.

[0051] The third step is to iteratively update the embedded representations of network nodes until convergence.

[0052] In this embodiment, an optimizer (such as the AdamW optimizer) is used to minimize the aforementioned loss function. The embedding vectors of all entity nodes in the network are continuously updated through backpropagation until the value of the loss function converges or the preset maximum number of training rounds is reached.

[0053] The fourth step is to extract the structural representation of the user node and perform vector normalization to obtain the user's structural embedding vector.

[0054] In this embodiment, after training convergence, the embedding vectors corresponding to all user entities are extracted, and L2 normalization is performed on the embedding vector of each user to map the vector scale to the same order of magnitude, thereby generating the user's structural embedding vector. As an example, the normalization expression is: In the formula, This represents the normalized structural embedding vector of user u. The graph represents the original user embedding vectors obtained from training the learning model. Represents the original user embedding vector The L2 norm.

[0055] S3 extracts course text information from multi-source entity data, performs semantic encoding, and aggregates it with the user's historical interaction sequence to generate the user's content embedding vector.

[0056] In online education scenarios, structural embedding of heterogeneous networks primarily captures the topological connections between entities, but often neglects the natural language semantics of the course content itself (such as course outline, difficulty, and knowledge focus). By introducing a pre-trained text encoding model (such as Sentence-Transformer) to extract high-dimensional semantics from the course description text, and then combining this with mean aggregation of the user's historical interaction sequences, it is possible to accurately characterize the user's content preferences directly from the perspective of content consumption. This dual-path feature extraction mechanism allows the model to pinpoint the user's interests and preferences through deep textual semantics, even when the graph topology is extremely sparse, as long as the user has been exposed to relevant courses, effectively compensating for the lack of feature dimensions for inactive users.

[0057] As an exemplary implementation, generating a user's content embedding vector includes: The first step is to extract course records from the user's historical interaction sequence and construct the user's learned course sequence.

[0058] In this embodiment, user-course interaction records are queried from the multi-source entity data of the online education platform; all course records in which the target user has generated learning behavior within a historical time period are extracted; the course identifiers in the interaction records are summarized and deduplicated to obtain the sequence of courses that the target user has learned.

[0059] As an example, for user u, the sequence of courses they have learned can be represented as a set of courses. , where m is the total number of courses the user has taken.

[0060] The second step involves using a pre-trained text encoding model to encode and reduce the dimensionality of the description text for each course in the learned course sequence, thereby obtaining the course text embedding vector for each course.

[0061] In this embodiment, the title and description text of each course are cleaned, and redundant characters such as HTML tags are removed before being concatenated into a plain text string: In the formula, This represents the concatenated plain text string. Indicates the course title. This refers to the course description text. This indicates a string concatenation operation.

[0062] Plain text strings are input into a pre-trained multilingual Sentence-BERT model for semantic encoding, extracting high-dimensional initial text features: In the formula, This represents the initial text feature vector of the output (e.g., 384-dimensional). This indicates the Sentence-BERT encoding operation.

[0063] Principal Component Analysis (PCA) is used to construct a projection matrix, reducing the dimensionality of the initial text feature vector to the same dimension d as the aforementioned structural embedding vector. In the formula, This represents the final course text embedding vector (with a dimension of d) obtained after dimensionality reduction. This represents the dimension-reduced projection matrix obtained through principal component analysis fitting.

[0064] The third step is to perform mean aggregation on all course text embedding vectors corresponding to the user to obtain the user's content embedding vector.

[0065] Based on the learned course sequence, the course text embedding vectors corresponding to all courses in the sequence are retrieved and averaged. To prevent the aggregation from being divided by zero due to newly registered users with no historical interaction (i.e., m=0), a cardinality determination mechanism is added before aggregation: when m is greater than 0, the retrieved m course text embedding vectors are summed and divided by m; when m equals 0, the aggregated vector is initialized to the average of all global course text embedding vectors, or directly initialized to a vector of all zeros. Finally, the aggregated vector is L2 normalized to obtain the final user content embedding vector. As an example, when m is greater than 0, the aggregation and normalization expressions are as follows: In the formula, This represents the content embedding vector of user u after aggregation and normalization. This represents the text embedding vector of the i-th course in the user's learned sequence. This represents the content embedding vector after aggregation for user u. Representing vectors The L2 norm.

[0066] S4 concatenates the structure embedding vector and the content embedding vector, inputs them into a pre-built gating network, outputs a multi-dimensional gating weight vector, and adaptively weights and fuses the embedding vectors based on the gating weight vector to generate the user's fused embedding vector.

[0067] Users with varying levels of activity exhibit different degrees of dependence on network graph structural features and textual semantic features, and using fixed-weight fusion can lead to systematic biases. This embodiment introduces a gated network mechanism to dynamically generate dimensional weight vectors based on user feature input, adaptively allocating the proportion of structural and content information across each feature dimension. This overcomes the limitations of fixed fusion weights and generates personalized user representations that take into account both network topology and textual features.

[0068] The first step is to concatenate the structure embedding vector and the content embedding vector, input them into a pre-built gating network, and output a multi-dimensional gating weight vector.

[0069] In this embodiment, the user's structural embedding vector and content embedding vector By concatenating the elements bitwise, a combined feature vector of dimension 2d is obtained. , The combined feature vector is input into the first fully connected layer, multiplied by the weight matrix, and then a bias vector is added. After a non-linear transformation using the ReLU activation function, the hidden layer feature vector is output. As an example, the expression for the hidden layer feature vector can be: In the formula, Represents the hidden layer feature vector. This represents the activation function. This represents the weight matrix in the first fully connected layer of the network. , This represents the bias vector in the first fully connected layer of the network.

[0070] The hidden layer feature vectors are input into the second fully connected network. By introducing predefined structural bias parameters and then passing the result through a sigmoid activation function, the result is mapped to the interval between 0 and 1, outputting a gated weight vector of dimension d. As an example, the expression for the gated weight vector can be: In the formula, Represents the gating weight vector. This represents the Sigmoid activation function. This represents the weight matrix of the second fully connected layer. This represents the bias vector of the second fully connected layer. This represents the preset structural bias parameter, which is a variable that is dynamically updated during the model training process. The initial value of the structural bias parameter is a positive value within a preset interval, which ranges from 0.1 to 0.5.

[0071] The second step is to adaptively weight and fuse the embedding vectors based on the gating weight vectors to generate the user's fused embedding vector.

[0072] In this embodiment, a gating weight vector is extracted, and the structure embedding vector is weighted element-wise using the Hadamard product operation. The difference between the value 1 and the gating weight vector is extracted and weighted element-wise using the content embedding vector. The weighted structure embedding vector and the weighted content embedding vector are added bit-by-bit to generate an initial fusion vector. L2 normalization is performed on the initial fusion vector to unify the numerical scale of each user vector, and the final user fusion embedding vector is output.

[0073] As an example, the formula for calculating the user's initial fusion vector can be: in, Represents the user's fusion embedding vector. Represents the user's initial fusion vector. Represents the user's structural embedding vector. This represents the user's content embedding vector, and ⊙ represents element-wise multiplication. This represents the output gate weight vector. Represents the initial fusion vector The L2 norm.

[0074] It should be noted that normalization ensures that all user vectors are on the same scale, facilitating subsequent similarity calculations. Determining the fusion embedding vector allows the model to learn personalized information allocation strategies for different users and different feature dimensions, offering stronger expressive power compared to fixed-weight fusion.

[0075] S5 calculates the similarity between inactive user groups and candidate user groups based on fusion embedding vectors, selects target candidate users based on similarity, and extracts the historical courses of target candidate users to generate enhanced interaction data.

[0076] To identify highly active user groups with similar characteristics for low-activity users with sparse data interaction, and to leverage the rich behavioral characteristics of highly active users to guide subsequent data augmentation, thereby solving the cold start problem and narrowing the feature gap between user groups.

[0077] As an exemplary implementation, the similarity between inactive user groups and candidate user groups is calculated based on fused embedding vectors, and target candidate users are selected based on the similarity, including: The first step is to classify users whose number of historical interaction records exceeds a preset threshold as candidate users.

[0078] In this embodiment, by comparing the number of elements in the user's historical interaction course set with a preset threshold, users exceeding the threshold are assigned to a candidate user set. Its expression can be: In the formula, U represents the set of all users on the online education platform, and u represents a single user within that set. This represents the number of elements in user u's historical interactive course set (i.e., the number of courses already taken). This indicates a preset quantity threshold, ranging from 2 to 5.

[0079] Low-activity users are target users whose number of historical interaction records is less than or equal to a preset threshold, and their expression can be: This indicates a low-activity user group.

[0080] The second step is to use the vector similarity function to calculate the similarity value between the fused embedding vector of inactive users and the fused embedding vector of each candidate user.

[0081] In this embodiment, cosine similarity is used to measure the cosine value of the angle between the fused embedding vectors of inactive users and candidate users. The calculation formula is as follows: In the formula, This represents the cosine similarity between inactive user u and candidate user v. , The fused embedding vector representing the inactive user u. This represents the fused embedding vector of candidate user v. It represents the L2 norm of a vector (i.e., the magnitude of the vector).

[0082] Alternatively, use matrix multiplication for batch calculations: In the formula, S represents the similarity matrix obtained from batch calculation. This is a similarity matrix. This represents a matrix composed of the concatenated embedding vectors of all inactive users. This represents the transpose of the matrix formed by concatenating the fused embedding vectors of all candidate users.

[0083] The third step is to select the top K candidate users with the highest similarity values ​​for each inactive user as target candidate users, where K is a preset positive integer.

[0084] In this embodiment, the calculated similarity values ​​are sorted in descending order, and the top K candidate users with the highest similarity are extracted and stored in the target candidate user set. The calculation formula can be: In the formula, This represents the target candidate user set selected from the low-activity user u. This function returns the K largest elements, where k represents the preset number of target users (a positive integer).

[0085] After obtaining the target candidate user set for each inactive user, the course records of highly similar users are reasonably transferred to the inactive users, and virtual timestamps are generated by time-series backward deduction to construct an enhanced training corpus that conforms to the logic of sequence recommendation.

[0086] As an exemplary implementation, extracting the target candidate user's historical courses to generate enhanced interaction data includes: The first step is to compile the historical learning courses of the target candidate users, remove the courses already learned by low-activity users and the test set courses, and obtain the candidate course set.

[0087] In this embodiment, the union of the sets of courses studied by the target candidate users is taken, and the difference is calculated to remove courses studied by inactive users and target courses in the test set, thus deduplicating the candidate course set. The calculation formula can be: In the formula, This represents the set of candidate courses selected by inactive user u. This represents the set of historical learning courses for the target candidate user v. The difference operation (i.e., elimination operation) of sets. This represents the set of courses that a low-activity user u has already taken. This represents the set of target courses corresponding to the inactive user u in the test set.

[0088] The second step is to determine the preset target number of courses to be filled, calculate the difference between the target number of courses to be filled and the number of courses already learned to determine the demand, take the minimum value between the demand and the total number of candidate courses as the actual number of courses to be filled, and select the courses with the actual number of courses to be filled from the candidate course set.

[0089] In this embodiment, the difference between the target filling quantity and the number of learned courses is calculated to determine the demand. The minimum value of this difference is taken from the total number of candidate courses to prevent index out-of-bounds errors. The corresponding number of courses are then extracted in sequence.

[0090] The formula for calculating demand can be: ; The expression for the actual fill quantity can be: ; Cut .

[0091] In the formula, This indicates the theoretical number of courses that need to be filled in. This represents the total number of target interactions that low-activity users are expected to achieve. This represents the total number of courses that a low-activity user u has completed. This indicates the actual filling quantity after being constrained by objective margins. This represents the total number of courses included in the candidate course set. This represents the actual set of courses that are extracted and used for filling. This indicates retrieving the portion of the set before sorting. Operations on each element.

[0092] The third step is to use the earliest historical interaction timestamp of the inactive user as the base time; when the inactive user has no historical interaction record, the latest timestamp in the historical interaction record of the target candidate user is used as the base time.

[0093] In this embodiment, the minimum timestamp is extracted from the original interaction records of inactive users; if the record is empty, the maximum timestamp is extracted from the interaction records of the target candidate user as the base time.

[0094] The expression for the minimum timestamp: ; If empty, the expression for the minimum timestamp: .

[0095] In the formula, This represents the base timestamp used for backward calculations, where t represents the timestamp when the interaction occurred. This represents the set of original historical interaction records of a low-activity user u. or This represents an interactive data tuple containing the three fields: user, course, and time. This represents the set of historical interaction records of the target candidate user v.

[0096] The fourth step involves assigning virtual timestamps to each filler course, starting from the base time and decreasing sequentially according to preset time intervals, and attaching data augmentation tags to generate enhanced interactive data.

[0097] In this embodiment, the timestamp of each filling course is calculated backwards at a fixed time interval based on the reference time, and a tuple record containing user, course, time, and tag is constructed.

[0098] Enhanced record expressions can be: .

[0099] in, This represents the virtual timestamp assigned to the i-th filler course, where i represents the sort order number of the filler course in the truncation sequence. , This indicates the preset fixed time interval step size, such as... ; This represents the generated enhanced interactive data tuple. This represents the i-th filler course that was extracted. This refers to augmented data, specifically designed to distinguish it from the original data.

[0100] It should be noted that the core logic of the above-described process of generating enhanced interaction data lies in constructing a virtual sequence that meets the input requirements of the recommendation model through a time-series backward calculation mechanism. On the one hand, the associated courses of highly similar candidate users are transferred to low-activity users, filling the data gap for low-activity users, effectively alleviating the data sparsity problem, and supplementing the feature richness required by the model. On the other hand, virtual timestamps are generated by working backward from the earliest real interaction time of the user, ensuring that the enhanced data is strictly located before the user's real behavior on the timeline, maintaining the temporal causal logic of interaction behavior in sequence recommendation, and preventing data leakage errors during model training. At the same time, the introduction of data augmentation labels realizes the tokenized management of virtual and real data, providing a structurally complete and temporally reasonable enhanced corpus for the subsequent construction of training samples for the basic recommendation model.

[0101] S6. The enhanced interactive data is merged with the original training data and input into the recommendation model for model training to obtain the optimized course recommendation results.

[0102] By mixing enhanced interactive data generated based on the characteristics of highly active users with the original training data, the extreme imbalance in data distribution is eliminated by expanding the training sample size of the low-active user group. The recommendation model performs information propagation and feature aggregation in an enhanced network structure containing rich context and neighbor relationships. This not only makes full use of multi-source entity features, but also allows the model to learn the preferences of low-active and high-active users indiscriminately within a unified framework. This simultaneously improves the overall accuracy of recommendations and the fairness among groups, ultimately outputting a precise personalized recommendation list.

[0103] As an exemplary implementation, the enhanced interaction data is merged with the original training data and input into the recommendation model for model training to obtain optimized course recommendation results, including: The first step is to merge the augmented interaction data with augmented data labels with the original training data with original data labels to construct an augmented bipartite graph structure, and ignore the difference in data labels, treating all records equally as positive sample interactions between users and courses.

[0104] As an example, the expression for an enhanced bipartite graph structure can be: In the formula, This represents the augmented training dataset. This represents the original training data. This indicates enhanced interactive data.

[0105] The second step involves using a graph convolutional network model to perform multi-layer information propagation on an enhanced bipartite graph structure, aggregating neighbor information of user nodes and course nodes, and obtaining multi-layer node embedding features.

[0106] As an example, the formula for multi-layer graph convolution propagation is: In the formula, and Let u and i represent the embedding vectors of user u and course i in the h-th layer graph convolutional network, respectively. and Let u and i represent the embedding vectors of user u and course i in the previous layer (h-1th layer) of the graph convolutional network, respectively. This represents the set of course nodes that have interactive relationships with user u in the enhanced bipartite graph. This represents the set of user nodes that have interactive relationships with course i in the enhanced bipartite graph. and They represent and The number of elements in the graph (i.e., the degree of the node). It is worth noting that, in order to prevent isolated nodes from causing the denominator to be 0, a preset very small positive number, such as 0.001, can be added to the degree term during actual calculation.

[0107] The third step is to average and aggregate the user and course embedding features after propagation at each layer to obtain the final node representation vector, and then calculate the user's predicted rating for the course through the vector inner product.

[0108] As an example, embedding aggregation and prediction formulas: In the formula, This represents the final user representation vector output after propagation through each layer and averaging. H represents the final output course representation vector after propagation through each layer and averaging, where H represents the total number of layers in the graph convolution propagation, and h represents the layer index. This represents user u's predicted preference rating for course i. This represents the transpose of the user representation vector.

[0109] The fourth step involves constructing training triples based on positive sample interaction records and sampled negative sample courses, and then optimizing the model parameters using the Bayesian Personalized Ranking (BPR) loss function to complete model training.

[0110] As an example, the BPR loss optimization formula is as follows: In the formula, denoted as the Bayesian personalized ranking loss function value used for optimization, and D represents the triplet dataset used for model training; Let u represent a triple sampled from the dataset, where u is a user, i is a positive sample course that the user has interacted with (both the original data and augmented data are considered positive samples), and j is a negative sample course that the user has not interacted with. This represents the Sigmoid activation function, used to map differences to probabilities between 0 and 1. and Let represent the ratings predicted by the recommendation model for user u on positive sample course i and negative sample course j, respectively. This represents the set of all model parameters that need to be optimized in the recommendation model. This represents the L2 regularization coefficient, used to prevent overfitting of the model. It represents the square of the L2 norm of the model parameter set.

[0111] It's important to note that the process of introducing augmented data into the recommendation model for training, through data fusion and structured processing, overcomes the performance bottlenecks of traditional graph recommendation models in cold-start and long-tail user scenarios. By analyzing virtual and real data without discrimination at the training level, low-activity users can not only receive evaluations based on basic features but also participate in deep convolutional propagation of the graph structure by leveraging extended features from similar groups. This not only expands the receptive field of network nodes, significantly increasing the probability of accurate recall of target courses, but also mechanistically avoids the excessive preference of deep networks for high-frequency nodes, effectively narrowing the recommendation quality gap among user groups. While ensuring the overall recommendation accuracy of the system, it also guarantees fairness to long-tail users in the recommendation process.

[0112] The fifth step is to obtain the target users to be recommended, input the relevant data of the target users into the trained recommendation model, calculate the predicted preference rating of the target users for each non-interactive course, sort them in descending order according to the predicted preference rating, and output the top N courses as the final recommendation result, where N is the preset number of recommendations.

[0113] Thus, using the method provided in this embodiment, the implementation of a fair course recommendation method that integrates heterogeneous networks and text information has been completed, ultimately resulting in an efficient data augmentation scheme, such as... Figure 2 As shown in the figure, this is an overall framework diagram of a fair course recommendation method that integrates heterogeneous networks and textual information.

[0114] Another embodiment of the present invention provides a fair course recommendation system that integrates heterogeneous networks and text information, comprising: The heterogeneous network construction module is used to acquire multi-source entity data and interaction records from online education platforms in order to construct a heterogeneous information network. The structural embedding generation module is used to define multiple semantic meta-paths in the heterogeneous information network and configure corresponding weights, perform weighted random walks based on the semantic meta-paths to generate walk sequences, extract features from the walk sequences through a graph representation learning model, and generate the user's structural embedding vector. The content embedding generation module is used to extract course text information from the multi-source entity data, perform semantic encoding, and aggregate it with the user's historical interaction sequence to generate the user's content embedding vector. An adaptive fusion module is used to concatenate the structure embedding vector and the content embedding vector, input them into a pre-built gating network, output a multi-dimensional gating weight vector, and perform adaptive weighted fusion of the embedding vectors based on the gating weight vector to generate the user's fused embedding vector. The data augmentation module is used to calculate the similarity between the low-activity user group and the candidate user group based on the fusion embedding vector, filter out target candidate users based on the similarity, and extract the historical courses of the target candidate users to generate enhanced interaction data; wherein, the low-activity user group is the target user whose number of historical interaction records is less than or equal to a preset number threshold. The recommendation training module is used to merge the enhanced interaction data with the original training data and input it into the recommendation model for model training to obtain optimized course recommendation results.

[0115] Another embodiment of the present invention provides a computer device including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the program to implement the steps of the above-described method for fair course recommendation that integrates heterogeneous networks and text information.

[0116] In summary, this invention constructs a heterogeneous information network containing multiple types of educational entities and combines dual-path embedding generation with a gating adaptive fusion mechanism to effectively integrate network structural features and textual semantic features. This effectively alleviates the data sparsity problem for low-activity users, narrows the recommendation performance gap between user groups with different activity levels while ensuring the overall recommendation accuracy of the system, and improves the fairness of the system's recommendations. It provides a stable and balanced personalized course recommendation solution for online education platforms.

[0117] It should be noted that the above description is only a preferred embodiment of the present invention and is not intended to limit the present invention. Any modifications, equivalent substitutions, improvements, etc., made within the principles of the present invention should be included within the protection scope of the present invention.

Claims

1. A fairness course recommendation method for fusing heterogeneous networks and text information, characterized in that, Includes the following steps: To acquire multi-source entity data and interaction records from online education platforms in order to construct a heterogeneous information network; Define multiple semantic meta-paths in the heterogeneous information network and configure corresponding weights. Perform weighted random walks based on the semantic meta-paths to generate walk sequences. Extract features from the walk sequences using a graph representation learning model to generate the user's structural embedding vector. Extract course text information from the multi-source entity data, perform semantic encoding, and aggregate it with the user's historical interaction sequence to generate the user's content embedding vector. The structure embedding vector and the content embedding vector are concatenated and input into a pre-built gating network. A multi-dimensional gating weight vector is output, and the embedding vector is adaptively weighted and fused according to the gating weight vector to generate the user's fused embedding vector. The similarity between the inactive user group and the candidate user group is calculated based on the fusion embedding vector. Target candidate users are selected based on the similarity and their historical courses are extracted to generate enhanced interaction data. The inactive user group refers to target users whose number of historical interaction records is less than or equal to a preset threshold. The enhanced interactive data is combined with the original training data and input into the recommendation model for model training to obtain optimized course recommendation results.

2. The method of claim 1, wherein the fairness course recommendation of the fusion heterogeneous network and the text information is characterized by, The construction of the heterogeneous information network includes: Extract four types of entity nodes—user, course, video, and knowledge concept—from the multi-source entity data, and extract the relationships between nodes from the interaction records and the data's own attributes. An offset encoding strategy is adopted, which accumulates the total number of entities preceding the current entity type according to a preset entity type order, and adds the corresponding accumulated number to the original identifier of the four types of entity nodes to obtain a globally unified node identifier. Based on node identifiers, the relationships between the nodes are transformed into bidirectional edges and entered into an adjacency list to obtain a graph structure representing the heterogeneous information network. 3.The method of claim 1, wherein, Define multiple semantic meta-paths in the heterogeneous information network and configure corresponding weights, including: Based on the type sequence of entity nodes in the heterogeneous information network, various semantic meta-paths are defined, which are composed of combinations of users, courses, videos and knowledge concepts. Based on the analysis of the tightness of entity associations using the various semantic meta-paths, the various semantic meta-paths are divided into multiple importance levels; Weights are assigned to different semantic meta-paths based on the aforementioned importance levels.

4. The method of claim 1, wherein the fairness course recommendation of the fusion heterogeneous network and the text information is characterized by, The step of generating a walk sequence by performing a weighted random walk based on the semantic meta-path includes: A selection probability distribution is constructed based on the weights of each semantic meta-path, and the target meta-path is determined by weighted sampling of the various semantic meta-paths according to the selection probability distribution. Based on the node type order set in the target metapath, determine the next hop target node type of the current node; From the current node's neighboring nodes, select nodes that belong to the target node type to form a candidate neighboring node set; When the set of candidate neighbor nodes is not empty, a node is randomly selected from the set of candidate neighbor nodes as the next walking node and the current walking path is updated. The walking operation is performed repeatedly until the current walking path reaches the preset walking length, and the resulting walking path is taken as the walking sequence. When the set of candidate neighbor nodes is empty, the walking operation is terminated, and the currently generated walking path is taken as the walking sequence. 5.The method of claim 2, wherein, The generated user content embedding vector includes: Extract course records from the user's historical interaction sequence to construct the user's learned course sequence; The description text of each course in the learned course sequence is encoded and dimensionality reduced using a pre-trained text encoding model to obtain the course text embedding vector of each course. The mean of all course text embedding vectors corresponding to a user is aggregated to obtain the content embedding vector of the user. Specifically, if the user's historical interaction sequence is empty, the user's content embedding vector is initialized to a zero vector. 6.The method of claim 1, wherein, The method for adaptively weighting and fusing the embedding vectors based on the gated weight vector to generate the user's fused embedding vector uses the following calculation formulas: wherein, denotes a fusion embedding vector of a user, denotes an initial fusion vector of a user, denotes a structure embedding vector of a user, denotes a content embedding vector of a user, denotes an element-wise product operation, denotes an output gating weight vector, denotes an initial fusion vector L2-norm of the initial fusion vector The gated weight vector is obtained by superimposing structural bias parameters on the output features mapped by the fully connected network after concatenating the input vector, and then processing it with an activation function; The concatenated input vector is formed by concatenating the structure embedding vector and the content embedding vector; the structure bias parameter is a variable that is dynamically updated during the model training process, and the initial value of the structure bias parameter is a positive value within a preset range.

7. The fair course recommendation method integrating heterogeneous networks and text information according to claim 1, characterized in that, The step of calculating the similarity between the inactive user group and the candidate user group based on the fused embedding vector, and selecting target candidate users based on the similarity, includes: Users whose number of historical interaction records exceeds the preset threshold are classified as candidate users; The similarity value between the fused embedding vector of the low-activity user and the fused embedding vector of each candidate user is calculated using a vector similarity function. For each of the low-activity users, the top K candidate users with the highest similarity values ​​are selected as target candidate users, where K is a preset positive integer.

8. The fair course recommendation method integrating heterogeneous networks and text information according to claim 1, characterized in that, The step of extracting historical courses from target candidate users to generate enhanced interactive data includes: Summarize the historical learning courses of the target candidate users, remove the courses already learned by the low-activity users and the test set courses to obtain the candidate course set; Determine the preset target filling quantity, calculate the difference between the target filling quantity and the number of courses already learned to determine the demand, take the minimum value between the demand and the total number of candidate courses as the actual filling quantity, and select the courses with the actual filling quantity from the candidate course set as filling courses. The earliest historical interaction timestamp of the low-activity user is used as the base time; when the low-activity user has no historical interaction records, the latest timestamp in the historical interaction records of the target candidate user is used as the base time. Starting from the base time, virtual timestamps are assigned to each of the filling courses in a sequentially decreasing manner according to a preset time interval, and data augmentation tags are attached to generate enhanced interactive data.

9. A fair course recommendation system integrating heterogeneous networks and text information, characterized in that, include: The heterogeneous network construction module is used to acquire multi-source entity data and interaction records from online education platforms in order to construct a heterogeneous information network. The structural embedding generation module is used to define multiple semantic meta-paths in the heterogeneous information network and configure corresponding weights, perform weighted random walks based on the semantic meta-paths to generate walk sequences, extract features from the walk sequences through a graph representation learning model, and generate the user's structural embedding vector. The content embedding generation module is used to extract course text information from the multi-source entity data, perform semantic encoding, and aggregate it with the user's historical interaction sequence to generate the user's content embedding vector. An adaptive fusion module is used to concatenate the structure embedding vector and the content embedding vector, input them into a pre-built gating network, output a multi-dimensional gating weight vector, and perform adaptive weighted fusion of the embedding vectors based on the gating weight vector to generate the user's fused embedding vector. The data augmentation module is used to calculate the similarity between the low-activity user group and the candidate user group based on the fusion embedding vector, filter out target candidate users based on the similarity, and extract the historical courses of the target candidate users to generate enhanced interaction data; wherein, the low-activity user group is the target user whose number of historical interaction records is less than or equal to a preset number threshold. The recommendation training module is used to merge the enhanced interaction data with the original training data and input it into the recommendation model for model training to obtain optimized course recommendation results.

10. A computer device, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that, When the processor executes the program, it implements the fair course recommendation method that integrates heterogeneous networks and text information as described in any one of claims 1 to 8.