Personalized book recommendation method, system, electronic device and storage medium

By calculating user preferences and keyword similarities in the book recommendation system and performing multiple classifications and sorting, the problems of poor performance and unexplainable nature of existing recommendation algorithms are solved, and more accurate and personalized book recommendations are achieved.

CN120296160BActive Publication Date: 2025-09-16CHINA UNICOM ONLINE INFORMATION TECHNOLOGY CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202510791806.5
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2025-06-13
Publication Date
2025-09-16
Estimated Expiration
2045-06-13

AI Technical Summary

Technical Problem

Existing book recommendation algorithms have problems with poor recommendation effects and unexplainable results, especially for new users or users who read less. Data sparsity leads to unsatisfactory recommendation effects and unexplainable recommendation results.

Method used

By obtaining the book database and historical reading books, calculating the user's preference, classifying based on keyword similarity, constructing a fitness function to determine the optimal cluster head books, performing secondary classification, and sorting and recommending according to user preference.

Benefits of technology

The accuracy and personalization of book recommendations are improved, making the recommendation results explainable and meeting the personalized needs of users.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120296160B_ABST
    Figure CN120296160B_ABST
Patent Text Reader

Abstract

This application discloses a personalized book recommendation method, system, electronic device, and storage medium. The method calculates the first user preference of each book in historical reading; classifies the historical reading books according to keyword similarity; initially classifies all books according to preset categories, and selects target books from each initial category as initial cluster head books; constructs a fitness function based on the similarity between the keywords corresponding to the initial cluster head book and the keywords corresponding to each other book; determines the optimal cluster head book based on the fitness function, and performs a secondary classification of all books based on the optimal cluster head book; calculates the second user preference of each category of books in the first classification results based on the first user preference of each book; sorts each category of books in the second classification results based on the second user preference; and determines recommended books based on the sorting results. This application can improve the accuracy of book recommendations.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of personalized recommendation technology, and in particular to a personalized book recommendation method, system, electronic device, and storage medium. Background Art

[0002] Internet platforms provide users with a vast array of e-books, but not all books are tailored to individual user preferences. Therefore, book recommendations have become a hot research topic in the field of book services. Existing recommendation algorithms include collaborative filtering, various deep learning algorithms, and content-based recommendation algorithms.

[0003] These recommendation algorithms still have certain flaws. For example, collaborative filtering algorithms discover user preferences by mining historical user behavior data, grouping users based on their preferences and recommending products with similar tastes. However, collaborative filtering algorithms require a large number of user and item samples. For new users or those who read less, data sparsity can lead to poor recommendation results. Furthermore, these recommendation algorithms train models using large amounts of sample data and then use the trained models to predict recommendations, which can lead to unexplainable recommendation results.

[0004] Therefore, there is an urgent need for technical solutions that can solve the problems of poor recommendation effects and unexplainable problems in existing recommendation algorithms. Summary of the Invention

[0005] This application aims to propose a personalized book recommendation method, system, electronic device and storage medium, which can improve the accuracy of book recommendations and make the recommendation results explainable.

[0006] In a first aspect, an embodiment of the present application provides a personalized book recommendation method, the method comprising:

[0007] Get all books and historical reading books in the book database;

[0008] Calculating a first user preference degree for each of the historically read books;

[0009] Based on the extracted keywords of each book in the historical reading books, the historical reading books are classified according to keyword similarity to obtain a first classification result;

[0010] All books are initially classified according to preset categories to obtain multiple initial categories, and target books are selected from each initial category as initial cluster head books;

[0011] Extracting keywords from each of all books, for each initial category, constructing a fitness function based on the similarity between the keywords corresponding to the initial cluster head book and the keywords corresponding to each of the other books; determining an optimal cluster head book based on the fitness function, and performing a secondary classification on all of the books based on the optimal cluster head book to obtain a second classification result;

[0012] Calculating a second user preference degree for each category of books in the first classification result according to the first user preference degree of each book;

[0013] sorting each category of books in the second classification result based on the second user preference to obtain a sorting result;

[0014] Determine recommended books based on the ranking results.

[0015] Compared with the prior art, the first aspect of the present application has the following beneficial effects:

[0016] The method obtains all books and historical reading books from a book database; calculates the first user preference of each book in the historical reading books; classifies the historical reading books according to keyword similarity based on the extracted keywords of each book in the historical reading books to obtain a first classification result; initially classifies all books according to preset categories to obtain multiple initial categories, and selects a target book from each initial category as an initial cluster head book; extracts keywords from each book in all books, and for each initial category, constructs a fitness function based on the similarity between the keywords corresponding to the initial cluster head book and the keywords corresponding to each other book; and determines the optimal cluster head book based on the fitness function, and performs secondary classification on all books based on the optimal cluster head book to obtain a second classification result; calculates the second user preference of each book category in the first classification result based on the first user preference of each book; sorts each book category in the second classification result based on the second user preference to obtain a sorting result; and determines recommended books based on the sorting result. In this way, book recommendations based on user preferences can better meet personalized needs and improve the accuracy of book recommendations. By determining the optimal cluster head book based on the fitness function, all books are secondary classified according to the optimal cluster head book to obtain a more accurate book classification. Then, based on the second user's preference, each category of books in the second classification result is sorted by category. Based on the sorting results, recommended books are determined. This can improve the book recommendation effect and make the recommendation results explainable.

[0017] In some implementations, calculating the first user preference for each of the historically read books includes:

[0018] Classifying the historically read books into books that have been read but not added to the bookshelf, books that have not been purchased or downloaded, books that have not been purchased or downloaded but added to the bookshelf, and books that have been purchased or purchased and downloaded according to user behavior;

[0019] The first user preference degree of each book in the historical reading books is calculated based on the books that have been read but not added to the bookshelf, the books that are not purchased or downloaded, the books that are not purchased or downloaded but added to the bookshelf, and the books that are purchased or purchased and downloaded.

[0020] In some implementations, the historical reading books are classified according to keyword similarity based on the extracted keywords of each book to obtain a first classification result, including:

[0021] Obtaining the first title and first introduction of each history reading book, and extracting keywords from the first title and the first introduction;

[0022] Converting keywords in the first title into a first vector, and converting keywords in the first introduction into a second vector;

[0023] Calculating a first keyword similarity based on the first vector, and calculating a second keyword similarity based on the second vector;

[0024] An overall similarity of the first keyword similarity and the second keyword similarity is calculated, and the history reading books are classified based on the overall similarity to obtain a first classification result.

