A dynamic book retrieval method and system based on personalized needs
Patent Information
- Application Number
- CN202611240933.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2026-08-17
- Publication Date
- 2026-10-30
AI Technical Summary
[0010]针对现有技术中检索与推荐割裂、权重静态化、语义扩展缺乏个性化、反馈机制单一的技术问题,本发明提供了一种基于个性化需求的动态图书检索方法及系统,实现检索与推荐的协同优化及系统的动态自适应
[0054]1、检索与推荐协同优化:将用户检索行为作为个性化推荐的入口,检索结果经语义扩展后进入多因子排序推荐流程,实现从检索到推荐的无缝衔接与协同优化,克服了现有技术中检索与推荐割裂的技术缺陷。
Smart Images

Figure CN123012272A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of book information retrieval and personalized recommendation technology, and in particular to a dynamic book retrieval method and system based on personalized needs. Background Technology
[0002] With the continuous expansion of digital book resources, book retrieval has become an important means for users to obtain information resources. However, existing book retrieval systems and methods have the following technical problems:
[0003] First, the search and recommendation functions are disconnected. Existing systems typically operate book search and personalized recommendations as two independent modules. Search is based solely on literal keyword matching, and recommendations are based solely on collaborative filtering or content matching based on users' historical behavior. The two lack an effective coordination mechanism, making it impossible to achieve a seamless connection between user search needs and personalized recommendations.
[0004] Second, the weights for multi-factor ranking are static. Although some systems introduce multi-factor scoring and ranking mechanisms, the weight coefficients of each factor are fixed preset values and cannot be dynamically adjusted according to the maturity of the user profile. This makes it difficult to achieve optimal recommendation results for both new users (who lack historical data) and old users (who have clear interests).
[0005] Third, semantic extension lacks personalization. Most existing semantic extension methods are based on general knowledge bases and do not take into account the individual user's interests and preferences for targeted extension, which may result in extensions that deviate from the user's actual needs.
[0006] Fourth, user feedback is not fully utilized. The feedback learning mechanisms of existing systems are mostly used only for incremental updates of user profiles, failing to use feedback information to simultaneously drive the adaptive adjustment of the ranking model, resulting in a lack of true dynamic adaptive capability in the system.
[0007] For example, Chinese patent document CN112131477A (publication date December 25, 2020) discloses a library book recommendation system and method based on user profiles, which recommends books by constructing user profiles through the collection of user behavior data. However, this solution only involves the recommendation scenario and does not address the semantic recognition and expansion of retrieval needs, nor does it establish a collaborative mechanism between retrieval and recommendation.
[0008] For example, Chinese patent document CN105760547A (publication date July 13, 2016) discloses a book recommendation method and system based on user clustering, but it is based only on single behavioral data of borrowing records, does not integrate multi-source behavioral data, and the weight configuration is a static preset value.
[0009] It is evident that existing technologies still suffer from several problems, including the disconnect between retrieval and recommendation functions, static multi-factor ranking weights, lack of personalization in semantic expansion, and insufficient utilization of user feedback. Summary of the Invention
[0010] To address the technical problems in existing technologies, such as the separation of retrieval and recommendation, static weights, lack of personalization in semantic expansion, and a single feedback mechanism, this invention provides a dynamic book retrieval method and system based on personalized needs, achieving collaborative optimization of retrieval and recommendation and dynamic self-adaptation of the system.
[0011] A dynamic book retrieval method based on personalized needs includes the following steps:
[0012] S1: User Behavior Data Collection: Thematic tags for each book in the database are pre-extracted to form a global tag set; user behavior data is collected, including information on search behavior, borrowing behavior, reading behavior, and collection behavior; users... The behavioral data set is represented as: .
[0013] S2: Constructing User Interest Profiles: Based on the behavioral data collected in step S1, construct a user interest model, sort it from high to low weight, and select the top K tags with the highest weight as the core user interest features to form the final user profile.
[0014] Furthermore, step S2, which involves constructing a user interest profile, includes:
[0015] Set corresponding weights for different behavior types:
[0016] The weight of reading behavior is related to reading time, and is set as follows: Reading time In hours;
[0017] Search behavior set to fixed weight Borrowing behavior is set to a fixed weight. The act of collecting is set to a fixed weight. ;
[0018] When users include tags When a user searches, borrows, reads, or saves a book, the interest value of that tag is accumulated according to the weight of the corresponding behavior.
[0019] Calculate user interest weights The sum of the weights of each label is ,in Indicates user The total number of tags involved Indicates user For tags The cumulative interest value, This represents the weight value of the corresponding behavior;
[0020] The users are sorted by interest weight from high to low, and the top K tags with the highest weights are selected as the core interest features of the users to form the final user profile.
[0021] S3: Semantic recognition of user search needs: Based on the semantic similarity between search keywords and the global tag set, tags are filtered to construct a set of explicit semantic needs for the user's current search. Combined with the user profile, semantic expansion is performed to obtain the final set of semantic needs.
[0022] Furthermore, the semantic extension described in step S3 specifically includes:
[0023] Define a scoring function for each tag in the global tag set. Where Sim represents the semantic similarity between the search keywords and tags. Indicates the first input by the user One search keyword, This represents the book's topic tags, and λ is a balance coefficient between semantic matching and interest preferences. The top N tags with the highest scores are selected as extended semantic tags and merged with the explicit semantic requirement set to obtain the final semantic requirement set.
[0024] S4: Generate a candidate book list: Filter books from the database that contain at least one tag from the final semantic requirement set, and generate a candidate book list.
[0025] S5: Personalized Ranking: Perform multi-factor scoring and ranking on the candidate book set to generate a personalized ranking list;
[0026] The multi-factor includes keyword matching degree. User interest matching degree and the popularity of books The comprehensive scoring function is: ,in , , These are weighting coefficients, corresponding to the weights of keyword matching degree, user interest matching degree, and book popularity in the overall score, respectively. ,and ;
[0027] The weighting coefficients are adaptively adjusted based on the maturity characteristics of the user profile.
[0028] Furthermore, the adaptive adjustment of the weighting coefficients in step S5 includes:
[0029] The system presets the initial values of the weighting coefficients. , , ,and ;
[0030] Each weighting coefficient has a preset safety boundary: The value range is [0.20, 0.70]. The value range is [0.15, 0.65]. The value range is [0.05, 0.40];
[0031] The user profile maturity feature is calculated according to the following formula:
[0032] ;
[0033] in Indicates user Total number of historical behavior records The preset saturation threshold;
[0034] The weight adjustment factor is determined based on the portrait maturity characteristics. It is determined by a piecewise function;
[0035] The adjusted target weight coefficients are calculated based on the weight adjustment factor, and boundary constraints and normalization are performed.
[0036] Furthermore, the adaptive adjustment of the weighting coefficients follows the principles described below:
[0037] Keyword matching weight It decreases monotonically as the maturity of the user profile increases;
[0038] User interest matching weight It increases monotonically as the maturity of the user profile increases;
[0039] Book popularity weight The value is higher when the user profile is less mature and lower when the user profile is more mature.
[0040] Furthermore, step S5 also includes diversity optimization of the recommendation list: after sorting, diversity optimization is introduced by scanning the sorted recommendation list using a sliding window of a preset sliding window size W; within each sliding window, if the Jaccard similarity of the topic tag sets of any two books exceeds a preset similarity threshold... If so, the ranking of the books with lower ratings will be lowered.
[0041] S6: Similar Reader Recommendation: The K-Means clustering algorithm is used to cluster the interest tag vectors of all users, and the silhouette coefficient is used to determine the optimal number of clusters; similar readers are selected. Users belonging to the same interest tag cluster and ranking in the top M positions by the cosine similarity of their interest vectors are considered as a similar reader group; books that are in the similar reader group but have not been borrowed or collected by the target user are aggregated and sorted by frequency of occurrence to generate a recommendation list.
[0042] S7: Generate the final recommendation result: This consists of two parts: the personalized recommendation result generated in step S5 and the similar reader recommendation result generated in step S6.
[0043] S8: User Feedback Learning: Based on user behavior data such as clicks, reading, borrowing, collection, and ignoring of recommended results, incremental updates are made to the tag interest weights in the user profile; updates are triggered in real time after a user's behavior or in batches after a preset time window; at the same time, the global tag set is dynamically maintained.
[0044] This invention also provides a dynamic book retrieval system based on personalized needs, comprising:
[0045] The user data acquisition module is used to implement step S1;
[0046] The user profile building module is used to implement step S2;
[0047] The demand semantic recognition module is used to implement step S3;
[0048] The book retrieval module is used to implement step S4;
[0049] A personalized sorting module is used to implement step S5;
[0050] The similar reader recommendation module is used to implement step S6;
[0051] The intelligent recommendation module is used to implement step S7;
[0052] The user feedback learning module is used to implement step S8.
[0053] The beneficial effects of the dynamic book retrieval method of this invention are as follows:
[0054] 1. Collaborative optimization of retrieval and recommendation: User retrieval behavior is used as the entry point for personalized recommendations. After semantic expansion, the retrieval results enter the multi-factor ranking and recommendation process, realizing seamless connection and collaborative optimization from retrieval to recommendation, overcoming the technical defects of the separation of retrieval and recommendation in the existing technology.
[0055] 2. Dynamic Adaptive Weight Adjustment: This is the first time a multi-factor weight dynamic adaptive adjustment mechanism based on user profile maturity has been proposed. The weight coefficients change dynamically with the maturity of the user profile and are subject to safety boundary constraints, taking into account both the needs of cold start for new users and accurate recommendation for old users.
[0056] 3. Personalized semantic expansion: Based on semantic matching, personalized expansion is carried out by combining user profiles. The scoring function considers both semantic similarity and user interests and preferences, and the expanded results are more in line with the actual needs of users.
[0057] 4. Guaranteeing Diversity of Recommendations: The introduction of a sliding window Jaccard similarity detection and reordering strategy effectively avoids overly concentrated recommendation results and improves the diversity of recommendation results.
[0058] 5. Complete closed-loop feedback: User feedback simultaneously drives user profile updates and adaptive adjustments to ranking weights, giving the system continuous self-optimization capabilities. Attached Figure Description
[0059] Figure 1 This is a flowchart of the dynamic book retrieval method based on personalized needs according to the present invention. Detailed Implementation
[0060] The technical solution of the present invention will be further described in detail below with reference to the embodiments and accompanying drawings, but this is not intended to limit the present invention.
[0061] Example
[0062] The method of this invention will be described in detail using a digital borrowing platform of a university library as an application scenario:
[0063] A dynamic book retrieval method based on personalized needs, referring to Figure 1 This includes the following steps:
[0064] S1: User Behavior Data Collection: In this embodiment, the topic tags for each book in the database are extracted in advance. The topic tags are derived from one or more of the following: subject classification, keywords, and table of contents semantic analysis, forming a global tag set. , A label representing each book;
[0065] user behavioral data sets are represented as ,in:
[0066] Represents a set of user search behaviors. Indicates the first 1 search record Indicates the first input by the user One search keyword;
[0067] This represents a set of user borrowing behaviors. Indicates the first One borrowing record Represents the first in the database This book;
[0068] Represents a set of user reading behaviors. Indicates the first 1 reading record Indicates user books Reading time;
[0069] This represents a collection of user collection behaviors. Indicates the first 1 collection record;
[0070] In this embodiment, the user data of a certain university is obtained. Based on historical behavioral data from the past 180 days, statistics show that users Number of historical behavior records The data includes 63 search records, 52 borrowing records, 42 reading records (including reading time data), and 19 collection records.
[0071] S2: Construct user interest profiles, which includes the following sub-steps:
[0072] S21: The system assigns corresponding weights to different behavior types. Specifically, the weight of the reading behavior is related to the reading duration, and is set to... Reading time In hours;
[0073] All other behaviors are set to fixed weights, and the retrieval behavior... Borrowing behavior collecting behavior .
[0074] S22: When the user selects a tag books When a user engages in a search, borrowing, reading, or collecting activity, the system will accumulate the interest value of that tag according to the weight of the corresponding activity.
[0075] S23: Calculate user interest weights The sum of the weights of each label is ,in Indicates user The total number of tags involved Indicates user For tags The cumulative interest value, This represents the weight value of the corresponding behavior.
[0076] S24: Final user profile generation: ,in Indicates book theme tags, Indicates user For tags Interest weights.
[0077] In this embodiment, the user A total of 57 tags were involved, sorted from highest to lowest according to interest weight, and the tags with the highest weight were selected. These tags serve as core user interest characteristics, forming the final user profile.
[0078] The The value can be preset according to the system scale, preferably In this embodiment .
[0079] user The distribution of interest tags is shown in Table 1:
[0080] Table 1 Users Interest tag weight distribution (Top 10)
[0081] .
[0082] S3: Semantic recognition of user retrieval needs, which includes the following sub-steps:
[0083] S31: The system preprocesses the search keyword text input by the user, and the preprocessing includes one or more of word segmentation, stop word filtering and synonym normalization;
[0084] Based on the global tag set of books in the database, the semantic similarity between search keywords and book tags is calculated. If the cosine similarity exceeds the threshold... Then it is considered that the search keywords With book labels Matching; In this embodiment, the Chinese Word2Vec word vector model trained on the book corpus is used to average the word vectors of each word in the search keyword sequence to obtain the sentence vector. Each book tag in the database is segmented into words, and the average value is taken to obtain the sentence vector. Calculate cosine similarity The threshold The value of was determined through offline experiments, and the range is [0.50, 0.80]. In this embodiment, is taken as . This value achieved the optimal F1 score on the validation set.
[0085] S32: Based on the matching results, construct a set of tags corresponding to the keywords. This reflects the explicit semantic needs of the user's current search.
[0086] In this embodiment, the user Enter the search keywords "knowledge graph, natural language processing", and after semantic matching, For {"Natural Language Processing", "Statistical Linguistics", "Graphics", "Measurement Data Processing", "Fuzzy Linguistics", "Parameter Statistics"}.
[0087] S33: Perform semantic expansion by combining user profiles with tags in the global tag set. Define a scoring function. ,in This represents a balance coefficient between semantic matching and interest preferences; the top-scoring entries are selected. Each tag is used as an extended semantic tag set, denoted as . This yields the final set of semantic requirements: In this embodiment, , The top four highest-rated tags were selected as extended semantic tags, and finally... The tags are {"Natural Language Processing", "Statistical Linguistics", "Graphics", "Measurement Data Processing", "Fuzzy Linguistics", "Parametric Statistics", "Computational Linguistics", "Information Retrieval", "Machine Translation", and "Semantics"}, totaling 10 tags.
[0088] S4: Generate a candidate book list. The system uses the final semantic requirement set obtained in step S33 as a basis. Filter candidate books from the database: That is, the candidate book set consists of all books that contain at least one label from the final semantic requirement set;
[0089] In this embodiment, a total of 149 candidate books were selected.
[0090] S5: Personalized sorting, generating a personalized recommendation list, specifically including the following sub-steps:
[0091] S51: Initialize weight coefficients. The system presets the initial value of the weight coefficients to be... , , And satisfy ;
[0092] The initial values were determined based on the following: grid search optimization was performed on an offline dataset of 5000 users' historical behavior logs, using NDCG@10 as the evaluation metric, and the dataset was traversed... , , With a step size of 0.05, select the weight combination that is optimal for the validation set NDCG@10;
[0093] Experimental results show that when At that time, the validation set NDCG@10 reached the optimal value of 0.6522, which was higher than other combinations, so this group was selected as the initial weight.
[0094] S52: Define the value range of the weighting coefficients. The system sets safety boundaries for each weighting coefficient, with the first weighting coefficient... The value range is [0.20, 0.70]; the second weighting coefficient The value range is [0.15, 0.65]; the third weighting coefficient The value range is [0.05, 0.40];
[0095] The safety boundary is determined based on the following criteria: When the value is below 0.20, the user's current query intent is excessively weakened, and the search results deviate from the query topic. When the value is above 0.70, the system degenerates into pure keyword matching and loses its personalized recommendation capabilities;
[0096] When the value is below 0.15, user historical behavior data is not being effectively utilized; When the value is above 0.65, an "information cocoon" effect occurs;
[0097] When the value is below 0.05, popular and high-quality books cannot receive adequate exposure; When the value is above 0.40, the recommended results tend to converge with the overall popular list on the internet, and the personalized differentiation disappears.
[0098] S53: Based on the maturity of the user profile, the system adaptively adjusts the weights. Based on the user profile constructed in step S2, the system calculates the user... Image maturity characteristics ;
[0099] In this embodiment, the user profile maturity feature is calculated according to the following formula: ,in, Indicates user The total number of historical behavior records, including retrieval behavior, borrowing behavior, reading behavior, and collection behavior; The preset saturation threshold;
[0100] In this embodiment, , ,but .
[0101] S54: Determine the weight adjustment factor. The system determines the weight adjustment factor based on the portrait maturity characteristics. The weight adjustment factor It is determined by the following piecewise function: In this embodiment, It falls within the range [0.15, 0.85], therefore... .
[0102] S55: Calculate the adjusted target weight coefficients, based on the weight adjustment factor. The adjusted target weight coefficient is calculated according to the following formula: ,in, , , The preset adjustment step size parameter;
[0103] In this embodiment, the value of the adjustment step size is determined through offline experiments. , , , .
[0104] S56: Boundary Constraint and Normalization Processing. The system performs boundary constraint and normalization processing on the adjusted target weight coefficients. First, it checks whether each weight falls within the safe boundary, and then performs normalization. After normalization, the final target weight combination is obtained. .
[0105] S57: Calculate multi-dimensional rating factors. The system calculates the rating factors for each dimension of each book in the candidate book set:
[0106] S571: Calculate keyword matching degree: ;
[0107] In this embodiment, for the candidate book "Information Retrieval Based on Natural Language Processing", its matching tag set For {"Natural Language Processing" "Information Retrieval"}, then ;
[0108] S572: Calculate user interest matching degree: ;
[0109] In this embodiment, for the candidate book "Information Retrieval Based on Natural Language Processing", the user profile (Table 1, which only shows the top 10 user tags; the weight of 0.0024 is too small and is not shown in Table 1) is obtained. ;
[0110] S573: Calculating Book Popularity: ,in and These represent the number of times a book has been borrowed and the number of times it has been added to favorites, respectively. Since adding a book to favorites indicates a higher level of interest and preference from the user, different weighting coefficients are assigned to these two actions. ;
[0111] In this embodiment, the candidate book "Information Retrieval Based on Natural Language Processing" was not found in the behavioral data. Therefore, the number of matching tags was used as a proxy, with the maximum number of matching tags set to [value missing]. .
[0112] S58: Comprehensive scoring and ranking. The system uses the final target weight combination determined in step S56. Calculate the comprehensive score for each book in the candidate book set using the scoring factors for each dimension calculated in step S57.
[0113] In this embodiment, the overall score for the candidate book "Information Retrieval Based on Natural Language Processing" is: The system is based on a comprehensive score. Sort all 149 candidate books in descending order of popularity to generate an initial personalized recommendation list.
[0114] S59: Recommendation list reordering and diversity optimization. To prevent the recommendation results from becoming too concentrated, the system introduces a diversity optimization strategy after sorting: the system follows a preset sliding window size. A sliding window scan is performed on the sorted recommendation list; within each sliding window, if any two sets of topic tags for a book are detected... and The Jaccard similarity exceeds the preset similarity threshold. If so, the ranking of the books with lower ratings will be lowered.
[0115] In this embodiment, the preset If detected within the window and The tag set has a Jaccard similarity of 0.82 > 0.75, and Then reduce The system will output the final personalized ranking result as the recommended list after diversity optimization, with the ranking position set to 3rd position.
[0116] S6: Similar reader recommendation. Based on the user interest profile constructed in step S2, a set of interest tag clusters is obtained by clustering user interest tags. ;
[0117] In this embodiment, the system uses the K-Means clustering algorithm to cluster the interest tag vectors of all users, and uses the silhouette coefficient to determine the optimal number of clusters K as 11; users Interest tag vector After clustering, it falls into cluster 1. The cluster's central tag is "Social Sciences, Popular Readings, References," and it has a total of 546 users.
[0118] The system identifies similar reader groups based on interest tag clusters. Specifically, this involves selecting and using the user. Users belonging to the same interest tag cluster and whose interest vector cosine similarity ranks in the top M positions are considered as similar reader groups. In this embodiment, M=50. The system aggregates books in the similar reader groups that the target user has not borrowed or collected, sorts them from high to low according to their frequency of appearance in the similar reader groups, and generates a similar reader recommendation list.
[0119] S7: Generate the final recommendation result. The system merges the personalized ranking recommendation list generated in step S5 and the similar reader recommendation list generated in step S6 to form the final recommendation result.
[0120] In this embodiment, personalized recommendations account for 70% of the recommendation list, and recommendations from similar readers account for 30%. The final list of recommended books is shown in Table 2.
[0121] Table 2 Users The final recommended list (Top 20)
[0122] .
[0123] S8: User feedback learning. The system incrementally updates the tag interest weights in the user profile according to the user's click, read, borrow, collect, and ignore behavior data of the recommendation results, in accordance with the preset update strategy.
[0124] Specifically, when a user borrows a book from the recommendation list, the system calculates the cumulative interest score of all tags for that book. Increase the corresponding behavior weight (borrowing behavior weight) Then, recalculate the interest weights of each label according to step S23. This system enables dynamic updates to user profiles. For books that are not clicked or explicitly marked as "not interested," their tags are not incremented in interest value. The updates are triggered in real-time after each user action, or in batches after a preset time window (24 hours in this embodiment). The system also dynamically maintains newly added or removed tags in the global tag set to ensure the timeliness of the tag system.
[0125] The method of this invention achieves collaborative optimization of retrieval and recommendation, solves the problems of fragmented retrieval and recommendation, static weights, and lack of personalization in semantic expansion in the prior art, improves retrieval accuracy and recommendation diversity, and has dynamic adaptive capabilities.
Claims
1. A dynamic book retrieval method based on personalized needs, characterized in that, Includes the following steps: S1: User behavior data collection: The topic tags of each book in the database are extracted in advance to form a global tag set, and user behavior data is collected. The user behavior data includes information on search behavior, borrowing behavior, reading behavior and collection behavior. S2: Constructing User Interest Profiles: Based on the behavioral data collected in step S1, construct a user interest model, sort it from high to low weight, select the top K tags with the highest weight as the core user interest features, and form the final user profile. S3: Semantic recognition of user search needs: Based on the semantic similarity between the search keywords and the global tag set, tags are filtered to construct the explicit semantic needs set of the user's current search. The semantics are then expanded in conjunction with the user profile to obtain the final semantic needs set. S4: Generate a candidate book list: Filter books from the database that contain at least one tag from the final semantic requirement set, and generate a candidate book list; S5: Personalized Ranking: Perform multi-factor scoring and ranking on the candidate book set to generate a personalized ranking list; The multi-factor includes keyword matching degree. User interest matching degree and the popularity of books The comprehensive scoring function is: , in, , , These are weighting coefficients, corresponding to the weights of keyword matching degree, user interest matching degree, and book popularity in the overall score, respectively. ,and ; The weighting coefficients are adaptively adjusted based on the maturity characteristics of the user profile; S6: Similar Reader Recommendation: Based on the user profile constructed in step S2, a set of interest tag clusters is obtained by clustering user interest tags. Similar reader groups are identified based on the interest tag clusters, and a recommendation list is generated using the book behavior data of similar readers. S7: Generate the final recommendation result: The final recommendation result consists of two parts: the personalized recommendation result generated in step S5 and the similar reader recommendation result generated in step S6; S8: User Feedback Learning: The system model is dynamically updated based on user behavior data regarding recommendation results, continuously optimizing user profiles.
2. The method according to claim 1, characterized in that, In step S1, the user behavioral data sets are represented as ,in: Represents a set of user search behaviors. Indicates the first 1 search record Indicates the first input by the user One search keyword; This represents a set of user borrowing behaviors. Indicates the first One borrowing record Represents the first in the database This book; Represents a set of user reading behaviors. Indicates the first 1 reading record Indicates user books Reading time; This represents a collection of user collection behaviors. Indicates the first 1 collection record.
3. The method according to claim 1, characterized in that, The step S2 of constructing a user interest profile includes: Set corresponding weights for different behavior types: The weight of reading behavior is related to reading time, and is set as follows: Reading time In hours; Search behavior set to fixed weight Borrowing behavior is set to a fixed weight. The act of collecting is set to a fixed weight. ; When users include tags When a user searches, borrows, reads, or saves a book, the interest value of that tag is accumulated according to the weight of the corresponding behavior. Calculate user interest weights The sum of the weights of each label is ; in, Indicates user The total number of tags involved Indicates user For tags The cumulative interest value, This represents the weight value of the corresponding behavior. Indicates user For tags Interest weights; The users are sorted by interest weight from high to low, and the top K tags with the highest weights are selected as the core interest features of the users to form the final user profile.
4. The method according to claim 1, characterized in that, The semantic expansion in step S3 specifically includes: Define a scoring function for each tag in the global tag set. Where Sim represents the semantic similarity between the search keywords and tags. Indicates the first input by the user One search keyword, This represents the book's topic tags, and λ is a balance coefficient between semantic matching and interest preferences. The top N tags with the highest scores are selected as extended semantic tags and merged with the explicit semantic requirement set to obtain the final semantic requirement set.
5. The method according to claim 1, characterized in that, The adaptive adjustment of the weight coefficients in step S5 includes: The system presets the initial values of the weighting coefficients. , , ,and ; Each weighting coefficient has a preset safety boundary: The value range is [0.20, 0.70]. The value range is [0.15, 0.65]. The value range is [0.05, 0.40]; The user profile maturity feature is calculated according to the following formula: ; in Indicates user Total number of historical behavior records The preset saturation threshold; The weight adjustment factor is determined based on the portrait maturity characteristics. It is determined by a piecewise function; The adjusted target weight coefficients are calculated based on the weight adjustment factor, and boundary constraints and normalization are performed.
6. The method according to claim 5, characterized in that, The adaptive adjustment of the weight coefficients follows the principles below: Keyword matching degree weight It decreases monotonically as the maturity of the user profile increases; User interest matching weight It increases monotonically as the maturity of the user profile increases; Book popularity weight The value is higher when the user profile is less mature and lower when the user profile is more mature.
7. The method according to claim 1, characterized in that, Step S5 further includes recommendation list diversity optimization: a sliding window scan is performed on the sorted recommendation list according to a preset sliding window size W; within each sliding window, if the Jaccard similarity of the topic tag sets of any two books exceeds a preset similarity threshold... If so, the ranking of the books with lower ratings will be lowered.
8. The method according to claim 1, characterized in that, The similar reader recommendation in step S6 includes: clustering the interest tag vectors of all users using the K-Means clustering algorithm, and using the silhouette coefficient to determine the optimal number of clusters; selecting similar readers to the target user. Users belonging to the same interest tag cluster and ranking in the top M positions by the cosine similarity of their interest vectors are considered as a similar reader group. Books that are in the similar reader group but have not been borrowed or collected by the target user are aggregated and sorted from high to low according to their frequency of appearance in the similar reader group to generate a similar reader recommendation list.
9. The method according to claim 1, characterized in that, The user feedback learning in step S8 includes: incrementally updating the tag interest weights in the user profile according to a preset update strategy based on user click, read, borrow, favorite, and ignore behavior data of the recommendation results; the update is triggered in real time after each user behavior, or in batches after the preset time window ends; the system also dynamically maintains the tags added or removed in the global tag set.
10. A dynamic book retrieval system based on personalized needs, used to implement the method described in any one of claims 1-9, characterized in that, include: The user data acquisition module is used to implement step S1; The user profile building module is used to implement step S2; The demand semantic recognition module is used to implement step S3; The book retrieval module is used to implement step S4; A personalized sorting module is used to implement step S5; The similar reader recommendation module is used to implement step S6; The intelligent recommendation module is used to implement step S7; The user feedback learning module is used to implement step S8.
Citation Information
Patent Citations
Book recommendation method and system based on user clustering
CN105760547A
Library book recommendation system and method based on user profiles
CN112131477A