The disclosed embodiments generally relate to computer-implemented systems and processes that facilitate a prediction service-specific events using adaptively trained artificial intelligence processes.
Today, many financial institutions offer a variety of financial products or services to their customers, both through in-person branch banking and through various digital channels, and examples of these financial products or services include, among other things, financial planning services. When provisioned to a corresponding customer of the financial institution, the financial planning services may analyze one or more personal or financial goals of the customer in conjunction with a current, or expected, financial position of the customer, and based on this analysis, the provisioned financial planning services may recommend an investment or savings strategy that, if implemented by the customer, enables the customer to achieve the one or more personal or financial goals.
In some examples, an apparatus includes a memory storing instructions, a communications interface, and at least one processor coupled to the memory and the communications interface. The at least one processor is configured to execute the instructions to generate an input dataset based on elements of first interaction data associated with a first temporal interval. The elements of first interaction data include at least one of an element of geographic data or an element of engagement data. The at least one processor is further configured to, based on an application of a trained artificial intelligence process to the input dataset, generate output data representative of a predicted likelihood of an occurrence of an attrition event during a second temporal interval. The second temporal interval is subsequent to the first temporal interval and is separated from the first temporal interval by a corresponding buffer interval. The at least one processor is further configured to transmit at least a portion of the generated output data to a computing system via the communications interface. The computing system is configured to perform operations based on the portion of the output data.
In other examples, a computer-implemented method includes generating, using at least one processor, an input dataset based on elements of first interaction data associated with a first temporal interval. The elements of first interaction data include at least one of an element of geographic data or an element of engagement data. The computer-implemented method also includes, based on an application of a trained artificial intelligence process to the input dataset, generating, using the at least one processor, output data representative of a predicted likelihood of an occurrence of an attrition event during a second temporal interval. The second temporal interval is subsequent to the first temporal interval and is separated from the first temporal interval by a corresponding buffer interval. The computer-implemented method also includes transmitting, using the at least one processor, at least a portion of the generated output data to a computing system. The computing system is configured to perform operations based on the portion of the output data.
Further, in some examples, a tangible, non-transitory computer-readable medium stores instructions that, when executed by at least one processor, cause the at least one processor to perform a method that includes generating an input dataset based on elements of first interaction data associated with a first temporal interval. The elements of first interaction data include at least one of an element of geographic data or an element of engagement data. The method also includes, based on an application of a trained artificial intelligence process to the input dataset, generating output data representative of a predicted likelihood of an occurrence of an attrition event during a second temporal interval. The second temporal interval is subsequent to the first temporal interval and is separated from the first temporal interval by a corresponding buffer interval. The method also includes transmitting at least a portion of the generated output data to a computing system. The computing system is configured to perform operations based on the portion of the output data.
It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the invention, as claimed. Further, the accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate aspects of the present disclosure and together with the description, serve to explain principles of the disclosed exemplary embodiments, as set forth in the accompanying claims.
Like reference numbers and designations in the various drawings indicate like elements.
Modern financial institutions offer a variety of financial products or services to their customers, both through in-person branch banking and through various digital channels, and examples of these financial products or services include, among other things, financial planning services. For instance, and when provisioned to a corresponding customer of the financial institution, the financial planning services may enable the financial institution to analyze one or more personal or financial goals of the customer in conjunction with a current, or expected, financial position of the customer. Based on this analysis, and through the provisioning of these financial planning services, the financial institution may recommend an investment or savings strategy that, if implemented by the customer, enables the customer to achieve the one or more personal or financial goals during a temporal interval desired by the customer. By way of the example, the financial planning services may analyze a composition and value of a customer's investment portfolio and savings accounts, and recommend a strategy that enables the customer to fund a child's college education by increasing a yield of the customer's investment portfolio (e.g., by reallocating invested funds to different investment products), while simultaneously reducing the customer's tax exposure.
Further, the provisioning of the financial planning services to the customer may involve an initial, in-person or virtual meeting between the customer and a financial planner (e.g., a representative of the financial institution), and may also extend across multiple, subsequent in-person or virtual meetings. During these subsequent in-person or virtual meetings, the financial planner may adjust or refine a previously recommended strategy to reflect current market conditions and additionally, or alternatively, to reflect changes in the customer's financial position or changes in the customer's personal or financial goals. In many instances, the financial institution experiences attrition among customers associated with these financial planning services upon completion of the initial, in-person or virtual meeting.
For example, one or more customers of the financial planning services provisioned by the financial institution (e.g., participants in the financial-planning services) may experience significant changes to their current financial position (e.g., changes in income or cash flow, etc.), or to the personal or financial goals (e.g., the child may no longer elect to attend college, etc.), that renders a continuation of these financial planning services unnecessary or moot. In other examples, one or more of the participants may become disinterested in the provisioned financial planning services due to a required time commitment to the subsequent in-person or virtual meetings or due to a temporal separation from the initial meeting. As described herein, a decision by each of these participants to cease their participation in the financial planning services may represent an occurrence of a corresponding service-specific attrition event associated with the financial planning services and with corresponding ones of the participants.
In some instances, financial planners and other representatives of the financial institution may attempt to identify one or more of the financial-planning customers that are likely to cease participation in the provisioned financial planning services and such, as likely to be involved in a future, service-specific attrition events, based on the subjective knowledge of financial planners and representatives of the financial institution. By way of example, and during an initial or subsequent meeting, or based on digital or voice communications during intervals between successive meetings, the financial planners and representatives may attempt to identify changes in the customers' financial positions or personal or financial goals that are associated with, and indicative of, occurrences of prior occurrences of attrition events involving other customers of the financial institution. These changes may, for example, be identified based on an application of or more predetermined rules to a customer's spending or savings behavior (e.g., an account balance declines below a predetermined threshold, a customer's cash withdrawals from a brokerage account exceed a predetermined threshold, etc.), or based on an experience, or an intuition, of the financial planners and representatives. Although these coarse, rules-based processes, and these experience-driven, subjective processes may be capable of identifying prior or ongoing changes in changes in the customers' financial positions or in the customer's personal or financial goals, these rules-based, subjective processes are often incapable of identifying often-subtle changes in a customer's spending or savings behavior, or in the customer's interaction with the financial planners of representatives of the financial institution, that, in real-time, would signal a likelihood of a future attrition event involving the customer and that would enable the financial institution to apply one or more treatments to reduce the likelihood of any future attrition event involving the customer.
In other examples, described herein, a machine-learning or artificial-intelligence process may be adaptively trained to predict a likelihood of an occurrence of service-specific attrition event involving a participant in the financial planning services during a future temporal interval using training data associated with a first prior temporal interval, and using validation data associated with a second, and distinct, prior temporal interval. As described herein, the service-specific attrition event may be associated with one or more financial planning services provisioned to the customers by the financial institution, and the occurrence of the service-specific attrition event may correspond to a cessation, by the participant, of their participation in the financial planning services provisioned by the financial institution.
As described herein, the machine-learning or artificial-intelligence process may include an ensemble or decision-tree process, such as a gradient-boosted decision-tree process (e.g., an XGBoost process), and the training and validation data may include, but are not limited to, elements of profile, account, transaction, and financial-planning data characterizing corresponding ones of the customers of the financial institution that represent a current or past participant in the financial planning services provisioned by the financial institution. Further, in some instances, the training and validation data may include, among other things, elements of attrition data identifying and characterizing prior occurrences of service-specific attrition events associated with, or involving, the current or past participants, along with elements of reporting data, such as credit-bureau data or market reporting data, characterizing the current or past participants or positions in various securities held by these participants, e.g., within corresponding portfolios.
Through the implementation of the exemplary processes described herein, the one or more computing systems of the financial institution (e.g., which may collectively establish a distributed computing cluster associated with the financial institution) may perform operations that adaptively, and successively, train and validate the machine-learning or artificial-intelligence process based on corresponding subsets of the training and validation data. Further, the trained machine-learning or artificial-intelligence process (e.g., the trained gradient-boosted, decision-tree process described herein) may further ingest input datasets associated with one or more customers of the financial institution that represent all, or a selected subset of, the current participants in the financial planning services provisioned by the financial institutions. In some instances, the one or more computing systems of the financial institution may perform any of the exemplary processes described herein to generate input datasets associated with all, or a selected subset, of the customers of the financial institution, and to apply the trained machine-learning or artificial-intelligence process to the input datasets, in accordance with a predetermined schedule (e.g., on a daily basis, on a monthly basis, etc.). For example, the selected subset may include one or more customers of the financial institution that represent current participants in the provisioned financial planning services.
Based on the application of the trained machine-learning or artificial-intelligence process to the input datasets during at a temporal production point during a current temporal interval, the one or more FI computing systems may generate elements of output data indicative of a likelihood of an occurrence of a service-specific attrition event involving the participants during a future temporal interval (e.g., during a future three-month period, etc.). As described herein, the elements of output data may include, for each of the participants, a numerical score indicative of the likelihood of the occurrence of the corresponding service-specific attrition event, and each of the numerical scores may range from zero to unity. For example, and for a corresponding one or the participants, a numerical score of zero may be indicative of a minimal likelihood of the occurrence of the corresponding service-specific attrition event during the future temporal interval, and a numerical score of unity may be indicative of a maximum likelihood of the occurrence of the corresponding service-specific attrition event during the future temporal interval. Further, and as described herein, the one or more computing systems of the financial institutions may transmit the elements of output data to one or more additional computing systems associated with the financial institution, which may perform operations that engage, proactively, one or more of the participants in the financial planning services (e.g., those associated with predicted occurrences of the service-specific attrition events) in an attempt to maintain their participation and reduce occurrences of future service-specific attrition events involving the financial planning services provisioned by the financial institution.
Certain of these exemplary processes, which adaptively train and validate a machine-learning or artificial-intelligence process using customer-specific training and validation datasets associated with respective training and validation periods, and which apply the trained and validated machine-learning or artificial-intelligence process to additional customer-specific input datasets, may enable the one or more of the computing systems of the financial institutions to predict, in real-time, a likelihood of an occurrence of service-specific attrition event involving one or more current participants in the financial planning services during a predetermined, future temporal interval (e.g., via an implementation of one or more parallelized, fault-tolerant distributed computing and analytical protocols across clusters of graphical processing units (GPUs) and/or tensor processing units (TPUs)). These exemplary processes may, for example, be implemented in addition to, or as alternative to, existing rules-based or experience-based, subjective processes through which the one or more computing systems of the financial institutions detect prior or ongoing changes in changes in a customer's financial positions or in the customer's personal or financial goals that would indicate a likelihood that the customer would decline to participate in the provisioned financial planning services.
In some examples, each of source systems 110 (including internal source systems 110A and 110B and external source system 110C) and FI computing system 130 may represent a computing system that includes one or more servers and tangible, non-transitory memories storing executable code and application modules. Further, the one or more servers may each include one or more processors, which may be configured to execute portions of the stored code or application modules to perform operations consistent with the disclosed embodiments. For example, the one or more processors may include a central processing unit (CPU) capable of processing a single operation (e.g., a scalar operations) in a single clock cycle. Further, each of source systems 110 (including internal source systems 110A and 110B and external source system 110C) and FI computing system 130 may also include a communications interface, such as one or more wireless transceivers, coupled to the one or more processors for accommodating wired or wireless internet communication with other computing systems and devices operating within environment 100.
Further, in some instances, source systems 110 (including internal source systems 110A and 110B and external source system 110C) and FI computing system 130 may each be incorporated into a respective, discrete computing system. In additional, or alternate, instances, one or more of source systems 110 (including internal source systems 110A and 1106 and external source system 110C) and FI computing system 130 may correspond to a distributed computing system having a plurality of interconnected, computing components distributed across an appropriate computing network, such as communications network 120 of
In some instances, FI computing system 130 may include a plurality of interconnected, distributed computing components, such as those described herein (not illustrated in
Further, and through an implementation of the parallelized, fault-tolerant distributed computing and analytical protocols described herein, the distributed components of FI computing system 130 may perform operations in parallel that not only train adaptively a machine learning or artificial intelligence process (e.g., the gradient-boosted, decision-tree process described herein) using corresponding training and validation datasets extracted from temporally distinct subsets of the preprocessed data elements, but also apply the adaptively trained machine learning or artificial intelligence process to customer-specific input datasets and generate, in real time, elements of output data indicative of a likelihood of an occurrence of an attrition event involving one or more current participants in one or more financial planning services provisioned by the financial institution (e.g., a “service-specific” attrition event) during a predetermined, future temporal interval, such a three-month interval between one and four months, or between three and six months, from a temporal prediction point. The implementation of the parallelized, fault-tolerant distributed computing and analytical protocols described herein across the one or more GPUs or TPUs included within the distributed components of FI computing system 130 may, in some instances, accelerate the training, and the post-training deployment, of the machine-learning and artificial-intelligence process when compared to a training and deployment of the machine-learning and artificial-intelligence process across comparable clusters of CPUs capable of processing a single operation per clock cycle.
Referring back to
In some instances, profile data 112A may include a plurality of data records associated with, and characterizing, corresponding ones of the customers of the financial institution. By way of example, and for a particular customer of the financial institution, the data records of profile data 112A may include, but are not limited to, one or more unique customer identifiers (e.g., an alphanumeric character string, such as a login credential, a customer name, etc.), residence data (e.g., a street address, a postal code, one or more elements of global positioning system (GPS) data, etc.), other elements of contact data (e.g., a mobile number, an email address, etc.), values of demographic parameters that characterize the particular customer (e.g., ages, occupations, marital status, etc.), and other data characterizing the relationship between the particular customer and the financial institution. Further, profile data 112A may also include, for the particular customer, multiple data records that include corresponding elements of temporal data (e.g., a time or date stamp, etc.), and the multiple data records may establish, for the particular customer, a temporal evolution in the customer residence or a temporal evolution in one or more of the demographic parameter values.
Account data 112B may also include a plurality of data records that identify and characterize one or more financial products or financial instruments issued by the financial institution to corresponding ones of the customers. For example, the data records of account data 112B may include, for each of the financial products issued to corresponding ones of the customers, one or more identifiers of the financial product or instrument (e.g., an account number, expiration data, card-security-code, etc.), one or more unique customer identifiers (e.g., an alphanumeric character string, such as a login credential, a customer name, etc.), information identifying a product type that characterizes the financial product or instrument, and additional information characterizing a balance or current status of the financial product or instrument (e.g., payment due dates or amounts, delinquent accounts statuses, etc.).
Examples of these types of financial products or financial instruments may include, but are not limited to, one or more deposit accounts issued to corresponding ones of the customers (e.g., a savings account, a checking account, etc.), one or more term deposit account (e.g., a certificate of deposit), one or more brokerage or retirements accounts issued to corresponding ones of the customers by the financial institutions, and one or more secured credit products issued to corresponding ones of the customers by the financial institution (e.g., a home mortgage, a home-equity line-of-credit (HELOC), an auto loan, etc.). The financial products or financial instruments may also include one or more unsecured credit products issued to corresponding ones of the customers by the financial institution, and examples of these unsecured credit products may include, but are not limited to, a credit-card account, a personal loan, an unsecured line-of-credit, an overdraft protection (ODP) product, etc.
In some instances, the data records of account data 1128 may establish, for one or more of the customers (e.g., via a corresponding one of the unique customer identifiers), summary information that identifies and summarizes each of the financial products issued to the corresponding one of the customers by the financial institution, and held by the customers, during one or more temporal intervals (e.g., those financial products “owned” by the corresponding one of the customers during the current temporal inter). Further, and for each of the one or more customers, the summary information may also identify and characterize a flow of funds into, or out of, each of the issued and held financial products during the one or more temporal intervals, along with insurance coverages, access services, and in some instances, authorized credit, associated with each of the issued and held financial products during the one or more temporal intervals. The summary information may, in some examples, establish a relationship between the one or more customers and the issued and held financial products during a current temporal interval, and may further characterize a temporal evolution of not only the interaction of these customers with the issued and held financial products, but also the characteristics of the issued and held financial products, during one or more prior temporal intervals.
Transaction data 112C may include data records that identify, and characterize one or more initiated, settled, or cleared transactions involving respective ones of the customers and corresponding ones of the issued financial products, including the unsecured credit products described herein. Examples of these transactions include, but are not limited to, purchase transactions, bill-payment transactions, electronic funds transfers, currency conversions, purchases of securities, derivatives, or other tradeable instruments, electronic funds transfer (EFT) transactions, peer-to-peer (P2P) transfers or transactions, or real-time payment (RTP) transactions.
For instance, and for a particular transaction involving a corresponding customer and corresponding financial product, the data records of transaction data 112C may include, but are limited to, a customer identifier associated with the corresponding customer (e.g., the alphanumeric character string described herein, etc.), a counterparty identifier associated with a counterparty to the particular transaction (e.g., a counterparty name, a counterparty identifier, etc.); an identifier of a financial product or instrument involved in the particular transaction and held by the corresponding customer (e.g., a portion of a tokenized or actual account number, bank routing number, an expiration date, a card security code, etc.); and values of one or more parameters that characterize the particular transaction. In some instances, the transaction parameters may include, but are not limited, to a transaction amount, associated with the particular transaction, a transaction date or time, an identifier of one or more products or services involved in the purchase transaction (e.g., a product name, a universal product code (UPC), etc.), or additional information describing the counterparty, such as a counterparty location, a standard industrial classification (SIC) code, or a merchant classification code (MCC) associated with the corresponding counterparty.
Further, as illustrated in
Further, attrition data 114B may include one or more data records that identify and characterize occurrences of service-specific attrition events associated with past participants in the financial planning services provisioned by the financial institution. By way of example, each of the data records of attrition data 114B may be associated with a corresponding, service-specific attrition event involving a corresponding customer, and may include a unique identifier of the corresponding customer (e.g., an alphanumeric identifier or login credential, a customer name, etc.), a temporal data characterizing of the corresponding occurrence of the service-specific attrition event (e.g., a time or date of a final scheduled meeting or a missed meeting, etc.), a type of interaction (e.g., in-person meeting, virtual, etc.), and additionally, or alternatively, data characterizing the financial planning services involved in the service-specific attrition event (e.g., types of provisioned financial planning services, and identifier of a financial planner, etc.). Branch data 114C may identify one or more branches of the financial institution that offer, to customers, in-person meetings with financial planners during the provisioning of the financial planning services, and branch data 114C may include, for each of the one or more branches, a unique branch identifier (e.g., a name, an assigned branch number, etc.) and geographic data characterizing physical location of the branch (e.g., a portion of street address, a postal code, one or more elements of GPS data, etc.).
External source system 110C may be associated with, or operated by, one or more judicial, regulatory, governmental, or reporting entities external to, and unrelated to, the financial institution, and external source system 110C may maintain, within the corresponding one or more tangible, non-transitory memories, a source data repository 115 that includes one or more elements of external interaction data 116. In some instances, external source system 110C may be associated with, or operated by, a reporting entity, such as a credit bureau, and external interaction data 116 may include elements of reporting and market data 116A that identify and characterize a customer's financial position, such as elements of credit-bureau data, or a value or performance of the customer's investment positions, such as elements of stock market index performance. In some instances, the elements of credit-bureau data for a customer of the financial institution may include, but are not limited to, a unique identifier of the customer (e.g., an alphanumeric identifier or login credential, a customer name, etc.), information identifying one or more financial products or instruments currently or previously held by the customer, information identifying a history of payments associated with these financial products or instruments, information identifying negative events associated with the customer (e.g., missed payments, collections, repossessions, etc.), and/or information identifying one or more credit inquiries involving the customer (e.g., inquiries by the financial institution, other financial institutions or business entities, etc.). The disclosed embodiments are, however, not limited to these exemplary elements of external interaction data 116, and in other instances, external interaction data 116 may include any additional or alternate elements of data associated with the customer and generated by the judicial, regulatory, governmental, or regulatory entities.
In some instances, FI computing system 130 may perform operations that establish and maintain one or more centralized data repositories within a corresponding ones of the tangible, non-transitory memories. For example, as illustrated in
For example, FI computing system 130 may execute one or more application programs, elements of code, or code modules that, in conjunction with the corresponding communications interface, establish a secure, programmatic channel of communication with each of source systems 110, including internal source systems 110A and 1106 and external source system 110C, across communications network 120, and may perform operations that access and obtain all, or a selected portion, of the elements of profile, account, transaction, financial-planning service, attrition, branch data, and/or reporting and market data maintained by corresponding ones of source systems 110. As illustrated in
In some instances, and prior to transmission across communications network 120 to FI computing system 130, internal source system 110A, internal source system 1106, and external source system 110C may encrypt respective portions of internal interaction data 112, internal interaction data 114, and external interaction data 116 using a corresponding encryption key, such as, but not limited to, a corresponding public cryptographic key associated with FI computing system 130. Further, although not illustrated in
A programmatic interface established and maintained by FI computing system 130, such as application programming interface (API) 134, may receive the portions of internal interaction data 112 and 114 and the portions of external interaction data 116. As illustrated in
Executed data ingestion engine 136 may also perform operations that store the portions of internal interaction data 112 (including the data records of profile data 112A, account data 112B, and transaction data 112C), internal interaction data 114 (including the data records of financial-planning service data 114A, attrition data 114B, and branch data 114C), and external interaction data 116 (including the data records of reporting and market data 116A) within aggregated data store 132, e.g., as ingested customer data 138. As illustrated in
Further, in some examples, executed pre-processing engine 140 may access the data records of ingested customer data 138. As described herein, each of the accessed data records may include an identifier of corresponding customer of the financial institution, such as a customer name or an alphanumeric character string, and executed pre-processing engine 140 may perform operations that map each of the accessed data records to a customer identifier assigned to the corresponding customer by FI computing system 130. By way of example, FI computing system 130 may assign a unique, alphanumeric customer identifier to each customer, and executed pre-processing engine 140 may perform operations that parse the accessed data records, identify each of the parsed data records that identifies the corresponding customer using a customer name, and replace that customer name with the corresponding alphanumeric customer identifier.
Executed pre-processing engine 140 may also perform operations that assign, to each of the accessed data records, a temporal identifier to each of the accessed data records, and that augment each of the accessed data records to include the newly assigned temporal identifier. In some instances, the temporal identifier may associate each of the accessed data records with a corresponding temporal interval, which may be indicative of reflect a regularity or a frequency at which FI computing system 130 ingests the elements of internal interaction data 112 and 114 from corresponding ones of source systems 110. For example, executed data ingestion engine 136 may receive elements of confidential customer data from corresponding ones of source systems 110 on a monthly basis (e.g., on the final day of the month), and in particular, may receive and store the elements of internal interaction data 112 and 114 from corresponding ones of source systems 110 on Mar. 31, 2022. In some instances, executed pre-processing engine 140 may generate a temporal identifier associated with the regular, monthly ingestion of internal interaction data 112 and 114 and external interaction data 116 on Mar. 31, 2022 (e.g., “2022-03-31”), and may augment the data records of ingested customer data 138 to include the generated temporal identifier. The disclosed embodiments are, however, not limited to temporal identifiers reflective of a regular, monthly ingestion of internal interaction data 112 and 114 by FI computing system 130, and in other instances, executed pre-processing engine 140 may augment the accessed data records to include temporal identifiers reflective of any additional, or alternative, temporal interval during which FI computing system 130 ingests the elements of internal interaction data 112 and 114.
Further, in some examples, executed pre-processing engine 140 may also perform operations that anonymize certain elements of account data 112B and transaction data 112C to protect confidential information. For example, executed pre-processing engine 140 may perform operations that remove or tokenize customers names, that replace confidential account numbers with tokenized or hashed values (e.g., through an irreversible, one-to-one mapping that cannot be readily reversed), or by adding noise to, among other things, certain elements of account data 112B and transaction data 112C to anonymize confidential customer, account, transaction, or merchant data.
In some instances, executed pre-processing engine 140 may perform further operations that, for a particular customer of the financial institution during the temporal interval (e.g., represented by a pair of the customer and temporal identifiers described herein), obtain one or more data records of profile data 112A, account data 112B, transaction data 112C, financial-planning service data 114A, attrition data 114B, branch data 114C, and reporting and market data 116A that include the pair of customer and temporal identifiers. Executed pre-processing engine 140 may perform operations that consolidate the one or more obtained data records and generate a corresponding one of consolidated data records 142 that includes the customer identifier and temporal identifier, and that is associated with, and characterizes, the particular customer of the financial institution across the temporal intervals. By way of example, executed pre-processing engine 140 may consolidate the obtained data records, which include the pair of customer and temporal identifiers, through an invocation of an appropriate Java-based SQL “join” command (e.g., an appropriate “inner” or “outer” join command, etc.). Further, executed pre-processing engine 140 may perform any of the exemplary processes described herein to generate another one of consolidated data records 142 for each additional, or alternate, customer of the financial institution during the temporal interval (e.g., as represented by a corresponding customer identifier and the temporal interval).
Executed pre-processing engine 140 may perform operations that store each of consolidated data records 142 within one or more tangible, non-transitory memories of FI computing system 130, such as consolidated data store 144. Consolidated data store 144 may, for instance, correspond to a data lake, a data warehouse, or another centralized repository established and maintained, respectively, by the distributed components of FI computing system 130, e.g., through a Hadoop™ distributed file system (HDFS).
In some instances, and as described herein, consolidated data records 142 may include a plurality of discrete data records, and each of these discrete data records may be associated with, and may maintain data characterizing, a corresponding one of the customers of the financial institution during the corresponding temporal interval (e.g., a month-long interval extending from Mar. 1, 2022, to Mar. 31, 2022). For example, and for a particular customer of the financial institution, discrete data record 142A of consolidated data records 142 may include a customer identifier 146 of the particular customer (e.g., an alphanumeric character string “CUSTID”), a temporal identifier 148 of the corresponding temporal interval (e.g., a numerical string “2022-03-31”), and consolidated data elements 150 of profile, account, transaction, service, attrition, branch data, and/or reporting and market data associated with the particular customer during the corresponding temporal interval (e.g., as consolidated from the data records of profile data 112A, account data 112B, transaction data 112C, financial-planning service data 114A, attrition data 114B, branch data 114C, and/or reporting and market data 116A ingested by FI computing system 130 on Mar. 31, 2022).
Further, in some instances, consolidated data store 144 may maintain each of consolidated data records 142, which characterize corresponding ones of the customers, their interactions with the financial institution and with other financial institutions, and any associated attrition events involving the financial planning services provisioned by the financial institution during the temporal interval, in conjunction with additional consolidated data records 152. Executed pre-processing engine 140 may perform any of the exemplary processes described herein to generate each of the additional consolidated data records 152, including based on elements of profile, account, transaction, portfolio, redemption, engagement, and market data ingested from source systems 110 during the corresponding prior temporal intervals.
As described herein, each of additional consolidated data records 152 may also include a plurality of discrete data records that are associated with and characterize a particular one of the customers of the financial institution during a corresponding one of the prior temporal intervals. For example, as illustrated in
The disclosed embodiments are, however, not limited to the exemplary consolidated data records described herein, or to the exemplary temporal intervals described herein. In other examples, FI computing system 130 may generate, and the consolidated data store 144 may maintain any additional or alternate number of discrete sets of consolidated data records, having any additional or alternate composition, that would be appropriate to the elements of profile, account, transaction, financial-planning service, attrition, branch data, and/or reporting and market data ingested by FI computing system 130 at the predetermined intervals described herein. Further, in some examples, FI computing system 130 may ingest elements of profile, account, transaction, financial-planning service, attrition, branch data, and/or reporting and market data from source systems 110 at any additional, or alternate, fixed or variable temporal interval that would be appropriate to the ingested customer data or to the adaptive training of the machine learning or artificial intelligence processes described herein.
Referring to
The one or more filtration criteria may, for example, include a service-specific filtration criterion that, when processed by executed filtration engine 155, causes executed filtration engine 155 to exclude, from filtered data records 154, one or more of consolidated data records 142 and 152 identifying and characterizing a corresponding customer that fails to participate in one or more of the financial planning services provisioned by the financial institution during the corresponding temporal interval (e.g., the corresponding customer fails to be a current participant during the corresponding temporal interval), or alternatively, that fails to meet a threshold level of participation in the financial planning serviced during the corresponding temporal interval (e.g., the corresponding customer fails to participate in virtual or in-person engagements with a financial planner during the corresponding temporal interval). Further, when processed by executed filtration engine 155, the service-specific filtration criterion may also cause executed filtration engine 155 to exclude, from filtered data records 154, one or more of consolidated data records 142 and 152 identifying and characterizing a corresponding customer that fail to hold a particular account or financial product during the corresponding temporal interval, or that fails to be associated with a threshold amount of maintained data (e.g., new customers within the last six months, etc.).
In some examples, the application of one or more filtration criteria by executed filtration engine 155 may exclude those customers of the financial institution that fail to represent plausible candidates for early-stage contact and remediation by the financial institution, e.g., overdrawn customers, customers who have recently emptied accounts, etc. The disclosed embodiments are, however, not limited to these exemplary product, service, and other criteria, and in other instances, executed filtration engine 155 may apply any additional or alternate filtration criterion to the data records of consolidated data records 142 and 152 that would be appropriate to the customers of the financial institution, the financial institution, and consolidated data records 142 and 152, and that facilitate an adaptive training and validation of the exemplary machine-learning or artificial intelligence processes described herein.
For example, as illustrated in
In
By way of example, executed aggregation engine 157 may access data record 142A within filtered data records 154, which includes consolidated data elements 150 that identifies and characterizes a particular customer of the financial institution (e.g., associated with customer identifier 146) during a corresponding temporal interval (e.g., the one-month interval between Mar. 1, 2022, and Mar. 31, 2022, as specified by temporal identifier 148). Executed aggregation engine 157 may also perform operations that obtain, from consolidated data elements 150, elements of account data that identify and characterize the interactions between the particular customer and the one or more financial products or instruments issued by the financial institution during the corresponding temporal interval (e.g., one or more data records of account data 112B ingested by FI computing system 130), elements of transaction data that identify and characterize one or more transactions initiated by the particular customer during the corresponding temporal interval (e.g., one or more data records of transaction data 112C ingested by FI computing system 130), and elements of customer engagement data that identify and characterize one or more discrete engagements between the particular customer and the one or more provisioned financial planning services (e.g., one or more data records of financial-planning service data 114A).
In some instances, executed aggregation engine 157 may perform operations that generate one or more elements of aggregated account data based on corresponding portions of the obtained account data elements, and that generate one or more elements of aggregated transaction data 153 based on corresponding portions of the obtained transaction data elements. For example, the elements of aggregated account data 151 may include, but are not limited to, an average of a total balance across one or more unsecured credit products held by the customer associated with customer identifier 146 during the temporal interval associated with temporal identifier 148 (e.g., an average balance across a credit-card account, a line-of-credit, a personal loan, etc.), an average of a total amount of credit extended to the customer by the financial institution during the temporal interval, or an average balance of funds available to the customer within one or more demand deposit accounts during the corresponding temporal interval. In some examples, the elements of aggregated transaction data may include, but are not limited to, a total transaction amount attributable to one or more types of transactions initiated by the customer during the temporal interval, such as, but not limited to, purchase transactions, peer-to-peer transactions, payroll deposits, bill-payment transactions, real-time payment transactions, or electronic funds transfers (EFT) transactions. Executed aggregation engine 157 may perform operations that package one or more elements of aggregated account data into corresponding portions of aggregated data 162, which may be stored within data record 142A of filtered data records 154.
Further, and by way of example, the elements of aggregated transaction data may include values of aggregated transaction parameters that characterize a particular type or class of transaction, such as purchase transactions initiated by the customer associated with customer identifier 146 during the temporal interval associated with temporal identifier 148. For instance, the elements of aggregated transaction data 153 may include, among other things, a total transaction amount attributable to the initiated purchase transactions involving certain categories of merchants (e.g., based on corresponding SIC codes or MCCs maintained with the obtained transaction data elements, etc.), a total transaction amount attributable to the initiated purchase transactions involving certain purchased products or services, or a total transaction amount attributable to the initiated purchase transactions involving certain processing networks, such as, but not limited to, conventional payment rails or real-time payment rails. Executed aggregation engine 157 may perform operations that package one or more elements of aggregated account data into corresponding portions of aggregated data 162.
In some examples, the elements of aggregated engagement data may include values of aggregated engagement parameters that characterize the engagements between the customer associated with customer identifier 146 and the one or more provisioned financial planning services during the temporal interval associated with temporal identifier 148. For instance, the elements of elements of aggregated engagement data may include, among other things, a total number of virtual or in-person engagements between the customer and the financial planner during the temporal interval, a total duration or an average duration of each of the virtual or in-person engagements, an average temporal interval between successive virtual or in-person engagements, an average distance between a physical location associated with successive in-person engagements, and/or an aggregated amount, or volume, of purchases or sales of securities or other assets resulting from the virtual or in-person engagements during the temporal interval. Executed aggregation engine 157 may perform operations that package one or more elements of aggregated engagement data into corresponding portions of aggregated data 162.
The disclosed embodiments are, however, not limited to these exemplary elements of aggregated account, transaction, or engagement data, and in other instances, executed aggregation engine 157 may process filtered data records 142A, and generate any additional, or alternate, elements of aggregated data 162 that characterize the usage of the financial products or instruments held by the particular customer during the temporal interval, that characterize a spending or purchasing habit of the customer during the temporal interval, and that characterize the interactions between the customer and the one or more provisioned financial planning services during the temporal interval. Further, although not illustrated in
Further, in some instances, consolidated data store 144 may maintain each of filtered data records 154 in conjunction with additional filtered data records 164. In some instances, executed pre-processing engine 140, executed filtration engine 155, and executed aggregation engine 157 may perform any of the exemplary processes, either individually or collectively, described herein to generate each of the additional filtered data records 164, including based on elements of profile, account, transaction, service, attrition, branch data, and/or external data (credit bureau, market data, etc.) ingested from source systems 110 during the corresponding prior temporal intervals.
As described herein, each of additional filtered data records 164 may also include a plurality of discrete data records that are associated with and characterize a particular one of the customers of the financial institution during a corresponding one of the prior temporal intervals. For example, additional filtered data records 164 may include one or more discrete data records, such as discrete data record 152A, associated with a prior temporal interval extending from Feb. 1, 2022, to Feb. 28, 2022. For the particular customer, discrete data record 152A may include a customer identifier 156 of the particular customer (e.g., an alphanumeric character string “CUSTID”), a temporal identifier 158 of the prior temporal interval (e.g., a numerical string “2022-02-28”), consolidated data elements 160 of profile, account, transaction, service, attrition, branch data, and/or reporting and market data associated with the particular customer during the prior temporal interval extending from Feb. 1, 2022, to Feb. 28, 2022 (e.g., as consolidated from the data records ingested by FI computing system 130 on Feb. 28, 2022), and aggregated data elements 166 of aggregated account, transaction, and engagement data characterizing the particular customer during the prior temporal interval.
The disclosed embodiments are, however, not limited to the exemplary consolidated or filtered data records described herein, or to the exemplary temporal intervals described herein. In other examples, FI computing system 130 may generate, and the consolidated data store 144 may maintain any additional or alternate number of discrete sets of filtered data records, having any additional or alternate composition, that would be appropriate to the elements of profile, account, transaction, service, attrition, branch data, and/or reporting and market data ingested by FI computing system 130 at the predetermined intervals described herein. Further, in some examples, FI computing system 130 may ingest elements of profile, account, transaction, service, attrition, branch data, and/or reporting and market data from source systems 110 at any additional, or alternate, fixed or variable temporal interval that would be appropriate to the ingested customer data or to the adaptive training of the machine learning or artificial intelligence processes described herein.
In some instances, FI computing system 130 may perform any of the exemplary operations described herein to adaptively train a machine-learning or artificial-intelligence process to predict, at a temporal prediction point, a likelihood of an occurrence of service-specific attrition event involving a customer of the financial institution (e.g., a participant in the one or more financial planning services provisioned by the financial institution) during a future temporal interval using training datasets associated with a first prior temporal interval (e.g., a “training” interval), and using validation datasets associated with a second, and distinct, prior temporal interval (e.g., an out-of-time “validation” interval). As described herein, the service-specific attrition event may be associated with one or more financial planning services provisioned to the customers by the financial institution, and the customer may represent a current participant in the one or more provisioned financial planning services, e.g., at the temporal prediction point. Further, and as described herein, the occurrence of the service-specific attrition event may correspond to a cessation, by the customer, of the customer's participation in the financial planning services. In some instances, through a prediction of an occurrence of service-specific attrition event involving a customer of the financial institution, certain of the exemplary processes described herein may enable a computing system of the financial institution to establish that a particular customer, and a corresponding financial planning service provisioned by the financial institution, are at risk of involvement in the future occurrence of the service-specific attrition event, and that the particular customer represents a candidate for one or more remediation or treatment processes, which may reduce a likelihood of the future occurrence of the service-specific attrition event.
As described herein, the machine-learning or artificial-intelligence process may include an ensemble or decision-tree process, such as a gradient-boosted decision-tree process (e.g., the XGBoost process), and the training and validation datasets may include, but are not limited to, values of adaptively selected features obtained, extracted, or derived from the filtered data records maintained within consolidated data store 144, e.g., from data elements maintained within the discrete data records of filtered data records 154 or the additional filtered data records 164. As described herein, each of the discrete data records may include additional elements of the consolidated and aggregated data that identify and characterize the corresponding customer, and the interactions between the corresponding customer and the financial institution.
For example, the distributed computing components of FI computing system 130 (e.g., that include one or more GPUs or TPUs configured to operate as a discrete computing cluster) may perform any of the exemplary processes described herein to adaptively train the machine learning or artificial intelligence process (e.g., the gradient-boosted, decision-tree process) in parallel through an implementation of one or more parallelized, fault-tolerant distributed computing and analytical processes. Based on an outcome of these adaptive training processes, FI computing system 130 may generate process coefficients, parameters, thresholds, and other process parameter data that collectively specify the trained machine learning or artificial intelligence process, and may store the generated process coefficients, parameters, thresholds, and other process parameter data within a portion of the one or more tangible, non-transitory memories, e.g., within consolidated data store 144.
Referring to
In some instances, executed training engine 172 may parse the filtered data records, and based on corresponding ones of the temporal identifiers, determine that the consolidated elements of profile, account, transaction, financial-planning service, attrition, branch data, and/or reporting and market data characterize the corresponding customers across a range of prior temporal intervals. Further, executed training engine 172 may also perform operations that decompose the determined range of prior temporal intervals into a corresponding first subset of the prior temporal intervals (e.g., the “training” interval described herein) and into a corresponding second, subsequent, and disjoint subset of the prior temporal intervals (e.g., the “validation” interval described herein). For example, as illustrated in
Referring back to
In some instances, each of the prior temporal intervals may correspond to a one-month interval, and executed training engine 172 may perform operations that establish adaptively the splitting point between the corresponding temporal boundaries such that a predetermined first percentage of the consolidated data records are associated with temporal intervals (e.g., as specified by corresponding ones of the temporal identifiers) disposed within the training interval, and such that a predetermined second percentage of the consolidated data records are associated with temporal intervals (e.g., as specified by corresponding ones of the temporal identifiers) disposed within the validation interval. For example, the first predetermined percentage may correspond to seventy percent of the filtered data records, and the second predetermined percentage may corresponding to thirty percent of the filtered data records, although in other examples, executed training engine 172 may compute one or both of the first and second predetermined percentages, and establish the splitting point, based on the range of prior temporal intervals, a quantity or quality of the consolidated data records maintained within consolidated data store 144, or a magnitude of the temporal intervals (e.g., one-month intervals, two-week intervals, one-week intervals, one-day intervals, etc.).
As illustrated in
As described herein, FI computing system 130 may perform operations that adaptively train a machine-learning or artificial-intelligence process (e.g., the gradient-boosted, decision-tree process described herein) to predict, at a temporal prediction point, a likelihood of an occurrence of a service-specific attrition event involving a customer of the financial institution (e.g., a current participant in the one or more provisioned financial planning services) during a future temporal interval during a future temporal interval using training datasets associated with the training interval, and using validation datasets associated with the validation interval. For example, and as illustrated in
By way of example, the target temporal interval Δttarget may be characterized by a predetermined duration, such as, but not limited to, three months, and the prior extraction interval Δtextract may be characterized by a corresponding, predetermined duration, such as, but not limited to, a three-month period. Further, in some examples, the buffer interval Δtbuffer may also be associated with a predetermined duration, such as, but not limited to, one month or three months, and the predetermined duration of buffer interval Δtbuffer may established by FI computing system 130 to separate temporally the customers' prior interactions with the financial institution (and with other financial institutions) and service-specific attrition events from the future target temporal interval Δttarget.
In some instances, and prior to partitioning the filtered data records into corresponding ones of the first subset 178A and second subset 178B, executed training input module 176 may perform operations that partition the filtered data records maintained within consolidated data store 144 (e.g., the discrete data records within filtered data records 154 or additional filtered data records 164) into customer-specific subsets of filtered data records based on the customer identifier maintained within each of the filtered data records (e.g., customer identifier 146 of filtered data record 142A, customer identifier 156 of filtered data record 164A, etc.), and that sequentially order the filtered data records within each of the customer-specific subsets in accordance with the temporal identifies maintained within each of the filtered data records (e.g., temporal identifier 148 of filtered data record 142A, temporal identifier 158 of filtered data record 164A, etc.). Further, executed training input module 176 may also perform operations that augment one or more of the filtered data records (e.g., filtered data records 154 and 164, etc.) to include additional information characterizing a ground truth associated with the corresponding customer and temporal interval (as established by the corresponding pair of customer and temporal identifiers).
For example, and for a particular one of the sequentially ordered data record, such as discrete data record 142A of filtered data records 154, executed training input module 176 may obtain customer identifier 146 (e.g., “CUSTID”), which identifies the corresponding customer, and temporal identifier 148, which indicates data record 142A is associated with Mar. 31, 2022. Based on customer identifier 146 and temporal identifier 148, executed training input module 176 may access attrition data 114B (e.g., as maintained within consolidated data store 144), and determine whether the corresponding customer was associated with a service-specific attrition event within the target interval Δttarget, which may be separated from the temporal interval associated with the data record 142A by the corresponding buffer interval Δtbuffer, as described herein. Executed training input module 176 may perform operations that modify data record 142A by appending an element of ground-truth data indicative of the occurrence or non-occurrence of the service-specific attrition event within the target interval Δttarget to consolidated data elements 150. Executed training input module 176 may also perform any of the exemplary processes described herein to generate and append an appropriate element of ground-truth data to each additional, or alternate, one of the sequentially ordered data records within each of the customer-specific sets maintained within consolidated data store 144.
In some instances, executed training input module 176 may package the data characterizing a positive target (e.g., the actual occurrence of the service-specific attrition event within the target interval Δttarget) or a negative target (e.g., the non-occurrence of the service-specific attrition event within the target interval Δttarget) into a portion of the ground-truth information for the particular one of the filtered data records, and may augment the particular one of the filtered data records (e.g., as maintained within consolidated data store 144) to include the ground-truth information. Further, executed training input module 176 may also perform any of the exemplary processes described herein to generate a corresponding element of ground-truth information for all, or a selected subset, of the additional or alternate filtered data records maintained within consolidated data store 144, and to augment each, or the selected subset, of the additional or alternate filtered data records to include the corresponding element of ground-truth information.
Referring back to
If, for example, executed training input module 176 were to determine that the temporal interval associated with a corresponding one of the filtered data records is disposed within the temporal boundaries for the training interval Δttraining, executed training input module 176 may determine that the corresponding data record may be suitable for training, and may perform operations that include the corresponding data record within a portion of the first subset 178A (e.g., that store the corresponding data record within a portion of consolidated data store 144 associated with first subset 178A). Alternatively, if executed training input module 176 were to determine that the temporal interval associated with a corresponding one of the filtered data records is disposed within the temporal boundaries for the validation interval Δtvalidation, executed training input module 176 may determine that the corresponding data record may be suitable for validation, and may perform operations that include the corresponding data record within a portion of the second subset 178B (e.g., that store the corresponding data record within a portion of consolidated data store 144 associated with second subset 178B). Executed training input module 176 may perform any of the exemplary processes described herein to determine the suitability of each additional, or alternate, one of the sequentially ordered data records of the customer-specific sets for adaptive training, or alternatively, validation, of the machine-learning or artificial intelligence process.
Referring back to
By way of example, each of the plurality of training datasets 180 may be associated with a corresponding one of the customers of the financial institution and a corresponding temporal interval, and may include, among other things a customer identifier associated with that corresponding customer and a temporal identifier representative of the corresponding temporal interval within the training interval Δttraining, as described herein. In some instances, each of the plurality of training datasets 180 may also include elements of data (e.g., feature values) that characterize the corresponding one of the customers and the corresponding customer's interaction with the financial institution, with other financial institution, with financial products and instruments issued by the financial institution, and/or an occurrence (or non-occurrence) of service-specific attrition events involving the corresponding one of the customers during a temporal interval disposed prior to the corresponding temporal interval, e.g., the extraction interval Δtextract described herein. Further, each of training datasets 180 may also include an element of ground-truth data, e.g., the positive or negative target described herein.
In some instances, executed training input module 176 may perform operations that identify, and obtain or extract, one or more of the features values from the filtered data records maintained within first subset 178A and associated with the corresponding one of the customers. For example, the obtained or extracted feature values may include elements of the profile, account, transaction, financial-planning service, attrition, branch data, and/or reporting and market data described herein (e.g., which may populate the filtered data records maintained within first subset 178A). Further, in some instances, executed training input module 176 may perform operations that compute, determine, or derive one or more of the features values based on elements of data extracted or obtained from the filtered data records maintained within first subset 178A. For example, the computed, determined, or derived feature values may include, but are not limited to, an average balance in a demand deposit account held by a corresponding one of the customers over the prior three-month period, a distance between a residence of the corresponding one of the customers and a branch of the financial institution (e.g., based on the residential data maintained within profile data 112A and the geographic data maintained within branch data 114C and/or financial-planning service data 114A), a temporal interval between a current date or time and a prior virtual or in-person meeting between the corresponding one of the customers and the financial planner, (e.g., based on portions of financial-planning service data 114A), or an average duration of each of the prior virtual or in-person meetings between the corresponding one of the customers and the financial planner (e.g., based on portions of financial-planning service data 114A).
Executed training input module 176 may provide training datasets 180 as an input to an adaptive training and validation module 182 of executed training engine 172. In some instances, and upon execution by the one or more processors of FI computing system 130, executed adaptive training and validation module 182 may perform operations that adaptively train the machine-learning or artificial-intelligence process against the elements of training data included within each of training datasets 180. By way of example, and as described herein, the machine-learning or artificial-intelligence process may include a gradient-boosted, decision-tree process, and executed adaptive training and validation module 182 may perform operations that establish a plurality of nodes and a plurality of decision trees for the gradient-boosted, decision-tree process, which may ingest and process the elements of training data (e.g., the customer identifiers, the temporal identifiers, the feature values, etc.) maintained within each of the plurality of training datasets 180. Based on the execution of adaptive training and validation module 182, and on the ingestion of each of training datasets 180 by the established nodes of the gradient-boosted, decision-tree process, FI computing system 130 may perform operations that adaptively train the gradient-boosted, decision-tree process against the elements of training data included within each of training datasets 180.
In some examples, the distributed components of FI computing system 130 may execute adaptive training and validation module 182, and may perform any of the exemplary processes described herein in parallel to train adaptively the machine-learning or artificial-intelligence process against the elements of training data included within each of training datasets 180. The parallel implementation of adaptive training and validation module 182 by the distributed components of FI computing system 130 may, in some instances, be based on an implementation, across the distributed components, of the parallelized, fault-tolerant distributed computing and analytical protocols described herein (e.g., the Apache Spark™ distributed, cluster-computing framework, etc.).
Through the performance of these adaptive training processes, executed adaptive training and validation module 182 may perform operations that compute one or more candidate process parameters that characterize the adaptively trained, machine-learning or artificial-intelligence process (e.g., the trained gradient-boosted, decision-tree process), and package the candidate process parameters into corresponding portions of candidate process data 184. In some instances, the candidate process parameters included within candidate process data 184 may include, but are not limited to, a learning rate associated with the adaptively trained, gradient-boosted, decision-tree process, a number of discrete decision trees included within the adaptively trained, gradient-boosted, decision-tree process (e.g., the “n_estimator” for the adaptively trained, gradient-boosted, decision-tree process), a tree depth characterizing a depth of each of the discrete decision trees included within the adaptively trained, gradient-boosted, decision-tree process, a minimum number of observations in terminal nodes of the decision trees, and/or values of one or more hyperparameters that reduce potential process overfitting (e.g., regularization of pseudo-regularization hyperparameters). Further, and based on the performance of these adaptive training processes, executed adaptive training and validation module 182 may also generate candidate input data 186, which specifies a candidate composition of an input dataset for the adaptively trained, machine-learning or artificial-intelligence process (e.g., which be provisioned as inputs to the nodes of the decision trees of the adaptively trained, gradient-boosted, decision-tree process).
As illustrated in
By way of example, executed training input module 176 may parse candidate input data 186 to obtain the candidate composition of the input dataset, which not only identifies the candidate elements of customer-specific data included within each validation dataset (e.g., the candidate feature values described herein), but also a candidate sequence or position of these elements of customer-specific data within the validation dataset. Examples of these candidate feature values include, but are not limited to, one or more of the feature values extracted, obtained, computed, determined, or derived by executed training input module 176 and packaged into corresponding potions of training datasets 180, as described herein.
Further, in some examples, each of the plurality of validation datasets 188 may be associated with a corresponding one of the customers of the financial institution, and with a corresponding temporal interval within the validation interval Δtvalidation, and executed training input module 176 may access the consolidated data records maintained within second subset 178B of consolidated data store 144, and may perform operations that extract, from an initial one of the consolidated data records, a customer identifier (which identifies a corresponding one of the customers of the financial institution associated with the initial one of the consolidated data records) and a temporal identifier (which identifies a temporal interval associated with the initial one of the consolidated data records). Executed training input module 176 may package the extracted customer identifier and temporal identifier into portions of a corresponding one of validation datasets 188, e.g., in accordance with candidate input data 186.
Executed training input module 176 may perform operations that access one or more additional ones of the consolidated data records that are associated with the corresponding one of the customers (e.g., that include the customer identifier) and as associated with a temporal interval (e.g., based on corresponding temporal identifiers) disposed prior to the corresponding temporal interval, e.g., within the extraction interval Δtextract described herein. Based on portions of candidate input data 186, executed training input module 176 may identify, and obtain or extract one or more of the feature values of the validation datasets from within the additional ones of the consolidated data records within second subset 178B. Further, in some examples, and based on portions of candidate input data 186, executed training input module 176 may perform operations that compute, determine, or derive one or more of the features values based on elements of data extracted or obtained from further ones of the consolidated data records within second subset 178B. Executed training input module 176 may package each of the obtained, extracted, computed, determined, or derived feature values into corresponding positions within the initial one of validation datasets 188, e.g., in accordance with the candidate sequence or position specified within candidate input data 186.
Further, executed training input module 176 may package, into an appropriate position within portion of the corresponding one of validation datasets 188, an element of ground-truth data indicative of the presence or absence of a service-specific attrition event associated with the corresponding one of the customers within the target interval Δttarget (e.g., such as, but not limited to, a three-month period disposed within three and six months subsequent to the prediction date or time). For example, executed training input module 176 may parse the initial one of the consolidated data records, obtain a corresponding element of ground-truth data (e.g., the positive or negative targets, as described herein), and package the extracted element of ground-truth data into the appropriate position within the corresponding one of validation datasets 188, e.g., in accordance with the candidate sequence or position specified within candidate input data 186.
In some instances, executed training input module 176 may perform any of the exemplary processes described herein to generate additional, or alternate, ones of validation datasets 188 based on the elements of data maintained within the consolidated data records of second subset 178B. For example, each of the additional, or alternate, ones of validation datasets 188 may associated with a corresponding, and distinct, pair of customer and temporal identifiers, and as such, corresponding customers of the financial institution and corresponding temporal intervals within validation interval Δtvalidation. Further, executed training input module 176 may perform any of the exemplary processes described herein to generate an additional, or alternate, ones of validation datasets 188 associated with each unique pair of customer and temporal identifiers maintained within the consolidated data records of second subset 178B, and in other instances a number of discrete validation datasets within validation datasets 188 may be predetermined or specified within candidate input data 186.
Referring back to
As described herein, each of the each of elements of output data may be generated through the application of the adaptively trained, machine-learning or artificial-intelligence process (e.g., the trained gradient-boosted, decision-tree process) to a corresponding one of validation datasets 188, which may include, among other things, a customer identifier (e.g., identifying a corresponding customer of the financial institution), a temporal identifier (e.g., identifying a corresponding temporal interval), and an element of ground-truth data, which indicates whether the corresponding customer is involved in an actual service-specific attrition event during a future temporal interval, e.g., the target interval Δttarget separated from the corresponding temporal interval by buffer interval Δtbuffer. Further, as described herein, each of elements of output data may be representative of a predicted likelihood of an occurrence of a service-specific attrition event involving, or associated with, the corresponding customer during the target interval Δttarget, and in some instances, the predicted likelihood may be represented by a numerical score ranging from zero (e.g., indicative of a minimal predicted likelihood) to unity (e.g., indicative of a maximum predicted likelihood).
Executed adaptive training and validation module 182 may perform operations that compute a value of one or more metrics that characterize a predictive capability, and an accuracy, of the adaptively trained, machine-learning or artificial-intelligence process based on the generated elements of output data and corresponding ones of validation datasets 188. The computed metrics may include, but are not limited to, one or more recall-based values for the adaptively trained, gradient-boosted, decision-tree process (e.g., “recall@5,” “recall@10,” “recall@20,” etc.), and additionally, or alternatively, one or more precision-based values for the adaptively trained, gradient-boosted, decision-tree process. Further, in some examples, the computed metrics may include a computed value of an area under curve (AUC) for a precision-recall (PR) curve associated with the adaptively trained, gradient-boosted, decision-tree process, and additional, or alternatively, computed value of an AUC for a receiver operating characteristic (ROC) curve associated with the adaptively trained, gradient-boosted, decision-tree process. The disclosed embodiments are, however, not limited to these exemplary computed metric values, and in other instances, executed adaptive training and validation module 182 may compute a value of any additional, or alternate, metric appropriate to validation datasets 188, the elements of ground-truth data, or the adaptively trained, machine-learning or artificial-intelligence process (e.g., the trained, gradient-boosted, decision-tree process)
In some examples, executed adaptive training and validation module 182 may also perform operations that determine whether all, or a selected portion of, the computed metric values satisfy one or more threshold conditions for a deployment of the adaptively trained, machine-learning or artificial-intelligence process and a real-time application to elements of profile, account, transaction, financial-planning service, attrition, branch data, and/or reporting and market data, as described herein. For instance, the one or more threshold conditions may specify one or more predetermined threshold values for the adaptively trained, gradient-boosted, decision-tree process, such as, but not limited to, a predetermined threshold value for the computed recall-based values, a predetermined threshold value for the computed precision-based values, and/or a predetermined threshold value for the computed AUC values. In some examples, executed adaptive training and validation module 182 that establish whether one, or more, of the computed recall-based values, the computed precision-based values, or the computed AUC values exceed, or fall below, a corresponding one of the predetermined threshold values and as such, whether the adaptively trained, machine-learning or artificial-intelligence process satisfies the one or more threshold requirements for deployment.
If, for example, executed adaptive training and validation module 182 were to establish that one, or more, of the computed metric values fail to satisfy at least one of the threshold requirements, FI computing system 130 may establish that the adaptively trained, machine-learning or artificial-intelligence process is insufficiently accurate for deployment and a real-time application to the elements of profile, account, transaction, service, attrition, and/or branch data described herein. Executed adaptive training and validation module 182 may perform operations (not illustrated in
Alternatively, if executed adaptive training and validation module 182 were to establish that each computed metric value satisfies threshold requirements, FI computing system 130 may deem the machine-learning or artificial-intelligence process adaptively trained, and ready for deployment and real-time application to the elements of profile, account, transaction, service, attrition, and/or branch data described herein. In some instances, executed adaptive training and validation module 182 may generate process parameter data 190 that includes the process parameters of the adaptively trained, machine-learning or artificial-intelligence process, such as, but not limited to, each of the candidate process parameters specified within candidate process data 184. Further, executed adaptive training and validation module 182 may also generate process input data 192, which characterizes a composition of an input dataset for the adaptively trained, machine-learning or artificial-intelligence process and identifies each of the discrete data elements within the input data set, along with a sequence or position of these elements within the input data set (e.g., as specified within candidate input data 186). As illustrated in
Further, in some examples, executed adaptive training and validation module 182 may also perform operations that generate one or more elements of explainability data 194 that, among other things, characterize a contribution of each of the discrete feature values specified within process input data 192 to the predicted likelihood of the occurrences of the service-specific attrition events involving the customers of the financial institution (e.g., the current participants in the one or more provisioned financial planning services) during the target interval Δttarget. By way of example, executed adaptive training and validation module 182 may perform operations that compute a contribution value indicative of a relative contribution and importance of each of the discrete features to the predicted likelihoods of the occurrences of the service-specific attrition events based on a determined number of branching points that utilize the corresponding feature, based on a computed Shapley feature value for the corresponding feature, or based on any additional or alternate, metric indicative of the contribution of the corresponding feature to the predicted likelihoods of the occurrences of the service-specific attrition events. As illustrated in
In some examples, one or more computing systems associated with or operated by a financial institution, such as one or more of the distributed components of FI computing system 130, may perform operations that adaptively train a machine learning or artificial intelligence process to predict, at a temporal prediction point, a likelihood of an occurrence of service-specific attrition event involving a customer of the financial institution (e.g., a participant in financial planning services) during a future temporal interval using training data associated with a first prior temporal interval, and using validation data associated with a second, and distinct, prior temporal interval. As described herein, the service-specific attrition event may be associated with one or more financial planning services provisioned by the financial institution, and the machine-learning or artificial-intelligence process may include an ensemble or decision-tree process, such as a gradient-boosted, decision-tree process. Further, and as described herein, the training and validation data may include, but are not limited to, elements of profile, account, transaction, financial-planning service, branch data, and/or reporting and market data associated with current or past participants in the provisioned financial planning services, along with elements of attrition data identifying and characterizing prior occurrences of service-specific attrition events associated with, or involving, the corresponding customers.
In some instances, FI computing system 130 may perform any of the exemplary processes described herein to generate input datasets associated with all, or a selected subset, of the customers of the financial institution, and to apply the adaptively trained machine-learning or artificial-intelligence process, such as the adaptively trained, gradient-boosted, decision-tree process described herein, to each of the input datasets. For example, each of the customers may represent a current participant in the financial planning services provisioned by the financial institution, and based on the application of the adaptively trained machine-learning or artificial-intelligence process to each of the input datasets, FI computing system 130 may perform any of the exemplary processes described herein to generate corresponding elements of output data, each of which may indicate of a predicted likelihood of occurrence of a service-specific attrition event involving a corresponding one of the current participants during a future temporal interval, such as, but not limited to, three-month interval between one and four months, or between three and six months, from a the temporal prediction point. In some instances, and for each of the customers, the output data may include a numerical score ranging from zero (e.g., indicative of a minimal predicted likelihood) to unity (e.g., indicative of a maximum predicted likelihood).
Referring to
In some instances, financial-planning system 203 may represent a computing system that includes one or more servers and tangible, non-transitory memories storing executable code and application modules. Further, the one or more servers may each include one or more processors (such as a central processing unit (CPU)), which may be configured to execute portions of the stored code or application modules to perform operations consistent with the disclosed embodiments. Financial-planning system 203 may also include a communications interface, such as one or more wireless transceivers, coupled to the one or more processors for accommodating wired or wireless internet communication with other computing systems and devices operating within environment 100. In some instances, financial-planning system 203 may be incorporated into a discrete computing system, although in other instances, financial-planning system 203 may correspond to a distributed computing system having a plurality of interconnected, computing components distributed across an appropriate computing network, such as communications network 120 of
Referring back to
API 204 may, for example, route each of the elements of customer data 202 to executed data ingestion engine 136, which may perform operations that store the elements of customer data 202 within one or more tangible, non-transitory memories of FI computing system 130, such as within aggregated data store 132. In some instances, and as described herein, the received elements of customer data 202 may be encrypted, and executed data ingestion engine 136 may perform operations that decrypt each of the encrypted elements of customer data 202 using a corresponding decryption key (e.g., a private cryptographic key associated with FI computing system 130) prior to storage within aggregated data store 132. Further, although not illustrated in
As described herein, each of the elements of customer data 202 may be associated with, and include a unique identifier of, a customer of the financial institution that represents a current participant in the financial planning services provisioned by the financial institution, and FI computing system 130 may receive each of the elements of customer data 202 from financial-planning system 203. For example, as illustrated in
As described herein, FI computing system 130 may perform any of the exemplary processes described herein to generate an input dataset associated with each of the customers identified by the discrete elements of customer data 202, and to apply the adaptively trained, machine-learning or artificial-intelligence process (e.g., the gradient-boosted, decision-tree process described herein) to each of the input datasets, in accordance with a predetermined temporal schedule (e.g., on a monthly basis at a predetermined time), or in response to a detection of a triggering event. By way of example, and without limitation, the triggering event may correspond to a detected change in a composition of the elements of customer data 202 maintained within aggregated data store (e.g., to an ingestion of additional elements of customer data 202, etc.) or to a receipt of an explicit request received from financial-planning system 203.
In some instances, and in accordance with the predetermined temporal schedule, or upon detection of the triggering event, a process input engine 212 executed by FI computing system 130 may perform operations that access the elements of customer data 202 maintained within aggregated data store 132, and that obtain the customer identifier maintained within a corresponding one of the accessed elements of customer data 202. For example, as illustrated in
Executed process input engine 212 may also access consolidated data store 144, and perform operations that identify, within consolidated data records 214, a subset 216 of consolidated data records that include customer identifier 208 and as such, are associated with the particular customer of the financial institution identified by element 206 of customer data 202. As described herein, each of consolidated data records 214 may be associated with a customer of the financial institution, and may characterize that customer, the interaction of and engagement of that customer with the financial institution and the provisioned financial planning services, and any associated service-specific attrition events involving that customer during a corresponding temporal interval. For example, and as described herein, each of consolidated data records 214 may include a corresponding customer identifier (e.g., an alphanumeric character string assigned to a corresponding customer), a corresponding temporal identifier (e.g., that identifies the corresponding temporal interval), and one or more consolidated data elements associated with the corresponding customer. Examples of these consolidated data elements may include, but are not limited to, elements of profile, account, transaction, financial-planning service, attrition, branch data, and/or reporting and market data, which may be ingested, processed, aggregated, or filtered by FI computing system 130 using any of the exemplary processes described herein.
In some instances, and as illustrated in
Executed process input engine 212 may also perform operations that obtain, from consolidated data store 144, elements of process input data 192 characterize a composition of an input dataset for the adaptively trained, gradient-boosted, decision-tree process. In some instances, executed process input engine 212 may parse process input data 192 to obtain the composition of the input dataset, which not only identifies the elements of customer-specific data included within each input data set dataset (e.g., input feature values, as described herein), but also a specified sequence or position of these input feature values within the input dataset.
Examples of these input feature values include, but are not limited to, one or more of the candidate feature values extracted, obtained, computed, determined, or derived by executed training input module 176 and packaged into corresponding potions of training datasets 180, as described herein. For example, and as described herein, the computed, determined, or derived feature values may include, but are not limited to, an average balance in a demand deposit account held by a corresponding customer over a prior three-month period, a distance between a residence of a corresponding customer and a branch of the financial, a temporal interval between a current date or time and a prior virtual or in-person meeting between a corresponding customer and a financial planner, either in-person or virtually, or an average duration of each of the prior virtual or in-person meetings between a corresponding customer and a financial planner.
In some instances, and based on the parsed portions of process input data 192, executed process input engine 212 may that identify, and obtain or extract, one or more of the input feature values from one or more of data records maintained within subset 216 of consolidated data records 214 and associated with temporal intervals disposed within the extraction interval Δtextract, as described herein. Executed process input engine 212 may perform operations that package the obtained, or extracted, input feature values within a corresponding one of input datasets 224, such as input dataset 226 associated with the particular customer identified by element 206 of customer data 202, in accordance with their respective, specified sequences or positions. Further, in some examples, and based on the parsed portions of process input data 192, executed process input engine 212 may perform operations that compute, determine, or derive one or more of the input features values based on elements of data extracted or obtained from the additional ones of the consolidated data records, as described herein. Executed process input engine 212 may perform operations that package each of the computed, determined, or derived input feature values into portions of input datasets 226 in accordance with their respective, specified sequences or positions.
Through an implementation of these exemplary processes, executed process input engine 212 may populate an input dataset associated with the particular customer identified by element 206 of customer data 202, such as input dataset 226 of input datasets 224, with input feature values obtained or extracted from, or computed, determined or derived from element of data within, the data records of subset 216. Further, in some instances, executed process input engine 212 may also perform any of the exemplary processes described herein to generate, and populate with input feature values, an additional one of input datasets 224 for each of the additional, or alternate, customers of the financial institution associated with additional, or alternate, elements of customer data 202. Executed process input engine 212 may package each of the discrete, customer-specific input datasets within input datasets 224, and executed process input engine 212 may provide input datasets 224 as an input to a predictive engine 228 executed by the one or more processors of FI computing system 130.
As illustrated in
In some instances, executed predictive engine 228 may perform operations that apply the trained, machine-learning or artificial-intelligence process to input datasets of input datasets 224, including input dataset 226, and that generate an element of output data 230 associated with a corresponding one of input datasets 224, and as such, a corresponding one of the customers identified by the elements of customer data 202. By way of example, and based on portions of process parameter data 190, executed predictive engine 228 may perform operations that establish a plurality of nodes and a plurality of decision trees for the adaptively trained, gradient-boosted, decision-tree process, each of which receive, as inputs (e.g., “ingest”), corresponding elements of input datasets 224. Further, and based on the execution of predictive engine 228, and on the ingestion of input datasets 224 by the established nodes and decision trees of the adaptively trained, gradient-boosted, decision-tree process, FI computing system 130 may perform operations that apply the adaptively trained, gradient-boosted, decision-tree process to each of the input datasets of input datasets 224, including input dataset 226, and that generate an element of output data 230 associated with a corresponding one of input datasets 224, and as such, a corresponding one of the customers identified by the elements of customer data 202.
As described herein, each of the generated elements of output data 230 may include a numerical score indicative of a predicted likelihood that the corresponding one of the customers will be involved in an occurrence of a service-specific attrition event involving the provisioned financial planning services during the future temporal interval (e.g., the target interval Δttarget, described herein). In some examples, the numerical scores associated with the occurrence of the service-specific attrition event may range from zero to unity, with zero being indicative of a minimal predicted likelihood, and unity being indicative of a maximum predicted likelihood.
As illustrated in
By way of example, element 234 of output data 230 may be associated with the particular customer identified by element 206 of customer data 202, and executed post-processing engine 232 may, in some instances, associate element 206 of customer data 202 with element 234 of output data 230 and with input dataset 226 of input datasets 224. Executed post-processing engine 232 may perform any of these exemplary processes to associate each additional, or alternate, one of the elements of output data 230 with a corresponding one of the elements of customer data 202 and a corresponding one of input datasets 224. Further, and in some instances, executed post-processing engine 232 may perform operations that rank the associated elements of customer data 202, elements of output data 230, and input datasets 224 based on magnitudes of the corresponding numerical scores (e.g., which indicate the predicted likelihood that corresponding ones of the customer will be involved in the service-specific attrition events during the future temporal interval), and output elements of ranked output data 236 that include the associated, and now ranked, elements of customer data 202, elements of output data 230, and input datasets 224.
For example, and for a particular customer of the financial institution, ranked output data 236 may include a corresponding ranked element 239 that associates together element 206 of customer data 202 (which includes customer identifier 208 of the particular customer) and element 234 of output data 230 (which specifies a numerical score of 0.77 for the particular customer). In some instances, by ranking the associated elements of customer data 202, elements of output data 230, and input datasets 224 in accordance with the respective numerical scores, FI computing system 130 may identify those customers of the financial institution that represent the greatest attrition risk to the financial institution during the future temporal interval.
Executed post-processing engine 232 may also perform operations that obtain one or more elements of explainability data 194 associated with the adaptively trained, machine-learning or artificial-intelligence process, including contribution values 196, from a corresponding portion of consolidated data store 144. As described herein, the one or more elements of explainability data 194 may, among other things, characterize a contribution of each of the discrete feature values specified within process input data 192 to the predicted likelihood of the occurrences of the service-specific attrition events involving the customers of the financial institution (e.g., the current participants in the one or more provisioned financial planning services) during the target interval Δttarget. For example, each of contribution values 196 may be indicative of a relative contribution and importance of each of the discrete features to the predicted likelihoods of the occurrences of the service-specific attrition events based on a determined number of branching points that utilize the corresponding feature, and FI computing system 130 may perform any of the exemplary processes described herein to compute each of contribution values 196 based on a computed Shapley feature value for the corresponding feature, or based on any additional or alternate, metric indicative of the contribution of the corresponding feature to the predicted likelihoods of the occurrences of the service-specific attrition events
As illustrated in
Although not illustrated in
For example, and based on ranked output data 236, financial-planning system 203 may perform operations that identify a first subset of the customer-specific sets of linked elements of customer data, output data elements, and input datasets associated with numerical scores that exceed a first threshold value, and may characterize the customers associated with the first subset as posing a high risk of attrition to the financial institution. Further, financial-planning system 203 may also perform operations that identify a second subset of the customer-specific sets of linked elements of customer data, output data elements, and input datasets associated with numerical scores that fall between the first threshold value and a second threshold value (smaller in magnitude than the first threshold value), and may characterize the customers associated with the second subset as posing a medium risk of attrition to the financial institution. Additionally, financial-planning system 203 may perform operations that identify a third subset of the customer-specific sets of linked elements of customer data, output data elements, and input datasets associated with numerical scores that fall between the second threshold value and zero, and may characterize the customers associated with the third subset as posing a low risk of attrition to the financial institution. In some instances, the financial-planning system 203 may tailor a marketing strategies to each customer based the assigned level of attrition risk (e.g., low, medium, or high), and may apply these customer-specific marketing strategies to each of the customers in an effort to reduce, or mitigate, the risk of attrition posed by each of the customers.
Referring to
In some instances, executed treatment determination engine 246 may perform operations that parse the elements of ranked output data 236 (including element 239) and obtain, from each of the elements of ranked output data 236, a customer identifier associated with a corresponding one of the customers of the financial institution and a numerical value indicative of a likelihood of an occurrence of service-specific attrition event involving the customer in the financial planning services during a future temporal interval. By way of example, executed treatment determination engine 246 may determine that element 239 of ranked output data 236 that includes, among other things, element 206 of customer data 202, which includes customer identifier 208 of the particular customer of the financial institution, output data element 234, which specifies a numerical score of 0.85 for the particular customer. As described herein, the numerical score of 0.85 may indicate an eighty-five percent likelihood of an occurrence of service-specific attrition event involving the particular customer during a future temporal interval.
Further, and based on the obtained numerical values, executed treatment determination engine 246 may perform any of the exemplary processes described herein to assess the risk of attrition posed by the corresponding ones of the customers, and to identify one or more remediation processes or treatments that are applicable to the corresponding ones of the customers and appropriate to the assessed risk of attrition. Through an application of the identified remediation processes or treatments to the corresponding ones of the customers, certain of the exemplary processes described herein may enable financial-planning system 203 to mitigate the risk of attrition for at least a portion of these customers. For example, executed treatment determination engine 246 may also obtain treatment selection data 248, which establishes, among other things, one or more product-specific treatments appropriate for each of the financial products issued by the financial institution and remedies for corresponding attrition likelihood scores. For example, the elements of treatment selection data 248 may specify specific treatments based on a type of financial product and/or specific treatments based on a particular risk score.
By way of example, for customers with a risk of attrition, for example, below a low risk threshold, e.g., 0.4, elements of treatment selection data 248 may specify that these customers should receive advertisements emphasizing the benefits of the having products with the financial institution. The content may, for instance, be provisioned to the customers through physical or electronic correspondence (e.g., a physical letter, an email, a text-message, or an in-app notification, etc.), or through voice-based communications (e.g., via a pre-recorded message delivered by telephone, via a call manually generated by a representative of the financial institution). Further, for a customer with a medium, or emerging, risk of attrition (e.g., between 0.4 and 0.7), the elements of treatment selection data 248 may specify treatments that include advertising new products to the customer, and for a customer with a high risk of attrition (e.g., above 0.7), the elements of treatment selection data 248 may specify treatments that include, but are not limited to, supplying offers including incentives to maintain participation in the financial planning services provisioned by the financial institution, such as a provisioning of cash-based or loyalty-based rewards with the financial institution. Through an application of one or more of these treatments to a corresponding customer of the financial institution, financial-planning system 203 may maintain or reduce a likelihood of the occurrences of the service-specific attrition involving the customers of the financial institution during the future temporal interval.
Referring back to
Executed treatment application engine 252 may, for example, receive element 206, which includes customer identifier 208, and treatment data 250, and may perform any of the exemplary processes described herein to apply the one or more appropriate treatments to the particular customer associated with customer identifier 208. In some instances, executed treatment application engine 252 may store element 206 and treatment data 250 within a corresponding portion of a tangible, non-transitory memory of financial-planning system 203, e.g., as data record 254 of data repository 256. Additionally, or alternatively, executed treatment application engine 252 may perform operations that cause financial-planning system 203 to transmit data record 254, which includes element 206 and treatment data 250, across communications network 120 to a terminal system 260 operated by a representative 261 the financial institution. As illustrated in
Further, in some examples, financial-planning system 203 may perform operations that analyze each of contribution values 196 maintained within explainability data 194, and the feature values maintained within each of customer-specific input datasets 224 (e.g., as maintained within corresponding elements of ranked output data 236), and establish one or more attrition personas associated with underlying rationales or reasons that cause corresponding groups of customers to cease participation in the provisioned financial planning services. As described herein, and for each of the customers characterized by the customer-specific elements of ranked output data 236, feature contribution values 196 may characterize an importance of corresponding ones of the input features to the predicted likelihood of an occurrence of the service-specific attrition events during the future temporal interval. For instance, financial-planning system 203 may perform operations that identify a subset of the features that are associated with a maximum contribution to the predicted likelihood of an occurrence of the service-specific attrition events during the future temporal interval (e.g., a predetermined number of input features, such as four, associated with the largest contribution values of contribution values 196) or that exceed a predetermined, threshold contribution value.
Based on the feature values maintained within customer-specific ones of input datasets 224, financial-planning system 203 may perform operations that segment the customers associated with corresponding elements of ranked output data 236 into corresponding groups associated with corresponding likelihoods of involvement in future service-specific attrition events, such as, but not limited to, the low, medium, and high risks of involvement in the future occurrences of the service-specific attrition events described herein. By way of example, each of the features within the input datasets may be associated with a corresponding feature identifier, and each of the unique feature identifiers and corresponding ones of the feature contributions may establish variable pairs for associated with the predicted occurrences of service-specific attrition events. In some instances, financial-planning system 203 may perform operations that apply an additional, trained machine-learning or artificial-intelligence process, such as a trained clustering process (e.g., a trained k-means process), to the variable pairs associated with the subset of the features, the customer-specific values of the feature subset maintained within corresponding ones of input datasets 224, and corresponding elements of ranked output data 236.
Further, and based on the application of the trained clustering process (e.g., the trained k-means process) to the variable pairs, the customer-specific values of the feature subset, and corresponding elements of ranked output data 236, financial-planning system 203 may generate elements of clustering data that identify, and characterize, corresponding clusters of the customers that exhibit the corresponding likelihoods of involvement in future service-specific attrition events, such as, but not limited to, the low, medium, and high risks of involvement in the future occurrences of the service-specific attrition events described herein. The identified clusters may, for examples, establish corresponding distinct, or overlapping attrition personas, and the attrition personas may inform an approach taken by financial-planning system 203, or by one or more representatives of the financial institution, to proactively engage the customers in an attempt to prevent the predicted future attrition events.
Referring to
Further, FI computing system 130 may access the ingested elements of internal and external interaction data, and may perform any of the exemplary processes described herein to pre-process the ingested elements of internal and external interaction data elements (e.g., profile, account, transaction, financial-planning service, attrition, branch data, and/or reporting and market data) and generate one or more consolidated data records (e.g., in step 304 of
In some instances, FI computing system 130 may perform any of the exemplary processes described herein to decompose the consolidated data records into (i) a first subset of the consolidated data records having temporal identifiers associated with a first prior temporal interval (e.g., the training interval Δttraining, as described herein) and (ii) a second subset of the consolidated data records having temporal identifiers associated with a second prior temporal interval (e.g., the validation interval Δtvalidation, as described herein), which may be separate, distinct, and disjoint from the first prior temporal interval (e.g., in step 306 of
In some instances, FI computing system 130 may perform any of the exemplary processes described herein to generate a plurality of training datasets based on elements of data obtained, extracted, or derived from all or a selected portion of the first subset of the consolidated data records (e.g., in step 310 of
Based on the plurality of training datasets, FI computing system 130 may also perform any of the exemplary processes described herein to train adaptively the machine-learning or artificial-intelligence process (e.g., the gradient-boosted decision-tree process described herein) to predict, at a temporal prediction point, a likelihood of occurrences of service-specific attrition events involving customers of the financial institution during a future temporal interval (e.g., in step 312 of
In some examples, the distributed components of FI computing system 130 may perform any of the exemplary processes described herein in parallel to establish the plurality of nodes and a plurality of decision trees for the gradient-boosted, decision-tree process, and to adaptively train the gradient-boosted, decision-tree process against the elements of training data included within each of the plurality of the training datasets. The parallel implementation of these exemplary adaptive training processes by the distributed components of FI computing system 130 may, in some instances, be based on an implementation, across the distributed components, of one or more of the parallelized, fault-tolerant distributed computing and analytical protocols described herein.
Through the performance of these adaptive training processes, FI computing system 130 may compute one or more candidate process parameters that characterize the adaptively trained machine-learning or artificial-intelligence process, such as, but not limited to, candidate process parameters for the adaptively trained, gradient-boosted, decision-tree process described herein (e.g., in step 314 of
Further, FI computing system 130 may perform any of the exemplary processes described herein to access the second subset of the consolidated data records, and to generate a plurality of validation subsets having compositions consistent with the candidate input data (e.g., in step 316 of
In some instances, FI computing system 130 may perform any of the exemplary processes described herein to apply the adaptively trained machine-learning or artificial intelligence process (e.g., the adaptively trained, gradient-boosted, decision-tree process described herein) to respective ones of the validation datasets, and to generate corresponding elements of output data based on the application of the adaptively trained machine-learning or artificial intelligence process to the respective ones of the validation datasets (e.g., in step 318 of
Further, and as described herein, the distributed components of FI computing system 130 may perform any of the exemplary processes described herein in parallel to validate the adaptively trained, gradient-boosted, decision-tree process described herein based on the application of the adaptively trained, gradient-boosted, decision-tree process (e.g., configured in accordance with the candidate process parameters) to each of the validation datasets. The parallel implementation of these exemplary adaptive validation processes by the distributed components of FI computing system 130 may, in some instances, be based on an implementation, across the distributed components, of one or more of the parallelized, fault-tolerant distributed computing and analytical protocols described herein.
In some examples, FI computing system 130 may perform any of the exemplary processes described herein to compute a value of one or more metrics that characterize a predictive capability, and an accuracy, of the adaptively trained machine-learning or artificial intelligence process (such as the adaptively trained, gradient-boosted, decision-tree process described herein) based on the generated elements of output data and corresponding ones of the validation datasets (e.g., in step 320 of
Further, and as described herein, the threshold requirements for the adaptively trained, gradient-boosted, decision-tree process may specify one or more predetermined threshold values, such as, but not limited to, a predetermined threshold value for the computed recall-based values, a predetermined threshold value for the computed precision-based values, and/or a predetermined threshold value for the computed AUC values. In some examples, FI computing system 130 may perform any of the exemplary processes described herein to establish whether one, or more, of the computed recall-based values, the computed precision-based values, or the computed AUC values exceed, or fall below, a corresponding one of the predetermined threshold values and as such, whether the adaptively trained, gradient-boosted, decision-tree process satisfies the one or more threshold requirements for deployment.
If, for example, FI computing system 130 were to establish that one, or more, of the computed metric values fail to satisfy at least one of the threshold requirements (e.g., step 322; NO), FI computing system 130 may establish that the adaptively trained machine-learning or artificial-intelligence process (e.g., the adaptively trained, gradient-boosted, decision-tree process) is insufficiently accurate for deployment and a real-time application to the elements of profile, account, transaction, financial planning service, attrition, branch, and/or reporting and market data described herein. Exemplary process 300 may, for example, pass back to step 310, and FI computing system 130 may perform any of the exemplary processes described herein to generate additional training datasets based on the elements of the consolidated data records maintained within the first subset.
Alternatively, if FI computing system 130 were to establish that each computed metric value satisfies threshold requirements (e.g., step 322; YES), FI computing system 130 may deem the machine-learning or artificial intelligence process (e.g., the gradient-boosted, decision-tree process described herein) adaptively trained and ready for deployment and real-time application to the elements of profile, account, transaction, financial planning service, attrition, branch, and/or reporting and market data described herein, and may perform any of the exemplary processes described herein to generate trained process data that includes the process parameter data and process input data associated with the of the adaptively trained machine-learning or artificial intelligence process (e.g., in step 324 of
FI computing system 130 may also perform any of the exemplary processes described herein to generate one or more elements of explainability data that, among other things, characterize a contribution of each of the discrete feature values specified within process input data to the predicted likelihood of the occurrences of the service-specific attrition events involving the customers of the financial institution during the future temporal interval (e.g., in step 326 of
Referring to
FI computing system 130 may perform any of the exemplary processes described herein to generate an input dataset associated with each of the customers identified by the discrete elements of customer data 202, and to apply the adaptively trained, gradient-boosted, decision-tree process described herein to each of the input datasets, in accordance with a predetermined temporal schedule (e.g., on a daily basis, a monthly basis, etc.), or in response to a detection of a triggering event. By way of example, and without limitation, the triggering event may correspond to a detected change in a composition of the elements of customer data 202 maintained within aggregated data store (e.g., to an ingestion of additional elements of customer data 202, etc.) or to a receipt of an explicit request received from financial-planning system 203).
For example, FI computing system 130 may also perform any of the exemplary processes described herein to obtain a value of one or more process parameters that characterize the adaptively trained machine-learning or artificial-intelligence process (e.g., the adaptively trained, gradient-boosted, decision-tree process described herein) and elements of process input data that specify a composition of an input dataset for the adaptively trained machine-learning or artificial-intelligence process (e.g., in step 404 of
In some instances, FI computing system 130 may access the elements of customer data associated with one or more customers of the financial institution, and may perform any of the exemplary processes described herein to generate, for the one or more customers, an input dataset having a composition consistent with the elements of process input data (e.g., in step 406 of
For example, and based on the one or more obtained process parameters, FI computing system 130 may perform operations, described herein, that establish a plurality of nodes and a plurality of decision trees for the adaptively trained, gradient-boosted, decision-tree process, each of which receive, as inputs (e.g., “ingest”), corresponding elements of the customer-specific input datasets. Based on the ingestion of the input datasets by the established nodes and decision trees of the adaptively trained, gradient-boosted, decision-tree process, FI computing system 130 may perform operations that apply the adaptively trained, gradient-boosted, decision-tree process to each of the customer-specific input datasets and that generate the customer-specific elements of the output data associated with the customer-specific input datasets.
As described herein, each of the customer-specific elements of the output data may include a numerical score indicative of a predicted likelihood that a corresponding one of the customers will be involved in an attrition event associated with the financial planning services during the future temporal interval. In some examples, the numerical score within each of the customer-specific elements of the output data may range from zero to unity, with zero being indicative of a minimal predicted likelihood, and unity being indicative of a maximum predicted likelihood. In step 412 of
FI computing system 130 may perform any of the exemplary processes described herein to transmit all, or a selected portion of, the elements of ranked output data and elements of explainability data associated with the trained, machine-learning or artificial-intelligence process to a corresponding one of the additional computing systems associated with the financial institution, such as financial-planning system 203 (e.g., in step 416 of
Embodiments of the subject matter and the functional operations described in this specification can be implemented in digital electronic circuitry, in tangibly-embodied computer software or firmware, in computer hardware, including the structures disclosed in this specification and their structural equivalents, or in combinations of one or more of them. Exemplary embodiments of the subject matter described in this specification, including, but not limited to application programming interfaces (APIs) 134, 204, and 244, data ingestion engine 136, pre-processing engine 140, filtration engine 155, aggregation engine 157, training engine 172, training input module 176, adaptive training and validation module 182, process input engine 212, predictive engine 228, post-processing engine 232, treatment determination engine 246, and treatment application engine 252, can be implemented as one or more computer programs, i.e., one or more modules of computer program instructions encoded on a tangible non-transitory program carrier for execution by, or to control the operation of, a data processing apparatus (or a computer system or a computing device).
Additionally, or alternatively, the program instructions can be encoded on an artificially generated propagated signal, such as a machine-generated electrical, optical, or electromagnetic signal that is generated to encode information for transmission to suitable receiver apparatus for execution by a data processing apparatus. The computer storage medium can be a machine-readable storage device, a machine-readable storage substrate, a random or serial access memory device, or a combination of one or more of them.
The terms “apparatus,” “device,” and “system” (e.g., the FI computing system and the device described herein) refer to data processing hardware and encompass all kinds of apparatus, devices, and machines for processing data, including, by way of example, a programmable processor such as a graphical processing unit (GPU) or central processing unit (CPU), a computer, or multiple processors or computers. The apparatus, device, or system can also be or further include special purpose logic circuitry, such as an FPGA (field programmable gate array) or an ASIC (application specific integrated circuit). The apparatus, device, or system can optionally include, in addition to hardware, code that creates an execution environment for computer programs, such as code that constitutes processor firmware, a protocol stack, a database management system, an operating system, or a combination of one or more of them.
A computer program, which may also be referred to or described as a program, software, a software application, a module, a software module, a script, or code, can be written in any form of programming language, including compiled or interpreted languages, or declarative or procedural languages, and it can be deployed in any form, including as a stand-alone program or as a module, component, subroutine, or other unit suitable for use in a computing environment. A computer program may, but need not, correspond to a file in a file system. A program can be stored in a portion of a file that holds other programs or data, such as one or more scripts stored in a markup language document, in a single file dedicated to the program in question, or in multiple coordinated files, such as files that store one or more modules, sub programs, or portions of code. A computer program can be deployed to be executed on one computer or on multiple computers that are located at one site or distributed across multiple sites and interconnected by a communication network.
The processes and logic flows described in this specification can be performed by one or more programmable computers executing one or more computer programs to perform functions by operating on input data and generating output. The processes and logic flows can also be performed by, and apparatus can also be implemented as, special purpose logic circuitry, such as an FPGA (field programmable gate array), an ASIC (application specific integrated circuit), one or more processors, or any other suitable logic.
Computers suitable for the execution of a computer program include, by way of example, general or special purpose microprocessors or both, or any other kind of central processing unit. Generally, a CPU will receive instructions and data from a read only memory or a random-access memory or both. The essential elements of a computer are a central processing unit for performing or executing instructions and one or more memory devices for storing instructions and data. Generally, a computer will also include, or be operatively coupled to receive data from or transfer data to, or both, one or more mass storage devices for storing data, such as magnetic, magneto optical disks, or optical disks. However, a computer need not have such devices. Moreover, a computer can be embedded in another device, such as a mobile telephone, a personal digital assistant (PDA), a mobile audio or video player, a game console, a Global Positioning System (GPS) receiver, or a portable storage device, such as a universal serial bus (USB) flash drive, to name just a few.
Computer readable media suitable for storing computer program instructions and data include all forms of nonvolatile memory, media and memory devices, including by way of example semiconductor memory devices, such as EPROM, EEPROM, and flash memory devices; magnetic disks, such as internal hard disks or removable disks; magneto optical disks; and CD ROM and DVD-ROM disks. The processor and the memory can be supplemented by, or incorporated in, special purpose logic circuitry.
To provide for interaction with a user (e.g., the customer or employee described herein), embodiments of the subject matter described in this specification can be implemented on a computer having a display unit, such as a CRT (cathode ray tube) or LCD (liquid crystal display) monitor, a TFT display, or an OLED display, for displaying information to the user and a keyboard and a pointing device, such as a mouse or a trackball, by which the user can provide input to the computer. Other kinds of devices can be used to provide for interaction with a user as well; for example, feedback provided to the user can be any form of sensory feedback, such as visual feedback, auditory feedback, or tactile feedback; and input from the user can be received in any form, including acoustic, speech, or tactile input. In addition, a computer can interact with a user by sending documents to and receiving documents from a device that is used by the user; for example, by sending web pages to a web browser on a user's device in response to requests received from the web browser.
Implementations of the subject matter described in this specification can be implemented in a computing system that includes a back end component, such as a data server, or that includes a middleware component, such as an application server, or that includes a front end component, such as a computer having a graphical user interface or a Web browser through which a user can interact with an implementation of the subject matter described in this specification, or any combination of one or more such back end, middleware, or front end components. The components of the system can be interconnected by any form or medium of digital data communication, such as a communication network. Examples of communication networks include a local area network (LAN) and a wide area network (WAN), such as the Internet.
The computing system can include clients and servers. A client and server are generally remote from each other and typically interact through a communication network. The relationship of client and server arises by virtue of computer programs running on the respective computers and having a client-server relationship to each other. In some implementations, a server transmits data, such as an HTML page, to a user device, such as for purposes of displaying data to and receiving user input from a user interacting with the user device, which acts as a client. Data generated at the user device, such as a result of the user interaction, can be received from the user device at the server.
While this specification includes many specifics, these should not be construed as limitations on the scope of the invention or of what may be claimed, but rather as descriptions of features specific to particular embodiments of the invention. Certain features that are described in this specification in the context of separate embodiments may also be implemented in combination in a single embodiment. Conversely, various features that are described in the context of a single embodiment may also be implemented in multiple embodiments separately or in any suitable sub-combination. Moreover, although features may be described above as acting in certain combinations and even initially claimed as such, one or more features from a claimed combination may in some cases be excised from the combination, and the claimed combination may be directed to a sub-combination or variation of a sub-combination.
Similarly, while operations are depicted in the drawings in a particular order, this should not be understood as requiring that such operations be performed in the particular order shown or in sequential order, or that all illustrated operations be performed, to achieve desirable results. In certain circumstances, multitasking and parallel processing may be advantageous. Moreover, the separation of various system components in the embodiments described above should not be understood as requiring such separation in all embodiments, and it should be understood that the described program components and systems may generally be integrated together in a single software product or packaged into multiple software products.
In this application, the use of the singular includes the plural unless specifically stated otherwise. In this application, the use of “or” means “and/or” unless stated otherwise. Furthermore, the use of the term “including,” as well as other forms such as “includes” and “included,” is not limiting. In addition, terms such as “element” or “component” encompass both elements and components comprising one unit, and elements and components that comprise more than one subunit, unless specifically stated otherwise. The section headings used herein are for organizational purposes only, and are not to be construed as limiting the described subject matter.
Various embodiments have been described herein with reference to the accompanying drawings. It will, however, be evident that various modifications and changes may be made thereto, and additional embodiments may be implemented, without departing from the broader scope of the disclosed embodiments as set forth in the claims that follow.
This application claims the benefit of priority under 35 U.S.C. § 119(e) to prior U.S. Provisional Application No. 63/172,645, filed Apr. 8, 2021, the disclosure of which is incorporated by reference herein to its entirety.
Number | Date | Country | |
---|---|---|---|
63172645 | Apr 2021 | US |