[0025] In some embodiments, extracting keywords from each book in all books, for each initial category, constructing a fitness function based on the similarity between the keywords corresponding to the initial cluster head book and the keywords corresponding to each other book; determining the optimal cluster head book based on the fitness function, and performing secondary classification on all books based on the optimal cluster head book to obtain a second classification result, includes:

[0026] Obtain the second title and the second introduction of each book from all books, and extract keywords from the second title and the second introduction;

[0027] converting the keywords in the second title into a third vector, and converting the keywords in the second introduction into a fourth vector;

[0028] For each initial category, calculating the third keyword similarity between the third vector corresponding to the initial cluster head book and the third vector corresponding to each other book, and calculating the fourth keyword similarity between the fourth vector corresponding to the initial cluster head book and the fourth vector corresponding to each other book;

[0029] Constructing a fitness function according to the third keyword similarity and the fourth keyword similarity;

[0030] Based on the fitness function and the multiple initial categories, determining the optimal cluster head book corresponding to each of the initial categories;

[0031] The total similarity between the optimal cluster head book corresponding to each of the initial categories and each book in all the books is calculated, and all the books are secondary classified according to the total similarity to obtain a second classification result.

[0032] In some embodiments, calculating the third keyword similarity between the third vector corresponding to the initial cluster head book and the third vector corresponding to each other book, and calculating the fourth keyword similarity between the fourth vector corresponding to the initial cluster head book and the fourth vector corresponding to each other book, includes:

[0033] The third keyword similarity between the third vector corresponding to the initial cluster head book and the third vector corresponding to each other book is calculated as:

[0034] ;

[0035] The fourth keyword similarity between the fourth vector corresponding to the initial cluster head book and the fourth vector corresponding to each other book is calculated as:

[0036] ;

[0037] in, Indicates the third keyword similarity, Indicates the fourth keyword similarity, The third vector corresponding to the initial cluster head book Middle dimension vector, Represents the third vector corresponding to the a-th book Middle dimension vector, represents the cluster space, represents the total number of dimensions in the third vector, The fourth vector corresponding to the initial cluster head book Middle dimension vector, Indicates the fourth vector corresponding to the a-th book Middle dimension vector, Indicates the total number of dimensions in the fourth vector.

[0038] In some implementations, sorting each category of books in the second classification results based on the second user preference to obtain a sorting result includes:

[0039] Calculate the average preference evaluation score of all users for each book in all books;

[0040] Calculating the total preference evaluation score of all users of each category of books in the second classification result based on the average preference evaluation score;

[0041] According to the second user preference and the total preference evaluation score, each category of books in the second classification result is sorted by category to obtain a sorting result.

[0042] In some implementations, determining recommended books based on the ranking results includes:

[0043] Eliminate the books that the user has read in each category of books in the sorting results to obtain the remaining sorted books;

[0044] Sorting all books in each category among the remaining sorted books to obtain sorted books in each category;

[0045] According to the remaining ranked books and the ranked books in each category, a plurality of book categories with high rankings are selected and a plurality of books with high rankings in each category in the plurality of book categories with high rankings are selected to determine recommended books.

[0046] In a second aspect, an embodiment of the present application further provides a personalized book recommendation system, the system comprising:

[0047] Book acquisition unit, used to acquire all books and historical reading books in the book database;

[0048] a first calculation unit, configured to calculate a first user preference degree of each of the books in the historical reading;

[0049] a book classification unit, configured to classify the historical reading books according to keyword similarity based on the extracted keywords of each book in the historical reading books, to obtain a first classification result;

[0050] The initial classification unit is used to initially classify all books according to preset categories, obtain multiple initial categories, and select target books from each initial category as initial cluster head books;

[0051] A secondary classification unit is configured to extract keywords from each of all books, and for each initial category, construct a fitness function based on the similarity between the keywords corresponding to the initial cluster head book and the keywords corresponding to each of the other books; determine the optimal cluster head book based on the fitness function, and perform secondary classification on all of the books based on the optimal cluster head book to obtain a second classification result;

[0052] a second calculation unit, configured to calculate a second user preference degree for each category of books in the first classification result based on the first user preference degree for each book;

[0053] A category sorting unit, configured to sort the books of each category in the second classification result based on the second user preference to obtain a sorting result;

[0054] The book recommendation unit is used to determine recommended books based on the ranking results.

[0055] In a third aspect, an embodiment of the present application also provides an electronic device comprising at least one control processor and a memory for communicating with the at least one control processor; the memory stores instructions that can be executed by the at least one control processor, and the instructions are executed by the at least one control processor so that the at least one control processor can execute a personalized book recommendation method as described above.

[0056] In a fourth aspect, an embodiment of the present application further provides a computer-readable storage medium, wherein the computer-readable storage medium stores computer-executable instructions, and the computer-executable instructions are used to enable a computer to execute a personalized book recommendation method as described above.

[0057] It can be understood that the beneficial effects of the above-mentioned second to fourth aspects compared with the relevant technologies are the same as the beneficial effects of the above-mentioned first aspect compared with the relevant technologies. Please refer to the relevant description in the above-mentioned first aspect and will not be repeated here. BRIEF DESCRIPTION OF THE DRAWINGS

[0058] The above and / or additional aspects and advantages of the present application will become apparent and easily understood from the description of the embodiments in conjunction with the following drawings, in which:

[0059] Figure 1 This is a flowchart of an embodiment of a personalized book recommendation method provided by the present application;

[0060] Figure 2 This is a schematic diagram of the structure of an embodiment of a personalized book recommendation system provided by the present application;

[0061] Figure 3 It is a structural diagram of an embodiment of the electronic device provided by this application. DETAILED DESCRIPTION

[0062] The following describes in detail embodiments of the present application. Examples of the embodiments are shown in the accompanying drawings, wherein the same or similar reference numerals throughout represent the same or similar elements or elements having the same or similar functions. The embodiments described below with reference to the accompanying drawings are exemplary and are only used to explain the present application and are not to be construed as limiting the present application.

[0063] In the description of this application, if there is a description of first, second, etc., it is only for the purpose of distinguishing technical features, and cannot be understood as indicating or implying relative importance or implicitly indicating the number of the indicated technical features or implicitly indicating the order of the indicated technical features.

[0064] In the description of this application, it should be understood that descriptions involving orientation, such as the orientation or positional relationship indicated by up, down, etc., are based on the orientation or positional relationship shown in the accompanying drawings, and are only for the convenience of describing this application and simplifying the description, rather than indicating or implying that the device or element referred to must have a specific orientation, be constructed and operated in a specific orientation, and therefore cannot be understood as a limitation on this application.

