A financial article recommendation method and device and a readable storage medium
By building a multi-dimensional labeling system and integrating multiple models to dynamically capture user interests, we solve the problems of single label dimension and insufficient dynamic capture of interests in financial article recommendations, and achieve personalized and accurate financial article recommendations.
Patent Information
- Application Number
- CN202510992633.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-07-18
- Publication Date
- 2025-10-10
- Estimated Expiration
- 2045-07-18
AI Technical Summary
Existing technologies for recommending financial articles have the disadvantages of a single label dimension and insufficient capture of user interests, resulting in poor recommendation relevance and timeliness, especially for new users.
Build a financial article content library, adopt a multi-dimensional tag system of stock tags and subject tags, combine association rule mining, time series prediction, interest decay and deep learning models, dynamically capture user interests and generate personalized recommendation lists.
Through the collaboration of a multi-dimensional labeling system and multiple models, the accuracy and timeliness of financial article recommendations are improved, making it suitable for precise information recommendation in the financial field.
Smart Images

Figure CN120508660B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the field of big data, in particular to a financial article recommendation method and device and readable storage medium. BACKGROUND
[0002] With the explosive growth of financial market information, users are faced with the problem of screening a large number of financial articles, and personalized recommendation has become the key to improving information acquisition efficiency. Existing technologies mostly rely on a single label system or traditional collaborative filtering algorithm, which has the problems of single label dimension and insufficient dynamic capture of user interest: for example, recommendation based only on user historical clicks cannot mine potential correlations between labels, does not consider the time decay characteristics of interest, and new users have poor recommendation effect due to lack of interaction data. In addition, the financial field has high requirements for label accuracy, and existing models have insufficient classification and fusion capabilities for professional labels, resulting in poor relevance and timeliness of recommendations. SUMMARY
[0003] The purpose of the present application is to provide a financial article recommendation method, device and readable storage medium.
[0004] In a first aspect, the present application provides a financial article recommendation method, comprising:
[0005] A financial article content library is constructed, which stores financial articles and corresponding stock labels and theme labels. The stock labels and theme labels are obtained by classifying article content to compress the article dimension to a preset attribute dimension composed of stock labels and theme labels. The total number of the preset attribute dimension is determined by a label classification system;
[0006] User attribute data and historical interaction data of the user with the financial articles in the financial article content library are obtained. The user attribute data includes a user-selected stock list and a user-selected theme list. The historical interaction data includes user interaction behavior with financial articles and corresponding article identifiers and timestamps;
[0007] Based on the user attribute data and the historical interaction data, user interaction features with the stock labels and user interaction features with the theme labels are constructed respectively. The interaction features are used to reflect the correlation and interest degree of the user with each stock label and theme label;
[0008] A plurality of prediction models are used to process the interaction features, and the output results of each model are fused to predict target stock labels and target theme labels of interest to the user. The plurality of prediction models at least include an association rule mining model, a time series prediction model, an interest decay model, a deep learning model and a user-selected label model;
[0009] Based on the predicted target stock label and theme label, corresponding financial articles are matched from the financial article content library, and after the matched financial articles are processed in reverse order of publishing time, a user personalized financial article recommendation list is generated and output.
[0010] In a second aspect, an embodiment of the present application provides a financial article recommendation device, comprising:
[0011] An acquisition module is configured to construct a financial article content library, wherein the financial article content library stores financial articles and corresponding stock labels and theme labels, the stock labels and theme labels are obtained by classifying article content, the article dimension is compressed to a preset attribute dimension composed of stock labels and theme labels, and the total number of the preset attribute dimension is determined by a label classification system; user attribute data and historical interaction data of a user and financial articles in the financial article content library are acquired, the user attribute data includes a user selected stock list and a user selected theme list, the historical interaction data includes interaction behaviors of the user and corresponding article identifiers and time stamps; based on the user attribute data and the historical interaction data, interaction features of the user and the stock labels and interaction features of the user and the theme labels are constructed, and the interaction features are used to reflect the correlation and interest degree of the user to each stock label and theme label;
[0012] A recommendation module is configured to process the interaction features by using multiple prediction models, and fuse output results of each model to predict target stock labels and theme labels of interest of the user, wherein the multiple prediction models at least include an association rule mining model, a time series prediction model, an interest decay model, a deep learning model and a user selected label model; based on the predicted target stock labels and theme labels, corresponding financial articles are matched from the financial article content library, and after the matched financial articles are processed in reverse order of publishing time, a user personalized financial article recommendation list is generated and output.
[0013] In a third aspect, an embodiment of the present application provides a readable storage medium, wherein the readable storage medium comprises a computer program, and the computer program controls a method of the first aspect when running.
[0014] Compared with the prior art, the beneficial effects of the financial article recommendation method, device and readable storage medium provided by the application include: the financial article recommendation method, device and readable storage medium disclosed by the application are related to the field of big data, and include the following steps: first, a financial article content library containing stock labels and theme labels is constructed, and the article dimension is compressed to a preset attribute dimension; user attribute data and historical interaction data are obtained, and an interaction feature of the user and the label is constructed; the interaction feature is processed by using an association rule mining, a time sequence prediction, an interest decay, a deep learning and a user self-selected label model, a target label is predicted by fusing an output result, and an article is matched based on the target label; and a recommendation list is generated after the articles are removed in a reverse order according to the publishing time. The application dynamically captures the change of the user interest by using the multi-dimensional label system and the multi-model cooperation, improves the recommendation accuracy, and is suitable for the precise information recommendation scene in the financial field. BRIEF DESCRIPTION OF DRAWINGS
[0015] In order to more clearly illustrate the technical solutions of the embodiments of the application, the following will briefly introduce the drawings needed to be used in the embodiments. It should be understood that the following drawings only show some embodiments of the application, and therefore should not be regarded as a limitation on the scope. For those skilled in the art, other related drawings can also be obtained without creative labor on the basis of these drawings.
[0016] Figure 1 The step flow diagram of the financial article recommendation method provided by the embodiment of the application;
[0017] Figure 2 The overall flow framework diagram of the financial article recommendation method provided by the embodiment of the application;
[0018] Figure 3 The structure schematic diagram of the financial article recommendation device provided by the embodiment of the application;
[0019] Figure 4 The structure schematic diagram of the computer device provided by the embodiment of the application. DETAILED DESCRIPTION
[0020] In order to make the purpose, technical solutions and advantages of the embodiments of the application more clear, the technical solutions in the embodiments of the application will be described clearly and completely in the following with reference to the drawings in the embodiments of the application. Obviously, the described embodiments are some embodiments of the application, not all the embodiments. The components of the embodiments of the application described and shown in the drawings can be arranged and designed in various different configurations.
[0021] The specific embodiments of the application will be described in detail in the following with reference to the drawings.
[0022] In order to solve the technical problems in the foregoing background art, Figure 1A flowchart of a financial article recommendation method provided by an embodiment of the present disclosure is shown below, and the financial article recommendation method is described in detail below.
[0023] In step S201, a financial article content library is constructed, which stores financial articles and corresponding stock labels and theme labels, the stock labels and theme labels are obtained by classifying article content, so as to compress the article dimension to a preset attribute dimension composed of stock labels and theme labels, and the total number of the preset attribute dimension is determined by a label classification system.
[0024] In step S202, user attribute data and historical interaction data of the user with the financial articles in the financial article content library are obtained, the user attribute data includes a user-selected stock list and a user-selected theme list, and the historical interaction data includes user interaction behaviors with the financial articles and corresponding article identifiers and timestamps.
[0025] In step S203, based on the user attribute data and the historical interaction data, interaction features of the user with the stock labels and interaction features of the user with the theme labels are respectively constructed, the interaction features are used to reflect the correlation and interest degree of the user with each stock label and theme label.
[0026] In step S204, a plurality of prediction models are used to process the interaction features, and the output results of each model are fused to predict target stock labels and target theme labels of interest to the user, the plurality of prediction models at least include an association rule mining model, a time series prediction model, an interest decay model, a deep learning model, and a user-selected label model.
[0027] In step S205, based on the predicted target stock labels and target theme labels, corresponding financial articles are matched from the financial article content library, and the matched financial articles are processed in reverse order of publication time to remove duplicates, and a user personalized financial article recommendation list is generated and output.
[0028] In an embodiment of the present disclosure, the server first performs the step of constructing a financial article content library, which is used to store various types of financial articles and corresponding label information, and the high-dimensional content of the article is converted into a low-dimensional attribute that can be calculated through label processing, thereby providing a data basis for subsequent recommendation.
[0029] In actual operation, the server collects article resources in the financial field through various legal channels, including but not limited to securities company research reports, listed company announcements, industry analysis summaries, financial news information, etc. For example, the server obtains “a certain power battery enterprise's third quarter report in YYYY” and “a certain new energy equipment industry in-depth research report” from the database of a cooperative financial data service provider, crawls “a certain listed company's performance forecast announcement in YYYY” from the official website of a stock exchange, and obtains “a certain emerging industry policy interpretation” from a financial media API interface. When each article is stored, the server assigns it a unique article identifier, such as “REPORT00012345”, and records the title, publication time, source institution, and content, etc.
[0030] The core link is to automatically add stock tags and theme tags to each article. For stock tags, the server identifies the stock name and code mentioned in the article through text analysis technology, such as extracting “a certain power battery enterprise (123456.SH)” from “a certain power battery enterprise's third quarter report in YYYY”, and matching it with the built-in stock database, finally tagging the article with the stock tag “a certain power battery enterprise (123456.SH)”. For theme tags, the server uses natural language processing technology to achieve automatic classification. Specifically, the server uses a pre-trained language model that supports zero or small sample classification as the basis, and fine-tunes the model using historical article corpus in the financial industry (such as research reports, industry trends, etc. in the past three years) to enable it to understand professional terms and semantics in the financial field. For example, for the article “a certain energy storage technology application prospect analysis”, the fine-tuned model will analyze its core content and determine that it belongs to the “energy storage technology” theme under the “new energy” field, and thus tag it with the corresponding theme tag.
[0031] Through the above labeling process, the server converts the originally text-based article content into a structured attribute of “stock tag + theme tag”. For example, an article about the technical progress of a certain new energy vehicle enterprise may be labeled with the stock tag “a certain new energy vehicle enterprise (654321.SZ)” and the theme tags “new energy vehicle” and “power battery”. These tags together constitute the preset attribute dimension, the total number of which is determined by the label classification system, for example, the stock tag covers all tradable stocks on the market (about several thousand to tens of thousands), and the theme tag is divided into primary, secondary, and tertiary labels according to industry general classification standards (such as “power equipment”, “new energy passenger car”, “intelligent driving”, etc., with a total number of about several hundred to several thousand). The server stores these articles with labels in the financial article content library, usually using a relational database to store structured information such as labels, and a distributed file system to store unstructured data such as article text, to facilitate efficient querying and calling later.
[0032] To achieve personalized recommendation, the server needs to collect and integrate data related to the user, mainly including attribute data provided by the user and historical interaction data generated by the user on the platform.
[0033] User attribute data is mainly obtained through user registration and system settings. For example, when the user first uses the recommendation platform, they need to fill in information such as the institution they belong to (e.g., "a certain asset management company"), the type of occupation (e.g., "investment manager"), and the role in transactions (e.g., "buyer" or "seller"). More importantly, users can manually add their own stock list and theme list, directly expressing their interest direction. For example, user A, as an investment manager focusing on the new energy field, may add "a certain power battery company (123456.SH)" and "a certain new energy vehicle company (654321.SZ)" to the self-selected stock list, and "smart manufacturing" and "energy storage technology" to the self-selected theme list. These data will be encrypted and stored in the user information database by the server, serving as an important basis for understanding the user's explicit interest.
[0034] User historical interaction data is the behavior record generated by the user during the use of the platform, which is captured by the server in real time through front-end burying technology. Specifically, it includes user behaviors such as clicking, reading, collecting, sharing, and commenting on financial articles, as well as the corresponding article identifier and timestamp. For example, user A clicked and read the article titled "YYYY New Energy Industry Chain Summit Minutes" on YYYY-MM-DD HH:MM, and the server recorded the user ID, article ID, behavior type ("reading"), occurrence time ("YYYY-MM-DD HH:MM:SS"), and associated stock tags (such as "a certain power battery company" and "a certain new energy vehicle company") and theme tags (such as "smart manufacturing") of the article. These interaction data are summarized daily into a data warehouse, after de-duplication and cleaning (such as removing false click behaviors), forming user behavior sequences that reflect the user's implicit interest preferences.
[0035] Based on the collected user attribute data and historical interaction data, the server needs to further build the interaction features between users and stock tags, and between users and theme tags, to convert the original data into a mathematical representation that can quantify the degree of user interest.
[0036] In constructing the user's interaction features with stock tags, the server first integrates the user's historical interaction behavior and self-selected stock information. For example, for user A, the server will count the interaction frequency with each stock tag in the past three months: assume he clicked on "certain power battery enterprise" related articles 5 times, collected 2 times, clicked on "certain new energy vehicle enterprise" related articles 3 times, and shared 1 time. At the same time, the server will give different weights to different interaction behaviors (such as collection weight is higher than click, sharing weight is higher than collection), and combine the time of interaction to decay processing-the recent interaction behavior has greater influence on current interest, and the long-term influence gradually decreases. For example, the user's collection behavior on "certain power battery enterprise" a week ago will have a higher weight than the click behavior a month ago. In addition, the stock tags in the user's self-selected stock list will be given an additional high weight to highlight the user's explicit interest. Through the above calculation, the server finally generates a vector for the user, and each dimension of the vector corresponds to a stock tag, and the numerical value represents the user's interest in the tag, for example, user A's stock interaction feature vector may be "certain power battery enterprise: 8.5 points, certain new energy vehicle enterprise: 6.2 points, certain semiconductor enterprise: 3.1 points……"
[0037] The interaction feature construction logic of the user and the theme tag is similar to that of the stock tag. The server will count the user's interaction frequency with each theme tag (such as reading "smart manufacturing" theme articles 8 times), interaction type weight (such as collecting 2 times of the theme article), and combine time decay and self-selected theme list weighting to finally generate a theme interaction feature vector, for example "smart manufacturing: 9.3 points, energy storage technology: 5.7 points, new energy passenger car: 4.8 points……". These interaction feature vectors directly reflect the user's association and interest level for different tags, which are the core input of the subsequent prediction model.
[0038] The server uses multiple prediction models to comprehensively process the interaction features and fuse the output results of each model to accurately predict the target stock tags and theme tags that the user is interested in. The following takes the case of user A as an example:
[0039] Association rule mining model: this model aims to discover potential associations between stock tags or theme tags in the user's historical interaction behavior. For example, the server analyzes user A's past stock browsing sequence and finds that he has a higher probability of continuing to focus on "certain automobile parts enterprise" after focusing on "certain new energy vehicle enterprise" (both are new energy vehicle industry chain companies), thus discovering the association rule "certain new energy vehicle enterprise→certain automobile parts enterprise". Based on this rule, when the user recently interacts with "certain new energy vehicle enterprise", the model will recommend "certain automobile parts enterprise" as a potential interested stock tag.
[0040] Time series prediction model: This model is mainly used to predict popular tags in the short term, especially suitable for new user cold start scenarios (when new users have no historical interaction data). The server will count the daily access volume of each stock tag or theme tag in the past period (such as the past 14 days), and predict the trend of popularity in the next few days through the time series prediction model. For example, the model predicts that "a certain consumer leading enterprise" and "a certain industrial automation enterprise" will become popular stock tags in the future, and the server will recommend these popular tags to new users or as additional recommendations for old users.
[0041] Interest decay model: This model simulates the change rule of user interest over time, and dynamically adjusts the weight of historical interaction behavior through the "interest retention factor". The server divides the user's historical interaction data into multiple windows according to time (recent windows use hourly granularity, and long-term windows use daily granularity), calculates the overlap between the label set of user interaction in each window and the current window label set (the ratio of the number of intersection elements to the total number of historical window elements), that is, the interest retention factor. For example, the "photovoltaic" theme tag that the user interacted with three months ago will have a higher interest retention factor if there is still frequent interaction, and the weight of this tag will be retained; otherwise, if there is no interaction for a long time, the weight will gradually decrease.
[0042] Deep learning model (deep interest network): This model captures the dynamic changes in user interest through neural networks. The server inputs the user's attribute features (such as institutions, occupations), behavior type sequence features (such as time series of clicks and collections), and self-selected label features (such as encoding vectors of self-selected stocks) into the deep learning model. The model uses an attention mechanism to assign dynamic weights to user behavior features at different time points, for example, the user's recent multiple clicks on "smart manufacturing" will be given higher attention, thereby generating a feature vector that reflects the current interest, and outputting the user's interest probability for each label. For example, the model predicts that the user's interest probability for "a certain power battery enterprise" is 0.89, and the interest probability for "smart manufacturing" is 0.76.
[0043] User self-selected label model: This model directly uses the user's manually added self-selected stock list and self-selected theme list, and uses the labels in it as high-priority recommended items. For example, "a certain power battery enterprise" and "a certain new energy automobile enterprise" in user A's self-selected stock list will directly enter the candidate label list.
[0044] Model fusion: The server assigns weights to each model based on their historical prediction accuracy (the higher the accuracy, the higher the weight), weights the candidate labels output by the above models, and removes duplicates. For example, the association rule mining model has an accuracy of 0.85 and the highest weight; the self-selected model has an accuracy of 0.78 and the second highest weight. After fusion, the target stock label of user A is ranked as "a certain power battery company, a certain new energy vehicle company, a certain automobile parts company, a certain consumer leader company, and a certain semiconductor company", and the theme material label is ranked as "smart manufacturing, energy storage technology, and new energy passenger car".
[0045] Based on the predicted target stock labels and theme material labels, the server matches corresponding financial articles from the financial article content library, and generates the final personalized recommendation list after screening and sorting.
[0046] Specifically, the server searches the financial article content library based on the target stock labels (such as "a certain power battery company" and "a certain new energy vehicle company") and theme material labels (such as "smart manufacturing"), and matches articles that contain these labels or at least one core label. For example, user A is matched to "a certain power battery company YYYY Q3 financial report review" (containing "a certain power battery company" stock label), "smart manufacturing industry YYYY outlook" (containing "smart manufacturing" theme label), "a certain new energy vehicle company and a certain power battery company cooperation progress analysis" (containing "a certain new energy vehicle company" and "a certain power battery company" stock labels and "new energy passenger car" theme label), etc.
[0047] After matching, the server removes duplicate records of the same article and sorts them by publication time from late to early to ensure that the user sees the latest content first. For example, the sorted article order is: "smart manufacturing industry YYYY outlook" published on YYYY-MM-DD, "a certain new energy vehicle company and a certain power battery company cooperation progress analysis" published on YYYY-MM-DD, and "a certain power battery company YYYY Q3 financial report review" published on YYYY-MM-DD.
[0048] Finally, the server sets the refresh interval of the recommendation list based on the article length and the user's average reading speed (calculated based on historical reading data, such as an average reading speed of 1000 words per minute). For example, if the current recommendation list contains 5 articles with a total word count of about 5000 words, the estimated reading time is 5 minutes, and the server will automatically refresh the list after 10 minutes to supplement new articles. Finally, the sorted article list is displayed to the user through the client interface, completing the entire personalized financial article recommendation process.
[0049] Through the above method, the server can comprehensively consider the explicit interest and implicit behavior of the user, combine the advantages of multiple models, realize accurate and real-time financial article recommendation, and effectively improve the reading experience and information acquisition efficiency of the user.
[0050] In the embodiment of the application, the article content is classified by theme label, which includes:
[0051] A pre-training model supporting zero-sample or small-sample classification is used as a base model;
[0052] The financial industry article corpus is collected, cleaned and sample expanded, and the sample expansion includes supplementing associated articles through keyword retrieval for low-frequency theme labels;
[0053] A multi-model voting mechanism is used to generate the labels of the training samples, and the voting mechanism includes the outputs of at least two pre-training language models and the keyword rule matching results;
[0054] The base model is fine-tuned on the cleaned and sample expanded financial industry article corpus to obtain a theme label classification model;
[0055] The fine-tuned theme label classification model is used to classify the financial articles, and the candidate labels are output; the candidate labels are reordered by using a fine-ranking model, and the final theme labels are output.
[0056] In the financial article recommendation method, classifying the article content by theme label is a core link for building a content library, and the server performs the following process:
[0057] The server first uses a pre-training language model supporting zero-sample or small-sample classification as a base model. Since there are a large number of subdivided themes in the financial field (such as “green finance” and “supply chain finance”), some low-frequency theme sample sizes are insufficient, and zero-sample / small-sample models can adapt to the few-sample scenario through transfer learning, so the server selects a pre-training model based on the Transformer architecture (such as a general-purpose language model supporting cross-domain transfer), which has been pre-trained on a large-scale general-purpose text corpus and has basic semantic understanding capabilities.
[0058] Next, the server collects financial industry article corpus and performs cleaning and expansion. The server obtains financial articles from compliant financial databases, institutional research report libraries, financial information platform interfaces, etc. for the past five years, covering research reports, industry summaries, policy interpretations, etc. A total of 1 million original corpora are collected. For noise data in the original corpus, the server performs cleaning operations: remove articles with a repetition rate of more than 95% through a text deduplication algorithm (based on SimHash), filter short texts with fewer than 500 words (to avoid insufficient information), and remove HTML tags, special symbols, and other format noise through regular expressions, leaving 800,000 valid corpora. For low-frequency theme labels (such as "carbon trading financial tools" and "cross-border digital renminbi settlement" with fewer than 10 samples), the server supplements related articles through keyword retrieval: using label names and core keywords (such as "carbon trading" + "financial tools" and "carbon futures") as search conditions, the server queries articles containing these keywords in the title or abstract in the enterprise internal document library, and supplements the top 20 articles based on text similarity (cosine similarity ≥ 0.7) to the corresponding theme, so that the sample size of each theme label reaches more than 30, ensuring balanced model training.
[0059] Subsequently, the server generates training sample labels using a multi-model voting mechanism. To ensure label accuracy, the server calls two pre-trained language models (Model X and Model Y) with different architectures and a set of keyword rule systems to predict labels for the cleaned corpus. For example, for the article "2024 Carbon Trading Market Policy Impact Analysis", Model X outputs the labels "Carbon Finance" and "Green Finance", Model Y outputs the labels "Carbon Finance" and "Environmental Policy", and the keyword rule system outputs the labels "Carbon Finance" and "Policy Research" by matching keywords such as "carbon trading" and "policy". The server sets voting rules: when at least two prediction results (models or rules) are consistent, the label is taken as the final label of the sample. In the above case, "Carbon Finance" is predicted by three results, so it is determined as the theme label of the article, while "Green Finance", "Environmental Policy", and "Policy Research" are excluded because they are only predicted by a single model / rule. Through this mechanism, the server generates high-quality training labels for 800,000 corpora, with a label accuracy of 92%.
[0060] After the training sample preparation is completed, the server fine-tunes the base model on the cleaned and augmented financial industry article corpus to obtain a theme label classification model. The server divides 800,000 labeled articles into a training set (640,000 articles) and a validation set (160,000 articles) according to an 8:2 ratio, uses the training set to fine-tune the base model with the label as the classification target: sets the initial learning rate to 2e-5, uses the gradient descent optimizer, and trains for 5 epochs. After each round, the model accuracy (Precision) on the validation set is evaluated. When the accuracy on the validation set does not improve for two consecutive rounds (e.g., 0.88 in the third round, 0.87 in the fourth round, and 0.88 in the fifth round), the server stops training and saves the model parameters in the third round as the final theme label classification model. At this time, the model accuracy on the validation set is 0.88, meeting the classification requirements.
[0061] Finally, the server uses the fine-tuned theme label classification model to classify financial articles, outputs candidate labels, and reorders them through the fine-tuning model to obtain the final labels. For new financial articles (such as the "Digital RMB Cross-Border Payment Pilot Progress Report"), the server first extracts the article text, inputs it into the fine-tuned theme label classification model, and the model outputs the top 5 candidate labels and corresponding confidence scores, such as "digital RMB" (0.92), "cross-border payment" (0.85), "financial technology" (0.78), "digital currency" (0.72), and "payment settlement" (0.65). To further improve the relevance of the labels, the server calls the fine-tuning model to reorder the candidate labels: the fine-tuning model uses the cosine similarity between the article text vector and the candidate label vector as a feature, combines the timeliness weight of the label in the financial field (such as "digital RMB" being a hot topic in recent years, with a 10% weight increase), scores and sorts the candidate labels, and finally outputs the top 3 labels as the final theme labels of the article, namely "digital RMB", "cross-border payment", and "financial technology".
[0062] Through the above process, the server realizes the automatic and high-precision classification of financial article theme labels, providing a reliable label basis for subsequent recommendations.
[0063] In the embodiment of the application, the association rule mining model is an FP-Growth model, and the process of the FP-Growth model for mining association rules can be implemented through the following example.
[0064] Based on the historical interaction data, the stock label or theme label browsing sequence of the user in a preset time period is extracted;
[0065] According to a preset sequence length threshold and an adjacent interaction time interval threshold, the browsing sequence is divided into a plurality of subsequences;
[0066] calculate a high-frequency factor of each stock label or theme label, the high-frequency factor being a ratio of a total number of user interactions of the stock label or theme label on the day to a total number of online users on the day;
[0067] remove high-frequency items in the plurality of sub-sequences based on the high-frequency factor, the removal rule being that if the high-frequency factor of a stock label or theme label is greater than a first preset threshold value and a difference between the high-frequency factor of the stock label or theme label and a high-frequency factor of a stock label or theme label adjacent in sequence is greater than a second preset threshold value, the stock label or theme label is determined to be a high-frequency item and is removed;
[0068] construct a transaction dataset based on the sub-sequences after the high-frequency items are removed, mine a frequent item set through an FP tree, and generate an association rule based on the frequent item set, the mining parameters of the association rule including a minimum support degree set based on a total number of sequences and a preset minimum confidence degree;
[0069] predict a stock label or theme label of interest to a user by using the association rule.
[0070] In an embodiment of the present application, in an exemplary financial article recommendation method, an association rule mining model (FP-Growth model) is used to mine potential associations of labels in user historical interactions, and a server performs the following processes:
[0071] The server first extracts label browsing sequences based on historical interaction data in units of users. The historical interaction data includes user behaviors such as clicking and reading financial articles and corresponding stock / theme labels. The server groups the data by user ID, selects interaction records in a preset time period (such as the past 30 days), arranges the data in ascending order of time stamp, extracts stock labels or theme labels of each interaction, and forms label browsing sequences of users. For example, user A has interacted with articles containing “stock label A”, “theme label B”, “stock label C”, “stock label A”, and “theme label D” in the past 30 days. The server extracts the stock label browsing sequence of user A as [stock label A, stock label C, stock label A] and the theme label browsing sequence of user A as [theme label B, theme label D].
[0072] Next, the server divides the sequences into sub-sequences according to a preset threshold. A sequence length threshold (such as a maximum length of 8) and an adjacent interaction time interval threshold (such as 24 hours) are set. If the length of the browsing sequence exceeds 8 or the interaction time interval between two adjacent labels exceeds 24 hours, the sequence is divided at the interval. For example, the length of the stock label browsing sequence of user A is 3 (which does not exceed the threshold), but the interaction time interval between the second label (stock label C) and the third label (stock label A) is 25 hours (which exceeds the threshold). The server divides the sequence into two sub-sequences: [stock label A, stock label C] and [stock label A].
[0073] Subsequently, the server calculates the high-frequency factor of each label per day. The high-frequency factor is the ratio of the total number of user interactions of a label on the day to the total number of online users on the day, which is used to identify the universal high-interaction label caused by market hotspots (not the user's real interest). For example, the total number of online users on the platform on a certain day is 10,000, the total number of interactions of stock label E on the day is 5,000, and the high-frequency factor = 5,000 / 10,000 = 0.5; the total number of interactions of stock label A on the day is 800, and the high-frequency factor = 800 / 10,000 = 0.08.
[0074] Based on the high-frequency factor, the high-frequency items in the sub-sequence are removed. Set the first preset threshold (such as 0.3) and the second preset threshold (such as 0.15): if the high-frequency factor of a label > 0.3 and the difference between the high-frequency factor of the adjacent label in the sequence > 0.15, it is determined as a high-frequency item and removed. For example, user B's sub-sequence is [stock label E, stock label A, stock label F], where the high-frequency factor of stock label E is 0.5 (> 0.3), and the difference between the high-frequency factor of the adjacent stock label A is 0.08 = 0.5-0.08 = 0.42 (> 0.15), the server removes stock label E, and the sub-sequence is adjusted to [stock label A, stock label F].
[0075] The server constructs a transaction data set based on the sub-sequence after removing the high-frequency items, and mines the frequent item set and association rules through the FP tree. Each sub-sequence is regarded as a transaction, and all user sub-sequences constitute the transaction data set. Set the mining parameters: the minimum support is based on the total number of sequences (such as 100,000 total sequences, minimum support = 50 / 100,000 = 0.0005, i.e. the item set with an occurrence frequency ≥ 50 is the frequent item set), and the minimum confidence = 0.3 (rule reliability ≥ 30%). For example, the sub-sequence containing [stock label A, stock label C] in the transaction data set appears 60 times (support = 60 / 100,000 = 0.0006 > 0.0005), and the sub-sequence containing [stock label A] appears 200 times, the server mines the frequent item set {stock label A, stock label C} through the FP tree, and generates the association rule "stock label A→stock label C", whose confidence = 60 / 200 = 0.3 (≥ 0.3), which meets the rule condition.
[0076] Finally, the server predicts the labels of interest to the user using the association rules. For the target user, extract the label sequence of the recent interaction, match the mined association rules, and recommend the rule post-label. For example, user A's recent interaction sequence is [stock label A], the server matches the association rule "stock label A→stock label C" (confidence 0.3), and stock label C is predicted as the stock label of interest to user A, and is added to the target label candidate list.
[0077] Through the above process, the server effectively mines the potential association between the user interest labels, and improves the relevance and accuracy of the recommendation.
[0078] In the embodiment of the present application, the time series prediction model is an ARIMA model, which is used to solve the new user cold start problem. The prediction process of the ARIMA model can be implemented through the following example.
[0079] Based on the historical interaction data, the daily access sequence of each stock label or theme label in a preset time window is obtained;
[0080] The daily access sequence is subjected to stationarity test, and if it is not stationary, it is subjected to difference processing to make the sequence stationary, thereby obtaining the stationary daily access sequence;
[0081] Based on the autocorrelation function and the partial autocorrelation function of the stationary daily access sequence, the order parameter of the ARIMA model is determined;
[0082] Based on the determined order parameter and the stationary daily access sequence, the ARIMA model is trained, and the trained ARIMA model is used to predict the heat of each stock label or theme label in a future preset time period. The top N items in the heat ranking are taken as the hot labels, which are used as the target stock label or theme label of the new user.
[0083] In the embodiment of the present application, in the financial article recommendation method, the time series prediction model (ARIMA model) is mainly used to solve the new user cold start problem (when the new user has no historical interaction data). The initial recommendation is realized by predicting the hot label, and the server executes the following process:
[0084] The server first obtains the daily access sequence of each label in a preset time window based on the historical interaction data. The historical interaction data contains the past label interaction records (such as clicking and reading articles containing a certain label) of all users on the platform. The server selects a preset time window (such as the past 14 days), and counts the daily access of each stock label or theme label according to the natural day (the total number of interactions of all users with the label on the same day), thereby forming the daily access sequence. For example, for the stock label X, the server counts the daily access in the past 14 days (from YYYY-MM-DD to YYYY-MM-DD+13 days), thereby obtaining the sequence: [120, 150, 180, 220, 190, 250, 300, 280, 320, 350, 330, 380, 420, 400] (unit: times / day); for the theme label Y, the daily access sequence is [80, 95, 110, 105, 130, 150, 140, 160, 175, 190, 185, 210, 230, 220].
[0085] Next, the server performs stationarity test on the daily access sequence. If it is not stationary, it is processed by difference to make the sequence stationary. Stationarity is the core assumption of ARIMA model (the mean and variance of the sequence do not change over time). The server uses ADF (Augmented Dickey-Fuller) test: if the test p-value is greater than 0.05, the sequence is non-stationary and needs to be differentiated (usually first or second order difference). Taking the sequence of stock tag X as an example, the ADF test result p-value=0.32 (>0.05), which is determined as a non-stationary sequence; the server performs first-order difference (the access of the next day minus the access of the previous day) on it, and obtains the difference sequence: [30, 30, 40, -30, 60, 50, -20, 40, 30, -20, 50, 40, -20]. The ADF test is performed again on the difference sequence, and the p-value is 0.02 (<0.05), which is determined as a stationary sequence, i.e. the stationary daily access sequence is obtained.
[0086] Subsequently, the server determines the order parameters of the ARIMA model based on the autocorrelation function (ACF) and partial autocorrelation function (PACF) of the stationary sequence. The ARIMA model is represented as ARIMA(p, d, q), where d is the difference order (d=1 has been determined because the sequence is stationary after first-order difference), p is the autoregressive (AR) order (the lag order at which the PACF tails off), and q is the moving average (MA) order (the lag order at which the ACF tails off). The server draws the ACF and PACF plots of the stationary sequence: the PACF tails off significantly at lag 2 (the correlation coefficient falls within the confidence interval after lag 2), so p=2; the ACF tails off significantly at lag 1, so q=1. Therefore, the ARIMA model parameters of stock tag X are determined as ARIMA(2, 1, 1).
[0087] The server trains the ARIMA model based on the determined order parameters and the stationary sequence, predicts the tag popularity in the future preset time period, and takes the top N items as the popular tags. The server takes the stationary daily access sequence (such as the first-order difference sequence of stock tag X) as input, trains the model according to the ARIMA(2, 1, 1) parameters, and minimizes the prediction error (such as mean square error MSE). After training, the daily access (i.e. popularity) in the future preset time period (such as 1 day) is predicted, and the same process is performed for all stock tags and theme tags to obtain their predicted popularity values. For example, the server predicts that the next day's stock tag X popularity is 430 times, stock tag Z is 390 times, theme tag Y is 240 times, and theme tag W is 210 times; after sorting in descending order of popularity, the top N items (such as N=5) are taken as popular tags, and the target tag list of the new user is finally obtained: [stock tag X, stock tag Z, theme tag Y, theme tag W, stock tag M].
[0088] Through the above process, the server captures the time sequence trend of the label access volume by using the ARIMA model, provides popular label recommendation for new users without historical data, and effectively alleviates the cold start problem.
[0089] In the embodiment of the present application, the interest decay model dynamically adjusts the weight of the user's historical interaction behavior through the interest retention factor, and the processing flow of the interest decay model can be implemented through the following examples.
[0090] The historical interaction data is divided into multiple time windows according to dynamic time granularity, wherein the recent window adopts hour-level granularity, and the long-term window adopts day-level granularity;
[0091] Extract the stock label or theme label set of user interaction in each time window, and the stock label or theme label set of user interaction in the current time window;
[0092] Calculate the interest retention factor of each time window, which is the ratio of the number of intersection elements of the stock label or theme label set of the time window and the stock label or theme label set of the current time window to the total number of elements of the stock label or theme label set of the time window.
[0093] Based on the interest retention factor, the weight of the user's historical interaction behavior in the corresponding time window is weighted, so that the weight of the recent interaction behavior is higher than that of the long-term interaction behavior.
[0094] In the embodiment of the present application, in the example of the financial article recommendation method, the interest decay model dynamically adjusts the weight of the user's historical interaction behavior through the interest retention factor to capture the change of the user's interest over time, and the server executes the following process:
[0095] The server first divides the user historical interaction data into multiple time windows according to a dynamic time granularity, wherein the recent window adopts an hour-level granularity, and the long-term window adopts a day-level granularity. The historical interaction data contains the interaction records (such as clicking, reading, and collecting) of the user on the financial articles in the past 90 days and the corresponding stock / subject labels. The server traces back from the current time (such as YYYY-MM-DD 15:00) and divides the rules as follows: the last 24 hours are divided into 24 recent windows (such as (15:00, 14:00], (14:00, 13:00], …, (16:00, 15:00) the day before yesterday) at an hour per window; 24 hours to 90 days are divided into 89 long-term windows (such as (YYYY-MM-DD 15:00, YYYY-MM-DD-1 15:00], …, (YYYY-MM-DD-88 15:00, YYYY-MM-DD-89 15:00)) at a day per window. For example, the historical interaction data of user C covers the past 30 days, and the server divides 24 hour-level recent windows and 29 day-level long-term windows for it, a total of 53 time windows.
[0096] Then, the server extracts the label set of user interaction in each time window, and the label set in the current time window. The current time window is the last 1 hour-level window (such as (15:00, 14:00]), and the server traverses the user interaction records in the window to extract all stock labels and subject labels, and forms the current window label set after deduplication. For the historical time windows (the remaining 52 windows), the same operation is performed: traversing the interaction records in the window, extracting the labels and deduplicating, to obtain the label set of each historical window. For example, user C interacted with an article containing “stock label A” and “subject label B” in the current window (14:00-15:00), and the current window label set is {stock label A, subject label B}; in the recent window of 13:00-14:00, “stock label A”, “stock label C”, and “subject label B” are interacted with, and the window label set is {stock label A, stock label C, subject label B}; in the long-term window of 3 days ago (YYYY-MM-DD-31 15:00 to YYYY-MM-DD-21 15:00), “stock label D” and “subject label E” are interacted with, and the window label set is {stock label D, subject label E}.
[0097] Subsequently, the server calculates the interest retention factor of each time window, and the formula is "interest retention factor = the number of intersection elements of the historical window tag set and the current window tag set ÷ the total number of elements of the historical window tag set". The number of intersection elements is the number of tags commonly contained in the two sets, and the total number is the number of elements of the historical window set. For example, the recent window set {stock label A, stock label C, theme label B} of user C at 13:00-14:00 and the current window set {stock label A, theme label B} have an intersection {stock label A, theme label B}, the number of intersection elements is 2, the total number of historical windows is 3, so the window interest retention factor is 2 / 3≈0.67; the remote window set {stock label D, theme label E} three days ago and the current window set have no intersection (the number of intersection elements is 0), the interest retention factor is 0 / 2=0; and the recent window set {stock label A, theme label B} of 12:00-13:00 and the current window set are completely consistent, the number of intersection elements is 2, the total number is 2, and the interest retention factor is 1.0.
[0098] Finally, the server weights the historical interaction behavior of the user in the corresponding time window based on the interest retention factor, so that the weight of the recent interaction behavior is higher than that of the remote interaction behavior. The server sets a basic time decay weight for each time window (the basic weight of the recent window is higher than that of the remote, for example, the basic weight of the recent 1 hour window is 1.0, the previous 1-2 hours is 0.9, …, the previous 1 day is 0.5, the previous 2 days is 0.4, …, the previous 30 days is 0.1), and then the basic weight is multiplied by the interest retention factor to obtain the final interaction weight. For example, the basic time decay weight of user C's 13:00-14:00 window is 0.9, the interest retention factor is 0.67, and the final weight is 0.9*0.67≈0.60; the basic weight of the 12:00-13:00 window is 0.8, the interest retention factor is 1.0, and the final weight is 0.8*1.0=0.80; the basic weight of the window three days ago is 0.4, the interest retention factor is 0, and the final weight is 0.4*0=0. The interaction behavior (such as clicking, collecting) of the user in each window is calculated according to the final weight of the window to obtain the contribution value, for example, the clicking behavior weight of "stock label A" in the 12:00-13:00 window is 0.80, and the clicking behavior weight of "stock label D" three days ago is 0 and is not counted in the current interest calculation.
[0099] Through the above process, the server dynamically adjusts the weight of the user's historical interaction, retains the influence of the remote behavior related to the current interest, highlights the leading role of the recent behavior, and makes the interest calculation more consistent with the user's real-time preference.
[0100] In the embodiment of the application, the deep learning model is a deep interest network, and the processing flow of the deep interest network can be implemented through the following examples.
[0101] obtain a user attribute feature, a behavior type sequence feature and a self-selected label feature, the user attribute feature is extracted based on the user attribute data, the behavior type sequence feature is extracted based on the historical interaction data, and the self-selected label feature is obtained through multi-hot encoding processing based on the user self-selected stock list and the self-selected theme list;
[0102] input the user attribute feature, the behavior type sequence feature and the self-selected label feature into a deep interest network;
[0103] generate a user dynamic interest feature vector by dynamically weighting the behavior type sequence feature through the deep interest network by using an attention mechanism, so as to capture the interest change of the user at different time points;
[0104] output the interest probability of the user to each stock label or theme label based on the user dynamic interest feature vector through the deep interest network, and take the top M items in the interest probability ranking as the recommended label.
[0105] In the embodiment of the application, in the financial article recommendation method, a deep learning model (deep interest network, DIN) is used to capture the dynamic interest change of the user, and the server performs the following process:
[0106] The server first obtains a user attribute feature, a behavior type sequence feature and a self-selected label feature. The user attribute feature is extracted based on the user attribute data: the user attribute data includes the affiliated organization, the occupation type, the transaction role and the like, and the server converts them into structured features. For example, the attribute data of user Ding is “a certain asset management company”, “investment manager” and “buyer”, and the server converts the organization into a vector of 100 dimensions (corresponding to 100 types of financial institutions, “a certain asset management company” corresponds to the position 1, and the rest are 0) through one-hot encoding, converts the occupation type into a vector of 50 dimensions (“investment manager” corresponds to the position 1), and converts the transaction role into a vector of 2 dimensions (“buyer” corresponds to the position 1). The three are spliced into a user attribute feature vector with a length of 152.
[0107] The behavior type sequence feature is extracted based on historical interaction data: the historical interaction data contains the interaction behaviors (reading, clicking, collecting, etc.) and timestamps of the user in the past 30 days, the server arranges the timestamps in ascending order, extracts the behavior types and corresponding labels, and forms a behavior type sequence. For example, the interaction record of user Ding is: YYYY-MM-DD 09:30 click the article of stock label A, 10:15 read the article of theme label B, 14:20 collect the article of stock label C,..., YYYY-MM-DD+29 16:45 read the article of stock label A, the server converts it into a behavior type sequence: [(click, stock label A, 09:30), (read, theme label B, 10:15), (collect, stock label C, 14:20),..., (read, stock label A, 16:45)], and the behavior types (click / read / collect, etc.) and labels are converted into fixed-dimension (such as 64-dimension) vectors through an embedding layer, and are spliced into a behavior type sequence feature matrix with a length of 30x64 (assuming 30 interactions).
[0108] The self-selected label feature is obtained through multi-hot encoding processing based on the user's self-selected stock list and self-selected theme list: the user's self-selected list contains multiple labels, the server generates a full set of labels according to a preset label system (such as 10,000 stock labels and 1,000 theme labels), assigns a value of 1 to the corresponding position of the self-selected label, and 0 to the rest. For example, user Ding's self-selected stock list is {stock label A, stock label C}, and the self-selected theme list is {theme label B}, the server generates a stock label multi-hot vector (length 10,000, stock labels A and C corresponding positions are 1) and a theme label multi-hot vector (length 1,000, theme label B corresponding position is 1), and splices them into a self-selected label feature vector with a length of 11,000.
[0109] Then, the server inputs the user attribute feature (152 dimensions), the behavior type sequence feature (30x64 dimensions), and the self-selected label feature (11,000 dimensions) into the deep interest network. The DIN model contains embedding layers, attention layers, fully connected layers, etc. First, the high-dimensional sparse features (such as self-selected label features) are converted into low-dimensional dense vectors through embedding layers, and are fused with user attribute features and behavior type sequence features.
[0110] The attention mechanism is adopted by the deep interest network to dynamically weight the behavior type sequence features, and generate a user dynamic interest feature vector. The attention mechanism assigns dynamic weights to different behaviors in the sequence according to the relevance of the current recommendation scene (such as the recommended label) and the historical behaviors: the behaviors with high relevance to the current interest have higher weights, and vice versa. For example, the current recommended label of user Ding contains a "stock label A", the attention mechanism calculates the relevance of each behavior in the sequence to "stock label A": the behavior of reading "stock label A" last time (YYYY-MM-DD+2916:45) has the highest relevance, with a weight of 0.8; the behavior of collecting "stock label C" (which belongs to the same new energy industry chain as stock label A) has the second highest relevance, with a weight of 0.3; the behavior of reading "theme label B" (which is irrelevant to stock label A) has the lowest relevance, with a weight of 0.1. The server sums up the behavior vectors according to the weights to generate a user dynamic interest feature vector with a dimension of 64, which reflects the user's current interest in the new energy industry chain.
[0111] Finally, based on the user dynamic interest feature vector, the deep interest network outputs the user's interest probability for each label, and takes the top M items as the recommended labels. The server concatenates the dynamic interest feature vector with the user attribute features and the selected label features, inputs them into the full connection layer and the softmax function, and outputs the user's interest probability for all stock labels and theme labels (the sum is 1). For example, in the interest probability distribution of user Ding, stock label A is 0.92, stock label C is 0.85, theme label B is 0.78, stock label D is 0.21,..., the server sorts the probabilities in descending order and takes the top M items (such as M=10) as the recommended labels, obtaining the list: [stock label A, stock label C, theme label B,...].
[0112] Through the above process, the deep interest network dynamically captures the user's interest changes at different time points, making the recommended labels more consistent with the user's real-time preferences.
[0113] In the embodiment of the application, the plurality of prediction models are used to process the interaction features, and the output results of each model are fused to predict target stock labels and theme labels that are interested by the user. The implementation can be performed through the following examples.
[0114] The accuracy of each model is determined based on the association rule mining model, the time series prediction model, the interest decay model, the deep learning model and the user selected label model, and the accuracy is the ratio of the number of correctly predicted labels to the total number of predicted labels.
[0115] The stock labels and theme labels predicted by each model are weighted and fused to obtain the target stock labels and theme labels.
[0116] In the embodiment of the present application, in the financial article recommendation method, the server cooperatively processes the interaction features by using multiple prediction models, and outputs the target label by weighted fusion. The specific process is as follows:
[0117] The server first determines the weight based on the historical accuracy of each model. The accuracy is defined as the ratio of the number of labels correctly predicted by the model to the total number of predicted labels. The server needs to count the prediction performance of each model in the past 14 days: for each model, record the prediction label list (such as stock label Top20, theme label Top20) output by it every day, and compare it with the actual interaction label of the user on that day (extracted from historical interaction data), count the number of correctly predicted labels (the number of prediction labels appearing in the actual interaction label of the user), and then divide by the total number of predicted labels (such as 40 per day), to get the accuracy on that day, and take the average of 14 days as the final accuracy of the model. For example, the association rule mining model (FP-Growth) predicts 560 labels (40 per day x 14 days) in 14 days, 476 of which are actually interacted by the user, the accuracy = 476 / 560 = 0.85; the time series prediction model (ARIMA) predicts 560 labels, 364 of which are interacted, the accuracy = 364 / 560 = 0.65; the interest decay model predicts 560 labels, 336 of which are interacted, the accuracy = 336 / 560 = 0.60; the deep learning model (DIN) predicts 560 labels, 420 of which are interacted, the accuracy = 420 / 560 = 0.75; the user-selected label model directly uses the labels manually added by the user, and predicts 560 labels in 14 days, 437 of which are interacted, the accuracy = 437 / 560 = 0.78. The server normalizes the accuracy of each model (weight = model accuracy / sum of all model accuracies), and calculates the weights as follows: FP-Growth (0.85 / 3.63≈0.234), ARIMA (0.65 / 3.63≈0.179), interest decay model (0.60 / 3.63≈0.165), DIN (0.75 / 3.63≈0.207), and user-selected model (0.78 / 3.63≈0.215).
[0118] Subsequently, the server uses the weight to perform weighted fusion and ranking on the prediction results output by each model. Each model outputs a prediction list of stock labels and theme labels for the target user. The server assigns a "model internal ranking score" (assigned according to the prediction priority, such as Top1 = 10 points, Top2 = 9 points, …, Top10 = 1 point, and labels not in the Top10 are counted as 0 points) to each label, and then multiplies it by the model weight to get a "weighted score". The weighted scores of the same label in different models are added to get a "total score". After sorting in descending order of total score and removing duplicates, the target label is obtained. Taking the stock label prediction of user Wu as an example:
[0119] The FP-Growth model outputs Top3 labels: stock label A (confidence 0.9, ranking score 10), stock label B (confidence 0.8, ranking score 9), and stock label C (confidence 0.7, ranking score 8), with weighted scores of 10 x 0.234 = 2.34, 9 x 0.234 = 2.11, and 8 x 0.234 = 1.87, respectively.
[0120] The ARIMA model outputs Top3 popular labels: stock label D (popularity 0.9, ranking score 10), stock label E (popularity 0.8, ranking score 9), and stock label A (popularity 0.7, ranking score 8), with weighted scores of 10 x 0.179 = 1.79, 9 x 0.179 = 1.61, and 8 x 0.179 = 1.43, respectively.
[0121] The interest decay model outputs Top3 labels: stock label B (interest weight 0.8, ranking score 10), stock label C (interest weight 0.7, ranking score 9), and stock label F (interest weight 0.6, ranking score 8), with weighted scores of 10 x 0.165 = 1.65, 9 x 0.165 = 1.49, and 8 x 0.165 = 1.32, respectively.
[0122] The DIN model outputs Top3 labels: stock label A (interest probability 0.92, ranking score 10), stock label C (interest probability 0.85, ranking score 9), and stock label B (interest probability 0.78, ranking score 8), with weighted scores of 10 x 0.207 = 2.07, 9 x 0.207 = 1.86, and 8 x 0.207 = 1.66, respectively.
[0123] The user-selected model outputs Top3 labels: stock label A (self-selected ranking 1, ranking score 10), stock label B (self-selected ranking 2, ranking score 9), and stock label G (self-selected ranking 3, ranking score 8), with weighted scores of 10 x 0.215 = 2.15, 9 x 0.215 = 1.94, and 8 x 0.215 = 1.72, respectively.
[0124] The server accumulates the total scores of each label: stock label A (2.34 + 1.43 + 2.07 + 2.15 = 7.99), stock label B (2.11 + 1.65 + 1.66 + 1.94 = 7.36), stock label C (1.87 + 1.49 + 1.86 = 5.22), stock label D (1.79), stock label E (1.61), stock label F (1.32), and stock label G (1.72). After sorting in descending order of total score and removing duplicates, the target stock label list for user E is obtained as [stock label A, stock label B, stock label C, stock label G, stock label D].
[0125] The fusion process of the theme label is consistent with the stock label, and the server finally outputs the fused target stock label and target theme label, thereby providing a basis for subsequent article matching. By weighting the advantages of each model, the recommendation result takes into account the user's historical association, real-time hot spot, interest decay trend and explicit preference, thereby improving the accuracy and comprehensiveness of the label prediction.
[0126] In the embodiments of the present application, after the user personalized financial article recommendation list is generated and output, the embodiments of the present application further provide the following implementation.
[0127] The financial article recommendation list is refreshed according to a preset time interval in combination with the length of the financial article and the user reading speed.
[0128] In the embodiments of the present application, for example, after the user personalized financial article recommendation list is generated and output, the server automatically refreshes the recommendation list according to a preset time interval in combination with the length of the financial article and the user reading speed, and the specific process is as follows:
[0129] The server first reads the length attribute (such as the "WORD_COUNT" field, in words) of each article in the current recommendation list from the financial article content library, and accumulates to obtain the total length of the list. For example, the current recommendation list of the user contains 5 articles with lengths of 1200 words, 1500 words, 800 words, 2000 words and 1000 words, and the total length is 1200+1500+800+2000+1000=6500 words.
[0130] Next, the server obtains the average reading speed of the user. The user reading speed is based on the historical reading behavior data statistics: the server extracts the reading records of the user in the past 30 days, calculates the reading duration of each article (the time difference from clicking the article to closing the page, filtering invalid reading shorter than 30 seconds), and then divides the article length by the reading duration to obtain the single reading speed, and takes the average value of 30 days as the current reading speed of the user. For example, the user has effectively read 20 articles in the past 30 days, with a total reading duration of 120 minutes (7200 seconds) and a total reading word count of 144000 words, and the average reading speed is 144000 words / 7200 seconds=20 words / second (i.e. 1200 words / minute).
[0131] The server estimates the total reading time of the list according to the total length and the reading speed, and the formula is "total reading time=total length÷reading speed". The total reading time of the user is 6500 words÷1200 words / minute≈5.42 minutes (about 325 seconds).
[0132] The server determines the refresh interval based on a pre-set rule: typically 1.5-2 times the total reading time, ensuring that users have ample time to read the current list before accessing new content. For example, if the user's total reading time is 5.42 minutes, the refresh interval is 2 times the total reading time, resulting in a refresh interval of 5.42 × 2, which is approximately 10.84 minutes. The server rounds this down to 10 minutes.
[0133] Finally, the server starts a scheduled task that automatically triggers a refresh 10 minutes after the current recommendation list is output: the target label prediction process is re-called to obtain the latest target stock label and theme label, the latest published articles are matched from the content library (excluding recommended articles), and a new recommendation list is generated after deduplication in reverse order of publication time. The update is pushed through the client interface so that the article list displayed in the user interface is updated with the latest content in real time.
[0134] Through the above process, the server dynamically adapts to the user's reading rhythm and adds new articles in time when the user is likely to complete reading the current list, thereby improving the timeliness of recommendations and the user's continuous reading experience.
[0135] In order to more clearly describe the solution provided by the embodiment of the present invention, a relatively complete implementation method is provided below. Figure 2 , Figure 2 A schematic diagram of the overall process framework provided by an embodiment of the present invention.
[0136] In an embodiment of the present invention, the content library includes: minutes, research reports, announcements, comments, news information and other types, and each article stores attributes such as article ID, article stock list, article subject list, etc.
[0137] The following is an example of a minutes article:
[0138] {
[0139] "UNION_ID":"TRANS00000000016936",
[0140] "TITLE":"Create2021A Company AI Developer Conference-XiaoX Smart Life Forum",
[0141] "TYPE":"TRANSCRIPT",
[0142] "SHOW_TITLE":"Create2021A Company AI Developer Conference-XiaoX Smart Life Forum",
[0143] "SEC_JSON":"[{\"code\":\"A'公司.US\",\"name\":\"A公司\"}]",
[0144] "IND_JSON":"[{\"code\":\"HINDUSTRY00000001003\",\"name\":\"Media\"}]",
[0145] "TPC_JSON":"[{\"code\":\"00000000602\",\"name\":\"Smart Home\"},{\"code\":\"00000000405\",\"name\":\"Smart Speaker\"}]",
[0146] "CONTENT":"roadshow\ / html\ / 2021\ / 12\ / 29\ / Create2021A Company AI Developer Conference - XiaoX Smart Life Forum 20211229____Deep Research Value Investment Meeting Minutes Research Report____zsxq.html",
[0147] "WORD_COUNT":1930,
[0148] "PUBLISH_DATE":"2021-12-2900:00:00",
[0149] "IS_DELETED":0,
[0150] "HUPDATETIME":"2023-12-1411:26:18"
[0151] }
[0152] SEC_JSON is the list of stocks to which this article belongs, IND_JSON is the list of industries, and TPC_JSON is the list of themes.
[0153] The user information table contains attributes such as user ID, user organization, user occupation, user role (buyer, seller), list of selected stocks, list of selected topics, etc.
[0154] User example:
[0155] {
[0156] "USER_ID":"-3038469999265093123",
[0157] "USER_PHONE":"12345678910",
[0158] "USER_NAME":"Zhang San",
[0159] "USER_INSTITUTION":"bFund Institution",
[0160] "USER_ROLE": "Fund Manager",
[0161] "USER_TYPE":"Buyer",
[0162] "FAV_SEC":"[{\"code\":\"A'公司.US\",\"name\":\"A公司\"}]","[{\"code\":\"A'公司.US\",\"name\":\"A公司\"}]",
[0163] "FAV_TPC":"[{\"code\":\"00000000602\",\"name\":\"Smart Home\"},{\"code\":\"00000000405\",\"name\":\"Smart Speaker\"}]"
[0164] }
[0165] The user behavior table contains attributes such as behavior ID, behavior user ID, article ID corresponding to the behavior, user behavior category EVENT_NAME (including 9 categories: reading, searching, playing, Q&A, downloading, uploading, forwarding, collecting, and following), and behavior occurrence time DT.
[0166] {
[0167] "ALPHAPIE_USER_BEHAVIOR":[
[0168] {
[0169] "HUID":3965912,
[0170] "DT":"2025-01-09",
[0171] "DATA_SOURCE":"Web",
[0172] "EVENT_TIME":"2023-01-0923:07:41.686",
[0173] "USER_ID":"-3038469999265093123",
[0174] "ITEM_ID":"TRANS00000000106223",
[0175] "EVENT_NAME":"Reading",
[0176] "ITEM_GROUP":"Minutes",
[0177] "ITEM_TITLE":"W Company",
[0178] "ITEM_STOCK":"[{\"code\":\"SEC000110962\",\"name\":\"W Company\"}]",
[0179] "ITEM_TOPIC":null,
[0180] "ITEM_INDUSTRY":"Electrical Equipment",
[0181] "ITEM_DESCRIPTION":null,
[0182] "ITEM_SOURCE":"Securities Company A",
[0183] "USER_STATUS": "Professional Edition"
[0184] "HCREATETIME":"2024-03-2819:21:15",
[0185] "HUPDATETIME":"2024-04-2615:39:06"
[0186] }
[0187] ]}
[0188] Stocks include A shares, H shares, and US stocks, totaling 16,611 stocks. The stock code, stock name, and abbreviation of each stock are stored, for example: ('600xxx', 'CSNAME': 'V Company').
[0189] Topics refer to the subject matter and main discussion topics of articles, such as 'multimodality', 'industrial internet', 'blockchain', 'carbon neutrality', 'cathode materials', and 'auto parts and accessories', totaling 799 topics. Articles are tagged with multiple categories based on their content.
[0190] Design, training, and evaluation of each model:
[0191] Taking stocks as an example, the following describes the specific details of each model. The same applies to the training of theme models.
[0192] FPGrowth (FrequentPatternGrowth):
[0193] Based on user historical behavior data, potential association rules between stocks are mined, and frequent itemsets of stocks are mined.
[0194] Given a set of transactions, FPGrowth can build a compact data structure called "FP-tree" by scanning the database twice, which avoids the generation of a large number of candidate item sets compared to the Apriori algorithm that usually needs to scan the entire database multiple times to find frequent item sets. FP-tree is an extremely efficient data structure that not only reduces the memory requirements of the algorithm, but also greatly improves the execution speed.
[0195] A transaction database is established for the user's historical stock browsing sequence to mine association rules.
[0196] Processing of stock sequence:
[0197] The length of the stock sequence affects the depth of the FP-tree, and thus the complexity of program execution. Therefore, we divide the stock sequence of each user into multiple sequences based on the principle that the maximum length is 7 and the interaction record interval between adjacent stocks is less than 3 days.
[0198] Ensure that the two consecutive elements in the sequence are not repeated and the same.
[0199] Calculate the "hot search" stock list for each day, eliminate high-frequency stocks in the user's stock sequence, and eliminate high-frequency noise from the sequence to avoid the interference of high-frequency stocks each day, which is conducive to mining potential stocks.
[0200] High-frequency stock calculation:
[0201] We define a stock high-frequency factor and sort the stocks from large to small according to this indicator. According to the test results of the actual production environment, if the value is > 0.5 and the difference between the factor value of this stock and the immediately adjacent stock below it is > 0.2, it is considered a high-frequency stock.
[0202] ;
[0203] User stock interaction sequence example:
[0204] ['B company', 'C company', 'D company', 'E company', 'F company', 'G company', 'H company', 'I company']
[0205] ['X company', 'Y company', 'Z company', 'DD company', 'AA company']
[0206] ['BB company', 'CC company', 'BB company', 'CC company', 'BB company']
[0207] According to the application scenario, a unified evaluation index is defined to evaluate the performance of the model:
[0208] ;
[0209] ;
[0210] ;
[0211] coverage: ensure that the model can predict stocks for as many users as possible. precision: ensure that the model's prediction accuracy is as high as possible. Among them, coverage and precision are inversely proportional. To comprehensively consider the performance of the model in both aspects, set the comprehensive score Eval_score. Eval_score: hope that Precision is slightly larger than coverage, but to ensure that coverage is as high as possible, that is, to predict stocks for as many users as possible, so set the second penalty factor. According to the above sequence processing method, the total number of stock sequences from January to April is 5w, and the average sequence length is 5.03;
[0212] The stock sequence is divided into training set, validation set and test set according to the ratio of 4:1:1, and the performance of the model on the validation set is used as the final performance of the model. Screen the optimal parameters of the model, and the performance of the model corresponding to the optimal parameters on the test set is used as the final performance of the model, which is used for weight distribution of the subsequent mixed model.
[0213] Antecedent (antecedent): set, representing the item set of the hypothesis part of the association rule. Consequent (consequent): an element representing the conclusion part of the association rule. minSupport: the minimum support for identifying frequent item sets. For example, if an item appears 3 times in 5 transactions, its support is 3 / 5=0.6. minConfidence: the minimum confidence for generating association rules. Confidence represents the frequency of association rules being proven true. For example, if item set X appears 4 times and XY appears 2 times, the confidence of X=>Y is 2 / 4=0.5. This parameter does not affect the mining of frequent item sets, but specifies the minimum confidence for generating association rules from frequent item sets. lift (lift): measures the predictive ability of the antecedent to the consequent, and the calculation formula is support (antecedent∪consequent) / (support (antecedent) x support (consequent)). In this experiment, minSupport=10 / total number of stock sequences, and confidence=0.25. Please refer to Table 1. In the embodiment of the present application, the number of association rules is 2w.
[0214] Table 1
[0215] antecedent consequent confidence lift support {'J company','K company'} L company 0.2 24.15 0.00013 {'F company'} M company 0.2 62.18 0.00016 {'N company'} O company 0.2 458.91 0.00016
[0216] Prediction, take the current user sequence time of the latest 5 stocks as a stock sequence, and perform Antecedent rule matching. If the matching is successful, select the stock with the highest confidence as the recommended stock according to the Consequent stock in the rule. Take 14 days as a cycle to train and update the association rules, and recommend stocks to users in the next 14 days.
[0217] Hot search model based on Arima:
[0218] ARIMA (Autoregressive Integrated Moving Average) is used for non-stationary time series prediction. Through difference, the sequence is stationary, and the trend and seasonality are eliminated, and then combined with autoregressive (AR) and moving average (MA) modeling. Input: 14-day daily frequency of each stock's access volume (from user behavior table statistics) Example time series: P company: [2025-01-01: 600 times, 2025-01-02: 1200 times,..., 2025-01-14: 1500 times]; Stationarity test: ADF test (if the p-value > 0.05, difference is needed).
[0219] Model training: parameter selection: determine p, q values through ACF / PACF graph (such as ARIMA(2,1,1)); training target: predict the heat (access volume) of the stock in the future 1 day; P company 2025-01-15: 1600 times; Sort the predicted heat of all stocks on 2025-01-15 in reverse order, and take the top 5 as the hot stocks of the day. For example: ['Q company', 'P company', 'R company', 'S company', 'T company'].
[0220] Evaluation method: ; .
[0221] Memory model based on stock interest time decay:
[0222] According to the user's historical stock interaction sequence, recommend the stocks that the user has seen. This model introduces an interest retention factor to weight the user's historical behavior data to reflect the timeliness of user interest. Specifically, the core idea of this method is that the user's interest in stocks will gradually weaken over time, so newer interaction behaviors should have a greater impact on the recommendation results than older interaction behaviors. The higher the interest retention factor of the newer stock, the higher the interest retention factor decays over time.
[0223] Interest retention factor (a): used to measure the decay speed of user interest over time. This factor determines the degree of influence of the user's past behavior on the current interest. If the user's interest changes quickly, the value of the interest retention factor will be lower, thereby reducing the weight of old data. According to the experiment, the interest decay factor of the user will increase with the increase of the historical time from the current time, that is, the similarity of the currently browsed stock and the stock browsed yesterday is higher than the similarity of the currently browsed stock and the stock browsed the day before yesterday. That is, the interest retention factor of the first i day before the current time is higher than the interest retention factor of the first i+1 day before the current time.
[0224] For the current time window cur, the interest retention factor of the first i time window of the user user is calculated as follows: The interest retention factor of the model in the first i time window of the current time window cur is the average of all users .
[0225] Record the current time as 2025-01-1512:00, take the stock interaction record of the user for 7 days forward, form a stock sequence, respectively set day and hour as time unit, and the time window is:
[0226] (2025-01-1512:00,2025-01-1511:00],(2025-01-1511:00,2025-01-1510:00],(2025-01-1510:00,2025-01-1412:00],(2025-01-1412:00,2025-01-1312:00],(2025-01-1312:00,2025-01-1212:00],(2025-01-1212:00,2025-01-1112:00],(2025-01-1112:00,2025-01-1012:00],(2025-01-1012:00,2025-01-0912:00],(2025-01-0912:00,2025-01-0812:00].
[0227] Calculate the interest retention factor of each window, sample the stocks in each window, and get the recommended stocks of each user by taking the interest retention factor of each window as the sampling probability.
[0228] Evaluation index: ; Update the stock recommendation data of the memory model at an interval of 1 hour.
[0229] Self-selected stock model:
[0230] Each user saves a self-selected stock list of interest, arranged from late to early according to the stock collection time, and the top 20 is taken as the stock list recommended by the model.
[0231] Evaluation index: ; .
[0232] DIN (Deep Interest Network):
[0233] The DIN model is a deep learning model that dynamically captures the interest changes of users at different time points through an attention mechanism to predict the probability that a user is interested in a certain stock. Unlike the aforementioned machine learning model, the DIN model models the user's interest from a rich dimension.
[0234] Input: user's organization, user's position, user's category (seller, buyer): whether the user participates in the transaction as a seller or a buyer. Average number of interactions per week: the average number of interactions per week of the user with the system. Self-selected stock: The user selects a list of stocks to follow. The self-selected stock adopts a multi-hot encoding method to obtain an embedding of all self-selected stocks of a user, and then performs dimension reduction in a pooling manner. Sequence of individual stocks associated with articles clicked by the user: sequence of individual stocks associated with articles clicked by the user. Industry sequence associated with articles clicked by the user: industry sequence associated with articles clicked by the user. Theme sequence associated with articles clicked by the user: theme sequence associated with articles clicked by the user. Here, pre-trained Embedding + dimension reduction is used for initialization. Sequence of groups where the articles clicked by the user are located: sequence of groups where the articles clicked by the user are located, covering notes, reviews, individual stock homepages, etc. Sequence of categories corresponding to user behavior: sequence of categories corresponding to user behavior, covering search, reading, playing, etc. Single individual stock corresponding to recommended articles: single individual stock corresponding to recommended articles, and candidate individual stocks to be recommended to the user.
[0235] Output: a value between 0 and 1, representing the probability of the user clicking on a certain stock (or recommended item), reflecting the user's interest in the stock. For each user, arrange all stock interest scores in descending order, and take the top 50 as the stocks recommended to the user. ; .
[0236] In the present application, in addition to the DIN model representing the user behavior types (reading, playing, etc.), all other models do not consider the weight of user behavior types.
[0237] Theme label multi-classification model training:
[0238] Model selection and fine-tuning:
[0239] Base model: A company UTC-roberta-base (fast classification speed, light weight suitable for large-scale reasoning);
[0240] Fine-tuning corpus: nearly three years of financial industry articles 1200000+ articles: research reports, quarterly reports, quick reviews, in-depth reviews, etc.
[0241] Label system: U company v2021, 28 categories at the first level, 104 categories at the second level, and more than 500 categories at the third level.
[0242] The present application takes UTC-roberta-base as the technical base: the model can reach more than 100 inferences per second on a single card while maintaining a lightweight parameter size, which is very suitable for the landing environment of the company's million-level documents. In the fine-tuning stage, the present application collects nearly three years of public and internal financial industry articles - including research reports, quarterly reviews and strategy briefs, totaling about 1.2 million articles, and completes the label mapping of the first 28 categories, the second 104 categories, and the third more than 500 categories according to the U company 2021 version standard. In the face of the serious long-tail problem of financial sub-industries, the present application first performs distribution statistics on the training samples and finds that the sample size of cold secondary industries such as environmental engineering services and airport transportation is less than three. To avoid underfitting of the model in these categories, the present application uses the industry name as the keyword to search related titles in the internal Elasticsearch cluster, and selects the top three articles with the highest content relevance as supplementary samples. After this expansion operation, the sample variance between industries is reduced from 6700 to 2400, and the long-tail effect is significantly alleviated.
[0243] Sample imbalance processing:
[0244] Statistical results show that the number of articles in cold secondary industries such as environmental engineering services and airport transportation is less than 3. Expansion strategy: use the industry name as the keyword to search for title matching documents in the internal ES, and select the top 3 articles according to relevance. Effect: The sample variance between categories is reduced from σ² = 6700 to σ² = 2400, significantly alleviating the long tail. Garbage sample filtering rules. 1. The number of words in the article is less than 500: delete. 2. The OCR noise rate is higher than 20%: delete. 3. The repetition rate with the existing articles in the library is higher than 95%: delete. 4. After filtering, there are 873,000 valid labeled samples left. Call multiple preset large models to generate labels for each article.
[0245] Use simple keyword rules as the 9th "vote" to participate in voting. If 5 or more votes are unanimous, the label is written into the Ground-Truth.
[0246] The application designs a Voting-based model fusion method to generate Groundtruth samples, and designs a scientific prompt word structure TASK / ROLE / CONDITION / I-O / BACKGROUND to clarify the input and output formats. As follows, a consistent vote is obtained in 9 voting nodes: "Photovoltaic inverter domestic and foreign market share promotion-inverter leader depth report" → first level: power equipment | second level: power automation equipment.
[0247] In the online stage, the application divides the data into two paths of 'historical batch' and'real-time increment'. The historical data covers about ten million documents from 2012 to 2022, and the classification is completed by the fine-tuned UTC model alone. The actual measurement of one hundred labels only takes one second to process. In the real-time update link, considering that the industry division of the latest literature often accompanies new concepts and cross topics, the application first uses UTC to give the top five candidate labels for each article, and then calls the DeepSeek model to reorder the five candidates and output the item with the highest confidence. UTC is responsible for efficient recall, and DeepSeek is used for fine correction. The combination of the two improves the overall F1 score by about 7.8% compared to the UTC single model.
[0248] According to the five-fold cross-validation results, the macro F1 of the twenty-eight classifications of the first-level industry reaches 97%, and the macro F1 of the one hundred and four classifications of the second-level industry reaches 92%. The errors are mainly concentrated in the three adjacent industries of electronics, communication and power equipment, but even in these difficult categories, the accuracy of the large category still maintains above 95%.
[0249] Multi-model aggregation sorting strategy:
[0250] Use precision to measure the performance of each model.
[0251] The recommended number of stocks for each model and the update frequency are as follows: FPGrowth: (0, 1], updated once a month on the 1st and 15th; Hot search model: 5, updated once a day at 0:00; Self-selected stock model: (0, 20], updated once a day at 0:00; Memory model: (0, 10], updated every 2 hours starting from 0:00 every day; DIN: (0, 50], updated once a day at 0:00. According to the experimental results > > > > The stock lists generated by all recommended models are sorted and de-duplicated according to the accuracy of the models. Then, the articles corresponding to the stocks are extracted from the database. If a stock corresponds to multiple articles, the articles are sorted from late to early according to the publication time and the duplicates are removed, and finally the recommended article list is generated. The processing method of theme recommendation is the same as that of stock recommendation. For the fusion of theme and stock recommendation results, the theme and stock models are fused and sorted according to the accuracy (Precision), and then the corresponding stock and theme articles are extracted from the database and gradually added to the recommended article list to ensure that the recommended articles are not duplicated. Since the stock and theme prediction modules are serial with the article recommendation, in the case of given stock and theme recommendation list, the article update frequency is 10 minutes. According to the strategy of the system, for new users, the popular stock recommended articles predicted by ARIMA are used first to avoid the problem of user cold start. Through A / B testing, the click rate of the system is increased from 16% to 23%, an increase of 43%.
[0252] Please participate Figure 3 , Figure 3 A financial article recommendation device 110 provided by an embodiment of the application comprises:
[0253] The acquisition module 1101 is configured to construct a financial article content library, wherein the financial article content library stores financial articles and corresponding stock labels and theme labels, the stock labels and the theme labels are obtained by classifying article content, the article dimension is compressed to a preset attribute dimension composed of the stock labels and the theme labels, and the total number of the preset attribute dimension is determined by a label classification system; user attribute data and historical interaction data of a user and financial articles in the financial article content library are acquired, the user attribute data includes a user-selected stock list and a user-selected theme list, the historical interaction data includes interaction behaviors of the user on the financial articles and corresponding article identifiers and timestamps; based on the user attribute data and the historical interaction data, interaction features of the user and the stock labels and interaction features of the user and the theme labels are constructed respectively, and the interaction features are used to reflect the association relationship and interest degree of the user on each stock label and theme label;
[0254] The recommendation module 1102 is configured to process the interaction features by using a plurality of prediction models, and fuse the output results of the models to predict target stock labels and target theme labels interested by the user, wherein the plurality of prediction models at least include an association rule mining model, a time series prediction model, an interest decay model, a deep learning model and a user-selected label model; based on the target stock labels and the target theme labels predicted, corresponding financial articles are matched from the financial article content library, and the matched financial articles are de-duplicated in descending order of publication time to generate and output a user personalized financial article recommendation list.
[0255] It should be noted that the implementation principle of the aforementioned financial article recommendation device 110 can refer to the implementation principle of the aforementioned financial article recommendation method, which will not be described here. It should be understood that the division of each module of the above device is only a logical division of functions, and all or part of the actual implementation can be integrated into one physical entity, or can be physically separated. And these modules can all be implemented in the form of software called by the processing element; all can be implemented in the form of hardware; some modules can be implemented in the form of software called by the processing element, and some modules can be implemented in the form of hardware. For example, the financial article recommendation device 110 can be a separately established processing element, or can be integrated into a chip of the above device, in addition, it can also be stored in the form of program code in the memory of the above device, and the function of the above financial article recommendation device 110 is called and executed by a processing element of the above device. The implementation of other modules is similar. In addition, all or part of these modules can be integrated together, or can be independently implemented. The processing element described here can be an integrated circuit with signal processing capability. In the implementation process, each step of the above method or each module can be completed by the integrated logic circuit of the hardware in the processor element or the instruction in the form of software.
[0256] For example, the above modules can be one or more integrated circuits configured to implement the above method, such as one or more application specific integrated circuits (ASICs), or one or more digital signal processors (DSPs), or one or more field programmable gate arrays (FPGAs), etc. For another example, when a certain module above is implemented in the form of program code called by a processing element, the processing element can be a general-purpose processor, such as a central processing unit (CPU) or other processor that can call program code. For another example, these modules can be integrated together to implement in the form of system-on-a-chip (SOC).
[0257] The embodiment of the present application provides a computer device 100, which comprises a processor and a non-volatile memory storing computer instructions, and when the computer instructions are executed by the processor, the computer device 100 executes the aforementioned financial article recommendation device 110. As shown in the figure, Figure 4 Figure 4 A structural block diagram of a computer device 100 is provided for an embodiment of the present application. The computer device 100 comprises a financial article recommendation apparatus 110, a memory 111, a processor 112, and a communication unit 113.
[0258] To realize the transmission or interaction of data, the memory 111, the processor 112, and the communication unit 113 are electrically connected with each other directly or indirectly. For example, the electrical connection between these elements can be realized by one or more communication buses or signal lines. The financial article recommendation apparatus 110 comprises at least one software function module which can be stored in the memory 111 in the form of software or firmware or solidified in the operating system (OS) of the computer device 100. The processor 112 is used to execute the financial article recommendation apparatus 110 stored in the memory 111, such as the software function module and the computer program comprised by the financial article recommendation apparatus 110, etc.
[0259] An embodiment of the present application provides a readable storage medium, which comprises a computer program. When the computer program is run, it controls the computer device where the readable storage medium is located to execute the aforementioned financial article recommendation apparatus 110.
[0260] The foregoing description is made with reference to specific embodiments for the purpose of illustration only. However, such illustrative discussion does not intend to restrict or limit the present disclosure to the precise forms disclosed. Many modifications and variations are possible in light of the above teachings.
Claims
1. A financial article recommendation method, characterized in that: include: Constructing a financial article content library, which stores financial articles and corresponding stock tags and theme tags. The stock tags and theme tags are obtained by classifying the article content to compress the article dimensions into preset attribute dimensions composed of the stock tags and theme tags. The total number of the preset attribute dimensions is determined by the tag classification system. Obtaining user attribute data and historical interaction data between the user and financial articles in the financial article content library, wherein the user attribute data includes a user's self-selected stock list and a self-selected subject list, and the historical interaction data includes the user's interaction behavior with the financial articles and the corresponding article identifiers and timestamps; Based on the user attribute data and the historical interaction data, constructing interaction features between the user and the stock tags and interaction features between the user and the subject tags, respectively, wherein the interaction features are used to reflect the association relationship and interest level of the user in each stock tag and subject tag; Processing the interaction features using multiple prediction models and fusing the outputs of the models to predict target stock tags and target subject tags of interest to the user, wherein the multiple prediction models include at least an association rule mining model, a time series prediction model, an interest decay model, a deep learning model, and a user-selected tag model; Based on the predicted target stock label and target subject label, corresponding financial articles are matched from the financial article content library, and after deduplication of the matched financial articles in reverse order of publication time, a user-personalized financial article recommendation list is generated and output; The deep learning model is a deep interest network, and the processing flow of the deep interest network includes: Obtaining user attribute features, behavior type sequence features, and self-selected tag features, wherein the user attribute features are extracted based on the user attribute data, the behavior type sequence features are extracted based on the historical interaction data, and the self-selected tag features are obtained through multi-hot encoding based on the user's self-selected stock list and self-selected theme list; Inputting the user attribute features, behavior type sequence features and self-selected label features into a deep interest network; Dynamically weighting the behavior type sequence features using the attention mechanism through the deep interest network to generate a user dynamic interest feature vector to capture the user's interest changes at different time points; Based on the user's dynamic interest feature vector, the deep interest network is used to output the user's interest probability for each stock tag or theme tag, and the top M items in interest probability ranking are taken as recommended tags; The user-selected tag model utilizes a self-selected stock list and a self-selected theme list, and uses the tags therein as high-priority recommendation items.
2. The method according to claim 1, characterized in that Categorize article content by subject tags, including: Use a pre-trained model that supports zero-shot or small-shot classification as the base model; Collect financial industry article corpus, clean the financial industry article corpus and expand the sample. The sample expansion includes supplementing related articles through keyword search for low-frequency subject tags; Generate labels for training samples using a multi-model voting mechanism that includes the outputs of at least two pre-trained language models and keyword rule matching results; Fine-tune the base model on the cleaned and sample-expanded corpus of financial industry articles to obtain a subject label classification model; The fine-tuned subject label classification model is used to classify financial articles and output candidate labels; the candidate labels are re-ranked using the refined ranking model and the final subject label is output.
3. The method according to claim 1, characterized in that The association rule mining model is the FP-Growth model. The process of mining association rules using the FP-Growth model includes: Taking users as units, based on the historical interaction data, extracting the browsing sequence of stock tags or theme tags of users within a preset time period; Dividing the browsing sequence into multiple subsequences according to a preset sequence length threshold and an adjacent interaction time interval threshold; Calculate the high-frequency factor of each stock tag or theme tag every day, where the high-frequency factor is the ratio of the total number of user interactions for the stock tag or theme tag on that day to the total number of online users on that day; High-frequency items in the multiple subsequences are eliminated based on the high-frequency factor, and the elimination rule is as follows: if the high-frequency factor of a stock label or theme label is greater than a first preset threshold, and the difference between the high-frequency factor of the stock label or theme label and the high-frequency factor of the adjacent stock label or theme label is greater than a second preset threshold, then it is determined to be a high-frequency item and eliminated; A transaction data set is constructed based on the subsequences after removing high-frequency items, and frequent item sets are mined through FP-tree. Association rules are generated based on the frequent item sets. The mining parameters of the association rules include a minimum support value set based on the total number of sequences and a preset minimum confidence value. The association rules are used to predict stock tags or subject tags that the user is interested in.
4. The method according to claim 1, wherein The time series prediction model is an ARIMA model, which is used to solve the cold start problem of new users. The prediction process of the ARIMA model includes: Based on the historical interaction data, obtain the daily visit sequence of each stock tag or theme tag within a preset time window; Performing a stationary test on the daily visit volume sequence, and if it is not stationary, making the sequence stationary through differential processing to obtain a stationary daily visit volume sequence; Determining the order parameter of the ARIMA model based on the autocorrelation function and partial autocorrelation function of the stabilized daily visit volume series; An ARIMA model is trained based on the determined order parameter and the stabilized daily visit sequence, and the trained ARIMA model is used to predict the popularity of each stock tag or theme tag within a preset time period in the future. The top N items in popularity ranking are taken as popular tags, which are used as the target stock tags or target theme tags for new users.
5. The method according to claim 1, wherein The interest decay model dynamically adjusts the weight of the user's historical interaction behavior through the interest retention factor. The processing flow of the interest decay model includes: Divide the historical interaction data into multiple time windows according to dynamic time granularity, where the recent window adopts hourly granularity and the long-term window adopts daily granularity; Extract the stock tags or theme tags set that the user interacted with in each time window, as well as the stock tags or theme tags set that the user interacted with in the current time window; Calculate the interest retention factor for each time window, where the interest retention factor is the ratio of the number of elements in the intersection of the stock label or theme label set of the time window and the stock label or theme label set of the current time window to the total number of elements in the stock label or theme label set of the time window; The weight of the user's historical interaction behaviors within the corresponding time window is weighted based on the interest retention factor, so that the weight of recent interaction behaviors is higher than that of long-term interaction behaviors.
6. The method according to claim 1, characterized in that The interactive features are processed using multiple prediction models and the output results of each model are integrated to predict the target stock tags and target theme tags that the user is interested in, including: Determine the weight of each model based on the accuracy of the association rule mining model, time series prediction model, interest decay model, deep learning model, and user-selected label model, where the accuracy is the ratio of the number of labels correctly predicted by the model to the total number of labels predicted by the model; The weights are used to perform weighted fusion sorting on the stock label and subject label prediction results output by each model to obtain the target stock label and target subject label.
7. The method according to claim 1, characterized in that After generating and outputting the user-personalized financial article recommendation list, the method further includes: The financial article recommendation list is refreshed at preset time intervals based on the length of the financial article and the user's reading speed.
8. A financial article recommendation device, characterized in that: include: An acquisition module is configured to construct a financial article content library, wherein the financial article content library stores financial articles and corresponding stock tags and subject matter tags, wherein the stock tags and subject matter tags are obtained by classifying the article content to compress the article dimensions into preset attribute dimensions composed of the stock tags and subject matter tags, wherein the total number of the preset attribute dimensions is determined by a tag classification system; obtain user attribute data and historical interaction data between users and financial articles in the financial article content library, wherein the user attribute data includes a user's self-selected stock list and a self-selected subject list, and the historical interaction data includes user interaction behaviors with financial articles and corresponding article identifiers and timestamps; Based on the user attribute data and the historical interaction data, constructing interaction features between the user and the stock tags and interaction features between the user and the subject tags, respectively, wherein the interaction features are used to reflect the association relationship and interest level of the user in each stock tag and subject tag; A recommendation module is configured to process the interaction features using multiple prediction models and fuse the output results of each model to predict target stock tags and target subject tags of interest to the user, wherein the multiple prediction models include at least an association rule mining model, a time series prediction model, an interest decay model, a deep learning model, and a user-selected tag model; based on the predicted target stock tags and target subject tags, the module matches corresponding financial articles from the financial article content library, deduplicates the matched financial articles in reverse order of publication time, and generates and outputs a personalized list of financial article recommendations for the user; The deep learning model is a deep interest network, and the processing flow of the deep interest network includes: Obtain user attribute features, behavior type sequence features, and self-selected tag features, wherein the user attribute features are extracted based on the user attribute data, the behavior type sequence features are extracted based on the historical interaction data, and the self-selected tag features are obtained through multi-hot encoding processing based on the user's self-selected stock list and self-selected theme list; input the user attribute features, behavior type sequence features, and self-selected tag features into a deep interest network; dynamically weight the behavior type sequence features using an attention mechanism through the deep interest network to generate a user dynamic interest feature vector to capture the user's interest changes at different time points; based on the user dynamic interest feature vector, output the user's interest probability for each stock tag or theme tag through the deep interest network, and select the top M items ranked by interest probability as recommended tags; The user-selected tag model utilizes a self-selected stock list and a self-selected theme list, and uses the tags therein as high-priority recommendation items.
9. A readable storage medium, characterized in that: The readable storage medium includes a computer program, and when the computer program is executed, the computer device where the readable storage medium is located is controlled to execute the method according to any one of claims 1 to 7.
Citation Information
Patent Citations
A multi-model fusion recommendation system and method
CN109408714A
Information recommendation method and device based on user investment and financing preferences
CN111159341A