System and method for reducing data-sets for analysis using artificial intelligence
The system addresses the challenge of analyzing vast datasets by using R2-PCA to reduce and process data efficiently, enhancing the stability and efficiency of machine learning models for real-time financial analysis.
Patent Information
- Application Number
- PCT/US2024/050055
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2023-10-04
- Filing Date
- 2024-10-04
- Publication Date
- 2025-04-10
AI Technical Summary
Data analysts face challenges in processing and analyzing vast amounts of data in real-time, particularly in the financial industry where market conditions can change rapidly.
The system employs a Robust Rolling Principal Component Analysis (R2-PCA) to reduce large datasets by generating a data-set with specific dimensions, recursively determining principal components, and generating training data for a learning model.
This approach enables efficient reduction of datasets, improving the efficiency and stability of machine learning models, and providing reliable real-time data analysis for decision-making.
Smart Images

Figure US2024050055_10042025_PF_FP_ABST
Abstract
Description
SYSTEM AND METHOD FOR REDUCING DATA-SETS FOR ANALYSIS USING ARTIFICIAL INTELLIGENCERELATED APPLICATIONS
[0001] This application claims the benefit of U.S. Provisional Patent Application No. 63 / 542,419, titled “System and Method for Reducing Data-Sets for Analysis Using Artificial Intelligence,” filed October 4, 2023, the entire disclosure of which is hereby incorporated by reference herein.BACKGROUND
[0002] Despite the current set of tools, data analysts in all industries face the daunting task of analyzing an overwhelming barrage of information to determine meaningful, impactful data. That is, the volume of data require significant storage infrastructure investment. Additionally, useful applications require real-time or near-real time processing. One particular sector that utilize large data-sets, for example, involves the financial industry, such as wealth management. The selection of vast number of profitable assets and investment portfolios require allocation of enormous resources in personnel and technology. Existing systems that wealth managers rely on for financial analysis have not kept based with development in data processing technology. The challenge is magnified when the data (e.g., news, social media, etc.) significantly affects market conditions in real-time.SOME EXAMPLE EMBODIMENTS
[0003] Therefore, there is a need for an approach that applies artificial intelligence (Al), e.g., machine learning and deep learning, for data analysis to support decision making.
[0004] According to one embodiment, a method comprises generating a data-set having a first dimension representing a rolling window in a time series, a second dimension representing number of funds, a third dimension representing number of observations through a predetermined time period, and a fourth dimension representing number of features. The method further comprisesprocessing the data-set by recursively determining principal components of a reduced data-set from a portion of the data-set, wherein the principal components are determined at each increment in the rolling window. The method also comprises generating training data based on the processed data-set. The method further comprises outputting the training data to a learning model.
[0005] According to another embodiment, an apparatus comprises at least one processor, and at least one memory including computer program code for one or more computer programs, the at least one memory and the computer program code configured to, with the at least one processor, cause, at least in part, the apparatus to generate a data-set having a first dimension representing a rolling window in a time series, a second dimension representing number of funds, a third dimension representing number of observations through a predetermined time period, and a fourth dimension representing number of features. The apparatus is also caused to process the data-set by recursively determining principal components of a reduced data-set from a portion of the data-set, wherein the principal components are determined at each increment in the rolling window. The apparatus is also caused to generate training data based on the processed data-set. The apparatus is also caused to output the training data to a learning model.
[0006] In addition, for various example embodiments of the invention, the following is applicable: a method comprising facilitating a processing of and / or processing (1) data and / or (2) information and / or (3) at least one signal, the (1) data and / or (2) information and / or (3) at least one signal based, at least in part, on (or derived at least in part from) any one or any combination of methods (or processes) disclosed in this application as relevant to any embodiment of the invention.
[0007] For various example embodiments of the invention, the following is also applicable: the data-set includes financial data relating to funds, wherein the items of the second dimension correspond to the funds.
[0008] For various example embodiments of the invention, the following is also applicable: the processing of the data-set further comprises generating cosine similarity scores for the dataset; and altering eigenvectors at each increment to account for sign change and eigenvector directions according to the cosine similarity scores.
[0009] For various example embodiments of the invention, the following is also applicable: a method comprising facilitating creating and / or facilitating modifying (1) at least one device user interface element and / or (2) at least one device user interface functionality, the (1) at least one device user interface element and / or (2) at least one device user interface functionality based, at least in part, on data and / or information resulting from one or any combination of methods or processes disclosed in this application as relevant to any embodiment of the invention, and / or at least one signal resulting from one or any combination of methods (or processes) disclosed in this application as relevant to any embodiment of the invention.
[0010] In various example embodiments, the methods (or processes) can be accomplished on the service provider side or on the mobile device side or in any shared way between the service provider and mobile device with actions being performed on both sides.
[0011] For various example embodiments, the following is applicable: An apparatus comprising means for performing a method of any of the claims.
[0012] Still other aspects, features, and advantages of the invention are readily apparent from the following detailed description, simply by illustrating a number of particular embodiments and implementations, including the best mode contemplated for carrying out the invention. The invention is also capable of other and different embodiments, and its several details can be modified in various obvious respects, all without departing from the spirit and scope of the invention. Accordingly, the drawings and description are to be regarded as illustrative in nature, and not as restrictive.BRIEF DESCRIPTION OF THE DRAWINGS
[0013] The embodiments of the invention are illustrated by way of example, and not by way of limitation, in the figures of the accompanying drawings:
[0014] FIG. 1 is a diagram of an Al-based decision support platform, according to one embodiment;
[0015] FIG. 2 is a diagram of the components of the Al-based decision support platform of FIG. 1, according to one embodiment;
[0016] FIG. 3 is a diagram of the Al-based decision support platform of FIG. 1 interacting with various data sources, according to one embodiment;
[0017] FIG. 4A is a flowchart of a process for reducing and extracting meaningful signals from large data-sets, according to one embodiment;
[0018] FIG. 4B is a flowchart of a process for assessing performance data by the Al-based decision support platform of FIG. 1, according to one embodiment;
[0019] FIGs. 5A-5H are diagrams of a graphical user interface (GUI) relating to data management processes performed by the Al-based decision support platform of FIG. 1, according to one embodiment;
[0020] FIGs. 6A-6D are diagrams of a GUI relating to asset allocation processes performed by the Al-based decision support platform of FIG. 1, according to one embodiment;
[0021] FIGs. 7A-7C are diagrams of a GUI relating to security selection processes performed by the Al-based decision support platform of FIG. 1, according to one embodiment;
[0022] FIG. 8 is a diagram of a neural network that can be implemented by the Al-based decision support platform of FIG. 1, according to one embodiment;
[0023] FIG. 9 is a diagram of hardware that can be used to implement various example embodiments;
[0024] FIG. 10 is a diagram of a chip set that can be used to implement various example embodiments; and
[0025] FIG. 11 is a diagram of a mobile terminal (e.g., handset) that can be used to implement various example embodiments.DESCRIPTION OF SOME EMBODIMENTS
[0026] Examples of a method, apparatus, and computer program for reducing and extracting meaningful signals from large data-sets to utilize as training data are disclosed. The capability reduce data-sets for training provides improvement to Al technology in terms of efficiency of learning as well as storage. In the following description, for the purposes of explanation, numerousspecific details are set forth in order to provide a thorough understanding of the embodiments of the invention. It is apparent, however, to one skilled in the art that the embodiments of the invention may be practiced without these specific details or with an equivalent arrangement. In other instances, well-known structures and devices are shown in block diagram form in order to avoid unnecessarily obscuring the embodiments of the invention.
[0027] FIG. 1 is a diagram of Al-based decision support platform, according to one embodiment. To address the noted drawbacks of conventional systems and approaches to processing the vast amount of data, a system 100 of FIG. 1 includes an Al-based decision support platform 101 that introduces the capability to provide stable and reliable reduced time series datasets.
[0028] According to various embodiments, the platform 101 employs a Robust Rolling Principal Component Analysis (R2-PCA) to reduce large data-sets. Principal Component Analysis (PCA) is an important methodology to reduce and extract meaningful signals from large data-sets. By way of example, financial markets introduce time and non-stationarity aspects, where applying standard PCA methods may not give stable results. In recognition of that, the platform 101 executes the R2-PCA algorithm to accommodate the additional aspects and mitigates commonly found obstacles including eigenvector sign flipping, and managing multiple dimensions of the data-set. This makes R2-PCA ideal for learning-based models. Such an approach has applicability to any scenario involving large data-sets. By way of a real-world example, the methodology is described with respect to financial data-sets to illustrate its advantages in terms of applicability, and explainability. This approach is further detailed in FIGs. 2 and 4A.
[0029] Additionally, the platform 101 can supplement and / or integrate with a third party system 103, which may be a conventional financial analysis system that is utilized by financial advisors. The platform 101 can parse through numerous data-sets, models, viewpoints, visuals, etc. concurrently to continually assess historic and predicted performance within each aspect of the asset life cycle, subject to defined or suggested objective functions. By way of example, the platform 101 can supplement the financial advisor’s experience-based, traditional portfolio decisions with Artificial Intelligence-powered visualizations for assessing a Security or Portfolio (A), evaluating the predicted path profile of A, comparing A with B (and transition of A to B), andmeasuring real-time impact on A. With respect to the third party system 103, the platform 101 integrates within the technology infrastructure of the system 103 to execute user-defined or optimized objective functions and can also run the processes on existing portfolios.
[0030] Among other functions and features, the platform 101 can harness research, data, programming and advanced Al methodologies to address daunting development possibilities centered around the following: removing the drudgery of complex tasks to drive efficiency; providing visuals that are interpretable to facilitate more creative work; and determining meaning research data.
[0031] As shown in FIG. 1, the system 100 also comprises user equipment (UE) 105a-105n (collectively referred to as UE 105) that may include or be associated with applications 107a-107n (collectively referred to as applications 107). In one embodiment, the UE 105 has connectivity to the Al-based decision support platform 101 via the communication network 109. Under certain scenarios, the Al-based decision support platform 101 performs one or more functions associated with data analysis in conjunction with the UEs 105a-105n. By way of example, the UE 105 is any type of mobile terminal, fixed terminal, or portable terminal including a mobile handset, station, unit, device, multimedia computer, multimedia tablet, Internet node, communicator, desktop computer, laptop computer, notebook computer, netbook computer, tablet computer, personal communication system (PCS) device, personal navigation device, personal digital assistants (PDAs), audio / video player, digital cam era / cam corder, positioning device, television receiver, radio broadcast receiver, electronic book device, game device, a smartphone, a smartwatch, smart eyewear, or any combination thereof, including the accessories and peripherals of these devices, or any combination thereof. It is also contemplated that the UE 105 can support any type of interface to the user (such as “wearable” circuitry, etc.). In one embodiment, the UE 105 may include Global Positioning System (GPS) receivers to obtain geographic coordinates from satellites (not shown) for determining current location and time associated with the UE 105; such GPS information can be utilized to geo-tag images captured by UE sensors (not shown). The UE 105 is capable of supporting a graphical user interface (GUI) that provides the GUI of FIGs. 5-7.
[0032] The Al-based decision support platform 101 operates in conjunction with one or more applications resident on an UE 105. By way of example, the applications 107 may be any type ofapplication that is executable at UE 105, such as content provisioning services, camera / imaging application, media player applications, social networking applications, calendar applications, and the like. In one embodiment, the applications 107 may assist in conveying sensor information via the communication network 109. In another embodiment, one of the applications 107 at the UE 105 may act as a client for the Al-based decision support platform 101 and perform one or more functions associated with the functions of the platform 113 by interacting with the platform 113 over the communication network 109.
[0033] One or more data sources 109a-109n are accessible via the network 109 by the platform 101. The data sources 109a-109n can include any content relevant to making financial decisions relating to securities, such as market data (e.g., historical or real-time market information), news, financial holdings, and / or alternative data. The retrieved data can reside within database 111 of the Al-based decision support platform 101. It is contemplated that database 111 can be implemented as a cloud storage system.
[0034] Further details of the capabilities of the Al-based decision support platform 101 is provided in FIGs. 3-7.
[0035] The communication network 109 of system 100 includes one or more networks such as a data network, a wireless network, a telephony network, or any combination thereof. It is contemplated that the data network may be any local area network (LAN), metropolitan area network (MAN), wide area network (WAN), a public data network (e.g., the Internet), short-range wireless network, or any other suitable packet-switched network, such as a commercially owned, proprietary packet-switched network, e.g., a proprietary cable or fiber-optic network, and the like, or any combination thereof. In addition, the wireless network may be, for example, a cellular network and may employ various technologies including 5G (5thGeneration), 4G, 3G, 2G, Long Term Evolution (LTE), enhanced data rates for global evolution (EDGE), general packet radio service (GPRS), global system for mobile communications (GSM), Internet protocol multimedia subsystem (IMS), universal mobile telecommunications system (UMTS), etc., as well as any other suitable wireless medium, e.g., worldwide interoperability for microwave access (WiMAX), code division multiple access (CDMA), wideband code division multiple access (WCDMA), wirelessfidelity (Wi-Fi), wireless LAN (WLAN), Bluetooth®, Internet Protocol (IP) data casting, satellite, mobile ad-hoc network (MANET), and the like, or any combination thereof.
[0036] In one embodiment, the Al-based decision support platform 101 may be a platform with multiple interconnected components. The Al-based decision support platform 101 may include multiple servers, intelligent networking devices, computing devices, components and corresponding software for providing real-time data analysis. In addition, it is noted that the AL based decision support platform 101 may be integrated or separated from services platform. Also, certain functionalities of the system 101 may reside within the UE 105 (e.g., as part of the applications 107).
[0037] Moreover, the platform 101 can interface with various services systems (not shown), such as notification services, content (e.g., audio, video, images, etc.) provisioning services, application services, storage services, contextual information determination services, social networking services, location-based services, information-based services, etc.
[0038] By way of example, UE 105, the Al-based decision support platform 101, the third party system 103 with each other and other components of the communication network 109 using well known, new or still developing protocols (e.g., loT standards and protocols). In this context, a protocol includes a set of rules defining how the network nodes within the communication network 109 interact with each other based on information sent over the communication links. The protocols are effective at different layers of operation within each node, from generating and receiving physical signals of various types, to selecting a link for transferring those signals, to the format of information indicated by those signals, to identifying which software application executing on a computer system sends or receives the information. The conceptually different layers of protocols for exchanging information over a network are described in the Open Systems Interconnection (OS I) Reference Model.
[0039] Communications between the network nodes are typically effected by exchanging discrete packets of data. Each packet typically comprises (1) header information associated with a particular protocol, and (2) payload information that follows the header information and contains information that may be processed independently of that particular protocol. In some protocols, the packet includes (3) trailer information following the payload and indicating the end of the payload information. The header includes information such as the source of the packet, itsdestination, the length of the payload, and other properties used by the protocol. Often, the data in the payload for the particular protocol includes a header and payload for a different protocol associated with a different, higher layer of the OSI Reference Model. The header for a particular protocol typically indicates a type for the next protocol contained in its payload. The higher layer protocol is said to be encapsulated in the lower layer protocol. The headers included in a packet traversing multiple heterogeneous networks, such as the Internet, typically include a physical (layer 1) header, a data-link (layer 2) header, an internetwork (layer 3) header and a transport (layer 4) header, and various application (layer 5, layer 6 and layer 7) headers as defined by the OSI Reference Model.
[0040] FIG. 2 is a diagram of the components of the Al-based decision support platform of FIG. 1, according to one embodiment. By way of example, the platform 101 includes one or more components for analyzing data to determine selection and / or performance of a security / asset or portfolio. It is contemplated that the functions of these components may be combined in one or more components or performed by other components of equivalent functionality. In this embodiment, the Al-based decision support platform 101 includes the following modules: an asset allocation module 201, a portfolio construction module 203, a risk management module 205, a financial planning module 207, a portfolio management module 209, a security selection module 211, an artificial intelligence engine 213, and a Robust Rolling Principal Component Analysis (R2-PCA) module 215.The asset allocation module 201 generates a multitude of dynamic allocation / weights based on historic or predicted objective functions (e.g., minimal return of x, max MDD of y, etc.) based on market indices and / or other market data. Additionally, the module 201 can incorporate macro-economic and social data, thereby providing “explainability” (e.g., indicia) of how allocations are made (e.g., weighting of measures, macro condition, alternative, etc.). The module 201 has the capability to change weights or the complete selection criteria, and perform “what if’ analyses; this is conducted for selection, tracking or comparative purposes. Further, the module 201 provides assessment of historic and ongoing tracking error of allocations. Optionally, the module 201 can employ clusters (as opposed to traditional asset class definitions). For example, security clusters can have behavioral, holding or alternative data similarity (for the duration of theassessed period). In effect, the module 201 can satisfy the objective function(s) given evolving market conditions over a particular time horizon. According to one embodiment, multi-stage processing is utilized: behavioral, asset type, and firm level. Behavioral clustering identifies the commonalities of funds based on fund behavior rather than the holding data. Performance measures are passed into the behavioral processing stage. A deep temporal cluster model finds the behavioral commonalities of the securities (e.g., funds). With Asset Type processing, funds are clustered (grouped) based on their holding data. For instance, the model takes as inputs holding data, in which a hierarchical clustering model finds the optimal number of clusters. A K-means model finds outliers and merge them together. In the Firm Level stage, clustering utilizes alternative data to find commonalities of at the firm level. By way of example, first, static data is applied in a Tree-based model to group funds based on funds stable characteristics. Secondly, monthly data is applied to a K-means model to find the non-stable commonalities. i 02] As part of indexing, cluster labels are generated to provide a clear outlook on the asset holding and economic characteristics for each cluster. According to one embodiment, labels are assigned based on the user’s objective and can be used as inputs for other modules substituting traditional measures and data categories. The clusters, according to one embodiment, through Statistical Measure, Economic Meaning, and Stability. Regarding Statistical Measure, each cluster gets validated by different metrics to assure its mathematical correctness. With respect to Economic Meaning, the economic characteristics of each fund in a cluster are compared to assure the validity of the labels. As for Stability, the process is repeated, by way of example, for different time horizons to determine the stability of the cluster. Clusters’ labels are thus relatively stable to provide value to other modules.
[0041] Among other functions, the portfolio construction module 203 generates dynamic portfolio compositions based on historic or predicted objective function (e.g., min return of x, max MDD of y, etc.). The module 203 utilizes the outputs of the asset allocation module 201 and the security selection module 211. As with the asset allocation module 201, the module 203 provides the capability to demonstrate how the composition was made (e.g., relationships, macro condition, alternative, etc.), as well as configure the selection criteria and modify weighting parameters. Themodule 203 also supports assessment of historic and ongoing tracking error of portfolios; error correction and penalizing functions are employed for reducing tracking error. Moreover, the module 203 provides an option to create or optimize portfolios based on clusters, objective function, factors, minus indices, or other criteria.
[0042] With respect to the risk management module 205, this module 205 focuses on the actionable points on a historic, predictive and real-time basis. For instance, the following realtime assessment are supported: portfolio and security sensitivity to factors (e.g., value, trend, etc.); security / portfolio / holdings exposure and give indicators for loss or hedge thresholds and action triggers; opinions within a given text across news, social media etc. as it relates to the fund, portfolio, holdings, factor, etc. Additionally, the module 205 can provide sentiment analysis on unstructured text into structured data using, for example, Natural Language Processing (NLP). Further, the module 205 utilizes a mathematically stable risk proxy for portfolio comparisons.
[0043] The financial planning module 207 provides accurate forecast of cash flows of assets under various scenarios. For example, the module 207 can generate combined cash flow profiles using a common set of assumptions (e.g., macro, performance measure, etc ). Additionally, the module 207 can conduct stress and scenario analysis on the combined cash flow profiles, factors, etc. The module 207 utilize multi-step and machine learning (ML) illiquid forecasting models for financial planning.
[0044] The portfolio management module 209 enables management functions relating to a particular asset, holding, and / or portfolio based on machine learning / deep learning (ML / DL) framework with continuous additions of data, measures and visuals per user requests. The functions of module 209 can be a service that is cloud based, standalone or embedded with an existing system (e.g., third party system 103).
[0045] The platform 101 provides evaluation, via the security selection module 211, of the best-performing funds / securities within an asset class, filtered pool or cluster for a given objective function. Such objective function can be based on queries / fi Iters that also combine multiple themes (including pre / post filtering). In one embodiment, the security selection module 211 performs dynamic ranking of securities based on historic or predicted objective functions (e.g., min return of x, max MDD of y, etc.). Ranking allows the selection of a smaller number of funds / securitiesout of a large number of candidates based on the objective function. For example, among the 500 funds, the top 10 best-performing funds can be selected by the module 211. For ranking, ML- based ranking can be utilized solely or in combination with empirical ranking. Empirical ranking uses weighted average of the performance measures, either historical or predicted, to do simple ranking and selection. ML-based ranking can include interpretable ML models and online learning algorithms. Interpretable models can include models such as Decision Trees or RuleFit to find best ranking methodologies. The features can be either historical or predicted performance measures. Online learning algorithms can include weighting expert, which dynamically selects reliable models and signals for ranking and selection.
[0046] The module 211 can supplement traditional section criteria of performance measures with macro-economic, alternative data and holding data. The module 211 supports a capability to explain to the user why the security was selected (e.g., measures, macro condition, alternative, etc.). The user can specify user-defined performance measures, change weights, or modify the complete selection criteria. As with the other modules, the security selection module 211 can support selection, tracking or comparative purposes, and provide assessment of historic and ongoing tracking error of the selection.
[0047] The artificial intelligence engine 213 interact with one or more of the various modules 201-215 (notably R2-PCA module 215 for producing data for training) to support the functions of the platform 101. By way of example, the Al engine 213 can execute the neural network of FIG.8.
[0048] As noted, Principal Component Analysis (PCA) is a crucial element for learning-based models. Where, it is commonplace for learning-based models to only accept data in two dimensions (N,D , where A is the number of samples and D is the number of features. The general consensus of practitioners, with respect to the size of data-sets, dictates that N has to be significantly larger than D to prevent over-fitting and other statistical issues that can arise from small sample sizes. The larger the number of features in a data-set, the larger number of samples and model parameters are required to produce meaningful results. PCA as an unsupervised learning algorithm aims to reduce the dimension of D. Unlike supervised learning algorithms, where the correct output is known, unsupervised algorithms requires interpretability andvisualization to evaluate the correctness of its output. By reducing the number of D features, subsequent models require less parameters to train, and thus reduce the probability of over-fitting training data-sets.
[0049] Conventionally, the majority of PCA research focuses on reducing data that does not depend on time. The naive approach to time series PCA is assuming the eigenvectors that represent the transformation can be computed once and, as new data is obtained, project the new data set using the historical eigenvectors. This approach implies the new data will contain a similar distribution, which may not be correct. For example financial data-sets are constantly changing leading to new principal component directions in each segment of time. A model designed for dimensionality reduction must account for these changes by updating its principal components while still retaining a relationships between components over time. Additionally, the PCA algorithm must be applied in a recursive manner through time to avoid look ahead bias and account for non-stationarity in the data. For example, if PCA is to be run on an entire time series data-set, the variation and thus principal components will be influenced by future dates that data from older periods does not have access to. Projecting the older data on principal components that incorporate future data-sets creates a look ahead bias since at that time there was no way of determining the direction of the data in future periods.
[0050] According to various embodiments, the robust rolling PCA (R2-PCA) module 215 extends standard PCA to computing reduced data using a rolling window approach while effectively tackling challenges commonly found in PCA and time series analysis including eigenvector sign switches and finite precision rounding errors. Since a learning-based model is only as powerful as the data it trains on, the more stable results of the R2-PC A (versus the Standard PCA) make it a better candidate for usage across Al-based applications.
[0051] Regarding data-sets, the main focus of such analysis into data reduction has been in relation to performance measures found in financial time series data-sets. Every performance measure is derived from some manipulation of pricing data found in a time series. For example, return captures the first moment of the distribution, volatility captures the second moment, and Sharpe ratio captures the relationship between return and volatility. There are over numerousperformance measures (e.g., over 100), and each of them captures a different behavior. The R2- PCA approach is further detailed in FIG. 4A.
[0052] The above presented modules and components of the Al-based decision support platform 101 can be implemented in hardware, firmware, software, or a combination thereof. Though depicted as a separate entity in FIG. 1, it is contemplated that the Al-based decision support platform 101 may be implemented for direct operation by respective UE 105. As such, the Al-based decision support platform 101 may generate direct signal inputs by way of the operating system of the UE 105 for interacting with the applications 107. In another embodiment, one or more of the modules of FIG. 2 and processes of FIGs. 4A and 4B may be implemented for operation by respective UEs, the Al-based decision support platform 101, or combination thereof. Still further, the Al-based decision support platform 101 may be integrated for direct operation with services 115, such as in the form of a widget or applet, in accordance with an information and / or subscriber sharing arrangement. The various executions presented herein contemplate any and all arrangements and models.
[0053] FIG. 3 is a diagram of the Al-based decision support platform of FIG. 1 interacting with various data sources, according to one embodiment. The platform 101 architecturally is created in a modular fashion with extensive artificial intelligence-powered data manipulation and analytical capabilities. In one embodiment, the platform 101 has a flexible architecture and is cloud-based. With respect to securities, such as mutual funds and exchange traded funds (ETFs), the platform 101 can collect robust and cleaned data-set. For instance, the platform 101 cleans and processes data from various sources 301 (e.g., market, alternative, client, social, etc.). Additionally, the platform 101 provides the capability to incorporate / append other third- party / unique data-sets and advisor holdings. In terms of processing, the platform 101 is modular based on user (e.g., financial advisor) needs and application programming interfaces (APIs) 303 for user ecosystem connectivity. The platform 101 has the capability to select data-sets, filters and features for assessment.
[0054] Advantageously, the platform 101 provides a seamless, building block framework with continually added depth and breadth. The platform 101 performs an optimized internal processing that mixes-matches Al techniques / models within the modules best suited for a given objectivefunction. The platform 101 measures tracking error, assess “explainability” of results and ability to custom train. Module / version release / accretive analysis is readily provided as the platform 101 via modules 307 operates from Security to Portfolio to Risk Management (and vice versa) presented in visually friendly, non-technical way.
[0055] The platform 101 covers critical portfolio decision facets. For instance, the platform 101 monitors real time market signals - jumps, trends, sentiment analysis for sectors, industry. Traditionally, training is extremely time-consuming to perform manually, thus, the platform 101, in one embodiment, employs auto hyperparameter search or neural architecture search methods. For example, basic hyperparameter search methods include: Grid search, Random search, and Bayesian optimization.
[0056] By way of example, various different options for selecting regimes for model training and / or simulations can be utilized by platform 101 : (1) auto selected model based on historical data (below classification compared with S&P500 daily returns); (2) machine learning models that predict the future regime (based on factors, economic indicators, other); and / or user views on the regimes across other modules (e.g., security or portfolio performance).
[0057] The platform 101 also performs Security / manager selection based on objective functions - historic or predictive, as well as Asset allocation based on market indices or securities (or security proxies). Optimized or behavioral finance-based custom portfolio construction can be performed using, for example, traditional methods, clusters or factors. Portfolios can be replicated using other securities (e.g., replicating mutual fund portfolios using ETFs and / or other optimizations). The platform 101 can assess custom or uploaded portfolios or transitions with varied holdings. Risk management can be overlaid on market / sector / portfolio / security. Further, the platform 101 can perform: Stress testing / Scenario analysis; Factor mapping / sensitivity across all aspects; NLP connect - news / factors; NLP sentiment - news / factors; and / or Risk Watch - alert / hedging / stop loss.
[0058] The platform 101 provides comprehensive forecasts for financial planning including incorporating illiquid assets. In this regard, the platform 101 provides: performance / results across various wealth management modules; amplifies existing advisor methods / tools; continual implementation of new research within modules; methods / metrics and publishing research; anentirely Al-based with no legacy technical issues; pool of advanced Al-developers and financial market specialists; an eco-system - engaging renowned Al and finance experts as advisors.
[0059] FIG. 4A is a flowchart of a process for reducing and extracting meaningful signals from large data-sets, according to one embodiment. In one embodiment, the Al-based decision support platform 101 performs the process 420 and is implemented in, for instance, a chip set including a processor and a memory as shown in FIG. 10. The process 420, in one embodiment, utilize the R2-PCA algorithm. For the purposes of explanation, the process 420 is described with respect to a time series data-set containing multiple assets and features — represented as a 3-dimensional tensor denoted as X of shape (F T, D). Each respective variable represents the number of funds F, the number of observations through time 7, and the number of features D. Another parameter, a rolling window (W) is utilized, resulting in the final shape of the data-set X as (W, F, T, D).
[0060] Per step 421, the platform 101 generates a data-set having multiple dimensions including a first dimension (e.g., W) representing a rolling window in a time series, a second dimension representing number of funds (e.g., F), a third dimension representing number of observations through a predetermined time period (e.g., 7), and a fourth dimension representing number of features (e.g., E>). In one embodiment, the data-set includes financial data relating to the funds, and the items of the second dimension correspond to the funds. The data-set is processed, as in step 423, by recursively determining principal components of a reduced data-set from a portion of the data-set, wherein the principal components are determined at each increment in the rolling window. The reduced data-set comprises the third dimension and the fourth dimension. The processing of the data-set, according to one embodiment, includes computing eigenvectors; generating cosine similarity scores for the data-set; and altering the eigenvectors at each increment to account for sign change and eigenvector directions according to the cosine similarity scores. Process 420, in one embodiment, further includes converting the data-set into a reduced data-set having a two dimensional size; and inputting the reduced data-set to standard Principal Component Analysis algorithm at each increment in the rolling window. Under one scenario, a portion of the features represent a high level of variance, and random noise. According to one embodiment, the conversion includes computing individual covariance matrix for each element associate with the first number of funds; averaging results of the individual covariance matrices; and performing eigendecomposition of the averaged results.
[0061] In step 426, the platform 101 generates training data based on the processed data-set, and outputs the training data to a learning model (per step 427) - e.g., Al engine 213.
[0062] According to one embodiment of the present invention, with respect to the rolling window input structure, a time series data-set containing multiple assets and features must be represented as a 3-dimensional tensor denoted as X of shape (F, T, D). Each respective variable representing the number of funds F, the number of observations through time T, and the number of features D. The difference between R2-PCA and standard PCA is the added complexity of time dimension and the necessity to update the results of the model as new information becomes available in future time increments. Consider if standard PCA is used to fit all data available after each update; the data from the new time period would have a diminishing effect on the eigenvectors computed since there is an increasing amount of data from previous time periods. Additionally, there could be issues regarding data spillage since the data projected from older periods are influenced by data from future periods. A fourth parameter W must be introduced representing a rolling window in the time series to alleviate this issue and the final shape of the data-set X will be (H7, E T, £>).
[0063] It is recognized that computers are only capable of computing values to a finite precision and in the case of eigendecomposition this can lead to issues with output consistency. Small differences in rounding errors can change the direction of the eigenvector for covariance matrices with small elements. This can mean rerunning code utilizing PCA on the same computer can result in different outputs due to differing memory loads on the computer's processor. Due to the nature of modern computing technology, the finite precision rounding errors are unavoidable and additional functions in the R2-PCA module 215 is required to address these concerns. This poses a unique challenge to PCA over a time series, where the main goal is to achieve consistent principal components in which to project the data over time.
[0064] An important phenomenon found when running PCA on a time series data-set is that the projected data will sometimes jump as a result of the eigenvectors changing signs. Eigenvalue problems typically yield an infinite set of eigenvectors that will satisfy its constraints. Standard practice for PCA adds a constraint where the eigenvectors must have a length of 1. This reduces the infinite set of eigenvectors to just 2; this is where the issue of sign switching arises. Given anyei envector which satisfies all constraints forPCA, the same eigenvector multiplied by -1 will also satisfy the problem. The sign flipping effect can happen to any principal component and each component is effected independently of another. This effectively means the eigenvector in the direction opposite of the data could potentially be the output of a computer-based PCA solver due to finite rounding precision error. Standard PCA is not as concerned with this issue since all data points are projected using the same eigenvectors. When running PCA recursively, a switch in component signs from one period to the next time will result in the entire reduced data for that period being multiplied by -1. A flip in eigenvector direction will completely alter the output of the reduced data for reduced performance measures of, for instance, mutual funds. This will void any results produced by the learning-based models using the reduced data as input.
[0065] Data is typically normalized over its features to ensure each feature has equal importance in the analysis since the covariance matrix is the key to determining eigenvector direction. The eigenvectors computed by PCA are usually desired to be in the direction of the data; however, this becomes numerically inconsistent when the data sets are normalized with a mean of zero and standard deviation of one. This factor combined with the finite precision errors of computing will lead to inconsistent results even when utilizing a fixed seed and other techniques to induce run consistency. A beneficial property of the eigenvector direction issue is that eigenvector sign flipping over time is much more important to later inputs of machine learning models than direction with respect to the data. As long as the direction of the components remain consistent, predictive models will simply factor this in when estimating model parameters.
[0066] Standard PCA requires the computation of the covariance matrix, but the main challenge of modeling performance measures is their correlation can significantly change over time. The change in correlation can be attributed to the signal to noise ratio of the data-set as well as regime changes in the market. Financial data tends to be non-stationary as a whole while maintaining stationarity within certain macroeconomic regimes. Most performance measures found in financial time series data-sets tend to be highly correlated and using all features could pose to be disadvantageous for model fitting purposes. The trade-offs for pre-processing the dataset to reduce correlation could introduce a significant amount of noise in the reduced data-set.
[0067] For example, picture a data-set with three features and the desire to produce two principal components from that data-set. Suppose feature 1 contains a high level of variance, feature 2 is a copy of feature 1, and feature 3 is simply random noise. The two principal components will strongly favor features 1 and 2. However, since these features are perfectly correlated, each principal component will essentially model the same characteristic found within the data-set. By analyzing and merging features 1 and 2, the first principal component will capture a meaningful direction while principal the second component will be forced in the direction of random noise due to orthogonality constraints. This factor poses a unique challenge to PCA methods computed in a rolling window; principal components computed over non-stationary datasets can lead to principal components changing direction and orderings. For example, suppose there is one feature in a data-set which accounts for the most variation in future time increments while remaining stagnant in the current time period. Any method that directly uses information from future periods incur a look ahead bias rendering the results unusable. Thus, the effects non- stationarity data will always remain a constant consideration in recursive PCA methods.
[0068] Robust Rolling PCA (R2-PCA) is designed to address consistency and direction of principal components over time. R2-PCA computes the eigenvectors in the first time step and then uses these eigenvectors in future periods to ensure correct signs. If the eigenvectors computed in the first time step are in the opposite direction of the data (since the eigenvector multiplied by -1 is also a solution), the results of all future eigenvectors will also be incorrectly flipped. While predictive machine learning can account for this, in terms of model explainability, it is important to ensure the first set of principal components are computed in the correct direction of the data for visualization purposes.
[0069] The sign change issue arises in all PCA problems although is most noticeable when applying PCA recursively. R2-PCA requires principal components to have the same sign throughout a time series (signs are allowed to change naturally due to market factors). Otherwise, the eigenvector and subsequent projected data will suddenly appear be multiplied by -1; resulting in a large and misleading jump in the output of the R2-PCA model. To fix eigenvector flipping, the idea emerges from establishing one principal direction for each eigenvector and then recursively comparing the eigenvectors in the next period to the current one using cosine similarity. The cosine similarity score can be computed as the dot product of eigenvectors given theeigenvectors calculated are unit vectors. The similarity scores will recursively link principal components in sequential time periods, allowing the R2-PCA module 215 to unflip the eigenvectors should the cosine similarity score be below 0.
[0070] The cosine similarity score allows the R2-PCA module 215 to compare principal components in different time periods. The eigenvectors created by PCA are ordered by their corresponding eigenvalues which represent a magnitude of variation. Computing PCA in a recursive manner creates an issue where the ordering of principal components will change over time; this is typically found in data-sets where the features maximizing variance suddenly shift to new features due to market forces. This factor necessitates a reordering of the principal components in the current time period with respect to the eigenvectors in the previous period. At each step in the rolling window and each eigenvector in the current period, the absolute cosine similarity score will be computed for all eigenvectors found in the previous period. The eigenvectors in the current time period will be reordered according to their maximum cosine similarity score. The absolute value of these scores is critical to determining the eigenvectors flipping signs. Should the maximum absolute similarity score come from a negative value, then the eigenvector in the current period will unflipped by multiplying it by -1 and then reordered accordingly. To further improve the accuracy of ordering, more than the desired number of principal components can be computed and tracked between periods. Once these principal components are reordered, they can be reduced to the desired number of principal components.
[0071] The use of the straightforward cosine similarity score allows for comparisons to be made on datasets with a variable number of features D. The number of elements in an eigenvector is equal to the number features in a dataset, rendering the dot product unusable for vectors with differing number of elements. One approach to this problem is to reduce the dimensionality of eigenvectors in different time periods to the features shared between each dataset. The cosine similarity score will set the norm of each of these eigenvectors to 1, ensuring the range of similarity score lies between -1 and 1. While the R2-PCA algorithm can be used on datasets with variable number of features, it is important make certain that a majority of features remains constant over time; otherwise the accuracy of the cosine similarity test diminished in determining the flipping of eigenvectors. Variable features can frequently arise in financial time series datasets. For example, imagine a dataset in which the LIBOR feature is gradually phased out by the SOFR feature. Theability for R2-PCA to transition and compare eigenvectors of variable feature length can be an important tool for adding new performance measures and features that may not exist in a past time periods.
[0072] While R2-PCA is typically computed in the earliest time period available in the given data-set and rolled forward, it is not necessarily the only way to structure the recursion. One of the main objectives of R2-PCA is to produce stable results for a wide variety of financial time series metrics. This poses a potential issue when certain data-sets exhibit drastic shifts in performance measures due to market factors. Principal components for each rolling window time increment do not have the luxury of knowing what direction the next principal component will be in. Computing the cosine similarity of components between time periods give an idea of the movement of components over time and the overall stability of the data-set itself.
[0073] Ideally, data-sets that exhibit changes in regime do so gradually enough that the principal components can be slowly adjusted for each increment in the rolling window. In datasets where that is not that case, careful analysis must be taken in choosing the time period in which the R2-PCA model will initialized, as the components of the first initialization will set the precedent for following components in which they will be compared to using cosine similarity. Alternative solutions to this issue could include changing the features in the data-set and rolling the window in smaller time increments. Additionally, it is possible to separate the data-sets into distinct periods (e.g., regimes) and fit the R2-PCA individually on each period. Potentially, each fitting would save its own principal components in the previous period, so when an already established regime is re-entered the R2-PCA model will continue where the same regime left off.
[0074] The design of the R2-PCA module 215 is to run PCA in a recursive manner while altering the eigenvectors at each time step to diminish the negative effects of sign changes and eigenvector directions. Standard PCA requires inputs to be of dimension 2. The R2-PCA algorithm, depicted below in Table 1, includes the technique of converting a dataset of dimension (W, F, T, D) to a two dimensional size (T,D) so standard PCA can be employed at each increment in the rolling window. This reduction in dimension size is achieved by computing the individual covariance matrix for each element in F and then averaging the results prior to the eigendecomposition step. This allows to perform PCA on the average covariance. If a model willbe trained using multiple assets, it ensures that the overall features going into the model are uncorrelated even it cannot be guaranteed on an asset level.Table 1
[0075] A key test in demonstrating the accuracy of the R2-PCA model is to compare the results of the standard PCA on the entire dataset with the results of R2-PCA. It should be noted that running the standard PCA is this manner will have a look ahead bias and will only contain one set of eigenvectors for the entire dataset. This look ahead PCA model should only be used for testing as the projected data in older time periods are significantly influenced by future data. It should be noted that the computation of the look ahead algorithm should utilize the same methods in R2- PCA; essentially it will treat the entire dataset as one time period in the rolling window. When visually comparing results, the effects of normalization on a rolling window (R2-PCA) and applying PCA to the whole window will consistently alter the scaling of data between models. This factor is unavoidable, since it is impractical for R2-PCA to access the future data for normalization in the current rolling window increment without incurring look ahead bias. Instead, benchmarking requires a focus on the general shape of the outputs for both models to ensure the eigenvectors are correctly being flipped over time.
[0076] The effects of flipping eigenvectors can be viewed, for example, by plotting standard PCA on each rolling window increment with the results of the R2-PCA algorithm. Flips typically can be seen where the data appears to be multiplied by -1 and flipped over the axis. From a visual standpoint, it would appear as thought the reduced data would be in a period of low volatility if it were simply flipped over its axis. It is more difficult to distinguish between eigenvector flips and natural jumps in the market during periods of high volatility.
[0077] The facets included in the R2-PCA model could be composed of any group of data-sets that contains variables. For example, it could be a group of mutual funds which each mutual fund containing a data-set of performance measures. The number of facets can be variable each time the window is rolled, but the number of variables that each of the facet contain must be the same across all facets at any point in time. However, the number of variables can vary over time for all facets as described previously.
[0078] The amount of facets fed into the R2-PCA model highly depends on the model formulation. Since fitting multiple facets takes into account the average covariance, the resulting principal components are going to be similar to the case of fitting one face at the time if that facet is highly correlated to the average of the facets.
[0079] Fitting multiple facets at the same time ensures uniformity of feature importance for subsequent model trains. Although it cannot ensure that individual facets will have uncorrelated principal components, it ensures that the combination of all facets will be uncorrelated since they will be fed into the same model.
[0080] Interpretation of PCA or R2-PCA results is an important property to consider when assigning unique and meaningful labels to principal components. There exists a trade-off in R2- PCA analysis between orthogonality and explainability. Consider, for example, a data-set in which the R2-PCA model is run in which the data-set is concatenated from 3 labeled data-sets and the objective of the analysis is to obtain 3 principal components that represent the market. Two choices exist: either run R2-PCA on the entire concatenated data-set, or run R2-PCA on each labeled dataset independently. If R2-PCA is run on the entire data-set, the 3 principal components will be orthogonal and posses useful properties such as independence from one another. Then, consider running R2-PCA on the data-set split into 3 predefined groupings and extracting one principalcomponent from each. Now there are 3 components and each one definitively belongs to a predefined group in the market, however orthogonality is no longer guaranteed to the concatenated eigenvectors from each group. This will instigate the eigenvectors toward the direction of the standard basis, making a single element of each component larger than the rest making name assignment more solid. However, doing this creates a challenge in terms of naming conventions, where each principal component could represent the same characteristic found withing the dataset thus resulting in identical names. There is a significant risk that each component could be correlated with each other, especially if certain features dominate the measure of variation shared between data-sets. Balancing explainability and orthogonality requires testing each method and weighting the costs and benefits of each case.
[0081] Each element of an eigenvector represents a dimension of a feature space. By choosing the largest absolute value for elements of each eigenvector, tangible labels can be assigned to each eigenvector based on the name of the feature space of that element. Care must be taken when choosing the maximum, as an eigenvector in the incorrect direction of the data could results in the minimum having the most influence on the principal direction and thus should be named after its feature. This method of naming principal components makes the most sense when each eigenvector is close to the standard basis (where typically only 1 element has a large weight). Orthogonality constraints will help ensure a diverse range of names for each component.
[0082] Unsupervised learning models sometimes require back-tests using artificial data-sets with desired characteristics to best assess performance. The focus of this back-test is to examine how recursive PCA models handle principal components changing direction over time.
[0083] The setup for this back-test requires that two subsets of uniformly distributed data be generated and projected into uncorrelated sub spaces. In this example, data-sets in two dimensions with a correlation of zero will have clearly visible principal components where one subset of data lies on the x axis and the other subset on the y axis for the first time increment. To retain the uncorrelated nature of the data-set over time, the data should be centered but not normalized at each time increment.
[0084] Artificial data-sets allow for the parameterization of the change in principal component direction denoted as 9. To simulate principal component change overtime, at each subsequent timeperiod will take the previous periods data and rotate it by 0. Since the data is uncorrelated, rotating the data-set by 0 will also change the principal components by 0. An optional feature of this back- test is to randomly generate and project new data at each time increment. This will have the added effect of simulating eigenvector sign flipping since the data is centered but not normalized.
[0085] The R2-PCA module 215 utilizes the robustness of the cosine similarity measure to accommodate for financial time series data-sets with higher levels of covariance instability across time. By using PCA at each time increment, the principal components are guaranteed to point in the directions that maximize variation for that subset of data while incorporating the additional dimension of funds F, variable length features D.
[0086] FIG. 4B is a flowchart of a process for assessing performance data by the Al-based decision support platform of FIG. 1, according to one embodiment. In one embodiment, the AI- based decision support platform 101 performs the process 430 and is implemented in, for instance, a chip set including a processor and a memory as shown in FIG. 10. As shown, per step 431, the platform 101 collects data from one or more data sources related to an asset or a portfolio. The platform 101 also analyzes historic performance data for the asset or the portfolio, per step 433. In step 435, predictive performance data is generated for the asset or the portfolio. The platform 101 continually generates assessment data based on the historic performance data and the predictive performance using an artificial intelligence engine, as in step 437. The generated assessment data is output via a graphical user interface of UE 105a, for example (step 439).
[0087] FIGs. 5A-5H are diagrams of a graphical user interface (GUI) relating to data management processes performed by the Al-based decision support platform of FIG. 1, according to one embodiment. GUIs 501, 503, and 505 permit the user to specify the different types of sources of data to be collected. Such sources can be identified and selected based on asset types, macroeconomic factors, media, or even proprietary data. Via GUIs 507 and 509, the platform 101 can perform predictions on the selected data sources using various models: historic, predicted, stress testing, and / or backtesting for example. According to one embodiment, GUI 511 supports drilling down to permit user input of various aspects of mutual funds. GUI 513 illustrates the clustering feature of platform 101. Additionally, with GUI 515, different views of the data processing of clusters are supported.
[0088] FIGs. 6A-6D are diagrams of a GUI relating to asset allocation processes performed by the Al-based decision support platform of FIG. 1, according to one embodiment. Namely, through GUIs 601-605, different filters can be applied regarding how asset allocation can be executed. GUI 607 presents performance data associated with a selected asset or cluster of assets.
[0089] FIGs. 7A-7C are diagrams of a GUI relating to security selection processes performed by the Al-based decision support platform of FIG. 1, according to one embodiment. GUIs 701 and 703, by way of example, provides specification of various data filters for an asset. Results of the selection process is presented in GUI 705.
[0090] FIG. 8 illustrates an example neural network 801 (e.g., an example of the Al engine 211 implementing a machine learning model) that has an architecture including an input layer 803 comprising one or more input neurons 805, one or more hidden neuronal layers 807 comprising one or more hidden neurons 809, and an output layer 811 comprising one or more output neurons. In one embodiment, the architecture of the neural network 801 refers to the number of input neurons 805, the number of neuronal layers 807, the number of hidden neurons 809 in the neuronal layers 807, the number of output neurons, or a combination thereof. In addition, the architecture can refer to the activation function used by the neurons, the loss functions applied to train the neural network 801, parameters indicating whether the layers are fully connected (e.g., all neurons of one layer are connected to all neurons of another layer) or partially connected, and / or other equivalent characteristics, parameters, or properties of the neurons 805 / 809 / 813, neuronal layers 807, or neural network 801. Although the various embodiments described herein are discussed with respect to a neural network 801, it is contemplated that the various embodiments described herein are applicable to any type of machine learning model 109 that can be migrated between different architectures.
[0091] In one embodiment, the progressive path migrates an old architecture of a machine learning model 109 into a new architecture by incrementally adding and removing single neurons or neuronal layers, or smoothly changing activation functions in a fashion which does not affect performance of the machine learning model 109 by more than a designated performance change threshold. For example, a user may wish to migrate a machine learning model 109 from an architecture that has three hidden neuronal layers 807 with four hidden neurons 809 in each layerto a new architecture that has four hidden neuronal layers 807 with four hidden neurons 809 each. The machine learning model 109 has been trained using the old architecture for a significant period of time. To advantageously preserve the training already performed and maintain model performance at a target level, the system 100 can construct a progressive path with four steps that incremental adds one hidden neuron 809 to the new neuronal layer 807 at each step until the full new neuronal layer 807 is added. In other words, while the machine learning model 109 of the machine learning system 107 is being trained, a new technical solution or architecture may be discovered that can provide improvements to the machine learning model 109 or system 107. Then instead of replacing the old system architecture in a cut-off fashion, the system 100 can construct incremental steps that can be used to progressively migrate the existing trained machine learning model 109 to avoid catastrophic degradation of the trained machine learning model 109’s performance.
[0092] In one embodiment, while the progressive migration is being done, the training process continues. In this way, the newly added neurons learn relatively quickly their new roles in the machine learning model 109 as their context environment consists of neuronal layers 807 which already know their jobs (e.g., neuronal layers 807 with neurons 809 that have undergone at least some training). After migration the resulting machine learning model 109 has incorporated expert knowledge from the old architecture, but has a new architecture, new technologies incorporated, and / or the like which can potentially improve the performance and learning of the machine learning model 109 in the future. Accordingly, the embodiments of the system 100 described herein provide technical advantages including, but not limited to, providing long-lived machine learning systems 107 that can be trained better while incorporating new advances in machine learning technologies (e.g., neural network technologies).
[0093] The processes described herein for providing decision support may be advantageously implemented via software, hardware, firmware or a combination of software and / or firmware and / or hardware. For example, the processes described herein, may be advantageously implemented via processor(s), Digital Signal Processing (DSP) chip, an Application Specific Integrated Circuit (ASIC), Field Programmable Gate Arrays (FPGAs), etc. Such exemplary hardware for performing the described functions is detailed below.
[0094] FIG. 9 illustrates a computer system 900 upon which various embodiments of the invention may be implemented. Although computer system 900 is depicted with respect to a particular device or equipment, it is contemplated that other devices or equipment (e.g., network elements, servers, etc.) within FIG. 9 can deploy the illustrated hardware and components of system 900. Computer system 900 is programmed (e.g., via computer program code or instructions) to provide decision support as described herein and includes a communication mechanism such as a bus 910 for passing information between other internal and external components of the computer system 900. Information (also called data) is represented as a physical expression of a measurable phenomenon, typically electric voltages, but including, in other embodiments, such phenomena as magnetic, electromagnetic, pressure, chemical, biological, molecular, atomic, sub-atomic and quantum interactions. For example, north and south magnetic fields, or a zero and non-zero electric voltage, represent two states (0, 1) of a binary digit (bit). Other phenomena can represent digits of a higher base. A superposition of multiple simultaneous quantum states before measurement represents a quantum bit (qubit). A sequence of one or more digits constitutes digital data that is used to represent a number or code for a character. In some embodiments, information called analog data is represented by a near continuum of measurable values within a particular range. Computer system 900, or a portion thereof, constitutes a means for performing one or more steps of the processes described herein, including that of FIG. 3.
[0095] A bus 910 includes one or more parallel conductors of information so that information is transferred quickly among devices coupled to the bus 910. One or more processors 902 for processing information are coupled with the bus 910.
[0096] A processor (or multiple processors) 902 performs a set of operations on information as specified by computer program code related to providing decision support. The computer program code is a set of instructions or statements providing instructions for the operation of the processor and / or the computer system to perform specified functions. The code, for example, may be written in a computer programming language that is compiled into a native instruction set of the processor. The code may also be written directly using the native instruction set (e.g., machine language). The set of operations include bringing information in from the bus 910 and placing information on the bus 910. The set of operations also typically include comparing two or more units of information, shifting positions of units of information, and combining two or more unitsof information, such as by addition or multiplication or logical operations like OR, exclusive OR (XOR), and AND. Each operation of the set of operations that can be performed by the processor is represented to the processor by information called instructions, such as an operation code of one or more digits. A sequence of operations to be executed by the processor 902, such as a sequence of operation codes, constitute processor instructions, also called computer system instructions or, simply, computer instructions. Processors may be implemented as mechanical, electrical, magnetic, optical, chemical, or quantum components, among others, alone or in combination.
[0097] Computer system 900 also includes a memory 904 coupled to bus 910. The memory 904, such as a random access memory (RAM) or any other dynamic storage device, stores information including processor instructions for providing real-time data analysis to support decision making. Dynamic memory allows information stored therein to be changed by the computer system 900. RAM allows a unit of information stored at a location called a memory address to be stored and retrieved independently of information at neighboring addresses. The memory 904 is also used by the processor 902 to store temporary values during execution of processor instructions. The computer system 900 also includes a read only memory (ROM) 906 or any other static storage device coupled to the bus 910 for storing static information, including instructions, that is not changed by the computer system 900. Some memory is composed of volatile storage that loses the information stored thereon when power is lost. Also coupled to bus 910 is a non-volatile (persistent) storage device 908, such as a magnetic disk, optical disk or flash card, for storing information, including instructions, that persists even when the computer system 900 is turned off or otherwise loses power.
[0098] Information, including instructions for providing real-time data analysis to support decision making, at least in part, on analysis of collected information, is provided to the bus 910 for use by the processor from an external input device 912, such as a keyboard containing alphanumeric keys operated by a human user, a microphone, an Infrared (IR) remote control, a joystick, a game pad, a stylus pen, a touch screen, or a sensor. A sensor detects conditions in its vicinity and transforms those detections into physical expression compatible with the measurable phenomenon used to represent information in computer system 900. Other external devices coupled to bus 910, used primarily for interacting with humans, include a display device 914, such as a vacuum fluorescent display (VFD), a liquid crystal display (LCD), a light-emitting diode(LED), an organic light-emitting diode (OLED), a quantum dot display, a virtual reality (VR) headset, a plasma screen, a cathode ray tube (CRT), or a printer for presenting text or images, and a pointing device 916, such as a mouse, a trackball, cursor direction keys, or a motion sensor, for controlling a position of a small cursor image presented on the display 914 and issuing commands associated with graphical elements presented on the display 914, and one or more camera sensors 994 for capturing, recording and causing to store one or more still and / or moving images (e.g., videos, movies, etc.) which also may comprise audio recordings. In some embodiments, for example, in embodiments in which the computer system 900 performs all functions automatically without human input, one or more of external input device 912, a display device 914 and pointing device 916 may be omitted.
[0099] In the illustrated embodiment, special purpose hardware, such as an application specific integrated circuit (ASIC) 920, is coupled to bus 910. The special purpose hardware is configured to perform operations not performed by processor 902 quickly enough for special purposes. Examples of ASICs include graphics accelerator cards for generating images for display 914, cryptographic boards for encrypting and decrypting messages sent over a network, speech recognition, and interfaces to special external devices, such as robotic arms and medical scanning equipment that repeatedly perform some complex sequence of operations that are more efficiently implemented in hardware.
[0100] Computer system 900 also includes one or more instances of a communications interface 970 coupled to bus 910. Communication interface 970 provides a one-way or two-way communication coupling to a variety of external devices that operate with their own processors, such as printers, scanners, and external disks. In general, the coupling is with a network link 978 that is connected to a local network 980 to which a variety of external devices with their own processors are connected. For example, communication interface 970 may be a parallel port or a serial port or a universal serial bus (USB) port on a personal computer. In some embodiments, communications interface 970 provides an information communication connection to a corresponding type of telephone line. In some embodiments, a communication interface 970 is a cable modem that converts signals on bus 910 into signals for a communication connection over a coaxial cable or into optical signals for a communication connection over a fiber optic cable. As another example, communications interface 970 may be a local area network (LAN) card toprovide a data communication connection to a compatible LAN, such as Ethernet. Wireless links may also be implemented. For wireless links, the communications interface 970 sends or receives or both sends and receives electrical, acoustic or electromagnetic signals, including infrared and optical signals, that carry information streams, such as digital data. For example, in wireless handheld devices, such as mobile telephones like cell phones, the communications interface 970 includes a radio band electromagnetic transmitter and receiver called a radio transceiver. In certain embodiments, the communications interface 970 enables connection to the communication network 97 in support of the Al-based decision support platform 101.
[0101] The term “computer-readable medium” as used herein refers to any medium that participates in providing information to processor 902, including instructions for execution. Such a medium may take many forms, including, but not limited to a computer-readable storage medium (e.g., non-volatile media, volatile media), and transmission media. Non-transitory media, such as non-volatile media, include, for example, optical or magnetic disks, such as storage device 908. Volatile media include, for example, dynamic memory 904. Transmission media include, for example, twisted pair cables, coaxial cables, copper wire, fiber optic cables, and carrier waves that travel through space without wires or cables, such as acoustic waves and electromagnetic waves, including radio, optical and infrared waves. Signals include man-made transient variations in amplitude, frequency, phase, polarization or other physical properties transmitted through the transmission media. Common forms of computer-readable media include, for example, a floppy disk, a flexible disk, hard disk, magnetic tape, any other magnetic medium, a CD-ROM, CDRW, DVD, any other optical medium, punch cards, paper tape, optical mark sheets, any other physical medium with patterns of holes or other optically recognizable indicia, a RAM, a PROM, an EPROM, a FLASH-EPROM, an EEPROM, a flash memory, any other memory chip or cartridge, a carrier wave, or any other medium from which a computer can read. The term computer-readable storage medium is used herein to refer to any computer-readable medium except transmission media.
[0102] Logic encoded in one or more tangible media includes one or both of processor instructions on a computer-readable storage media and special purpose hardware, such as ASIC 920.
[0103] Network link 978 typically provides information communication using transmission media through one or more networks to other devices that use or process the information. For example, network link 978 may provide a connection through local network 980 to a host computer 982 or to equipment 984 operated by an Internet Service Provider (ISP). ISP equipment 984 in turn provides data communication services through the public, world-wide packet-switching communication network of networks now commonly referred to as the Internet 990.
[0104] A computer called a server host 992 connected to the Internet hosts a process that provides a service in response to information received over the Internet. For example, server host 992 hosts a process that provides information representing video data for presentation at display 914. It is contemplated that the components of system 900 can be deployed in various configurations within other computer systems, e.g., host 982 and server 992.
[0105] At least some embodiments of the invention are related to the use of computer system 900 for implementing some or all of the techniques described herein. According to one embodiment of the invention, those techniques are performed by computer system 900 in response to processor 902 executing one or more sequences of one or more processor instructions contained in memory 904. Such instructions, also called computer instructions, software and program code, may be read into memory 904 from another computer-readable medium such as storage device 908 or network link 978. Execution of the sequences of instructions contained in memory 904 causes processor 902 to perform one or more of the method steps described herein. In alternative embodiments, hardware, such as ASIC 920, may be used in place of or in combination with software to implement the invention. Thus, embodiments of the invention are not limited to any specific combination of hardware and software, unless otherwise explicitly stated herein.
[0106] The signals transmitted over network link 978 and other networks through communications interface 970, carry information to and from computer system 900. Computer system 900 can send and receive information, including program code, through the networks 980, 990 among others, through network link 978 and communications interface 970. In an example using the Internet 990, a server host 992 transmits program code for a particular application, requested by a message sent from computer 900, through Internet 990, ISP equipment 984, local network 980 and communications interface 970. The received code may be executed by processor902 as it is received, or may be stored in memory 904 or in storage device 908 or any other nonvolatile storage for later execution, or both. In this manner, computer system 900 may obtain application program code in the form of signals on a carrier wave.
[0107] Various forms of computer readable media may be involved in carrying one or more sequence of instructions or data or both to processor 902 for execution. For example, instructions and data may initially be carried on a magnetic disk of a remote computer such as host 982. The remote computer loads the instructions and data into its dynamic memory and sends the instructions and data over a telephone line using a modem. A modem local to the computer system 900 receives the instructions and data on a telephone line and uses an infra-red transmitter to convert the instructions and data to a signal on an infra-red carrier wave serving as the network link 978. An infrared detector serving as communications interface 970 receives the instructions and data carried in the infrared signal and places information representing the instructions and data onto bus 910. Bus 910 carries the information to memory 904 from which processor 902 retrieves and executes the instructions using some of the data sent with the instructions. The instructions and data received in memory 904 may optionally be stored on storage device 908, either before or after execution by the processor 902.
[0108] FIG. 10 illustrates a chip set or chip 1000 upon which various embodiments of the invention may be implemented. Chip set 1000 is programmed to the processes (e.g., FIGs. 4A and 4B) as described herein and includes, for instance, the processor and memory components described with respect to FIG. 9 incorporated in one or more physical packages (e.g., chips). By way of example, a physical package includes an arrangement of one or more materials, components, and / or wires on a structural assembly (e.g., a baseboard) to provide one or more characteristics such as physical strength, conservation of size, and / or limitation of electrical interaction. It is contemplated that in certain embodiments the chip set 1000 can be implemented in a single chip. It is further contemplated that in certain embodiments the chip set or chip 1000 can be implemented as a single “system on a chip.” It is further contemplated that in certain embodiments a separate ASIC would not be used, for example, and that all relevant functions as disclosed herein would be performed by a processor or processors. Chip set or chip 1000, or a portion thereof, constitutes a means for performing one or more steps of providing user interface navigation information associated with the availability of functions. Chip set or chip 1000, or aportion thereof, constitutes a means for performing one or more steps of providing decision support.
[0109] In one embodiment, the chip set or chip 1000 includes a communication mechanism such as a bus 1001 for passing information among the components of the chip set 1000. A processor 1003 has connectivity to the bus 1001 to execute instructions and process information stored in, for example, a memory 1005. The processor 1003 may include one or more processing cores with each core configured to perform independently. A multi-core processor enables multiprocessing within a single physical package. Examples of a multi-core processor include two, four, eight, or greater numbers of processing cores. Alternatively or in addition, the processor 1003 may include one or more microprocessors configured in tandem via the bus 1001 to enable independent execution of instructions, pipelining, and multithreading. The processor 1003 may also be accompanied with one or more specialized components to perform certain processing functions and tasks such as one or more digital signal processors (DSP) 1007, or one or more application-specific integrated circuits (ASIC) 1009. A DSP 1007 typically is configured to process real-world signals (e.g., sound) in real time independently of the processor 1003. Similarly, an ASIC 1009 can be configured to performed specialized functions not easily performed by a more general purpose processor. Other specialized components to aid in performing the inventive functions described herein may include one or more field programmable gate arrays (FPGA), one or more controllers, or one or more other special-purpose computer chips.
[0110] In one embodiment, the chip set or chip 1000 includes merely one or more processors and some software and / or firmware supporting and / or relating to and / or for the one or more processors.
[0111] The processor 1003 and accompanying components have connectivity to the memory 1005 via the bus 1001. The memory 1005 includes both dynamic memory (e.g., RAM, magnetic disk, writable optical disk, etc.) and static memory (e.g., ROM, CD-ROM, etc.) for storing executable instructions that when executed perform the inventive steps described herein to provide providing decision support. The memory 1005 also stores the data associated with or generated by the execution of the inventive steps.
[0112] FIG. 11 is a diagram of exemplary components of a mobile terminal (e.g., handset) for communications, which is capable of operating in the system of FIG. 1, according to one embodiment. In some embodiments, mobile terminal 1101, or a portion thereof, constitutes a means for performing one or more steps of the described processes. Generally, a radio receiver is often defined in terms of front-end and back-end characteristics. The front-end of the receiver encompasses all of the Radio Frequency (RF) circuitry whereas the back-end encompasses all of the base-band processing circuitry. As used in this application, the term “circuitry” refers to both: (1) hardware-only implementations (such as implementations in only analog and / or digital circuitry), and (2) to combinations of circuitry and software (and / or firmware) (such as, if applicable to the particular context, to a combination of processor(s), including digital signal processor(s), software, and memory(ies) that work together to cause an apparatus, such as a mobile phone or server, to perform various functions). This definition of “circuitry” applies to all uses of this term in this application, including in any claims. As a further example, as used in this application and if applicable to the particular context, the term “circuitry” would also cover an implementation of merely a processor (or multiple processors) and its (or their) accompanying software / or firmware. The term “circuitry” would also cover if applicable to the particular context, for example, a baseband integrated circuit or applications processor integrated circuit in a mobile phone or a similar integrated circuit in a cellular network device or other network devices.
[0113] Pertinent internal components of the telephone include a Main Control Unit (MCU) 1103, a Digital Signal Processor (DSP) 1105, and a receiver / transmitter unit including a microphone gain control unit and a speaker gain control unit. A main display unit 1107 provides a display to the user in support of various applications and mobile terminal functions that perform or support the steps of providing decision support. The display 1107 includes display circuitry configured to display at least a portion of a user interface of the mobile terminal (e.g., mobile telephone). Additionally, the display 1107 and display circuitry are configured to facilitate user control of at least some functions of the mobile terminal. An audio function circuitry 1109 includes a microphone 1111 and microphone amplifier that amplifies the speech signal output from the microphone 1111. The amplified speech signal output from the microphone 1111 is fed to a coder / decoder (CODEC) 1113.
[0114] A radio section 1115 amplifies the power and converts frequency in order to communicate with a base station, which is included in a mobile communication system, via antenna 1117. The power amplifier (PA) 1119 and the transmitter / modulation circuitry are operationally responsive to the MCU 1103, with an output from the PA 1119 coupled to the duplexer 1121 or circulator or antenna switch, as known in the art. The PA 1119 also couples to a battery interface and power control unit 1120.
[0115] In use, a user of mobile terminal 1101 speaks into the microphone 1111 and his or her voice along with any detected background noise is converted into an analog voltage. The analog voltage is then converted into a digital signal through the Analog to Digital Converter (ADC) 1123. The control unit 1103 routes the digital signal into the DSP 1105 for processing therein, such as speech encoding, channel encoding, encrypting, and interleaving. In one embodiment, the processed voice signals are encoded, by units not separately shown, using a cellular transmission protocol such as enhanced data rates for global evolution (EDGE), general packet radio service (GPRS), global system for mobile communications (GSM), Internet protocol multimedia subsystem (IMS), universal mobile telecommunications system (UMTS), etc., as well as any other suitable wireless medium, e.g., microwave access (WiMAX), Long Term Evolution (LTE) networks, code division multiple access (CDMA), wideband code division multiple access (WCDMA), wireless fidelity (WiFi), satellite, and the like, or any combination thereof
[0116] The encoded signals are then routed to an equalizer 1125 for compensation of any frequency-dependent impairments that occur during transmission though the air such as phase and amplitude distortion. After equalizing the bit stream, the modulator 1127 combines the signal with an RF signal generated in the RF interface 1129. The modulator 1127 generates a sine wave by way of frequency or phase modulation. In order to prepare the signal for transmission, an up- converter 1131 combines the sine wave output from the modulator 1127 with another sine wave generated by a synthesizer 1133 to achieve the desired frequency of transmission. The signal is then sent through a PA 1119 to increase the signal to an appropriate power level. In practical systems, the PA 1119 acts as a variable gain amplifier whose gain is controlled by the DSP 1105 from information received from a network base station. The signal is then filtered within the duplexer 1121 and optionally sent to an antenna coupler 1135 to match impedances to provide maximum power transfer. Finally, the signal is transmitted via antenna 1117 to a local base station.An automatic gain control (AGC) can be supplied to control the gain of the final stages of the receiver. The signals may be forwarded from there to a remote telephone which may be another cellular telephone, any other mobile phone or a land-line connected to a Public Switched Telephone Network (PSTN), or other telephony networks.
[0117] Voice signals transmitted to the mobile terminal 1101 are received via antenna 1117 and immediately amplified by a low noise amplifier (LNA) 1137. A down-converter 1139 lowers the carrier frequency while the demodulator 1141 strips away the RF leaving only a digital bit stream. The signal then goes through the equalizer 1125 and is processed by the DSP 1105. A Digital to Analog Converter (DAC) 1143 converts the signal and the resulting output is transmitted to the user through the speaker 1145, all under control of a Main Control Unit (MCU) 1103 which can be implemented as a Central Processing Unit (CPU).
[0118] The MCU 1103 receives various signals including input signals from the keyboard 1147. The keyboard 1147 and / or the MCU 1103 in combination with other user input components (e.g., the microphone 1111) comprise a user interface circuitry for managing user input. The MCU 1103 runs a user interface software to facilitate user control of at least some functions of the mobile terminal 1101 to provide decision support. The MCU 1103 also delivers a display command and a switch command to the display 1107 and to the speech output switching controller, respectively. Further, the MCU 1103 exchanges information with the DSP 1105 and can access an optionally incorporated SIM card 1149 and a memory 1151. In addition, the MCU 1103 executes various control functions required of the terminal. The DSP 1105 may, depending upon the implementation, perform any of a variety of conventional digital processing functions on the voice signals. Additionally, DSP 1105 determines the background noise level of the local environment from the signals detected by microphone 1111 and sets the gain of microphone 1111 to a level selected to compensate for the natural tendency of the user of the mobile terminal 1101.
[0119] The CODEC 1113 includes the ADC 1123 and DAC 1143. The memory 1151 stores various data including call incoming tone data and is capable of storing other data including music data received via, e.g., the global Internet. The software module could reside in RAM memory, flash memory, registers, or any other form of writable storage medium known in the art. The memory device 1151 may be, but not limited to, a single memory, CD, DVD, ROM, RAM,EEPROM, optical storage, magnetic disk storage, flash memory storage, or any other non-volatile storage medium capable of storing digital data.
[0120] An optionally incorporated SIM card 1149 carries, for instance, important information, such as the cellular phone number, the carrier supplying service, subscription details, and security information. The SIM card 1149 serves primarily to identify the mobile terminal 1101 on a radio network. The card 1149 also contains a memory for storing a personal telephone number registry, text messages, and user specific mobile terminal settings.
[0121] Further, one or more camera sensors 1 153 may be incorporated onto the mobile station 1101 wherein the one or more camera sensors may be placed at one or more locations on the mobile station. Generally, the camera sensors may be utilized to capture, record, and cause to store one or more still and / or moving images (e.g., videos, movies, etc.) which also may comprise audio recordings.
[0122] While the invention has been described in connection with a number of embodiments and implementations, the invention is not so limited but covers various obvious modifications and equivalent arrangements, which fall within the purview of the appended claims. Although features of the invention are expressed in certain combinations among the claims, it is contemplated that these features can be arranged in any combination and order.
Claims
CLAIMSWHAT IS CLAIMED IS:
1. A method comprising: generating a data-set having, a first dimension representing a rolling window in a time series, a second dimension representing number of funds, a third dimension representing number of observations through a predetermined time period, and a fourth dimension representing number of features; processing the data-set by recursively determining principal components of a reduced dataset from a portion of the data-set, wherein the principal components are determined at each increment in the rolling window; generating training data based on the processed data-set; and outputting the training data to a learning model.
2. The method of claim 1, wherein the data-set includes financial data relating to the funds, and the items of the second dimension correspond to the funds.
3. The method of claim 1, wherein the processing of the data-set further comprises: computing eigenvectors; generating cosine similarity scores for the data-set; and altering the eigenvectors at each increment to account for sign change and eigenvector directions according to the cosine similarity scores.
4. The method of claim 3, further comprising: converting the data-set into a reduced data-set having a two dimensional size; and inputting the reduced data-set to standard Principal Component Analysis algorithm at each increment in the rolling window.
5. The method of claim 4, wherein the reduced data-set comprises the third dimension and the fourth dimension.
6. The method of claim 3, wherein a portion of the features represent a high level of variance, and random noise.
7. The method of claim 3, wherein the converting step comprises: computing individual covariance matrix for each element associate with the first number of funds; averaging results of the individual covariance matrices; and performing eigendecomposition of the averaged results.
8. A system comprising: a memory configured to store computer-executable instructions; and one or more processors configured to execute the instructions to: generate a data-set having, a first dimension representing a rolling window in a time series, a second dimension representing number of funds, a third dimension representing number of observations through a predetermined time period, and a fourth dimension representing number of features; process the data-set by recursively determining principal components of a reduced dataset from a portion of the data-set, wherein the principal components are determined at each increment in the rolling window; generate training data based on the processed data-set; and output the training data to a learning model.
9. The system of claim 8, wherein the data-set includes financial data relating to the funds, and the items of the second dimension correspond to the funds.
10. The system of claim 8, wherein the processing of the data-set further comprises: computing eigenvectors; generating cosine similarity scores for the data-set; and altering the eigenvectors at each increment to account for sign change and eigenvector directions according to the cosine similarity scores.
11. The system of claim 10, wherein the one or more processors are further configured to execute the instructions to: convert the data-set into a reduced data-set having a two dimensional size; and input the reduced data-set to standard Principal Component Analysis algorithm at each increment in the rolling window.
12. The system of claim 11, wherein the reduced data-set comprises the third dimension and the fourth dimension.
13. The system of claim 9, wherein a portion of the features represent a high level of variance, and random noise.
14. The system of claim 9, wherein the conversion comprises: computing individual covariance matrix for each element associate with the first number of funds; averaging results of the individual covariance matrices; and performing eigendecomposition of the averaged results.
15. An apparatus comprising: at least one processor; andat least one memory including computer program code for one or more programs, the at least one memory and the computer program code configured to, with the at least one processor, cause the apparatus to perform at least the following, generate a data-set having, a first dimension representing a rolling window in a time series, a second dimension representing number of funds, a third dimension representing number of observations through a predetermined time period, and a fourth dimension representing number of features; process the data-set by recursively determining principal components of a reduced dataset from a portion of the data-set, wherein the principal components are determined at each increment in the rolling window; generate training data based on the processed data-set; and output the training data to a learning model.
16. The apparatus of claim 15, wherein the data-set includes financial data relating to the funds, and the items of the second dimension correspond to the funds.
17. The apparatus of claim 15, wherein the processing of the data-set further comprises: computing eigenvectors; generating cosine similarity scores for the data-set; and altering the eigenvectors at each increment to account for sign change and eigenvector directions according to the cosine similarity scores.
18. The apparatus of claim 17, wherein the apparatus is further caused to: convert the data-set into a reduced data-set having a two dimensional size; and input the reduced data-set to standard Principal Component Analysis algorithm at each increment in the rolling window.
18. The apparatus of claim 15, wherein the reduced data-set comprises the third dimension and the fourth dimension.
19. The apparatus of claim 18, wherein the reduced data-set comprises the third dimension and the fourth dimension, and a portion of the features represent a high level of variance, and random noise.
20. The apparatus of claim 15, wherein the conversion comprises: computing individual covariance matrix for each element associate with the first number of funds; averaging results of the individual covariance matrices; and performing eigendecomposition of the averaged results.
Citation Information
Patent Citations
Computer Methods and Systems for Dimensionality Reduction in Conjunction with Spectral Clustering of Financial or Other Data
US20210256538A1
Cited By
Marine scientific research project fund execution progress monitoring model construction method
CN121836129A