[0065] In the description of this application, it should be noted that, unless otherwise clearly defined, terms such as setting, installing, and connecting should be understood in a broad sense, and technical personnel in the relevant technical field can reasonably determine the specific meaning of the above terms in this application based on the specific content of the technical solution.

[0066] First, let’s analyze some of the terms used in this application:

[0067] Word2vec: A family of related models used to generate word embeddings. These models are shallow, two-layer neural networks trained to reconstruct linguistic text. The network is represented by words and is required to guess the adjacent positions of the input words. Under the bag-of-words model in Word2vec, word order is unimportant. After training, the Word2vec model maps each word to a vector that represents the relationship between words. This vector serves as the hidden layer of the neural network.

[0068] TF-IDF: is a commonly used weighting technique for information retrieval and data mining. TF stands for Term Frequency, and IDF stands for Inverse Document Frequency.

[0069] Internet platforms provide users with a vast array of e-books, but not all books are tailored to individual user preferences. Therefore, book recommendations have become a hot research topic in the field of book services. Existing recommendation algorithms include collaborative filtering, various deep learning algorithms, and content-based recommendation algorithms.

[0070] These recommendation algorithms still have certain flaws. For example, collaborative filtering algorithms discover user preferences by mining historical user behavior data, grouping users based on their preferences and recommending products with similar tastes. However, collaborative filtering algorithms require a large number of user and item samples. For new users or those who read less, data sparsity can lead to poor recommendation results. Furthermore, these recommendation algorithms train models using large amounts of sample data and then use the trained models to predict recommendations, which can lead to unexplainable recommendation results.

[0071] Therefore, there is an urgent need for technical solutions that can solve the problems of poor recommendation effects and unexplainable problems in existing recommendation algorithms.

[0072] In order to solve the above-mentioned problems that existing recommendation algorithms have poor recommendation effects and are unexplainable, the present application proposes a personalized book recommendation method, system, electronic device and storage medium.

[0073] Reference Figure 1 , the embodiment of the present application provides a personalized book recommendation method, the method comprising the following steps:

[0074] Step S100: Obtain all books and historically read books in the book database;

[0075] Step S200: Calculate the first user preference of each book in the historical reading history;

[0076] Step S300: Based on the extracted keywords of each book in the historical reading books, classify the historical reading books according to keyword similarity to obtain a first classification result;

[0077] Step S400: Initially classify all books according to preset categories to obtain multiple initial categories, and select a target book from each initial category as an initial cluster head book;

[0078] Step S500: extract keywords from all books. For each initial category, construct a fitness function based on the similarity between the keywords corresponding to the initial cluster head book and the keywords corresponding to each other book. Determine the optimal cluster head book based on the fitness function, and perform secondary classification on all books based on the optimal cluster head book to obtain a second classification result.

[0079] Step S600: Calculate the second user preference of each book in the first classification result based on the first user preference of each book;

[0080] Step S700: sorting each category of books in the second classification result based on the second user preference to obtain a sorting result;

[0081] Step S800: Determine recommended books based on the ranking results.

[0082] In this embodiment, all books and historical reading books in a book database are obtained; a first user preference of each book in the historical reading books is calculated; based on the keywords of each book extracted from the historical reading books, the historical reading books are classified according to keyword similarity to obtain a first classification result; all books are initially classified according to preset categories to obtain multiple initial categories, and a target book is selected from each initial category as an initial cluster head book; keywords of each book in all books are extracted, and for each initial category, a fitness function is constructed based on the similarity between the keywords corresponding to the initial cluster head book and the keywords corresponding to each other book; and the optimal cluster head book is determined based on the fitness function, and all books are secondary classified according to the optimal cluster head book to obtain a second classification result; based on the first user preference of each book, a second user preference of each category of books in the first classification result is calculated; based on the second user preference, each category of books in the second classification result is categorized to obtain a sorting result; and recommended books are determined based on the sorting result. In this way, book recommendations based on user preferences can better meet personalized needs and improve the accuracy of book recommendations. By determining the optimal cluster head book based on the fitness function, all books are secondary classified according to the optimal cluster head book to obtain a more accurate book classification. Then, based on the second user's preference, each category of books in the second classification result is sorted by category. Based on the sorting results, recommended books are determined. This can improve the book recommendation effect and make the recommendation results explainable.

[0083] The above calculation of the first user preference of each book in the user's historical reading books, since different user behaviors can represent different levels of user hobbies, the user's historical reading books can be divided into books that have been read but not added to the bookshelf, books downloaded without purchase, books added to the bookshelf without purchase or downloading, and books purchased or purchased and downloaded. The user preference of each book in the user's historical reading books can be calculated based on the books that have been read but not added to the bookshelf, books downloaded without purchase, books added to the bookshelf without purchase or downloading, and books purchased or purchased and downloaded.

[0084] It should be noted that, in this embodiment, the user's historical reading books are obtained with the user's authorization.

[0085] The above-mentioned classification of historical reading books according to keyword similarity to obtain the first classification result may be obtained by using a traditional clustering method to classify historical reading books according to keyword similarity to obtain the first classification result, which is not specifically limited in this embodiment.

[0086] The above-mentioned preset categories can be classification categories set according to actual conditions and can be changed according to actual conditions. This embodiment does not make specific limitations.

[0087] In some implementations, calculating the first user preference for each book in the historically read books includes:

[0088] Based on user behavior, historically read books are divided into books that have been read but not added to the bookshelf, books that have not been purchased and downloaded, books that have not been purchased or downloaded but added to the bookshelf, and books that have been purchased or purchased and downloaded;

[0089] The first user preference degree of each book in the historical reading books is calculated based on the books that have been read but not added to the bookshelf, the books that are not purchased and downloaded, the books that are not purchased and downloaded but added to the bookshelf, and the books that are purchased or purchased and downloaded.

[0090] In this embodiment, the user preference for each book in the user's history of reading is calculated based on books that have been read but not added to the bookshelf, books that are not purchased or downloaded, books that are not purchased or downloaded but added to the bookshelf, and books that are purchased or purchased and downloaded. By comprehensively considering various factors to calculate the user preference, the accuracy of the user preference can be improved, thereby recommending books that are more in line with the user's preferences to the user in the future, thereby improving the accuracy of recommendations.

[0091] In some implementations, based on the extracted keywords of each book in the historical reading books, the historical reading books are classified according to keyword similarity to obtain a first classification result, including:

[0092] Get the first title and first introduction of each history reading book, and extract keywords from the first title and the first introduction;

