A library book personalized recommendation method and system based on machine learning
Patent Information
- Application Number
- CN202610700837.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2026-05-20
- Publication Date
- 2026-09-18
AI Technical Summary
现有方法多针对单个读者独立推荐,未充分考虑多名读者同时接收推荐后对馆藏复本、预约占用和可借状态的影响
(1)通过FGCNN同源推荐模型分别生成用户检索向量和图书检索向量,基于图书检索向量建立馆藏向量索引库,使候选图书召回与后续排序过程处于同一特征表达空间,减少因关键词匹配、热门筛选或相似规则造成的候选图书提前过滤,提高潜在相关图书进入推荐排序阶段的概率。
Smart Images

Figure CN122777531A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of artificial intelligence recommendation technology, and in particular to a method and system for personalized library book recommendation based on machine learning. Background Technology
[0002] With the development of digital library infrastructure, a large amount of reader behavior data, book catalog data, and collection circulation data have been accumulated in library business systems. Existing book recommendation methods typically generate recommendation results based on book classification numbers, keyword matching, borrowing history similarity, collaborative filtering, or conventional machine learning models.
[0003] In existing methods, the candidate book recall stage often employs keyword matching, popular book filtering, or similar book rules, followed by interest prediction during the ranking stage. Because recall and ranking use different feature spaces, books that match a reader's potential needs may be filtered out during the recall stage. Furthermore, existing methods primarily recommend books to individual readers independently, failing to adequately consider the impact on duplicate copies, reservation availability, and borrowing status when multiple readers simultaneously receive recommendations.
[0004] Existing systems typically record clicks, borrowings, or ratings after a recommendation, using this information for subsequent offline training. However, this makes it difficult to instantly correct recommendations based on feedback of disinterest in the current session. Even when corrections are made, they often involve deleting the books mentioned in the feedback, failing to pinpoint the internal feature generation path that led to the incorrect recommendation. Consequently, the corrected recommendation may still use the original reason for the incorrect recommendation.
[0005] Therefore, how to provide a personalized library book recommendation method and system based on machine learning is a problem that urgently needs to be solved by those skilled in the art. Summary of the Invention
[0006] One objective of this invention is to propose a personalized library book recommendation method and system based on machine learning. This invention utilizes FGCNN homology recall ranking, collection circulation simulation, and recommendation action rollback correction technology to achieve candidate book recall, interest prediction, collection status simulation, and in-session feedback correction. It has the advantages of high recommendation matching degree, strong collection adaptability, and timely feedback correction.
[0007] A personalized library book recommendation method based on machine learning according to an embodiment of the present invention includes the following steps: Acquire library business data, perform preprocessing on the library business data, and generate user-side features, book-side features, and collection status features; Construct an FGCNN homology recommendation model, convert user-side features into user retrieval vectors, convert book-side features into book retrieval vectors, and build a library collection vector index based on the book retrieval vectors; Retrieve a set of candidate books from the library's vector index based on user search vectors; A joint input matrix is constructed based on user-side features, book-side features corresponding to the candidate book set, and collection status features. The joint input matrix is then input into the FGCNN sorting unit to obtain interest prediction values, convolution generation paths, and an initial recommendation list. Input the initial recommendation list, interest prediction value and collection status characteristics of several users into the collection circulation simulator to generate the simulated collection status. Based on the simulated collection status, update the collection status characteristics and re-sort the initial recommendation list to obtain the displayable recommendation list. Before displaying the list of recommended items, a snapshot of the recommended actions is saved. The snapshot of the recommended actions records the user state, joint input matrix, convolution generation path, simulated collection state and the list of recommended items that can be displayed. Receive negative feedback information from the current session, determine the convolution generation path to be rolled back from the recommended action snapshot based on the negative feedback information, restore the user state, mask the convolution generation features corresponding to the convolution generation path to be rolled back, re-execute candidate book recall and sorting, generate a corrected recommendation list, and write the corrected recommendation list into the training samples.
[0008] Optionally, the process of generating user-side features, book-side features, and collection status features specifically includes: Acquire reader behavior data, book catalog data, and library circulation data; The library business data is linked according to reader identifier, book identifier and behavior time, duplicate records are deleted, abnormal time fields are corrected, missing fields are filled, discrete fields are converted into encoded values, text fields are segmented and mapped to indexed word vectors, and numerical fields are normalized. By aggregating borrowing and retrieval behaviors based on reader identifiers, user-side features are generated that include reading preferences, retrieval intent, and behavior frequency. Extract classification information, subject information, and abstract indexing information from book identifiers to generate book-side features; The available number of books, reservation occupancy value, and collection location code are calculated based on the book identifiers to generate collection status characteristics.
[0009] Optionally, constructing the FGCNN homology recommendation model specifically includes: The user-side FGCNN generation unit and the book-side FGCNN generation unit are set to have the same structure. The same structure is formed by sequentially connecting the embedding layer, the convolutional feature generation layer, the feature recombination layer and the vector output layer. User-side features are used as input to the user-side FGCNN generation unit, and book identifiers that have interaction with the user are used as training targets to train and obtain user retrieval vectors. Book-side features are used as input to the book-side FGCNN generation unit, and user identifiers that have interaction relationships with books are used as reverse training targets to train and obtain book retrieval vectors. Establish an index mapping relationship between book identifiers, book retrieval vectors, and collection status characteristics to generate a collection vector index library.
[0010] Optionally, the step of recalling a set of candidate books in the library's collection vector index based on the user's retrieval vector specifically includes: Calculate the vector similarity value based on the user's retrieval vector and the book retrieval vector in the library's collection vector index, and obtain the seed recall set according to the vector similarity value; Read the collection status characteristics corresponding to the seed recall set and divide the seed recall set into valid seed books and invalid seed books; Using the book retrieval vector corresponding to the invalid seed book as the neighborhood anchor point, perform homogeneous neighborhood replacement recall in the collection vector index library to obtain replacement books that are adjacent to the neighborhood anchor point and whose collection status features meet the recommendation conditions; The valid seed books and replacement books are merged, duplicate books are removed, and a candidate book set is generated.
[0011] Optionally, inputting the joint input matrix into the FGCNN sorting unit specifically includes: Read the book-side features and collection status features corresponding to the candidate books according to the candidate book set, and construct a joint input matrix by combining the user-side features, the book-side features corresponding to the candidate books, the collection status features, and the vector similarity values between the user retrieval vector and the book retrieval vector; The joint input matrix is input into the FGCNN sorting unit. The FGCNN sorting unit reuses the embedding layer parameters, convolutional feature generation layer parameters, and feature recombination rules of the user-side FGCNN generation unit and the book-side FGCNN generation unit to perform embedding mapping, convolutional feature generation, and feature recombination on the joint input matrix to obtain sorted and recombined features. The sorting and reorganization features are input into the prediction layer to obtain the interest prediction values corresponding to the candidate books; During the convolutional feature generation process, the input field position, convolution kernel identifier, generated feature identifier, candidate book corresponding to the generated feature, and connection position of the generated feature entering the prediction layer are recorded to form the convolutional generation path; The candidate book set is sorted according to the interest prediction values to obtain an initial recommendation list.
[0012] Optionally, the collection circulation simulator specifically includes: The initial recommendation lists, interest prediction values, and collection status features corresponding to several users are combined into batch simulation samples according to the recommendation display time. The simulation triggering order of candidate books is determined based on the interest prediction values in the batch simulation samples, and simulation borrowing events, simulation reservation events, and simulation release events are generated under the simulation triggering order. The simulated collection status is obtained by deducting the available quantity from the collection status characteristics according to the simulated borrowing event, updating the reservation occupancy value in the collection status characteristics according to the simulated reservation event, and restoring the available quantity in the collection status characteristics according to the simulated release event. Based on the simulation of the collection status, simulation feedback features are generated, including the number of items available for borrowing, the number of reservations, and the number of circulation pressures. The simulation feedback features are then written into the collection status features to obtain the updated collection status features. The joint input matrix is reconstructed based on user-side features, book-side features corresponding to the candidate book set, and updated collection status features. The reconstructed joint input matrix is then input into the FGCNN sorting unit to obtain the interest prediction value again. The initial recommendation list is sorted according to the newly obtained interest prediction values to obtain a list of recommendations that can be displayed.
[0013] Optionally, the process of generating the revised recommendation list specifically includes: Receive negative feedback information for the current session, which is generated from the "not interested" flag; Based on the negative feedback information in the current session, determine the set of negative feedback books from the list of recommended books that can be displayed; Read the convolution generation path corresponding to the negative feedback book set from the recommended action snapshot, count the number of times the convolution generation path appears in the negative feedback book set and the contribution of the corresponding interest prediction value, and determine the convolution generation path to be rolled back. Restore the user state in the recommended action snapshot, use the convolution generation features corresponding to the convolution generation path to be rolled back as the rollback object, and hide the corresponding generation feature transmission position in the joint input matrix. Based on the masked generated feature state, the user retrieval vector is regenerated, the candidate book recall is re-executed, and the joint input matrix is reconstructed based on the re-recalled candidate book set and input into the FGCNN ranking unit to obtain the corrected interest prediction value. A revised recommendation list is generated based on the revised interest prediction values; The recommended list, current session negative feedback information, convolution generation path to be rolled back, and corrected recommended list can be written into the training samples.
[0014] A personalized library book recommendation system based on machine learning according to an embodiment of the present invention includes the following modules: The business data management module is used to access reader behavior data, book catalog data, and library circulation data, perform data preprocessing, and generate user-side features, book-side features, and library collection status features. The same-source vector recall module is used to call the user-side FGCNN generation unit to generate user retrieval vectors, call the book-side FGCNN generation unit to generate book retrieval vectors, maintain the library collection vector index, and recall the candidate book set based on the user retrieval vectors. The FGCNN ranking and recording module is used to construct a joint input matrix based on user-side features, book-side features corresponding to the candidate book set, and collection status features, and outputs interest prediction values, convolution generation paths, and an initial recommendation list. The collection circulation simulation module is used to batch simulate the initial recommendation lists and interest prediction values of several users to generate simulated collection status. After writing the simulated collection status into the collection status features, the FGCNN sorting record module is triggered to re-sort and obtain the displayable recommendation list. The recommendation display and feedback module is used to display a list of available recommendations, save snapshots of recommendation actions, and receive readers' "not interested" tags for recommended books. The rollback correction training module is used to determine the convolution generation path to be rolled back from the recommended action snapshot based on the uninterested label, mask the convolution generation features corresponding to the convolution generation path to be rolled back, re-execute candidate book recall and sorting, generate a corrected recommendation list, and write it into the training samples.
[0015] The beneficial effects of this invention are: (1) User retrieval vectors and book retrieval vectors are generated by the FGCNN homology recommendation model. A library collection vector index is established based on the book retrieval vectors, so that the candidate book recall and subsequent ranking process are in the same feature expression space, reducing the premature filtering of candidate books caused by keyword matching, popular filtering or similarity rules, and increasing the probability of potentially related books entering the recommendation ranking stage.
[0016] (2) Input the initial recommendation list, interest prediction value and collection status features corresponding to several users into the collection circulation simulator, generate simulation feedback features by simulating the collection status, write the simulation feedback features into the collection status features and re-input them into the FGCNN sorting unit, so that the recommendation results can be adjusted according to the changes in duplicate occupancy, reservation occupancy and circulation pressure, thereby improving the adaptability of the recommendation list to the real-time collection status.
[0017] (3) Save a snapshot of the recommendation action before displaying the recommendation list. After receiving the "not interested" tag in the current session, determine the convolution generation path to be rolled back from the recommendation action snapshot, block the corresponding convolution generation features, and re-execute recall and sorting. This makes correcting the recommendation list not only deleting the feedback books, but also changing the feature generation path that caused the incorrect recommendation, thereby improving the pertinence and real-time nature of recommendation correction within the session. Attached Figure Description
[0018] The accompanying drawings are provided to further illustrate the invention and form part of the specification. They are used in conjunction with embodiments of the invention to explain the invention and do not constitute a limitation thereof. In the drawings: Figure 1 This is a flowchart of a machine learning-based personalized book recommendation method for libraries proposed in this invention; Figure 2 This is a structural diagram of a personalized library book recommendation system based on machine learning proposed in this invention; Figure 3 This is a schematic diagram illustrating the homogeneous neighborhood replacement recall method and system for personalized library book recommendation based on machine learning proposed in this invention. Detailed Implementation
[0019] The present invention will now be described in further detail with reference to the accompanying drawings. These drawings are simplified schematic diagrams, illustrating only the basic structure of the invention, and therefore only show the components relevant to the invention.
[0020] refer to Figures 1-3 A machine learning-based personalized book recommendation method for libraries includes the following steps: Acquire library business data, perform preprocessing on the library business data, and generate user-side features, book-side features, and collection status features; Construct an FGCNN homology recommendation model, convert user-side features into user retrieval vectors, convert book-side features into book retrieval vectors, and build a library collection vector index based on the book retrieval vectors; Retrieve a set of candidate books from the library's vector index based on user search vectors; A joint input matrix is constructed based on user-side features, book-side features corresponding to the candidate book set, and collection status features. The joint input matrix is then input into the FGCNN sorting unit to obtain interest prediction values, convolution generation paths, and an initial recommendation list. Input the initial recommendation list, interest prediction value and collection status characteristics of several users into the collection circulation simulator to generate the simulated collection status. Based on the simulated collection status, update the collection status characteristics and re-sort the initial recommendation list to obtain the displayable recommendation list. Before displaying the list of recommended items, a snapshot of the recommended actions is saved. The snapshot of the recommended actions records the user state, joint input matrix, convolution generation path, simulated collection state and the list of recommended items that can be displayed. Receive negative feedback information from the current session, determine the convolution generation path to be rolled back from the recommended action snapshot based on the negative feedback information, restore the user state, mask the convolution generation features corresponding to the convolution generation path to be rolled back, re-execute candidate book recall and sorting, generate a corrected recommendation list, and write the corrected recommendation list into the training samples.
[0021] In this embodiment, the process of generating user-side features, book-side features, and collection status features specifically includes: Acquire reader behavior data, book catalog data, and library circulation data; reader behavior data should include at least borrowing behavior data, retrieval behavior data, and browsing behavior data; book catalog data should include at least book identification, classification information, subject information, and abstract text; library circulation data should include at least book identification, total number of items in the library, number of items currently checked out, number of items reserved, and location of items in the library. The library business data is linked according to reader identifier, book identifier and behavior time, duplicate records are deleted, abnormal time fields are corrected, missing fields are filled, discrete fields are converted into encoded values, text fields are segmented and mapped to indexed word vectors, and numerical fields are normalized. The borrowing and retrieval behaviors are aggregated according to reader identifiers to generate user-side features that include reading preferences, retrieval intent, and behavior frequency. The distribution of borrowed book categories, the distribution of retrieval index terms, and the number of behavior occurrences within a preset time window are statistically analyzed according to reader identifiers. The distribution of borrowed book categories is used as reading preferences, the distribution of retrieval index terms is used as retrieval intent, and the number of borrowings, retrievals, and browsings is used as behavior frequency. These are then combined to obtain the user-side features. Book-side features are generated by extracting classification information, subject information, and abstract indexing information from the book identifier. Classification information is obtained from the book classification number, subject information from subject terms, and abstract indexing information from the abstract text through word segmentation and indexing term mapping. The available number of books, the reservation occupancy value, and the collection location code are calculated based on the book identification to generate collection status characteristics; the reservation occupancy value is obtained by dividing the reservation number by the larger value between the available number of books and 1.
[0022] In this embodiment, constructing the FGCNN homology recommendation model specifically includes: The user-side FGCNN generation unit and the book-side FGCNN generation unit are configured with a common structure, consisting of an embedding layer, a convolutional feature generation layer, a feature reorganization layer, and a vector output layer connected sequentially. Both units use the same network layer order, the same set of convolutional kernel sizes, the same activation function, and the same vector dimension. However, the user-side and book-side FGCNN generation units have different input fields and output objects. The embedding layer parameters and convolutional feature generation layer parameters are shared, while the vector output layer parameters are trained separately. User-side features are used as input to the user-side FGCNN generation unit, and book identifiers that have interaction with the user are used as training targets to train and obtain user retrieval vectors. Book-side features are used as input to the book-side FGCNN generation unit, and user identifiers that have interaction relationships with books are used as reverse training targets to train and obtain book retrieval vectors. In this embodiment, reverse training refers to training the book-side FGCNN generation unit using the opposite data organization method to the training direction of the user-side FGCNN generation unit. The user-side FGCNN generation unit uses user-side features as input and book identifiers that interact with the user as training targets to learn the mapping relationship between user-side features and the book retrieval space; the book-side FGCNN generation unit uses book-side features as input and user identifiers that interact with books as training targets to learn the mapping relationship between book-side features and the user retrieval space. Establish an index mapping relationship between book identifiers, book retrieval vectors, and collection status characteristics to generate a collection vector index library.
[0023] In this embodiment, the step of recalling a set of candidate books in the library's vector index based on the user's retrieval vector specifically includes: The similarity value of the vectors is calculated based on the user's search vector and the book search vector in the library's collection vector index. A seed recall set is obtained according to the vector similarity value. The vector similarity value adopts the cosine similarity. The number of the seed recall set is 3 to 10 times the number of recommendations. Read the collection status features corresponding to the seed recall set and divide the seed recall set into valid seed books and invalid seed books; the division is based on whether there are currently any books available for borrowing, which is a computable attribute in the collection status features. Using the book retrieval vector corresponding to the invalid seed book as the neighborhood anchor point, a homologous neighborhood replacement recall is performed in the library's collection vector index database to obtain replacement books that are adjacent to the neighborhood anchor point and whose collection status features meet the recommendation criteria. Homologous neighborhood replacement recall refers to retrieving books whose vector similarity value with the neighborhood anchor point meets the neighborhood threshold within the book retrieval vector space generated by the book-side FGCNN generation unit, using the book retrieval vector of the invalid seed book as the neighborhood anchor point. The recommendation criteria are that the number of books available for borrowing is greater than 0. The neighborhood threshold is 0.8 when using cosine similarity. The valid seed books and replacement books are merged, duplicate books are removed, and a candidate book set is generated.
[0024] In this embodiment, inputting the joint input matrix into the FGCNN sorting unit specifically includes: The book-side features and collection status features corresponding to the candidate books are read from the candidate book set. The user-side features, the book-side features corresponding to the candidate books, the collection status features, and the vector similarity values between the user retrieval vector and the book retrieval vector are used to construct a joint input matrix. For each candidate book in the candidate book set, the book-side features and collection status features corresponding to the candidate book are read, and the same user-side features are copied to the sample corresponding to each candidate book. The joint input matrix is arranged according to the field dimensions, with the matrix rows corresponding to the user-side field, book-side field, collection status field, and vector similarity value field, and the matrix columns corresponding to the embedding dimensions of each field. The vector similarity value is written as a continuous field into the specified position of the joint input matrix. The joint input matrix is input into the FGCNN sorting unit. The FGCNN sorting unit reuses the embedding layer parameters, convolutional feature generation layer parameters, and feature recombination rules of the user-side FGCNN generator unit and the book-side FGCNN generator unit to perform embedding mapping, convolutional feature generation, and feature recombination on the joint input matrix to obtain sorted and recombined features. Reuse means that the FGCNN sorting unit calls the embedding layer parameters, convolutional kernel parameters, and feature recombination mapping methods that have been trained by the user-side FGCNN generator unit and the book-side FGCNN generator unit, without re-initializing the independent embedding layer parameters and convolutional kernel parameters. The sorting and reorganization features are input into the prediction layer to obtain the interest prediction values corresponding to the candidate books; the prediction layer consists of three fully connected layers. During the convolutional feature generation process, the input field position, convolution kernel identifier, generated feature identifier, candidate book corresponding to the generated feature, and connection position of the generated feature entering the prediction layer are recorded to form a convolutional generation path. The convolutional generation path is used to record the generation source of the sorted and recombined features. The input field position indicates the row position of the field participating in the same convolution calculation in the joint input matrix, the convolution kernel identifier indicates the convolution kernel number that performs this convolution calculation, the generated feature identifier indicates the number of the convolution output feature in the sorted and recombined features, and the connection position indicates the node position corresponding to the generated feature when it is input into the prediction layer. For each candidate book, several convolutional generation paths with the highest contribution values are saved. The candidate book set is sorted according to the interest prediction values to obtain an initial recommendation list.
[0025] In this embodiment, the collection circulation simulator specifically includes: The initial recommendation lists, interest prediction values, and collection status features corresponding to several users are combined into batch simulation samples according to the recommendation display time. The simulation triggering order of candidate books is determined based on the interest prediction values in the batch simulation samples. Simulated borrowing events, simulated reservation events, and simulated release events are generated under this order. For candidate books displayed at the same time, the interest prediction values are converted into borrowing expectations and reservation expectations. Borrowing expectations are obtained from the statistical correspondence between interest prediction values and actual borrowing behavior in historical recommendation samples, and reservation expectations are obtained from the statistical correspondence between interest prediction values and actual reservation behavior in historical recommendation samples. Each candidate book's simulated borrowing event carries a borrowing expectation, and each candidate book's simulated reservation event carries a reservation expectation. Simulated release events are generated based on the expected return time and historical on-time return ratio, carrying a release expectation. The simulated collection status is obtained by deducting the available quantity from the collection status characteristics based on simulated borrowing events, updating the reservation occupancy value based on simulated reservation events, and restoring the available quantity based on simulated release events. Simulated borrowing, reservation, and release events are aggregated according to book identifiers and simulation time points to obtain the expected total borrowing quantity, reservation quantity, and release quantity for each book at each simulation time point. Using the available quantity before simulation as the initial value, at each simulation time point, the expected borrowing quantity is calculated by subtracting the expected total borrowing quantity from the expected borrowing quantity at the previous simulation time point, subtracting the reservation occupancy value calculated according to the historical reservation-to-borrowing ratio, and adding the release quantity to obtain the expected borrowing quantity at the current simulation time point. The expected borrowing quantity is neither less than zero nor greater than the total collection quantity. Based on the simulated collection status, simulation feedback features are generated, including simulated borrowable quantity, simulated reservation occupancy value, and simulated circulation pressure value. These simulation feedback features are then written into the collection status features to obtain the updated collection status features. The expected borrowable quantity at the current simulation time is used as the simulated borrowable quantity. The ratio between the total expected reservations and the simulated borrowable quantity is used as the simulated reservation occupancy value, where one is used as the denominator when the simulated borrowable quantity is zero. The occupancy level of the total collection, influenced by borrowing expectations, reservation expectations, and release expectations, is used as the simulated circulation pressure value. The simulated circulation pressure value consists of three terms: the first term is 1; the second term is the negative of the ratio of the simulated borrowable quantity at the current simulation time to the total collection quantity of that book; and the third term is the simulated reservation occupancy value. The joint input matrix is reconstructed based on user-side features, book-side features corresponding to the candidate book set, and updated collection status features. The reconstructed joint input matrix is then input into the FGCNN sorting unit to obtain the interest prediction value again. The initial recommendation list is sorted according to the newly obtained interest prediction values to obtain a list of recommendations that can be displayed.
[0026] In this embodiment, a snapshot of the recommendation action is saved before displaying the list of available recommendations. The snapshot is indexed according to the user ID, session ID, and recommendation display time. The snapshot records the user state, joint input matrix, convolutional generation path, simulated collection state, and list of available recommendations when the current recommendation is generated. The user state is used to record the user-side features under the current session, the joint input matrix is used to record the actual input of the FGCNN ranking unit, the convolutional generation path is used to record the source of the generated features and the position of entering the prediction layer, the simulated collection state is used to record the collection state after the collection circulation simulation, and the list of available recommendations is used to record the order of displayed books and the corresponding interest prediction values.
[0027] In this embodiment, the process of generating the revised recommendation list specifically includes: Receive negative feedback information for the current session, which is generated by the "not interested" flag. The "not interested" flag is an explicit feedback action triggered by the user in the current session for recommended books in the displayable recommendation list. Based on the negative feedback information in the current session, determine the set of negative feedback books from the list of recommended books that can be displayed; The convolutional generation paths corresponding to the negative feedback book set are read from the recommendation action snapshot. The number of times the convolutional generation path appears in the negative feedback book set and the contribution of the corresponding interest prediction value are counted to determine the convolutional generation paths to be rolled back. For each book in the negative feedback book set, the corresponding convolutional generation path is read from the recommendation action snapshot. For the same convolutional generation path, the number of times the convolutional generation path appears in the negative feedback book set is counted. The product of the generated feature value corresponding to the convolutional generation path and the prediction layer connection parameter is calculated as the single contribution. The single contributions of the same convolutional generation path in the negative feedback book set are added together to obtain the path contribution. The convolutional generation paths that appear at least twice or whose path contribution ranks in the top 5 are determined as the convolutional generation paths to be rolled back. The process involves restoring the user state from the recommendation action snapshot, using the convolutional features corresponding to the convolutional generation path to be rolled back as the rollback object, and masking the corresponding generation feature transmission positions in the joint input matrix. Restoring the user state from the recommendation action snapshot means restoring the user-side features and current session state corresponding to the generation of the displayable recommendation list. Masking the corresponding generation feature transmission positions in the joint input matrix means establishing path masking markers based on the input field positions, convolution kernel identifiers, generation feature identifiers, and connection positions in the convolutional generation path to be rolled back, and setting the values of the convolutional generation features corresponding to the path masking markers to zero in subsequent feature reorganization and prediction layer inputs. Based on the masked generated feature state, the user retrieval vector is regenerated, the candidate book recall is re-executed, and the joint input matrix is reconstructed based on the re-recalled candidate book set and input into the FGCNN ranking unit to obtain the corrected interest prediction value. A revised recommendation list is generated based on the revised interest prediction values; The recommended list, current session negative feedback information, convolution generation path to be rolled back, and corrected recommended list can be written into the training samples.
[0028] A personalized library book recommendation system based on machine learning according to an embodiment of the present invention includes the following modules: The business data management module is used to access reader behavior data, book catalog data, and library circulation data, perform data preprocessing, and generate user-side features, book-side features, and library collection status features. The same-source vector recall module is used to call the user-side FGCNN generation unit to generate user retrieval vectors, call the book-side FGCNN generation unit to generate book retrieval vectors, maintain the library collection vector index, and recall the candidate book set based on the user retrieval vectors. The FGCNN ranking and recording module is used to construct a joint input matrix based on user-side features, book-side features corresponding to the candidate book set, and collection status features, and outputs interest prediction values, convolution generation paths, and an initial recommendation list. The collection circulation simulation module is used to batch simulate the initial recommendation lists and interest prediction values of several users to generate simulated collection status. After writing the simulated collection status into the collection status features, the FGCNN sorting record module is triggered to re-sort and obtain the displayable recommendation list. The recommendation display and feedback module is used to display a list of available recommendations, save snapshots of recommendation actions, and receive readers' "not interested" tags for recommended books. The rollback correction training module is used to determine the convolution generation path to be rolled back from the recommended action snapshot based on the uninterested label, mask the convolution generation features corresponding to the convolution generation path to be rolled back, re-execute candidate book recall and sorting, generate a corrected recommendation list, and write it into the training samples.
[0029] Example 1: To verify the feasibility of this invention in practice, it was applied to a digital library environment containing hundreds of thousands of books and tens of thousands of readers. This library exhibits typical problems: traditional recommendation methods separate candidate recall and ranking, easily leading to the filtering of potentially relevant books; when multiple readers simultaneously receive recommendations, the availability of duplicate copies and reservations cannot be matched in real time; recommendations are difficult to correct immediately after explicit feedback from readers during a session, and the rollback method is too simple to pinpoint errors in the model's feature path. These problems result in low recommendation accuracy, poor collection matching, and a poor user experience.
[0030] In this scenario, the present invention first acquires reader behavior data, book catalog data, and library circulation data, and performs deduplication, missing data completion, field encoding, text segmentation, and normalization to generate user-side features, book-side features, and library collection status features. An FGCNN homogeneous recommendation model is constructed. User-side features are input into the user-side generation unit to generate user retrieval vectors, and book-side features are input into the book-side generation unit to generate book retrieval vectors. Based on the book retrieval vectors, a library collection vector index is established to achieve homogeneous recall and ranking of candidate books. For simultaneous recommendations from multiple readers, the present invention inputs the initial recommendation list and interest prediction values into a library collection circulation simulator to simulate book borrowing and reservation events, generating a simulated library collection status. The simulated feedback features are then written into the library collection status features to trigger a re-ranking, thereby generating a displayable recommendation list that ensures the recommendation results match the actual borrowable status of the library collection.
[0031] Before displaying the recommendation list, the system saves a snapshot of the recommendation process, including user state, joint input matrix, convolutional generation path, simulated collection state, and the list of recommendations available for display. When a reader marks the recommendation results as uninterested in the current session, the system determines the convolutional generation path to be rolled back based on the negative feedback, masks the corresponding generated features, regenerates the user retrieval vector, and performs candidate recall and FGCNN ranking to generate a revised recommendation list. The system then writes the recommendations before rollback, the negative feedback information, and the revised recommendations into the training samples, enabling real-time correction within the session and improving the targeting of recommendations.
[0032] In practical applications, this invention was tested in a digital library environment. Test results show that the recommendation list generated using the method of this invention outperforms traditional collaborative filtering, content matching, and ordinary machine learning methods in terms of candidate recall, ranking accuracy, and user feedback processing efficiency.
[0033] To provide a more intuitive comparison of the results, the following data table is presented, showing the performance of the method of this invention compared with traditional collaborative filtering, content matching, and ordinary machine learning recommendation methods on key metrics.
[0034] Table 1: Performance Comparison of Library Book Recommendation Methods
[0035] As shown in Table 1, the present invention achieves a candidate recall hit rate of 77%, which is higher than other methods, indicating that the homology recall mechanism can effectively increase the proportion of potentially relevant books entering the candidate set. In terms of ranking accuracy, the present invention achieves 73%, which is more than 15% higher than traditional methods, demonstrating that the FGCNN ranking unit, combined with the convolutional generation path and the joint input matrix, can more accurately reflect user interests.
[0036] Regarding the efficiency of handling negative feedback within a session, the average processing time of this invention is 1.2 seconds, faster than the 2.8 to 3.8 seconds of traditional methods. This demonstrates that the rollback correction mechanism can quickly respond to user "not interested" tags and generate a corrected recommendation list, ensuring the immediacy of recommendations within the session. The probability of recommended books being unavailable for borrowing decreased from 11% to 14% in traditional methods to 3%, indicating that the simulated collection status mechanism can effectively consider duplicate occupancy and reservation pressure, making the recommendation results highly consistent with the actual borrowability status of the collection.
[0037] The user click-through rate reached 35%, higher than the 19% to 23% of traditional methods, and the average user satisfaction score reached 4.2 points, which is better than the 3.0 to 3.5 points of traditional methods, indicating that the recommendation results are more in line with readers' preferences.
[0038] Overall, the method of this invention performs excellently in terms of candidate recall, ranking accuracy, collection adaptation, and in-session feedback processing, improving user interaction experience and satisfaction, and verifying the practical effect and application value of this invention in personalized book recommendation in libraries.
[0039] The above description is only a preferred embodiment of the present invention, but the scope of protection of the present invention is not limited thereto. Any equivalent substitutions or modifications made by those skilled in the art within the scope of the technology disclosed in the present invention, based on the technical solution and inventive concept of the present invention, should be covered within the scope of protection of the present invention.
Claims
1. A personalized library book recommendation method based on machine learning, characterized in that, Includes the following steps: Acquire library business data, perform preprocessing on the library business data, and generate user-side features, book-side features, and collection status features; Construct an FGCNN homology recommendation model, convert user-side features into user retrieval vectors, convert book-side features into book retrieval vectors, and build a library collection vector index based on the book retrieval vectors; Retrieve a set of candidate books from the library's vector index based on user search vectors; A joint input matrix is constructed based on user-side features, book-side features corresponding to the candidate book set, and collection status features. The joint input matrix is then input into the FGCNN sorting unit to obtain interest prediction values, convolution generation paths, and an initial recommendation list. Input the initial recommendation list, interest prediction value and collection status characteristics of several users into the collection circulation simulator to generate the simulated collection status. Based on the simulated collection status, update the collection status characteristics and re-sort the initial recommendation list to obtain the displayable recommendation list. Before displaying the list of recommended items, a snapshot of the recommended actions is saved. The snapshot of the recommended actions records the user state, joint input matrix, convolution generation path, simulated collection state and the list of recommended items that can be displayed. Receive negative feedback information from the current session, determine the convolution generation path to be rolled back from the recommended action snapshot based on the negative feedback information, restore the user state, mask the convolution generation features corresponding to the convolution generation path to be rolled back, re-execute candidate book recall and sorting, generate a corrected recommendation list, and write the corrected recommendation list into the training samples.
2. The personalized library book recommendation method based on machine learning according to claim 1, characterized in that, The process of generating user-side features, book-side features, and collection status features specifically includes: Acquire reader behavior data, book catalog data, and library circulation data; The library business data is linked according to reader identifier, book identifier and behavior time, duplicate records are deleted, abnormal time fields are corrected, missing fields are filled, discrete fields are converted into encoded values, text fields are segmented and mapped to indexed word vectors, and numerical fields are normalized. By aggregating borrowing and retrieval behaviors based on reader identifiers, user-side features are generated that include reading preferences, retrieval intent, and behavior frequency. Extract classification information, subject information, and abstract indexing information from book identifiers to generate book-side features; The available number of books, reservation occupancy value, and collection location code are calculated based on the book identifiers to generate collection status characteristics.
3. The personalized library book recommendation method based on machine learning according to claim 2, characterized in that, The construction of the FGCNN homology recommendation model specifically includes: The user-side FGCNN generation unit and the book-side FGCNN generation unit are set to have the same structure. The same structure is formed by sequentially connecting the embedding layer, the convolutional feature generation layer, the feature recombination layer and the vector output layer. User-side features are used as input to the user-side FGCNN generation unit, and book identifiers that have interaction with the user are used as training targets to train and obtain user retrieval vectors. Book-side features are used as input to the book-side FGCNN generation unit, and user identifiers that have interaction relationships with books are used as reverse training targets to train and obtain book retrieval vectors. Establish an index mapping relationship between book identifiers, book retrieval vectors, and collection status characteristics to generate a collection vector index library.
4. The personalized library book recommendation method based on machine learning according to claim 3, characterized in that, The specific steps of recalling a set of candidate books in the library's vector index based on user retrieval vectors include: Calculate the vector similarity value based on the user's retrieval vector and the book retrieval vector in the library's collection vector index, and obtain the seed recall set according to the vector similarity value; Read the collection status characteristics corresponding to the seed recall set and divide the seed recall set into valid seed books and invalid seed books; Using the book retrieval vector corresponding to the invalid seed book as the neighborhood anchor point, perform homogeneous neighborhood replacement recall in the collection vector index library to obtain replacement books that are adjacent to the neighborhood anchor point and whose collection status features meet the recommendation conditions; The valid seed books and replacement books are merged, duplicate books are removed, and a candidate book set is generated.
5. The personalized library book recommendation method based on machine learning according to claim 4, characterized in that, The step of inputting the joint input matrix into the FGCNN sorting unit specifically includes: Read the book-side features and collection status features corresponding to the candidate books according to the candidate book set, and construct a joint input matrix by combining the user-side features, the book-side features corresponding to the candidate books, the collection status features, and the vector similarity values between the user retrieval vector and the book retrieval vector; The joint input matrix is input into the FGCNN sorting unit. The FGCNN sorting unit reuses the embedding layer parameters, convolutional feature generation layer parameters, and feature recombination rules of the user-side FGCNN generation unit and the book-side FGCNN generation unit to perform embedding mapping, convolutional feature generation, and feature recombination on the joint input matrix to obtain sorted and recombined features. The sorting and reorganization features are input into the prediction layer to obtain the interest prediction values corresponding to the candidate books; During the convolutional feature generation process, the input field position, convolution kernel identifier, generated feature identifier, candidate book corresponding to the generated feature, and connection position of the generated feature entering the prediction layer are recorded to form the convolutional generation path; The candidate book set is sorted according to the interest prediction values to obtain an initial recommendation list.
6. The personalized library book recommendation method based on machine learning according to claim 5, characterized in that, The museum collection circulation simulator specifically includes: The initial recommendation lists, interest prediction values, and collection status features corresponding to several users are combined into batch simulation samples according to the recommendation display time. The simulation triggering order of candidate books is determined based on the interest prediction values in the batch simulation samples, and simulation borrowing events, simulation reservation events, and simulation release events are generated under the simulation triggering order. The simulated collection status is obtained by deducting the available quantity from the collection status characteristics according to the simulated borrowing event, updating the reservation occupancy value in the collection status characteristics according to the simulated reservation event, and restoring the available quantity in the collection status characteristics according to the simulated release event. Based on the simulation of the collection status, simulation feedback features are generated, including the number of items available for borrowing, the number of reservations, and the number of circulation pressures. The simulation feedback features are then written into the collection status features to obtain the updated collection status features. The joint input matrix is reconstructed based on user-side features, book-side features corresponding to the candidate book set, and updated collection status features. The reconstructed joint input matrix is then input into the FGCNN sorting unit to obtain the interest prediction value again. The initial recommendation list is sorted according to the newly obtained interest prediction values to obtain a list of recommendations that can be displayed.
7. The personalized library book recommendation method based on machine learning according to claim 6, characterized in that, The process of generating the revised recommendation list specifically includes: Receive negative feedback information for the current session, which is generated from the "not interested" flag; Based on the negative feedback information in the current session, determine the set of negative feedback books from the list of recommended books that can be displayed; Read the convolution generation path corresponding to the negative feedback book set from the recommended action snapshot, count the number of times the convolution generation path appears in the negative feedback book set and the contribution of the corresponding interest prediction value, and determine the convolution generation path to be rolled back. Restore the user state in the recommended action snapshot, use the convolution generation features corresponding to the convolution generation path to be rolled back as the rollback object, and hide the corresponding generation feature transmission position in the joint input matrix. Based on the masked generated feature state, the user retrieval vector is regenerated, the candidate book recall is re-executed, and the joint input matrix is reconstructed based on the re-recalled candidate book set and input into the FGCNN ranking unit to obtain the corrected interest prediction value. A revised recommendation list is generated based on the revised interest prediction values; The recommended list, current session negative feedback information, convolution generation path to be rolled back, and corrected recommended list can be written into the training samples.
8. A machine learning-based personalized library book recommendation system, applied to the machine learning-based personalized library book recommendation method described in any one of claims 1 to 7, characterized in that, Includes the following modules: The business data management module is used to access reader behavior data, book catalog data, and library circulation data, perform data preprocessing, and generate user-side features, book-side features, and library collection status features. The same-source vector recall module is used to call the user-side FGCNN generation unit to generate user retrieval vectors, call the book-side FGCNN generation unit to generate book retrieval vectors, maintain the library collection vector index, and recall the candidate book set based on the user retrieval vectors. The FGCNN ranking and recording module is used to construct a joint input matrix based on user-side features, book-side features corresponding to the candidate book set, and collection status features, and outputs interest prediction values, convolution generation paths, and an initial recommendation list. The collection circulation simulation module is used to batch simulate the initial recommendation lists and interest prediction values of several users to generate simulated collection status. After writing the simulated collection status into the collection status features, the FGCNN sorting record module is triggered to re-sort and obtain the displayable recommendation list. The recommendation display and feedback module is used to display a list of available recommendations, save snapshots of recommendation actions, and receive readers' "not interested" tags for recommended books. The rollback correction training module is used to determine the convolution generation path to be rolled back from the recommended action snapshot based on the uninterested label, mask the convolution generation features corresponding to the convolution generation path to be rolled back, re-execute candidate book recall and sorting, generate a corrected recommendation list, and write it into the training samples.