System and method for personalized search based on knowledge graph and computer program product thereof
Patent Information
- Application Number
- TW113144074
- Authority / Receiving Office
- TW · TW
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2024-11-15
- Publication Date
- 2026-09-01
- Estimated Expiration
- 2044-11-14
AI Technical Summary
Current film and television platform recommendation systems face data sparsity and cold start problems due to reliance on limited user viewing history, leading to poor recommendation performance and exclusion of new videos from user lists.
A knowledge graph-based personalized search system that integrates word segmentation, natural language processing, and collaborative filtering to analyze user interests and generate personalized video lists by calculating keyword and semantic similarity scores, and using knowledge graphs to infer ratings for new videos.
The system effectively addresses data sparsity and cold start issues by accurately identifying user interests and recommending new videos, enhancing recommendation effectiveness and user satisfaction through comprehensive scoring and reordering.
Smart Images

Figure TWG2TB001908591_001 
Figure TWG2TB001908591_002 
Figure TWG2TB001908591_003
Abstract
Description
Technical Field
[0001] This invention relates to personalized video search technology, specifically to a personalized search system, method, and computer program product based on knowledge graphs. Prior Technology
[0002] Currently, the analysis technology for user interest in movies in film and television platform recommendation systems suffers from data sparsity and cold start problems.
[0003] Data sparsity arises because familiar algorithms rely solely on users' viewing history to calculate user ratings. However, in real-world scenarios, user viewing history is often extremely sparse. For example, a platform may offer tens of thousands of films, but a user might have only watched a few dozen. Modeling with such limited viewing data leads to poor recommendation performance.
[0004] The cold start problem arises because the familiar algorithm needs to model based on the user's viewing history of the video, but new videos do not have viewing history at the beginning, so it is impossible to directly generate user ratings for the new videos, resulting in the new videos not appearing in the user's recommendation list.
[0005] Therefore, it is necessary to improve personalized film and television search technology to enhance recommendation effectiveness. Summary of the Invention
[0006] To address the aforementioned and other issues, this invention discloses a knowledge graph-based personalized search system, method, computer program product, and computer-readable recording medium.
[0007] A personalized search method based on knowledge graphs includes: generating a keyword search plan based on user-input query terms, and then calculating the keyword similarity score of each video; generating a vector search plan based on the query terms, and then calculating the semantic similarity score of each video; converting user viewing behavior data and video auxiliary data into a user video knowledge graph; processing the user video knowledge graph using a knowledge graph-based collaborative filtering method to generate a user interest score for each video; and generating a personalized video list for the user based on the keyword similarity score, the semantic similarity score, and the user interest score of each video.
[0008] A computer program product, loaded onto a computer to execute the aforementioned knowledge graph-based personalized search method.
[0009] A computer-readable recording medium stores instructions and can be executed by a computing device or computer via a processor and / or memory to perform the aforementioned knowledge graph-based personalized search method when executing the computer-readable recording medium.
[0010] A knowledge graph-based personalized search system includes: a search plan generation module, which generates a keyword search plan based on the user's input query terms, calculates the keyword similarity score of each video, and generates a vector search plan based on the query terms, calculates the semantic similarity score of each video; a knowledge graph conversion module, which converts user viewing behavior data and video auxiliary data into a user video knowledge graph, and processes the user video knowledge graph using a knowledge graph-based collaborative filtering method to generate a user interest score for each video; and a personalized re-ranking module, which generates a personalized video list for each user based on the keyword similarity score, the semantic similarity score, and the user interest score of each video.
[0011] The aforementioned knowledge graph-based personalized search system, method, computer program product, and computer-readable recording medium further include: loading film and television master data based on film and television knowledge graph, generating a name index based on the film name in the loaded film and television master data, and generating a film attribute vector based on the associated tags, categories, and subcategories in the film and television master data, wherein the keyword similarity score is generated based on the query term and the name index, and the semantic similarity score is generated based on the query term and the film attribute vector.
[0012] In the aforementioned knowledge graph-based personalized search system, method, computer program product, and computer-readable recording medium, natural language processing technology is used to convert the query term into a query term vector, thereby calculating the similarity between the query term vector and the video attribute vector to generate a semantic similarity score; in addition, a target video list including the keyword similarity score and semantic similarity score of each video is generated according to the vector search plan and the keyword search plan, and then a user interest score corresponding to the video in the target video list is generated.
[0013] In the aforementioned knowledge graph-based personalized search system, method, computer program product, and computer-readable recording media, the generation of the user's film and television knowledge graph includes converting the user and film in the user's viewing behavior data into subjects and objects respectively, and then converting the viewing behavior in the user's viewing behavior data into a predicate-related form, and converting the film, genre, and actor in the film and television auxiliary data into subjects and objects respectively, and then converting the genre and actor in the film and television auxiliary data into a predicate-related form.
[0014] In the aforementioned knowledge graph-based personalized search system, method, computer program product, and computer-readable recording media, the keyword similarity score, semantic similarity score, and user interest score of each video are weighted to generate a final score, which is then re-sorted based on the final score to generate the user's personalized video list.
[0015] This invention combines the concepts of search and personalized recommendation, integrating word segmentation technology, knowledge graphs, natural language processing, and collaborative filtering methods. By integrating these technologies, this invention can not only perform efficient keyword matching, but also deeply analyze the semantic structure of content and combine it with user behavior patterns, effectively improving data processing and analysis capabilities. It can more accurately identify users' interests and reorder the recommendation list based on these interests, significantly improving the search engine's capabilities and user satisfaction.
[0016] Therefore, this invention utilizes a knowledge graph to identify more relationships between users and other videos based on common associations (such as genre, actors, tags, etc.), alleviating the problem of data sparsity. Simultaneously, by using the knowledge graph to analyze the relationships between new and old videos (such as genre, actors, tags, etc.) and user ratings of older videos, it can directly generate user ratings for new videos and add them to the user's recommendation list, solving the cold start problem. Simple Explanation of the Diagram
[0017] Figures 1A and 1B are schematic flowcharts of the knowledge graph-based personalized search method of the present invention.
[0018] Figure 2 is a schematic diagram of the architecture of the knowledge graph-based personalized search system of the present invention.
[0019] Figure 3 is a conceptual diagram of the user film and television knowledge graph in the personalized search system based on knowledge graph of the present invention. Implementation
[0020] The following specific embodiments illustrate the implementation of this invention. Those skilled in the art can easily understand the other advantages and effects of this invention from the content disclosed herein. The structures, ratios, sizes, etc., illustrated in the accompanying drawings are only for the purpose of assisting those skilled in the art in understanding and reading the content disclosed herein, and are not intended to limit the implementation conditions of this invention. Therefore, any modifications, changes, or adjustments, without affecting the effects and objectives achieved by this invention, should still fall within the scope of the technical content disclosed herein.
[0021] The terms “comprising,” “including,” “having,” “containing,” or any other variation thereof, as used herein, are intended to cover non-exclusive inclusion. Unless otherwise stated, singular terms such as “a,” “one,” and “the” also apply to plural terms, while terms such as “or,” “and / or,” etc., are used interchangeably.
[0022] Please refer to Figures 1A and 1B, which are schematic flowcharts of the knowledge graph-based personalized search method of the present invention.
[0023] In one embodiment, the knowledge graph-based personalized search method may include four stages, as shown in steps S11-S13 in FIG1A and steps S21-S25, S31-S33 and S41-S42 in FIG1B.
[0024] The stage of building a film and television search engine based on film and television knowledge graph:
[0025] In step S11, the film and television master data based on the film and television knowledge graph is loaded into the film and television search engine. This film and television master data based on the film and television knowledge graph includes film name, related tags, category, and subcategory. These are fields belonging to the original knowledge graph data. Fields can be added as needed to enrich the search engine data. Then proceed to steps S12 and S13, where these two steps can be performed simultaneously or at different times.
[0026] In step S12, the video titles are processed using indexing techniques (such as N-gram segmentation, where N=2, 3, or...) to generate a name index. This provides keyword search for video titles, allowing users to accurately find the content they need even if they only remember part of the video title.
[0027] In step S13, the video title, associated tags, category, and subcategory are converted using natural language processing technology to generate video vector attributes. Additional fields can be added as needed to convert the data into vectors. Combining vector conversion of multi-level field data can help understand the deeper intent of the query and the deeper themes of the content, improving data processing efficiency and enabling more complex semantic analysis and correlation exploration through vector calculation.
[0028] The search plan generation phase:
[0029] In step S21, the query terms input by the user are received.
[0030] In step S22, the query term is segmented using word segmentation technology (e.g., N-gram, N=2 or 3 or...) and mapped to the field of the name index in the movie search engine to form a keyword search plan.
[0031] In step S23, the keyword similarity score between the movie title and the query term of each movie is analyzed to obtain the keyword similarity score of each movie.
[0032] In step S24, the query term is transformed into a multi-dimensional (e.g., 512-dimensional) vector using natural language processing technology to form a vector search plan.
[0033] In step S25, the similarity (e.g., cosine similarity) between the query word vector and the video attribute vector is calculated to obtain a semantic similarity score. That is, based on the distance or angle difference between the vectors, the semantic similarity between the video content and the user's query word is analyzed to obtain the semantic similarity score.
[0034] During this stage, a target movie list can be generated based on the keyword similarity score and the semantic similarity score. This list consists of movies that have a high degree of matching with the query terms entered by the user.
[0035] The process of converting user film and television knowledge graphs and analyzing user interest scores is as follows:
[0036] In step S31, user viewing behavior data and video-related auxiliary data are loaded. The user viewing behavior data includes the user, viewing behavior (e.g., time, number of times, or length), and the video, while the video-related auxiliary data includes the video, genre, and actors.
[0037] In step S32, the user viewing behavior data and film and television auxiliary data are converted into a user film and television knowledge graph using the SPO (Subject-Predicate-Object) triple graph representation method. Specifically, the user and film in the user viewing behavior data are converted into subject and object, respectively; the viewing behavior in the user viewing behavior data is converted into a predicate relational form. Similarly, the film, genre, and actor in the film and television auxiliary data are converted into subject and object, respectively; the genre and actor in the film and television auxiliary data are converted into a predicate relational form. All of these are then stored as a user film and television knowledge graph.
[0038] In step S33, a knowledge graph-based collaborative filtering method (such as an algorithm) (e.g., Knowledge Graph Attention Network (KGAT), a graph neural network (GNN) architecture) or other algorithms are used to process the user's video knowledge graph to analyze the user's interest score. Specifically, the user's video knowledge graph is used as input to the KGAT model. After model training and testing, the graph embedding vectors of the user and the video are obtained. Then, through vector inner product calculation, the interest score of each user for all videos (including new videos) is obtained. Finally, based on the target video list, the user's interest score for each video in the target video list is generated.
[0039] Personalized reordering of the target list:
[0040] In step S41, the target video list, keyword similarity score, semantic similarity score, and user interest score are integrated to form a comprehensive score. This involves weighting the data according to a custom weight template and then re-sorting the weighted scores, for example, sorting them from highest to lowest.
[0041] In step S42, a personalized video list is generated for the user, which is also a personalized video priority list.
[0042] Therefore, this invention's knowledge graph-based personalized search method combines the concepts of search and personalized recommendation, integrating word segmentation technology, knowledge graphs, natural language processing, and collaborative filtering methods. Compared to traditional audio-visual recommendation systems that cannot effectively discover and recommend audio-visual content that matches individual preferences, this invention not only performs efficient keyword matching but also deeply analyzes the semantic structure of content and combines it with user behavior patterns, effectively improving data processing and analysis capabilities. It can more accurately identify users' interests and reorder the recommendation list based on these interests. This personalized search method can significantly improve the capabilities of search engines and user satisfaction.
[0043] In addition to the above one or more embodiments, the present invention provides a computer program product that executes one or more of the above methods after being loaded onto a computer. Furthermore, the computer program (product) can be stored on a recording medium or directly transmitted and provided over a network. That is, the computer program (product) is a thing that carries a computer-readable program and is not limited to any particular external form. The computer includes, but is not limited to, electronic devices with processors, such as servers.
[0044] Furthermore, the present invention also provides a computer-readable recording medium, which is applied in a computing device or computer having a processor and / or memory. The computer-readable recording medium stores instructions, and the computing device or computer can execute the computer-readable recording medium through the processor and / or memory to perform the aforementioned methods and / or content when executing the computer-readable recording medium. The computer-readable recording medium (e.g., hard disk, floppy disk, optical disk, USB flash drive) stores the computer program (product). In one embodiment, the computer-readable recording medium is a non-transitory computer-readable recording storage medium.
[0045] Please refer to Figure 2, which is a schematic diagram of the architecture of the knowledge graph-based personalized search system of the present invention.
[0046] In one embodiment, the knowledge graph-based personalized search system 100 of the present invention includes a video search engine module 101, a search plan generation module 102, a knowledge graph conversion module 103, and a personalized reordering module 104.
[0047] It should also be noted that each unit in the knowledge graph-based personalized search system of the present invention can be software, hardware or firmware; if it is hardware, it can be a processing unit, processor or computer host with data processing and computing capabilities; if it is software or firmware, it can include instructions executable by a processing unit, processor, computer or computer host, and can be installed on the same hardware device or distributed on different multiple hardware devices.
[0048] The film and television search engine module 101 loads the film and television master data based on the film and television knowledge graph (as shown in Table 1) to generate a name index based on the film name in the film and television master data (as shown in Table 2) and generate a film attribute vector based on the associated tags, categories and subcategories in the film and television master data (as shown in Table 3).
[0049] Please refer to Table 1. The main video file should include at least the video ID, video name, category, and subcategory attribute fields. Related tags mainly include video tag data generated by crawling or AI, which are metadata tags used to describe the video content, type, style, source, and related topics. These tags are used in the video database to enhance the indexing efficiency and accuracy of the search engine.
[0050] Table 1: Film and television master files based on film and television knowledge graph.
[0051] Please refer to Table 2. After segmenting the video title using N-gram word segmentation technology, it is loaded into the video search engine module 101 for indexing. For example, setting N=2 means that every two characters are segmented into one word.
[0052] Table 2: Word segmentation results of movie titles.
[0053] Please refer to Table 3. The fields for movie title, category, subcategory, and related tags are converted into movie attribute vector fields using natural language processing technology. Depending on application requirements, more movie description attributes can be added and converted into vectors to provide richer data to support complex queries and semantic association analysis. This invention can use various text-to-vector technologies, such as Sentence Transformer or BERT (Bidirectional Encoder Representations from Transformers). These technologies are based on deep learning models and can capture and encode deep semantic information in text. Therefore, according to the content of Table 1, the four field values—movie title, category, subcategory, and related tags—are converted into vectors using Sentence Transformer.
[0054] Table 3: Movie attribute vectors.
[0055] The search plan generation module 102 generates a keyword search plan based on the user-input query term Q1 and then calculates the keyword similarity score for each video. The keyword similarity score is generated based on the query term and the name index of the video search engine module 101. The search plan generation module 102 also generates a vector search plan based on the query term and then calculates the semantic similarity score for each video. The semantic similarity score is generated based on the query term and the video attribute vector of the video search engine module 101.
[0056] In detail, the keyword search plan involves the search plan generation module 102 mapping the query term Q1 to the N-gram field of the video title in Table 2, corresponding to the N-gram field used previously; here, N=2. The aim here is to generate the keyword search plan and calculate the keyword similarity score between the query term Q1 and the video title. Additionally, the vector search plan uses natural language processing techniques to convert the query term Q1 into a multi-dimensional (e.g., 512-dimensional) vector, corresponding to the video attribute vector in Table 3. This vector evaluates the semantic similarity score between the query term Q1 and the video attribute by calculating the cosine similarity between the query term and the video attribute vector.
[0057] Please refer to Table 4. Next, the search plan generation module 102 submits the keyword search plan and vector search plan to the film and television search engine module 101. After processing by the engine, it returns a list of the top few (e.g., the top 100) target films. This list of target films includes the ID of each target film, keyword similarity score, and semantic similarity score, providing the end user with a target list sorted according to both keyword and semantic dimensions.
[0058] Table 4: List of target movies.
[0059] The knowledge graph conversion module 103 converts user viewing behavior data (as shown in Table 5) and film and television auxiliary data (as shown in Table 6) into a user film and television knowledge graph, and then uses a knowledge graph-based collaborative filtering method (such as an algorithm) to process the user film and television knowledge graph to generate a user interest score.
[0060] Please refer to Tables 5 and 6. Viewing behavior records for the past month (e.g., October 2024) can be collected, including at least records of videos watched by the user, and supplementary information for the videos can be collected, including at least one of the following: video type, actors, tags, etc. In one embodiment, there is no limit to the length of time for collecting viewing behavior records; in principle, user viewing behavior data can be collected for any video that the user has watched.
[0061] Table 5: User viewing behavior data.
[0062] Table 6: Supporting materials for film and television.
[0063] Next, using the SPO (Subject-Predicate-Object) triple graph representation, the user and the viewed video are respectively converted into Subject and Object, then the viewing behavior is converted into a Predicate association, and the viewed video, video type, and actor are respectively converted into Subject and Object, then the category and performance are converted into Predicate associations, all of which are stored in the graph database. One type of SPO triple graph representation database refers to the (Subject)-[Predicate]-(Object) association representation, which is a form of knowledge graph content. The conceptual diagram of the converted user-movie knowledge graph is shown in Figure 3.
[0064] Please refer to Figure 3. User viewing behavior data 300 is linked to film and television auxiliary data 200, forming a user film and television knowledge graph. Among them, the relationship r1 is viewing, the relationship r2 is category, and the relationship r3 is performance. Film 4 is a new film with no viewing record.
[0065] Next, a collaborative filtering method (such as an algorithm) based on the KGAT architecture is used. Through training and testing of the GNN model, graph embedding vectors of users and videos are obtained. By calculating the inner product of these vectors, the interest score of each user for all videos (including new videos) is obtained, as shown in Table 7. Based on this, even if there is no viewing record for video 4, the interest score of each user for video 4 can still be inferred through the user's video knowledge graph.
[0066] Table 7: User Interest Scores for All Videos
[0067] The personalized reordering module 104 generates a personalized video list for each user based on keyword similarity score, semantic similarity score, and user interest score.
[0068] In detail, each video in the target video list can be weighted and scored based on keyword similarity score, semantic similarity score, and user interest score (as shown in Table 8). A custom weighting template can be used for the calculation, assigning a specific weight value to each score, and adjusting the weight values of each score to adjust the influence. For example, the weight of the keyword similarity score can be relatively low, the weight of the semantic similarity score can be relatively high, and the weight of the user interest score can be the highest.
[0069] Table 8: Three scores for the target movie list.
[0070] Finally, prioritize the videos. Refer to Table 9 for User A's final score (e.g., weighted score) and priority for the target video.
[0071] Table 9: User A's Personalized Movie List.
[0072] In summary, the knowledge graph-based personalized search system, method, and computer program product of this invention have the following advantages:
[0073] I. Word Segmentation and Keyword Similarity Calculation: Keyword matching is performed using word segmentation technology, and the similarity score of the keywords is calculated to obtain a list of targets that match the query keywords.
[0074] II. Application of Knowledge Graphs in Semantic Search: By utilizing the associated tag data provided by knowledge graphs and combining natural language processing technology, textual data is converted into vectors, and the vectors are compared to calculate the semantic similarity of keywords.
[0075] III. Collaborative Filtering Method Based on Knowledge Graph: The main purpose of adopting the collaborative filtering method is to provide accurate computational basis for personalized search, while effectively solving the data sparsity and cold start problems common in traditional models.
[0076] IV. Comprehensive Scoring and Personalized Target List Generation: The targets are comprehensively scored based on keyword similarity score, semantic similarity score, and user interest score, and then re-sorted according to the scores to generate the final personalized target list.
[0077] The above embodiments are merely illustrative of the effects of this application and are not intended to limit the scope of this application. Anyone skilled in the art can modify and alter the above embodiments without departing from the spirit and scope of this application. Therefore, the scope of protection of this application should be as set forth in the following patent application claims.
[0078] 100: Personalized Search System 101: Movie and TV Search Engine Module 102: Search Plan Generation Module 103: Knowledge Graph Conversion Module 104: Personalized Reordering Module 200: Film and Television Supplementary Materials 300: User viewing behavior data S11~S13: Steps S21~S25: Steps S31~S33: Steps S41~S42: Steps r1, r2, r3: Association
Claims
1. A personalized search method based on knowledge graphs, comprising: The system loads film and television master data based on a film and television knowledge graph, generates a name index based on the film titles in the master data, and generates film attribute vectors based on the associated tags, categories, and subcategories in the master data; it generates a keyword search plan based on the user's input query terms, and then calculates the keyword similarity score for each film based on the query terms and the name index; it generates a vector search plan based on the query terms, and then calculates the semantic similarity score for each film based on the query terms and the film attribute vectors; it converts user viewing behavior data and film and television auxiliary data into a user film and television knowledge graph; it uses a knowledge graph-based collaborative filtering method to process the user film and television knowledge graph to generate a user interest score for each film; and it generates a personalized film list for the user based on the keyword similarity score, the semantic similarity score, and the user interest score for each film.
2. The personalized search method as described in claim 1, wherein, The query term is converted into a query term vector using natural language processing techniques. The similarity between this query term vector and the movie attribute vector is then calculated to generate a semantic similarity score. Based on the vector search plan and the keyword search plan, a list of target videos is generated, including the keyword similarity score and semantic similarity score of each video, and then a user interest score corresponding to the video in the list of target videos is generated.
3. The personalized search method as described in claim 1, wherein, The generation of this user film and television knowledge graph involves converting users and films in the user's viewing behavior data into subjects and objects respectively, then converting the viewing behavior in the user's viewing behavior data into a predicate-related form, and converting films, genres, and actors in the film and television auxiliary data into subjects and objects respectively, then converting the genres and actors in the film and television auxiliary data into a predicate-related form.
4. A computer program product, which is loaded onto a computer to perform the method described in any one of claims 1 to 3.
5. A personalized search system based on knowledge graphs, comprising: The video search engine module loads video master data based on a video knowledge graph, generating a name index based on the video titles in the master data and a video attribute vector based on the associated tags, categories, and subcategories in the master data. The search plan generation module generates a keyword search plan based on the user's input query, calculates the keyword similarity score for each video based on the query and the name index, generates a vector search plan based on the query, and calculates the semantic similarity score for each video based on the query and the video attribute vector. The knowledge graph conversion module converts user viewing behavior data and video auxiliary data into a user video knowledge graph, processes this knowledge graph using a knowledge graph-based collaborative filtering method, and generates a user interest score. Finally, the personalized re-ranking module generates a personalized video list for each user based on the keyword similarity score, semantic similarity score, and user interest score.
6. The personalized search system as described in claim 5, wherein, The search algorithm generates a module that uses natural language processing to convert the query term into a query term vector, and then calculates the similarity between the query term vector and the movie attribute vector to generate a semantic similarity score. The search plan generation module submits the vector search plan and the keyword search plan to the film and television search engine module, which then generates a list of target films, including keyword similarity scores and semantic similarity scores for each film. The knowledge graph conversion module then generates user interest scores corresponding to the films in the target film list.
7. The personalized search system as described in claim 5, wherein, The knowledge graph conversion module converts the user and film in the user's viewing behavior data into subjects and objects respectively, then converts the viewing behavior in the user's viewing behavior data into a predicate association form, and converts the film, genre and actor in the film and television auxiliary data into subjects and objects respectively, then converts the genre and actor in the film and television auxiliary data into a predicate association form, thereby generating the user's film and television knowledge graph.
8. The personalized search system as described in claim 5, wherein, The personalized re-sorting module performs weighted processing on the keyword similarity score, semantic similarity score, and user interest score of each video to generate a final score, and then re-sorts the videos based on the final score to generate a personalized video list for the user.
Citation Information
Patent Citations
Movie recommendation method based on family knowledge graph
CN111858972A
Recommendation method based on knowledge graph and deep learning
CN114861070A
Movie personalized recommendation method and system fusing large language model and knowledge graph
CN118551123A
A system of semantic analysis-based trademark class recommendation and the method thereof
TW202349325A
Systems and Methods for Providing User Experiences on Smart Assistant Systems
US20230409615A1