[0093] Converting keywords in the first title into a first vector, and converting keywords in the first introduction into a second vector;

[0094] Calculating a first keyword similarity based on the first vector, and calculating a second keyword similarity based on the second vector;

[0095] The overall similarity of the first keyword similarity and the second keyword similarity is calculated, and the history reading books are classified based on the overall similarity to obtain a first classification result.

[0096] In this embodiment, the first title and first introduction of each historical reading book are obtained, and keywords in the first title and first introduction are extracted; the keywords in the first title are converted into a first vector, and the keywords in the first introduction are converted into a second vector; the first keyword similarity is calculated based on the first vector, and the second keyword similarity is calculated based on the second vector; the overall similarity of the first keyword similarity and the second keyword similarity is calculated, and the historical reading books are classified based on the overall similarity to obtain a first classification result. In this way, by comprehensively considering the similarity of the title and introduction to classify the user's historical reading books, the accuracy of the classification of the user's historical reading books can be improved.

[0097] It should be noted that the introduction in this embodiment may be information such as an abstract or summary that summarizes the content of the book, and this embodiment does not impose any specific limitation.

[0098] The above similarity may be calculated using cosine similarity, or other existing technologies known to those skilled in the art, which is not specifically limited in this embodiment.

[0099] In some embodiments, keywords are extracted from all books. For each initial category, a fitness function is constructed based on the similarity between the keywords corresponding to the initial cluster head book and the keywords corresponding to each other book. An optimal cluster head book is determined based on the fitness function, and all books are secondary classified based on the optimal cluster head book to obtain a second classification result, including:

[0100] Get the second title and second introduction of each book in all books, and extract keywords from the second title and second introduction;

[0101] converting the keywords in the second title into a third vector, and converting the keywords in the second introduction into a fourth vector;

[0102] For each initial category, calculating the third keyword similarity between the third vector corresponding to the initial cluster head book and the third vector corresponding to each other book, and calculating the fourth keyword similarity between the fourth vector corresponding to the initial cluster head book and the fourth vector corresponding to each other book;

[0103] Constructing a fitness function according to the third keyword similarity and the fourth keyword similarity;

[0104] Based on the fitness function and multiple initial categories, the optimal cluster head books corresponding to each initial category are determined;

[0105] The total similarity between the optimal cluster head book corresponding to each initial category and each book in all books is calculated, and all books are classified secondary according to the total similarity to obtain the second classification result.

[0106] In this embodiment, the second title and second description of each book in all books are obtained, and keywords in the second title and second description are extracted; the keywords in the second title are converted into a third vector, and the keywords in the second description are converted into a fourth vector; for each initial category, the third keyword similarity between the third vector corresponding to the initial cluster head book and the third vector corresponding to each other book is calculated, and the fourth keyword similarity between the fourth vector corresponding to the initial cluster head book and the fourth vector corresponding to each other book is calculated; a fitness function is constructed based on the third keyword similarity and the fourth keyword similarity; based on the fitness function and multiple initial categories, the optimal cluster head book corresponding to each initial category is determined; the total similarity between the optimal cluster head book corresponding to each initial category and each book in all books is calculated, and all books are secondary classified based on the total similarity to obtain a secondary classification result. In this way, since the initial classification is performed using the original preset categories (i.e., manual classification), this classification may not be very accurate, but it can provide a general classification of all books. Then, by comprehensively considering the similarity of the title and description to construct a fitness function, all books are classified using an adaptive particle swarm algorithm, which can improve the accuracy of the classification of all books.

[0107] In some embodiments, calculating a third keyword similarity between a third vector corresponding to an initial cluster head book and a third vector corresponding to each other book, and calculating a fourth keyword similarity between a fourth vector corresponding to an initial cluster head book and a fourth vector corresponding to each other book, includes:

[0108] The third keyword similarity between the third vector corresponding to the initial cluster head book and the third vector corresponding to each other book is calculated as:

[0109] ;

[0110] The fourth keyword similarity between the fourth vector corresponding to the initial cluster head book and the fourth vector corresponding to each other book is calculated as:

[0111] ;

[0112] in, Indicates the third keyword similarity, Indicates the fourth keyword similarity, The third vector corresponding to the initial cluster head book Middle dimension vector, Represents the third vector corresponding to the a-th book Middle dimension vector, represents the cluster space, represents the total number of dimensions in the third vector, The fourth vector corresponding to the initial cluster head book Middle dimension vector, Indicates the fourth vector corresponding to the a-th book Middle dimension vector, Indicates the total number of dimensions in the fourth vector.

[0113] In some implementations, based on the second user preference, each category of books in the second classification result is sorted by category to obtain a sorting result, including:

[0114] Calculate the average preference evaluation score of all users for each book in all books;

[0115] Calculate the total preference evaluation score of all users of each category of books in the second classification results based on the average preference evaluation score;

[0116] According to the second user preference and the total preference evaluation score, each category of books in the second classification result is sorted by category to obtain a sorting result.

[0117] In this embodiment, the average preference evaluation score for all users across all books is calculated. Based on the average preference evaluation score, the total preference evaluation score for all users of each book category in the second classification results is calculated. Based on the second user preference and the total preference evaluation score, each book category in the second classification results is sorted by category to obtain a sorted result. Incorporating the total preference evaluation score for all users is intended to prevent the inability to recommend books to users whose reading categories do not fall within the user's specific reading categories. This prevents users from being unable to recommend books to users whose reading categories are relatively limited. This operation allows for the recommendation of books that many users like, thus improving book recommendations for users.

[0118] In some implementations, determining recommended books based on the ranking results includes:

[0119] Eliminate the books that the user has read in each category of books in the sorting results to obtain the remaining sorted books;

[0120] Sort all books in each category among the remaining sorted books to obtain the sorted books in each category;

[0121] According to the remaining ranked books and the ranked books in each category, multiple book categories with high rankings are selected and multiple books with high rankings in each category of the multiple book categories with high rankings are selected to determine the recommended books.

[0122] In this embodiment, the books that the user has read in each category of books in the sorted results are eliminated to obtain the remaining sorted books; all books in each category of the remaining sorted books are sorted to obtain the sorted books in each category; based on the remaining sorted books and the sorted books in each category, multiple book categories with high rankings and multiple books with high rankings in each category of the selected multiple book categories with high rankings are selected to determine the recommended books. In this way, by eliminating the books that the user has read in each category of books in the sorted results to obtain the remaining sorted books, and making recommendations based on the remaining sorted books, the customer will not read books they do not like or read books repeatedly, which can improve the book recommendation effect and make the recommendation results explainable. Moreover, even if the user is a new user, the most popular books that are most liked by other users can be recommended to the new user based on the top-ranked books in each category, thereby improving the book recommendation effect.

[0123] To facilitate understanding by those skilled in the art, a set of best embodiments is provided below:

[0124] Step S1: Calculate the preference of each book.

[0125] Obtain users' historical reading history on the platform (which can be a book database or a book reading platform) (books are divided according to user behavior, including books that have been read but not added to the bookshelf, books downloaded without purchase, books added to the bookshelf without purchase or downloading, and books purchased or purchased and downloaded), count the number of times each book has been read and the time taken for each reading; purchased and downloaded books will be automatically added to the bookshelf, only free books can be downloaded without purchase, and other books need to be purchased before downloading.

[0126] , x Books that have been read but not added to the bookshelf;

[0127] ,y belongs to books that are not purchased and downloaded;

[0128] , z belongs to books that are not purchased or downloaded but added to the bookshelf;

[0129] , which are books purchased or purchased for download;

[0130] According to the weight, number of readings and reading time, the user preference of each book (i.e. the first user preference) is calculated as :

[0131] ;

[0132] in, 、 、 and represents a weight parameter. The weight parameter can be changed according to actual conditions and is not specifically limited in this embodiment. For example, if a book is purchased or downloaded, it means that the user likes it very much. Therefore, the weight of the purchased or downloaded book can be set higher. If a book is read but not added to the bookshelf, it means that the user is not very interested in it. Therefore, the weight of the purchased or downloaded book can be set lower. Indicates the number of times books have been read but not added to the bookshelf. Indicates the reading time of books that have been read but not added to the bookshelf. Indicates the number of times a book is read without purchasing it. Indicates that you do not purchase the downloaded book reading time. Indicates the number of times a book is read without being purchased or downloaded but added to the bookshelf. Indicates the reading time of books that are not purchased or downloaded but added to the bookshelf. Indicates the number of times a book is purchased or downloaded. Indicates the reading time of books purchased or downloaded. Indicates the Read Time for books, Indicates the Read Time for books, Indicates the Read Time for books, Indicates the Read Time for books.

[0133] Step S2: Classify the books read by the user.

[0134] Clustering or other methods are used to classify the books that the user has read in the past to obtain a first classification result; clustering or other methods are used to classify all books to obtain a second classification result.

[0135] Classifying the books that users have read in the past includes the following:

[0136] Get the title and introduction of each book that the user has read in the past, and extract the keywords in the title and introduction;

[0137] The keywords in the title are converted into the first vector A. The keywords in the introduction are converted into the second vector B. The keywords can be converted into the first vector or the second vector using methods such as word2vec or TF-IDF, which are not specifically limited in this embodiment.

[0138] Calculating a first keyword similarity based on the first vector, and calculating a second keyword similarity based on the second vector;

[0139] Based on the similarity between the first keyword and the second keyword, the user's historical books are classified to obtain a first classification result. If the classification evaluation value is greater than the preset value, it is classified as one category. This is a classification of books read by a user.

[0140] Specifically:

[0141] Based on the first vector of each book, calculate the first keyword similarity between the first vectors of every two books in the user's historical reading history for:

[0142] ;

[0143] Based on the second vector of each book, calculate the second keyword similarity between the second vectors of every two books in the user's historical reading history for:

[0144] ;

[0145] in, Indicates that one of every two books corresponds to the first vector Middle dimension vector, Indicates that the other book in every two books corresponds to the first vector Middle dimension vector, represents the total number of dimensions in the first vector, Indicates that one of every two books corresponds to the second vector Middle dimension vector, Indicates that the other book in every two books corresponds to the second vector Middle dimension vector, Indicates the total number of dimensions in the second vector.

[0146] Overall similarity calculation:

[0147] ;

[0148] in, Indicates the overall similarity.

[0149] A similarity threshold is preset, and two books whose overall similarity is greater than the similarity threshold are classified into the same category.

[0150] All books in the library are classified as follows:

[0151] Since there are too many books in the library, the common classification method is not accurate enough, so all books are classified in the following way:

[0152] First, all books in the library are classified according to the original preset classification, and a rough initial classification is performed based on human judgment to obtain the initial category;

[0153] Get the title and introduction of each book, and extract the keywords in the title and introduction;

[0154] The keywords in the title are converted into a third vector P. The keywords in the introduction are converted into a fourth vector Q. The keywords can be converted into the third vector or the fourth vector using methods such as word2vec or TF-IDF, which are not specifically limited in this embodiment.

[0155] Calculating a third keyword similarity based on the third vector, and calculating a fourth keyword similarity based on the second vector;

[0156] Constructing a fitness function according to the third keyword similarity and the fourth keyword similarity;

[0157] Based on this fitness function and the initial categories, the adaptive particle swarm algorithm is used to perform a secondary classification on all books, obtaining the second classification result. If the classification evaluation value is greater than the preset value, it is classified as a class. This is the classification of all books in the library.

[0158] Specifically:

[0159] Adaptive particle swarm optimization (APSO) is a particle swarm optimization algorithm with better search efficiency than classic particle swarm optimization (PSO). It can perform a global search of the entire search space with a faster convergence speed. The book with the longest reading time in each category of the initial category is selected as the initial cluster head of the category to obtain a set of initial cluster heads. Based on the adaptive degree function and the initial cluster head, the local optimal position of the node (i.e., book) and the global optimal position of all current nodes are initialized, that is, the initial local optimal value and initial global optimal value corresponding to each category are calculated. Since the iteration weight greatly affects the convergence of the adaptive particle swarm algorithm, a larger weight helps the adaptive particle swarm algorithm break through the constraints of the local optimum, while a relatively small weight is conducive to accelerating the convergence of the adaptive particle swarm algorithm. The commonly used linear iteration weight is as follows:

[0160] ;

[0161] in, represents the iteration weight, represents the maximum weight value, represents the minimum weight value, represents the maximum number of iterations, Indicates the number of iterations. This embodiment further performs nonlinear adaptive weight adjustment on the weights in the above formula, and the adjustment function is as follows:

[0162] ;

[0163] ;

[0164] in, represents the minimum value of the iteration weight, T represents the total number of iterations, represents the ratio of the best position of particle i in the current iteration t to the best position of all particles in the global iteration T process, represents the optimal position of particle i at the tth iteration, Represents the optimal position of all particles in all iterations. It can be inferred from the definition of the adaptive weight function that Greater than . Adaptive optimization of adaptive particle swarm algorithm is achieved through adaptive weight adjustment.

[0165] In order to enable the adaptive particle swarm algorithm to reach the solution space of this problem, the fitness function calculation formula is proposed as follows:

[0166] ;

[0167] in, and represents the weight coefficient, Represents the fitness value.

[0168] Calculate the cluster space based on the third vector of each book The similarity between each book in the cluster and the book as the initial cluster head is used to obtain the third keyword similarity for:

[0169] ;

[0170] Calculate the cluster space based on the fourth vector of each book The similarity between each book in the cluster and the book as the initial cluster head is used to obtain the fourth keyword similarity for:

[0171] ;

[0172] in, The third vector corresponding to the initial cluster head book Middle dimension vector, Represents the third vector corresponding to the a-th book Middle dimension vector, represents the cluster space, represents the total number of dimensions in the third vector, The fourth vector corresponding to the initial cluster head book Middle dimension vector, Indicates the The fourth vector corresponding to this book Middle dimension vector, Indicates the total number of dimensions in the fourth vector.

[0173] Based on the above adaptive function, initial local optimal value and initial global optimal value, the adaptive particle swarm algorithm is continuously iterated and updated. The iterative formula is as follows:

[0174] ;

[0175] ;

[0176] in, represents the velocity of particle i at time t+1, d represents the iteration weight, represents the velocity of particle i at time t, and represents the learning factor, and represents a random number, represents the optimal position of particle i at the tth iteration, represents the optimal position of all particles in all iterations, represents the position of particle i at time t+1, represents the position of particle i at time t.

[0177] The above iterative formula is used to obtain the final global optimal value of each category; the book with the final global optimal value of each category is used as the optimal cluster head of the category. All books are reclassified according to the optimal cluster head of the category to obtain the second classification result. Calculate the books with the closest similarity to each optimal cluster head, and take the books with the closest similarity to an optimal cluster head as the same category of the optimal cluster head. Clustering can be done by threshold method or other methods, which are not specifically limited in this embodiment. Overall similarity The calculation is as follows:

[0178] ;

[0179] in, Indicates that the optimal cluster head corresponds to the first dimension vector, Indicates that the i-th book corresponds to the third vector Dimension vector, h represents the total number of dimensions in the third vector, Indicates that the optimal cluster head corresponds to the fourth vector dimension vector, Indicates that the i-th book corresponds to the fourth vector Dimension vector, r represents the total number of dimensions in the fourth vector.

[0180] Each book will be compared with each optimal cluster head to see which optimal cluster head has the closest similarity, and then the book will be assigned to the category corresponding to the optimal cluster head with the closest similarity.

[0181] Step S3: sorting books by category.

[0182] Based on the user preference of each book and the first classification results, calculate the total user preference of each category of books (i.e., the second user preference);

[0183] ;

[0184] in, represents the user preference for the e-th book, s represents the number of books in each category in the first classification result, Indicates the total user preference for each type of books.

[0185] Calculate the average preference evaluation score of all users for each book in all books; then, based on the average preference evaluation score, calculate the total preference evaluation score of all users for each category of books in the second classification results corresponding to all books; specifically:

[0186] In the library, some users rate the books they've read. Therefore, most books have a certain score, while a few books have no score and are assigned zero. Based on these scores, we can calculate the average preference score for each book across all users. This is done by adding the total number of ratings and dividing it by the number of users who rated it. Then, we add up the average preference scores for each book in each category across all books to obtain the total preference score for each category in the second classification results.

[0187] According to the total preference degree of the users and the total preference evaluation scores of all users, the books in each category in the second classification results are sorted to obtain the sorting results of each category of books.

[0188] The purpose of adding all users' preference evaluation scores is to prevent some books from not belonging to the user's reading category, that is, when the user's reading category is relatively single, other books cannot be given to the user. Through the above operation, many books that users like can be recommended to the user.

[0189] Step S4: Books are rejected.

[0190] Remove the books you have read from the ranking results of each category of books to get the remaining ranked books. The purpose is to remove books you don't like and books you have finished reading to improve the recommendation effect.

[0191] Step S5: Book recommendation.

[0192] Rank all books in each category among the remaining ranked books based on the calculated average preference evaluation score of all users for each book;

[0193] Based on the top-ranked books in each category among the remaining sorted books, books that the user may like in multiple categories are recommended to the user.

[0194] In this way, even if the user is a new user, the most popular books that are most liked by other users can be recommended to the new user based on the top-ranked books in each category.

[0195] Reference Figure 2 The embodiment of the present application further provides a personalized book recommendation system, which includes a book acquisition unit 100, a first calculation unit 200, a book classification unit 300, an initial classification unit 400, a secondary classification unit 500, a second calculation unit 600, a category sorting unit 700, and a book recommendation unit 800, wherein:

[0196] The book acquisition unit 100 is used to acquire all books and historical reading books in the book database;

[0197] The first calculation unit 200 is used to calculate the first user preference of each book in the historical reading books;

[0198] The book classification unit 300 is configured to classify the historical reading books according to the keyword similarity based on the extracted keywords of each book in the historical reading books to obtain a first classification result;

[0199] The initial classification unit 400 is used to perform initial classification on all books according to preset categories to obtain multiple initial categories, and select a target book from each initial category as an initial cluster head book;

[0200] The secondary classification unit 500 is used to extract keywords from all books, and for each initial category, construct a fitness function based on the similarity between the keywords corresponding to the initial cluster head book and the keywords corresponding to each other book; and determine the optimal cluster head book based on the fitness function, and perform secondary classification on all books based on the optimal cluster head book to obtain a second classification result;

[0201] The second calculation unit 600 is used to calculate the second user preference of each book in the first classification result according to the first user preference of each book;

[0202] A category sorting unit 700 is configured to sort the books of each category in the second classification result based on the second user preference to obtain a sorting result;

[0203] The book recommendation unit 800 is used to determine recommended books based on the ranking results.

[0204] It should be noted that, since the personalized book recommendation system in this embodiment and the personalized book recommendation method described above are based on the same inventive concept, the corresponding contents in the method embodiment are also applicable to the system embodiment and will not be described in detail here.

[0205] Reference Figure 3 , an embodiment of the present application further provides an electronic device, the electronic device comprising:

[0206] at least one memory;

[0207] at least one processor;

[0208] at least one program;

[0209] The programs are stored in the memory, and the processor executes at least one program to implement the personalized book recommendation method of the present disclosure.

[0210] The electronic device may be any intelligent terminal including a mobile phone, a tablet computer, a personal digital assistant (PDA), a car computer, etc.

[0211] The electronic device according to the embodiment of the present application is described in detail below.

[0212] The processor 1600 may be implemented as a general-purpose central processing unit (CPU), a microprocessor, an application-specific integrated circuit (ASIC), or one or more integrated circuits, and is configured to execute relevant programs to implement the technical solutions provided by the embodiments of the present disclosure.

[0213] Memory 1700 can be implemented in the form of a read-only memory (ROM), a static storage device, a dynamic storage device, or a random access memory (RAM). Memory 1700 can store an operating system and other application programs. When the technical solutions provided in the embodiments of this specification are implemented through software or firmware, the relevant program code is stored in memory 1700 and is called by processor 1600 to execute the personalized book recommendation method of the embodiments of this disclosure.

[0214] Input / output interface 1800, used for information input and output;

[0215] Communication interface 1900, used to implement communication interaction between this device and other devices, which can be achieved through wired means (such as USB, network cable, etc.) or wireless means (such as mobile network, WiFi, Bluetooth, etc.);

[0216] Bus 2000 , which transmits information between various components of the device (e.g., processor 1600 , memory 1700 , input / output interface 1800 , and communication interface 1900 );

[0217] The processor 1600 , the memory 1700 , the input / output interface 1800 , and the communication interface 1900 are connected to each other in communication within the device via the bus 2000 .

[0218] An embodiment of the present disclosure further provides a storage medium, which is a computer-readable storage medium. The computer-readable storage medium stores computer-executable instructions, and the computer-executable instructions are used to enable a computer to execute the above-mentioned personalized book recommendation method.

[0219] The memory, as a non-transient computer-readable storage medium, can be used to store non-transient software programs and non-transient computer executable programs. In addition, the memory may include a high-speed random access memory and may also include a non-transient memory, such as at least one disk storage device, a flash memory device, or other non-transient solid-state storage device. In some embodiments, the memory may optionally include a memory remotely arranged relative to the processor, and these remote memories may be connected to the processor via a network. Examples of the above-mentioned network include, but are not limited to, the Internet, an intranet, a local area network, a mobile communication network, and combinations thereof.

[0220] The embodiments described in the embodiments of the present disclosure are intended to more clearly illustrate the technical solutions of the embodiments of the present disclosure and do not constitute a limitation on the technical solutions provided by the embodiments of the present disclosure. Those skilled in the art will appreciate that with the evolution of technology and the emergence of new application scenarios, the technical solutions provided by the embodiments of the present disclosure are also applicable to similar technical problems.

[0221] Those skilled in the art will understand that the technical solutions shown in the drawings do not constitute a limitation on the embodiments of the present disclosure, and may include more or fewer steps than shown in the drawings, or a combination of certain steps, or different steps.

[0222] The device embodiments described above are merely illustrative. The units described as separate components may or may not be physically separate, i.e., they may be located in one place or distributed across multiple network units. Some or all of the modules may be selected based on actual needs to achieve the objectives of this embodiment.

[0223] Those skilled in the art will appreciate that all or some of the steps in the methods, systems, and functional modules / units in the devices disclosed above may be implemented as software, firmware, hardware, or appropriate combinations thereof.

[0224] The terms "first", "second", "third", "fourth", etc. (if any) in the specification of the present application and the above-mentioned drawings are used to distinguish similar objects and are not necessarily used to describe a specific order or sequential order. It should be understood that the data used in this way can be interchangeable where appropriate, so that the embodiments of the present application described herein can be implemented in an order other than those illustrated or described herein. In addition, the terms "including" and "having" and any variations thereof are intended to cover non-exclusive inclusions, for example, a process, method, system, product or device that includes a series of steps or units is not necessarily limited to those steps or units clearly listed, but may include other steps or units that are not clearly listed or inherent to these processes, methods, products or devices.

[0225] It should be understood that in this application, "at least one (item)" means one or more, and "plurality" means two or more. "And / or" is used to describe the association relationship of associated objects, indicating that three relationships may exist. For example, "A and / or B" can mean: only A exists, only B exists, and A and B exist at the same time, where A and B can be singular or plural. The character " / " generally indicates that the previous and next associated objects are in an "or" relationship. "At least one of the following items" or similar expressions refers to any combination of these items, including any combination of single items or plural items. For example, at least one of a, b or c can mean: a, b, c, "a and b", "a and c", "b and c", or "a and b and c", where a, b, c can be single or multiple.

[0226] In the several embodiments provided in this application, it should be understood that the disclosed devices and methods can be implemented in other ways. For example, the device embodiments described above are merely schematic. For example, the division of units is only a logical function division. In actual implementation, there may be other division methods, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, indirect coupling or communication connection of devices or units, which can be electrical, mechanical or other forms.

[0227] Units described as separate components may or may not be physically separate, and components shown as units may or may not be physical units, that is, they may be located in one place or distributed across multiple network units. Some or all of these units may be selected to achieve the purpose of this embodiment according to actual needs.

[0228] In addition, the functional units in the various embodiments of the present application may be integrated into a single processing unit, or each unit may exist physically separately, or two or more units may be integrated into a single unit. The aforementioned integrated units may be implemented in the form of hardware or software functional units.

[0229] If the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present application is essentially or the part that contributes to the prior art or all or part of the technical solution can be embodied in the form of a software product, and the computer software product is stored in a storage medium, including multiple instructions for enabling an electronic device (which can be a personal computer, a server, or a network device, etc.) to execute all or part of the steps of the various embodiments of the present application. The aforementioned storage medium includes various media that can store programs, such as a USB flash drive, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk. The embodiments of the present application are described in detail above in conjunction with the accompanying drawings, but the present application is not limited to the above embodiments. Various changes can be made within the scope of knowledge possessed by ordinary technicians in the relevant technical field without departing from the purpose of the present application.

[0230] The embodiments of the present application are described in detail above in conjunction with the accompanying drawings, but the present application is not limited to the above embodiments. Various changes can be made within the scope of knowledge possessed by ordinary technicians in the relevant technical field without departing from the purpose of the present application.

Claims

1. A personalized book recommendation method, characterized in that: The method comprises: Get all books and historical reading books in the book database; Calculating a first user preference degree for each of the historically read books; Based on the extracted keywords of each book in the historical reading books, the historical reading books are classified according to keyword similarity to obtain a first classification result; All books are initially classified according to preset categories to obtain multiple initial categories, and target books are selected from each initial category as initial cluster head books; Extracting keywords from each of all books, for each initial category, constructing a fitness function based on the similarity between the keywords corresponding to the initial cluster head book and the keywords corresponding to each of the other books; determining an optimal cluster head book based on the fitness function, and performing a secondary classification on all of the books based on the optimal cluster head book to obtain a second classification result; Calculating a second user preference degree for each category of books in the first classification result according to the first user preference degree of each book; Based on the second user preference, each category of books in the second classification result is sorted by category to obtain a sorting result, wherein: Calculate the average preference evaluation score of all users for each book in all books; Calculating the total preference evaluation score of all users of each category of books in the second classification result based on the average preference evaluation score; sorting each category of books in the second classification result according to the second user preference and the total preference evaluation score to obtain a sorting result; Determine recommended books based on the ranking results.

2. The personalized book recommendation method according to claim 1, characterized in that: The calculating of the first user preference degree of each book in the historically read books includes: Classifying the historically read books into books that have been read but not added to the bookshelf, books that have not been purchased or downloaded, books that have not been purchased or downloaded but added to the bookshelf, and books that have been purchased or purchased and downloaded according to user behavior; The first user preference degree of each book in the historical reading books is calculated based on the books that have been read but not added to the bookshelf, the books that are not purchased or downloaded, the books that are not purchased or downloaded but added to the bookshelf, and the books that are purchased or purchased and downloaded.

3. The personalized book recommendation method according to claim 1, characterized in that: Based on the extracted keywords of each book in the historical reading books, the historical reading books are classified according to keyword similarity to obtain a first classification result, including: Obtaining the first title and first introduction of each history reading book, and extracting keywords from the first title and the first introduction; Converting keywords in the first title into a first vector, and converting keywords in the first introduction into a second vector; Calculating a first keyword similarity based on the first vector, and calculating a second keyword similarity based on the second vector; An overall similarity of the first keyword similarity and the second keyword similarity is calculated, and the history reading books are classified based on the overall similarity to obtain a first classification result.

4. The personalized book recommendation method according to claim 1, characterized in that: The keywords of each book in all books are extracted, and for each initial category, a fitness function is constructed based on the similarity between the keywords corresponding to the initial cluster head book and the keywords corresponding to each other book; and determining the optimal cluster head book based on the fitness function, and performing secondary classification on all the books according to the optimal cluster head book to obtain a second classification result, including: Obtain the second title and the second introduction of each book from all books, and extract keywords from the second title and the second introduction; converting the keywords in the second title into a third vector, and converting the keywords in the second introduction into a fourth vector; For each initial category, calculating the third keyword similarity between the third vector corresponding to the initial cluster head book and the third vector corresponding to each other book, and calculating the fourth keyword similarity between the fourth vector corresponding to the initial cluster head book and the fourth vector corresponding to each other book; Constructing a fitness function according to the third keyword similarity and the fourth keyword similarity; Based on the fitness function and the multiple initial categories, determining the optimal cluster head book corresponding to each of the initial categories; The total similarity between the optimal cluster head book corresponding to each of the initial categories and each book in all the books is calculated, and all the books are secondary classified according to the total similarity to obtain a second classification result.

5. The personalized book recommendation method according to claim 4, characterized in that: The calculating of the third keyword similarity between the third vector corresponding to the initial cluster head book and the third vector corresponding to each other book, and the calculating of the fourth keyword similarity between the fourth vector corresponding to the initial cluster head book and the fourth vector corresponding to each other book, include: The third keyword similarity between the third vector corresponding to the initial cluster head book and the third vector corresponding to each other book is calculated as: ; The fourth keyword similarity between the fourth vector corresponding to the initial cluster head book and the fourth vector corresponding to each other book is calculated as: ; in, Indicates the third keyword similarity, Indicates the fourth keyword similarity, The third vector corresponding to the initial cluster head book Middle dimension vector, Represents the third vector corresponding to the a-th book Middle dimension vector, represents the cluster space, represents the total number of dimensions in the third vector, The fourth vector corresponding to the initial cluster head book Middle dimension vector, Represents the fourth vector corresponding to the a-th book Middle dimension vector, Indicates the total number of dimensions in the fourth vector.

6. The personalized book recommendation method according to claim 1, characterized in that: Determining the recommended books according to the ranking results includes: Eliminate the books that the user has read in each category of books in the sorting results to obtain the remaining sorted books; Sorting all books in each category among the remaining sorted books to obtain sorted books in each category; According to the remaining ranked books and the ranked books in each category, a plurality of book categories with high rankings are selected and a plurality of books with high rankings in each category in the plurality of book categories with high rankings are selected to determine recommended books.

7. A personalized book recommendation system, characterized by: The system comprises: Book acquisition unit, used to acquire all books and historical reading books in the book database; a first calculation unit, configured to calculate a first user preference degree of each of the books in the historical reading; a book classification unit, configured to classify the historical reading books according to keyword similarity based on the extracted keywords of each book in the historical reading books, to obtain a first classification result; The initial classification unit is used to initially classify all books according to preset categories, obtain multiple initial categories, and select target books from each initial category as initial cluster head books; A secondary classification unit is configured to extract keywords from each of all books, and for each initial category, construct a fitness function based on the similarity between the keywords corresponding to the initial cluster head book and the keywords corresponding to each of the other books; determine the optimal cluster head book based on the fitness function, and perform secondary classification on all of the books based on the optimal cluster head book to obtain a second classification result; a second calculation unit, configured to calculate a second user preference degree for each category of books in the first classification result based on the first user preference degree for each book; A category sorting unit is used to sort the books of each category in the second classification result based on the second user preference to obtain a sorting result, wherein: Calculate the average preference evaluation score of all users for each book in all books; Calculating the total preference evaluation score of all users of each category of books in the second classification result based on the average preference evaluation score; sorting each category of books in the second classification result according to the second user preference and the total preference evaluation score to obtain a sorting result; The book recommendation unit is used to determine recommended books based on the ranking results.

8. An electronic device, characterized in that: It includes at least one control processor and a memory for communicating with the at least one control processor; the memory stores instructions that can be executed by the at least one control processor, and the instructions are executed by the at least one control processor to enable the at least one control processor to execute the personalized book recommendation method as described in any one of claims 1 to 6.

9. A computer-readable storage medium, characterized in that The computer-readable storage medium stores computer-executable instructions, and the computer-executable instructions are used to enable a computer to execute the personalized book recommendation method according to any one of claims 1 to 6.

Citation Information

Patent Citations

  • Cluster-based increment digital book recommendation method

    CN103886048A

  • Book recommendation method, server and book recommendation system

    CN113901326A