Method, System, and Computer Program Product for Managing Model Updates
By dynamically updating the model state and feature profile of the machine learning model between multiple data centers, the problem of inconsistent model state and input profile in the prior art is solved, and more accurate and consistent model results are achieved.
Patent Information
- Application Number
- CN201980100085.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2019-09-11
- Publication Date
- 2025-07-11
- Estimated Expiration
- 2039-09-11
AI Technical Summary
Existing database and in-memory cache systems cannot effectively maintain the consistency of the model state and input profile of the stateful machine learning model between multiple data centers, resulting in wrong and inconsistent model results.
By using model strategies to determine the satisfactory conditions of multiple model states and feature profiles, dynamically update the implementation of machine learning models across data centers to ensure consistency of model states and feature profiles.
More accurate and consistent model results across multiple data centers are achieved, and the ability of machine learning models to synchronize data is improved.
Smart Images

Figure CN114402335B_ABST
Abstract
Description
Technical Field
[0001] The present disclosure generally relates to systems, devices, products, apparatuses, and methods for managing model updates, and in some embodiments or aspects, to methods, systems, and products for dynamic cross-data center profile updates to support stateful machine learning models. Background Art
[0002] Compared with applications using stateless machine learning models, many applications that receive time-based continuous inputs or events (e.g., fraud detection applications, alternative processing applications, advertising applications, marketing applications, etc.) use stateful machine learning models such as recurrent neural networks, for example, to improve the performance of the applications. For example, a recurrent neural network (RNN) stores continuous information from model inputs to model states (e.g., similar to the memory of the human brain, etc.). As an example, an RNN model can store multiple layers of states.
[0003] Time-based continuous inputs or events such as transactions, for example, can be processed at multiple different data centers. For example, a first input or event can be processed at a first data center, and a second input or event can be processed at a second data center. Each of these multiple data centers can provide an implementation (e.g., an instance, etc.) of a stateful machine learning model. Synchronizing and updating the model state and input profiles among the multiple data centers allows the model results to remain accurate and / or consistent among the multiple data centers. However, existing in-database and in-memory cache systems do not have a mechanism for maintaining consistent model states and input profiles among multiple data centers. For example, these existing systems do not consider the context of the data when updating data between data centers. As an example, existing in-database and in-memory cache systems can treat all data equally (e.g., do not provide control over when to replicate data, what data to replicate first, and in what order to replicate data). In this example, if the model states and / or input profiles for different implementations of a stateful machine learning model are updated inconsistently and / or out of order, the model results may be incorrect and / or inconsistent, and the correct model state may be irrecoverable. Therefore, there is a need in the art for improved management of model updates. Summary of the Invention
[0004] Accordingly, improved systems, devices, products, apparatuses, and / or methods for managing model updates are provided.
[0005] According to some non - limiting embodiments or aspects, a computer - implemented method is provided, including: obtaining, using at least one processor, a plurality of first feature profiles of a first implementation of a first machine - learning model, and a plurality of first model states determined based on processing a model input including the plurality of first feature profiles using the first implementation of the first machine - learning model; determining, using at least one processor, that a first model policy associated with the first machine - learning model is satisfied based on the plurality of first model states including a set of model states defined by the first model policy and the plurality of first feature profiles including a set of feature profiles defined by the first model policy; and in response to determining that the first model policy associated with the first machine - learning model is satisfied, providing, using at least one processor, the plurality of first model states and the plurality of first feature profiles for updating at least one second implementation of the first machine - learning model that is different from the first implementation of the first machine - learning model.
[0006] In some non - limiting embodiments or aspects, the first machine - learning model includes a first neural network, the first neural network includes a plurality of layers, and each layer of the plurality of layers is associated with a different model state in the set of model states defined by the first model policy compared to each other layer of the plurality of layers.
[0007] In some non - limiting embodiments or aspects, the set of feature profiles defined by the first model policy includes an appropriate subset of the feature profiles of the model input processed by the first implementation of the machine - learning model.
[0008] In some non - limiting embodiments or aspects, the model input is associated with a serial number, and determining that the first model policy associated with the first machine - learning model is satisfied is based on the serial number, the serial number including the next serial number in the serial number order associated with the model input processed by the first implementation of the machine - learning model.
[0009] In some non - limiting embodiments or aspects, obtaining the plurality of first model states includes receiving at least one first model state of the plurality of first model states at a first time, and receiving at least one other first model state of the plurality of model states at another time after the first time, the at least one first model state including a model state in the set of model states defined by the first model policy, and the at least one other first model state including another model state in the set of model states defined by the first model policy.
[0010] In some non - limiting embodiments or aspects, obtaining the plurality of first feature profiles includes receiving at least one first feature profile of the plurality of first feature profiles at a first time and receiving at least one other first feature profile of the plurality of first feature profiles at another time after the first time, the at least one first feature profile not including a feature profile in the set of feature profiles defined by the first model policy, and the at least one other first feature profile including a feature profile in the set of feature profiles defined by the first model policy.
[0011] In some non - limiting embodiments or aspects, the method further includes: using at least one processor to update the at least one second implementation of the first machine - learning model with the plurality of first model states and the plurality of first feature profiles.
[0012] According to some non - limiting embodiments or aspects, a computing system is provided, including: one or more processors programmed and / or configured to: obtain a plurality of first feature profiles input to a first implementation of a first machine - learning model and a plurality of first model states determined based on processing a model input including the plurality of first feature profiles using the first implementation of the first machine - learning model; determine that a first model policy associated with the first machine - learning model is satisfied based on the plurality of first model states including a set of model states defined by the first model policy and the plurality of first feature profiles including a set of feature profiles defined by the first model policy; and in response to determining that the first model policy associated with the first machine - learning model is satisfied, provide the plurality of first model states and the plurality of first feature profiles for updating at least one second implementation of the first machine - learning model different from the first implementation of the first machine - learning model.
[0013] In some non - limiting embodiments or aspects, the first machine - learning model includes a first neural network, the first neural network includes a plurality of layers, and each layer of the plurality of layers is associated with a different model state in the set of model states defined by the first model policy compared to each other layer of the plurality of layers.
[0014] In some non - limiting embodiments or aspects, the set of feature profiles defined by the first model policy includes an appropriate subset of the feature profiles of the model input processed by the first implementation of the machine - learning model.
[0015] In some non - limiting embodiments or aspects, the model input is associated with a sequence number, and the one or more processors are programmed and / or configured to determine that the first model policy associated with the first machine - learning model is satisfied based on the sequence number, the sequence number including the next sequence number in the sequence number order associated with the model input processed by the first implementation of the machine - learning model.
[0016] In some non - limiting embodiments or aspects, the one or more processors are programmed and / or configured to obtain the plurality of first model states by receiving at least one first model state among the plurality of first model states at a first time and receiving at least one other first model state among the plurality of model states at another time after the first time, the at least one first model state including a model state in the set of model states defined by the first model policy, and the at least one other first model state including another model state in the set of model states defined by the first model policy.
[0017] In some non - limiting embodiments or aspects, the one or more processors are programmed and / or configured to obtain the plurality of first feature profiles by receiving at least one first feature profile among the plurality of first feature profiles at a first time and receiving at least one other first feature profile among the plurality of first feature profiles at another time after the first time, the at least one first feature profile not including a feature profile in the set of feature profiles defined by the first model policy, wherein the at least one other first feature profile includes a feature profile in the set of feature profiles defined by the first model policy.
[0018] In some non - limiting embodiments or aspects, the computing system further includes: a first data center programmed and / or configured to provide the first implementation of the first machine - learning model; and at least one second data center programmed and / or configured to provide the at least one second implementation of the first machine - learning model, wherein the one or more processors are further programmed and / or configured to send the plurality of first model states and the plurality of first feature profiles to the at least one second data center for updating the at least one second implementation of the first machine - learning model at the at least one second data center.
[0019] According to some non - limiting embodiments or aspects, a computer program product is provided that includes at least one non - transient computer - readable medium. The at least one non - transient computer - readable medium includes program instructions that, when executed by at least one processor, cause the at least one processor to: obtain a plurality of first feature profiles input into a first implementation of a first machine - learning model, and a plurality of first model states determined based on processing a model input including the plurality of first feature profiles using the first implementation of the first machine - learning model; determine that a first model policy associated with the first machine - learning model is satisfied based on the plurality of first model states including a set of model states defined by the first model policy and the plurality of first feature profiles including a set of feature profiles defined by the first model policy; and in response to determining that the first model policy associated with the first machine - learning model is satisfied, provide the plurality of first model states and the plurality of first feature profiles for updating at least one second implementation of the first machine - learning model that is different from the first implementation of the first machine - learning model.
[0020] In some non - limiting embodiments or aspects, the first machine - learning model includes a first neural network that includes a plurality of layers, and each layer of the plurality of layers is associated with a different model state in the set of model states defined by the first model policy compared to each other layer of the plurality of layers.
[0021] In some non - limiting embodiments or aspects, the set of feature profiles defined by the first model policy includes an appropriate subset of the feature profiles of the model input processed by the first implementation of the machine - learning model.
[0022] In some non - limiting embodiments or aspects, the model input is associated with a serial number, and the instructions cause the at least one processor to determine that the first model policy associated with the first machine - learning model is satisfied based on the serial number, the serial number including the next serial number in the serial - number order associated with the model input processed by the first implementation of the machine - learning model.
[0023] In some non - limiting embodiments or aspects, the instructions cause the at least one processor to obtain the plurality of first model states by receiving at least one first model state of the plurality of first model states at a first time and receiving at least one other first model state of the plurality of model states at another time after the first time, the at least one first model state including a model state from the set of model states defined by the first model policy, and the at least one other first model state including another model state from the set of model states defined by the first model policy.
[0024] In some non - limiting embodiments or aspects, the instructions cause the at least one processor to obtain the plurality of first feature profiles by receiving at least one first feature profile of the plurality of first feature profiles at a first time and receiving at least one other first feature profile of the plurality of first feature profiles at another time after the first time, the at least one first feature profile not including a feature profile from the set of feature profiles defined by the first model policy, and the at least one other first feature profile including a feature profile from the set of feature profiles defined by the first model policy.
[0025] Other embodiments or aspects are set forth in the numbered clauses below:
[0026] Clause 1. A computer - implemented method, comprising: obtaining, using at least one processor, a plurality of first feature profiles of a first implementation of a first machine - learning model and a plurality of first model states determined by processing a model input including the plurality of first feature profiles using the first implementation of the first machine - learning model; determining, using at least one processor, that a first model policy associated with the first machine - learning model is satisfied based on the plurality of first model states including a set of model states defined by the first model policy and the plurality of first feature profiles including a set of feature profiles defined by the first model policy; and in response to determining that the first model policy associated with the first machine - learning model is satisfied, providing, using at least one processor, the plurality of first model states and the plurality of first feature profiles for updating at least one second implementation of the first machine - learning model that is different from the first implementation of the first machine - learning model.
[0027] Clause 2. The computer - implemented method according to Clause 1, wherein the first machine - learning model includes a first neural network, the first neural network includes a plurality of layers, and wherein each layer of the plurality of layers is associated with a different model state from the set of model states defined by the first model policy compared to each other layer of the plurality of layers.
[0028] Clause 3. The computer-implemented method according to Clause 1 or 2, wherein the set of feature profiles defined by the first model policy includes a suitable subset of the feature profiles of the model inputs processed by the first implementation of the machine learning model.
[0029] Clause 4. The computer-implemented method according to any one of Clauses 1 to 3, wherein the model input is associated with a serial number, and wherein determining that the first model policy associated with the first machine learning model is satisfied is based on the serial number, the serial number including the next serial number in the serial number order associated with the model input processed by the first implementation of the machine learning model.
[0030] Clause 5. The computer-implemented method according to any one of Clauses 1 to 4, wherein obtaining the plurality of first model states includes receiving at least one first model state of the plurality of first model states at a first time, and receiving at least one other first model state of the plurality of model states at another time after the first time, wherein the at least one first model state includes a model state in the set of model states defined by the first model policy, and wherein the at least one other first model state includes another model state in the set of model states defined by the first model policy.
[0031] Clause 6. The computer-implemented method according to any one of Clauses 1 to 5, wherein obtaining the plurality of first feature profiles includes receiving at least one first feature profile of the plurality of first feature profiles at a first time, and receiving at least one other first feature profile of the plurality of first feature profiles at another time after the first time, wherein the at least one first feature profile does not include a feature profile in the set of feature profiles defined by the first model policy, and wherein the at least one other first feature profile includes a feature profile in the set of feature profiles defined by the first model policy.
[0032] Clause 7. The computer-implemented method according to any one of Clauses 1 to 6, further comprising: using at least one processor to update the at least one second implementation of the first machine learning model with the plurality of first model states and the plurality of first feature profiles.
[0033] Clause 8. A computing system includes: one or more processors programmed and / or configured to: obtain a plurality of first feature profiles input to a first implementation of a first machine learning model, and a plurality of first model states determined based on processing a model input including the plurality of first feature profiles using the first implementation of the first machine learning model; determine that a first model policy associated with the first machine learning model is satisfied based on the plurality of first model states including a set of model states defined by the first model policy and the plurality of first feature profiles including a set of feature profiles defined by the first model policy; and in response to determining that the first model policy associated with the first machine learning model is satisfied, provide the plurality of first model states and the plurality of first feature profiles for updating at least a second implementation of the first machine learning model different from the first implementation of the first machine learning model.
[0034] Clause 9. The computing system of Clause 8, wherein the first machine learning model includes a first neural network, the first neural network includes a plurality of layers, and wherein each layer of the plurality of layers is associated with a different model state in the set of model states defined by the first model policy compared to each other layer of the plurality of layers.
[0035] Clause 10. The computing system of Clause 8 or 9, wherein the set of feature profiles defined by the first model policy includes an appropriate subset of the feature profiles of the model input processed by the first implementation of the machine learning model.
[0036] Clause 11. The computing system of any one of Clauses 8 to 10, wherein the model input is associated with a serial number, and wherein the one or more processors are programmed and / or configured to determine that the first model policy associated with the first machine learning model is satisfied based on the serial number, the serial number including the next serial number in a serial number order associated with the model input processed by the first implementation of the machine learning model.
[0037] Clause 12. The computing system of any one of Clauses 8 to 11, wherein the one or more processors are programmed and / or configured to obtain the plurality of first model states by receiving at least one first model state of the plurality of first model states at a first time and receiving at least one other first model state of the plurality of model states at another time after the first time, wherein the at least one first model state includes a model state in the set of model states defined by the first model policy, and wherein the at least one other first model state includes another model state in the set of model states defined by the first model policy.
[0038] Clause 13. The computing system according to any one of Clauses 8 to 12, wherein the one or more processors are programmed and / or configured to obtain the plurality of first feature profiles by receiving at least one first feature profile of the plurality of first feature profiles at a first time and receiving at least one other first feature profile of the plurality of first feature profiles at another time after the first time, wherein the at least one first feature profile does not include a feature profile in the set of feature profiles defined by the first model policy, and wherein the at least one other first feature profile includes a feature profile in the set of feature profiles defined by the first model policy.
[0039] Clause 14. The computing system according to any one of Clauses 8 to 13, further comprising: a first data center programmed and / or configured to provide the first implementation of the first machine learning model; and at least one second data center programmed and / or configured to provide the at least one second implementation of the first machine learning model, wherein the one or more processors are further programmed and / or configured to send the plurality of first model states and the plurality of first feature profiles to the at least one second data center for updating the at least one second implementation of the first machine learning model at the at least one second data center.
[0040] Clause 15. A computer program product comprising at least one non-transitory computer-readable medium including program instructions that, when executed by at least one processor, cause the at least one processor to: obtain a plurality of first feature profiles input to a first implementation of a first machine learning model and a plurality of first model states determined based on processing a model input including the plurality of first feature profiles using the first implementation of the first machine learning model; determine that a first model policy associated with the first machine learning model is satisfied based on the plurality of first model states including a set of model states defined by the first model policy and the plurality of first feature profiles including a set of feature profiles defined by the first model policy; and in response to determining that the first model policy associated with the first machine learning model is satisfied, provide the plurality of first model states and the plurality of first feature profiles for updating at least one second implementation of the first machine learning model different from the first implementation of the first machine learning model.
[0041] Clause 16. The computer program product according to Clause 15, wherein the first machine learning model includes a first neural network, the first neural network includes a plurality of layers, and wherein each layer of the plurality of layers is associated with a different model state in the set of model states defined by the first model policy compared to each other layer of the plurality of layers.
[0042] Clause 17. The computer program product according to Clause 15 or 16, wherein the set of feature profiles defined by the first model policy includes a suitable subset of the feature profiles of the model inputs processed by the first implementation of the machine learning model.
[0043] Clause 18. The computer program product according to any one of Clauses 15 to 17, wherein the model input is associated with a serial number, and wherein the instructions cause the at least one processor to determine that the first model policy associated with the first machine learning model is satisfied based on the serial number, the serial number including the next serial number in the serial number order associated with the model inputs processed by the first implementation of the machine learning model.
[0044] Clause 19. The computer program product according to any one of Clauses 15 to 18, wherein the instructions cause the at least one processor to obtain the plurality of first model states by receiving at least one first model state of the plurality of first model states at a first time and receiving at least one other first model state of the plurality of model states at another time after the first time, wherein the at least one first model state includes a model state in the set of model states defined by the first model policy, and wherein the at least one other first model state includes another model state in the set of model states defined by the first model policy.
[0045] Clause 20. The computer program product according to any one of Clauses 15 to 19, wherein the instructions cause the at least one processor to obtain the plurality of first feature profiles by receiving at least one first feature profile of the plurality of first feature profiles at a first time and receiving at least one other first feature profile of the plurality of first feature profiles at another time after the first time, wherein the at least one first feature profile does not include a feature profile in the set of feature profiles defined by the first model policy, and wherein the at least one other first feature profile includes a feature profile in the set of feature profiles defined by the first model policy.
[0046] After considering the following description and the appended claims in light of the accompanying drawings, these and other features and characteristics of the present disclosure, as well as the methods of operation and functions of the combinations of the related structural elements and parts, and the manufacturing economy will become more apparent. All of the drawings form part of this specification, where like reference numerals indicate corresponding parts in each figure. However, it should be clearly understood that the drawings are for illustrative and descriptive purposes only and are not intended as a definition of the limits. Unless the context clearly dictates otherwise, as used in this specification and claims, the singular forms "a" and "the" include plural referents. Description of the Drawings
[0047] Additional advantages and details are explained in more detail below with reference to the exemplary embodiments or aspects shown in the schematic drawings, in which:
[0048] Figure 1A is a diagram of a non-limiting embodiment or aspect of an environment in which the systems, devices, products, apparatuses, and / or methods described herein may be implemented;
[0049] Figure 1B is a diagram of a non-limiting embodiment or aspect of a system for managing model updates;
[0050] Figure 2 is Figure 1A and 1B a diagram of a non-limiting embodiment or aspect of one or more devices and / or components of one or more systems;
[0051] Figure 3 is a flowchart of a non-limiting embodiment or aspect of a process for managing model updates. Detailed Description
[0052] It should be understood that, except as expressly specified to the contrary, the present disclosure may assume various alternative variations and sequences of steps. It should also be understood that the specific devices and processes shown in the drawings and described in the following specification are merely exemplary and non-limiting embodiments or aspects. Accordingly, the specific dimensions and other physical characteristics related to the embodiments or aspects disclosed herein should not be considered limiting.
[0053] Aspects, components, elements, structures, acts, steps, functions, instructions, etc. used herein should not be construed as critical or essential unless expressly described as such. Also, as used herein, the articles "a" and "an" are intended to include one or more items and may be used interchangeably with "one or more" and "at least one". Additionally, as used herein, the term "group" is intended to include one or more items (e.g., related items, unrelated items, combinations of related and unrelated items, etc.) and may be used interchangeably with "one or more" or "at least one". In cases where only one item is desired, the term "one" or similar language is used. Also, as used herein, the term "having" and the like are intended to be open-ended terms. Additionally, unless expressly stated otherwise, the recitation "based on" is intended to mean "at least partially based on".
[0054] As used herein, the terms "communication" and "communicate" refer to receiving or conveying one or more signals, messages, commands, or other types of data. For a unit (e.g., any device, system, or component thereof) to communicate with another unit means that the one unit is capable of receiving data from and / or sending data to the other unit, directly or indirectly. This can refer to a direct or indirect connection that is inherently wired and / or wireless. Additionally, although the data being sent may be modified, processed, relayed, and / or routed between a first unit and a second unit, the first unit and the second unit may still communicate with each other. For example, although a first unit receives data passively and does not actively send data to the second unit, the first unit may still communicate with the second unit. As another example, if an intermediate unit processes data from one unit and sends the processed data to a second unit, the first unit may communicate with the second unit. It should be understood that there may be many other arrangements.
[0055] Obviously, the systems and / or methods described herein may be implemented in different forms of hardware, software, or a combination of hardware and software. The actual specific control hardware or software code used to implement these systems and / or methods does not limit the embodiments. Thus, the operations and behaviors of the systems and / or methods are described herein without reference to specific software code, and it should be understood that software and hardware can be designed to implement the systems and / or methods based on the description herein.
[0056] Some non-limiting embodiments or aspects are described herein in connection with a threshold. As used herein, meeting a threshold may refer to a value that is greater than the threshold, more than the threshold, higher than the threshold, greater than or equal to the threshold, less than the threshold, fewer than the threshold, lower than the threshold, less than or equal to the threshold, equal to the threshold, etc.
[0057] As used herein, the term "transaction service provider" may refer to an entity that receives a transaction authorization request from a merchant or other entity and, in some cases, provides payment assurance through an agreement between the transaction service provider and an issuer institution. The terms "transaction service provider" and "transaction service provider system" may also refer to one or more computer systems operated by or on behalf of the transaction service provider, such as a transaction processing system that executes one or more software applications. The transaction processing system may include a server computer having one or more processors and, in some non-limiting embodiments or aspects, may be operated by or on behalf of the transaction service provider.
[0058] As used herein, the term "account identifier" may include one or more primary account numbers (PANs), tokens, or other identifiers (e.g., globally unique identifier (GUID), universally unique identifier (UUID), etc.) associated with a customer account of a user (e.g., customer, consumer, etc.). The term "token" may refer to an identifier that serves as an alternative or replacement for an original account identifier such as a PAN. The account identifier may be alphanumeric or any combination of characters and / or symbols. The token may be associated with a PAN or other original account identifier in one or more databases such that the token can be used to conduct a transaction without directly using the original account identifier. In some instances, an original account identifier such as a PAN may be associated with multiple tokens for different individuals or purposes.
[0059] As used herein, the terms "issuer institution", "portable financial device issuer", "issuer", or "issuer bank" may refer to one or more entities that provide one or more accounts to a user (e.g., customer, consumer, organization, etc.) for conducting transactions (e.g., payment transactions), such as initiating credit card payment transactions and / or debit card payment transactions. For example, an issuer institution may provide an account identifier such as a personal account number (PAN) to a user, which uniquely identifies one or more accounts associated with the user. The account identifier may be embodied on a portable financial device such as a physical financial instrument (e.g., a payment card), and / or may be electronic and used for electronic payments. In some non-limiting embodiments or aspects, the issuer institution may be associated with a bank identification number (BIN) that uniquely identifies the issuer institution. As used herein, "issuer institution system" may refer to one or more computer systems operated by or on behalf of the issuer institution, such as a server computer that executes one or more software applications. For example, the issuer institution system may include one or more authorization servers for authorizing payment transactions.
[0060] As used herein, the term "merchant" may refer to an individual or entity that provides products and / or services or the right to use products and / or services to a customer based on a transaction such as a payment transaction. The term "merchant" or "merchant system" may also refer to one or more computer systems operated by or on behalf of a merchant, such as a server computer that executes one or more software applications. As used herein, a "point-of-sale (POS) system" may refer to one or more computers and / or peripheral devices used by a merchant to conduct a payment transaction with a customer, including one or more card readers, near field communication (NFC) receivers, RFID receivers, and / or other contactless transceivers or receivers, contact-based receivers, payment terminals, computers, servers, input devices, and / or other similar devices that may be used to initiate a payment transaction.
[0061] As used herein, the term "mobile device" may refer to one or more portable electronic devices configured to communicate with one or more networks. By way of example, a mobile device may include a cellular phone (e.g., a smart phone or a standard cellular phone), a portable computer (e.g., a tablet computer, a laptop computer, etc.), a wearable device (e.g., a watch, glasses, lenses, clothing, etc.), a personal digital assistant (PDA), and / or other similar devices. As used herein, the terms "client device" and "user device" refer to any electronic device configured to communicate with one or more servers or remote devices and / or systems. A client device or user device may include a mobile device, a network-enabled device (e.g., a network-enabled television, refrigerator, thermostat, etc.), a computer, a POS system, and / or any other device or system capable of communicating with a network.
[0062] As used herein, the term "computing device" or "computer device" may refer to one or more electronic devices configured to communicate directly or indirectly with one or more networks or to communicate over one or more networks. A computing device may be a mobile device, a desktop computer, etc. Additionally, the term "computer" may refer to any computing device that includes the necessary components for receiving, processing, and outputting data and typically includes a display, a processor, a memory, an input device, and a network interface. An "application" or "application programming interface" (API) refers to computer code or other data arranged on a computer-readable medium that may be executed by a processor to facilitate interaction between software components, such as interaction between a client-side front end and / or a server-side back end for receiving data from a client. An "interface" refers to a generated display, such as one or more graphical user interfaces (GUIs) with which a user may directly or indirectly (e.g., via a keyboard, mouse, touch screen, etc.) interact.
[0063] As used herein, the terms "electronic wallet" and "electronic wallet application" refer to one or more electronic devices and / or software applications configured to initiate and / or conduct payment transactions. For example, an electronic wallet may include a mobile device that executes an electronic wallet application, and may also include server-side software and / or databases for maintaining transaction data and providing the transaction data to the mobile device. An "electronic wallet provider" may include an entity that provides and / or maintains an electronic wallet for customers, such as Google Wallet TM , Android Apple Samsung and / or other similar electronic payment systems. In some non-limiting examples, the issuer bank may be an electronic wallet provider.
[0064] As used herein, for example, the term "portable financial device" or "payment device" may refer to, for example, a payment card (e.g., a credit card or debit card), a gift card, a smart card, a smart medium, a payroll card, a healthcare card, a wristband, a machine-readable medium containing account information, a keychain device or fob, an RFID transponder, a retailer discount or membership card, a mobile device that executes an electronic wallet application, a personal digital assistant (PDA), a security card, an access card, a wireless terminal, and / or a transponder. A portable financial device may include volatile or non-volatile memory for storing information such as an account identifier and / or an account holder name.
[0065] As used herein, the term "server" may refer to or include one or more processors or computers, storage devices, or similar computer arrangements operated or facilitating communication and processing among multiple parties in a network environment such as the Internet, but it should be understood that communication may be facilitated through one or more public or private network environments and various other arrangements are possible. Additionally, multiple computers (e.g., servers) or other computerized devices (e.g., POS devices) communicating directly or indirectly in a network environment may constitute a "system" such as a merchant's POS system. As used herein, the term "data center" may include one or more servers, or other computing devices, and / or databases.
[0066] As used herein, the term "acquirer" may refer to an entity licensed and / or approved by a transaction service provider to initiate transactions using the transaction service provider's portable financial device. An acquirer may also refer to one or more computer systems operated by or on behalf of the acquirer, such as a server computer (e.g., "acquirer server") that executes one or more software applications. The "acquirer" may be a merchant bank, or in some cases, the merchant system may be the acquirer. The transactions may include original credit transactions (OCTs) and account funding transactions (AFTs). The transaction service provider may authorize the acquirer to sign up merchants of the service provider to initiate transactions using the transaction service provider's portable financial device. The acquirer may contract with a payment service provider to enable the service provider to sponsor merchants. The acquirer may monitor the compliance of the payment service provider according to the regulations of the transaction service provider. The acquirer may conduct due diligence on the payment service provider and ensure appropriate due diligence is carried out before signing up sponsored merchants. The acquirer may be responsible for all transaction service provider programs it operates or sponsors. The acquirer may be responsible for the actions of its payment service providers and the merchants sponsored by it or its payment service providers.
[0067] As used herein, the term "payment gateway" may refer to an entity and / or a payment processing system operated by or on behalf of such entity, where the entity (e.g., merchant service provider, payment service provider, payment service provider, payment service provider contracted with the acquirer, payment aggregator, etc.) provides payment services (e.g., transaction service provider payment services, payment processing services, etc.) to one or more merchants. The payment services may be associated with the use of a portable financial device managed by the transaction service provider. As used herein, the term "payment gateway system" may refer to one or more computer systems, computer devices, servers, server groups, etc. operated by or on behalf of the payment gateway.
[0068] Improved systems, devices, products, apparatuses, and / or methods for managing model updates are provided.
[0069] Non - limiting embodiments or aspects of the present disclosure relate to systems, methods, and computer program products for managing model updates, where the model updates obtain a plurality of first feature profiles input into a first implementation of a first machine - learning model, and a plurality of first model states determined by processing a model input including the plurality of first feature profiles using the first implementation of the first machine - learning model; determine that a first model policy associated with the first machine - learning model is satisfied based on the plurality of first model states including a set of model states defined by the first model policy and the plurality of first feature profiles including a set of feature profiles defined by the first model policy; and in response to determining that the first model policy associated with the first machine - learning model is satisfied, provide the plurality of first model states and the plurality of first feature profiles for updating at least one second implementation of the first machine - learning model that is different from the first implementation of the first machine - learning model. In this way, non - limiting embodiments or aspects of the present disclosure can provide dynamic cross - data - center profile updates, which use model states, feature - profile priorities, and / or model - input ordering to support stateful machine - learning models to achieve more accurate and consistent model results and improve synchronized data between multiple implementations of a machine - learning model (e.g., between multiple data centers, etc.).
[0070] Now refer to Figure 1A , the Figure 1A is a diagram of an example environment 100 in which the apparatuses, systems, methods, and / or products described herein may be implemented. As Figure 1A shown, the environment 100 includes a transaction - processing network 101, which may include a merchant system 102, a payment - gateway system 104, an acquirer system 106, a transaction - service - provider system 108, and / or an issuer system 110, a user device 112, and / or a communication network 114. The transaction - processing network 101, the merchant system 102, the payment - gateway system 104, the acquirer system 106, the transaction - service - provider system 108, the issuer system 110, and / or the user device 112 may be interconnected by a wired connection, a wireless connection, or a combination of a wired connection and a wireless connection (e.g., establish a connection for communication, etc.).
[0071] The merchant system 102 may include one or more devices that are capable of receiving information and / or data (e.g., via the communication network 114, etc.) from the payment gateway system 104, the acquirer system 106, the transaction service provider system 108, the issuer system 110, and / or the user device 112, and / or transmitting information and / or data (e.g., via the communication network 114, etc.) to the payment gateway system 104, the acquirer system 106, the transaction service provider system 108, the issuer system 110, and / or the user device 112. The merchant system 102 may include devices capable of receiving information and / or data from the user device 112 and / or transmitting information and / or data to the user device 112 via a communication connection with the user device 112 (e.g., NFC communication connection, RFID communication connection, communication connection, etc.). For example, the merchant system 102 may include computing devices such as servers, server clusters, client devices, client device clusters, and / or other similar devices. In some non-limiting embodiments or aspects, the merchant system 102 may be associated with the merchant described herein. In some non-limiting embodiments or aspects, the merchant system 102 may include one or more devices that a merchant can use to conduct payment transactions with a user, such as computers, computer systems, and / or peripheral devices. For example, the merchant system 102 may include a POS device and / or a POS system.
[0072] The payment gateway system 104 may include one or more devices that are capable of receiving information and / or data (e.g., via the communication network 114, etc.) from the merchant system 102, the acquirer system 106, the transaction service provider system 108, the issuer system 110, and / or the user device 112, and / or transmitting information and / or data (e.g., via the communication network 114, etc.) to the merchant system 102, the acquirer system 106, the transaction service provider system 108, the issuer system 110, and / or the user device 112. For example, the payment gateway system 104 may include computing devices such as servers, server clusters, and / or other similar devices. In some non-limiting embodiments or aspects, the payment gateway system 104 is associated with the payment gateway described herein.
[0073] The acquirer system 106 may include one or more devices that are capable of receiving information and / or data (e.g., via communication network 114, etc.) from the merchant system 102, the payment gateway system 104, the transaction service provider system 108, the issuer system 110, and / or the user device 112, and / or transmitting information and / or data (e.g., via communication network 114, etc.) to the merchant system 102, the payment gateway system 104, the transaction service provider system 108, the issuer system 110, and / or the user device 112. For example, the acquirer system 106 may include computing devices such as servers, server clusters, and / or other similar devices. In some non-limiting embodiments or aspects, the acquirer system 106 may be associated with the acquirer described herein.
[0074] The transaction service provider system 108 may include one or more devices that are capable of receiving information and / or data (e.g., via communication network 114, etc.) from the merchant system 102, the payment gateway system 104, the acquirer system 106, the issuer system 110, and / or the user device 112, and / or transmitting information and / or data (e.g., via communication network 114, etc.) to the merchant system 102, the payment gateway system 104, the acquirer system 106, the issuer system 110, and / or the user device 112. For example, the transaction service provider system 108 may include computing devices such as servers (e.g., transaction processing servers, etc.), server clusters, and / or other similar devices. In some non-limiting embodiments or aspects, the transaction service provider system 108 may be associated with the transaction service provider described herein. In some non-limiting embodiments or aspects, the transaction service provider 108 may include and / or access one or more internal and / or external databases that include account data, transaction data, feature profiles, model status, model policies, serial numbers, etc.
[0075] The issuer system 110 may include one or more devices capable of receiving information and / or data (e.g., via a communication network 114, etc.) from the merchant system 102, the payment gateway system 104, the acquirer system 106, the transaction service provider system 108, and / or the user device 112, and / or transmitting information and / or data (e.g., via a communication network 114, etc.) to the merchant system 102, the payment gateway system 104, the acquirer system 106, the transaction service provider system 108, and / or the user device 112. For example, the issuer system 110 may include computing devices such as servers, server clusters, and / or other similar devices. In some non-limiting embodiments or aspects, the issuer system 110 may be associated with the issuer entity described herein. For example, the issuer system 110 may be associated with an issuer entity that issues payment accounts or instruments (e.g., credit accounts, debit accounts, credit cards, debit cards, etc.) to users (e.g., users associated with the user device 112, etc.).
[0076] In some non-limiting embodiments or aspects, the transaction processing network 101 includes multiple systems for processing transactions in a communication path. For example, the transaction processing network 101 may include the merchant system 102, the payment gateway system 104, the acquirer system 106, the transaction service provider system 108, and / or the issuer system 110 for processing electronic payment transactions in a communication path (e.g., a communication path, a communication channel, a communication network, etc.). As an example, the transaction processing network 101 may process (e.g., receive, initiate, conduct, authorize, etc.) electronic payment transactions via a communication path between the merchant system 102, the payment gateway system 104, the acquirer system 106, the transaction service provider system 108, and / or the issuer system 110.
[0077] The user device 112 may include one or more devices capable of receiving information and / or data (e.g., via a communication network 114, etc.) from the merchant system 102, the payment gateway system 104, the acquirer system 106, the transaction service provider system 108, and / or the issuer system 110, and / or transmitting information and / or data (e.g., via a communication network 114, etc.) to the merchant system 102, the payment gateway system 104, the acquirer system 106, the transaction service provider system 108, and / or the issuer system 110. For example, the user device 112 may include a client device, etc. In some non-limiting embodiments or aspects, the user device 112 is capable of communicating via a short-range wireless communication connection (e.g., an NFC communication connection, an RFID communication connection,[ Receive information (e.g., from merchant system 102, etc.) via a communication connection, etc., and / or transmit information (e.g., to merchant system 102) via a short-range wireless communication connection. In some non-limiting embodiments or aspects, user device 112 may include an application associated with user device 112, such as an application stored on user device 112, a mobile application stored and / or executed on user device 112 (e.g., a mobile device application, a native application of a mobile device, a mobile cloud application of a mobile device, an electronic wallet application, etc.).
[0078] Communication network 114 may include one or more wired and / or wireless networks. For example, communication network 114 may include a cellular network (e.g., a Long-Term Evolution (LTE) network, a Third Generation (3G) network, a Fourth Generation (4G) network, a Fifth Generation network (5G) network, a Code Division Multiple Access (CDMA) network, etc.), a Public Land Mobile Network (PLMN), a Local Area Network (LAN), a Wide Area Network (WAN), a Metropolitan Area Network (MAN), a telephone network (e.g., a Public Switched Telephone Network (PSTN)), a private network, an ad hoc network, an intranet, the Internet, a fiber-based network, a cloud computing network, etc., and / or a combination of these or other types of networks.
[0079] Now refer to Figure 1B , the Figure 1B is a diagram of a non-limiting embodiment or aspect of system 150 for maintaining management model updates. System 150 may correspond to one or more devices of transaction processing network 101, one or more devices of merchant system 102, one or more devices of payment gateway system 104, one or more devices of acquirer system 106, one or more devices of transaction service provider system 108, one or more devices of issuer system 110, and / or user device 112 (e.g., one or more devices of the system of user device 112, etc.). As Figure 1BAs shown, system 150 includes multiple data centers, such as first data center 152a, second data center 152b, and / or nth data center 152n and / or data replication system 154. The first data center 152a, the second data center 152b, the nth data center 152n, and / or the data replication system 154 can be implemented within a single device and / or system, or distributed among multiple devices and / or systems (e.g., across multiple data centers and / or systems, etc.). For example, each of the multiple data centers 152a, 152b, 152n can include an implementation of the data replication system 154, or a single data replication system 154 can receive messages including model state and / or feature profile inputs from each of the multiple data centers 152a, 152b, 152n. The system 150 can be programmed and / or configured to manage model updates between the data centers 152a, 152b, and / or 152n for a stateful machine learning model, and is described in more detail below with reference to Figure 3 and 4. For example, the first data center 152a can be programmed and / or configured to provide a first implementation of a machine learning model, the second data center 152b can be programmed and / or configured to provide a second implementation of a machine learning model, and / or the nth data center 152n can be programmed and / or configured to provide an nth implementation of a machine learning model. In some non-limiting embodiments or aspects, one or more of the data centers 152a, 152b, and 152n can be programmed and / or configured to provide one or more implementations of multiple different machine learning models (e.g., a first machine learning model, a second machine learning model, a fraud detection model, an alternative processing model, a marketing model, an advertising model, etc.).
[0080] Figure 1A and 1B The number and arrangement of the devices and systems shown are provided as examples. There can be additional devices and / or systems, fewer devices and / or systems, different devices and / or systems, or devices and / or systems arranged in a different manner than Figure 1A and 1B shown. Additionally, two or more devices and / or systems shown in Figure 1A and 1B can be implemented within a single device and / or system, or a single device and / or system shown in Figure 1A and 1B can be implemented as multiple distributed devices and / or systems. Additionally or alternatively, a set of devices and / or systems in environment 100 (e.g., one or more devices or systems) can perform one or more functions described as being performed by another set of devices and / or systems in environment 100.
[0081] Now refer to Figure 2 , Figure 2A diagram of example components of device 200. Device 200 may correspond to one or more devices of transaction processing network 101, one or more devices of merchant system 102, one or more devices of payment gateway system 104, one or more devices of acquirer system 106, one or more devices of transaction service provider system 108, one or more devices of issuer system 110, and / or user device 112 (e.g., one or more devices of the system of user device 112, etc.). In some non-limiting embodiments or aspects, one or more devices of transaction processing network 101, one or more devices of merchant system 102, one or more devices of payment gateway system 104, one or more devices of acquirer system 106, one or more devices of transaction service provider system 108, one or more devices of issuer system 110, user device 112 (e.g., one or more devices of the system of user device 112, etc.), and / or one or more devices of communication network 114 may include at least one device 200 and / or at least one component of device 200. As Figure 2 shown, device 200 may include bus 202, processor 204, memory 206, storage component 208, input component 210, output component 212, and communication interface 214.
[0082] Bus 202 may include components that permit communication between the components of device 200. In some non-limiting embodiments or aspects, processor 204 may be implemented in hardware, software, or a combination of hardware and software. For example, processor 204 may include a processor (e.g., central processing unit (CPU), graphics processing unit (GPU), accelerated processing unit (APU), etc.), a microprocessor, a digital signal processor (DSP), and / or any processing component that can be programmed to perform functions (e.g., field programmable gate array (FPGA), application specific integrated circuit (ASIC), etc.). Memory 206 may include random access memory (RAM), read only memory (ROM), and / or another type of dynamic or static storage device that stores information and / or instructions for use by processor 204 (e.g., flash memory, magnetic memory, optical memory, etc.).
[0083] Storage component 208 may store information and / or software associated with the operation and use of device 200. For example, storage component 208 may include a hard disk (e.g., magnetic disk, optical disk, magneto-optical disk, solid state disk, etc.), a compact disc (CD), a digital versatile disc (DVD), a floppy disk, a cassette tape, a magnetic tape, and / or another type of computer-readable medium, as well as a corresponding drive.
[0084] The input component 210 may include components that permit the device 200 to receive information, for example, via a user input (such as a touch screen display, keyboard, keypad, mouse, button, switch, microphone, etc.). Additionally or alternatively, the input component 210 may include sensors for sensing information (such as a Global Positioning System (GPS) component, accelerometer, gyroscope, actuator, etc.). The output component 212 may include components that provide output information from the device 200 (such as a display, speaker, one or more light emitting diodes (LEDs), etc.).
[0085] The communication interface 214 may include transceiver-like components (such as a transceiver, separate receiver and transmitter, etc.) that enable the device 200 to communicate with other devices, for example, via a wired connection, wireless connection, or a combination of a wired connection and a wireless connection. The communication interface 214 may permit the device 200 to receive information from another device and / or provide information to another device. For example, the communication interface 214 may include an Ethernet interface, optical interface, coaxial interface, infrared interface, radio frequency (RF) interface, Universal Serial Bus (USB) interface, interface, cellular network interface, etc.
[0086] The device 200 may perform one or more of the processes described herein. The device 200 may perform these processes based on software instructions stored by a computer-readable medium such as, for example, the memory 206 and / or the storage component 208, and executed by the processor 204. A computer-readable medium (such as a non-transitory computer-readable medium) is defined herein as a non-transitory memory device. A memory device includes a memory space located within a single physical storage device or a memory space that extends across multiple physical storage devices.
[0087] The software instructions may be read into the memory 206 and / or the storage component 208 from another computer-readable medium or from another device via the communication interface 214. When executed, the software instructions stored in the memory 206 and / or the storage component 208 may cause the processor 204 to perform one or more of the processes described herein. Additionally or alternatively, hardwired circuitry may be used in place of or in combination with the software instructions to perform one or more of the processes described herein. Accordingly, the embodiments or aspects described herein are not limited to any particular combination of hardware circuitry and software.
[0088] The memory 206 and / or the storage component 208 may include a data storage device or one or more data structures (e.g., a database, etc.). The device 200 is capable of receiving information from, storing information in, transmitting information to, or searching for information stored in the data storage device or one or more data structures in the memory 206 and / or the storage component 208. For example, the transaction service provider system 108 may include and / or access one or more internal and / or external databases that store transaction data, account data, input data, output data, update data, model inputs, feature profiles, model states, model policies, etc. associated with transactions that have been processed and / or are being processed in the transaction processing network 101 (e.g., previous or historical transactions processed via the transaction service provider system 108, etc.).
[0089] Figure 2 The number and arrangement of the components shown are provided as an example. In some non - limiting embodiments or aspects, the device 200 may include additional components, fewer components, different components, or components arranged in a different manner than those shown in Figure 2 the figures. Additionally or alternatively, a set of components (e.g., one or more components) of the device 200 may perform one or more functions described as being performed by another set of components of the device 200.
[0090] Now referring to Figure 3 , the Figure 3 is a flowchart of a non - limiting embodiment or aspect of a process 300 for managing model updates. In some non - limiting embodiments or aspects, one or more steps in the process 300 may be (e.g., fully, partially, etc.) performed by the transaction service provider system 108 (e.g., one or more devices of the transaction service provider system 108). In some non - limiting embodiments or aspects, one or more steps of the process 300 may be (e.g., fully, partially, etc.) performed by another device or group of devices independent of or including the transaction service provider system, such as the merchant system 102 (e.g., one or more devices of the merchant system 102), the payment gateway system 104 (e.g., one or more devices of the payment gateway system 104), the acquirer system 106 (e.g., one or more devices of the acquirer system 106), the issuer system 110 (e.g., one or more devices of the issuer system 110), and / or the user device 112 (e.g., one or more devices of the system of the user device 112).
[0091] As Figure 3As shown, at step 302, process 300 includes obtaining a feature profile and / or a model state associated with a first implementation of a machine learning model. For example, transaction service provider system 108 (e.g., data replication system 154, etc.) may obtain a feature profile and / or a model state associated with a first implementation of a machine learning model. As an example, transaction service provider system 108 (e.g., data replication system 154, etc.) may obtain a plurality of first feature profiles input to a first implementation of a first machine learning model (e.g., at first data center 152a, etc.), and a plurality of first model states determined based on processing model inputs including the plurality of first feature profiles using a first implementation of a first machine learning model (e.g., at first data center 152a, etc.).
[0092] In some non - limiting embodiments or aspects, model inputs may include inputs and / or feature profiles configured to be input to an implementation of a machine learning model. For example, model inputs may include events or inputs to be processed or to be processed by an implementation of a machine learning model. As an example, model inputs may be associated with transactions received, initiated, executed, and / or processed in transaction processing network 101. In this example, the feature profile may include transaction data associated with the transaction.
[0093] In some non - limiting embodiments or aspects, transaction data may include parameters associated with the transaction, such as account identifiers (e.g., PAN, etc.), transaction amount, transaction date and time, type of product and / or service associated with the transaction, currency exchange rate, currency type, merchant type, merchant name, merchant location, transaction approval (and / or rejection) rate, etc. In some non - limiting embodiments or aspects, transaction data may include account data associated with the account identifier, such as the total transaction amount associated with the account identifier within a previous time period (e.g., within the previous 24 hours, etc.), model results or outputs from an implementation of a machine learning model that processed previous transactions associated with the account identifier, and / or other similar parameters, and the account data may be updated and / or modified in response to transactions associated with the account identifier or other account identifiers processed in transaction processing network 101 (e.g., processed by an implementation of a machine learning model, etc.). For example, a machine learning model may be programmed and / or configured to process a feature profile associated with a transaction to generate outputs or predictions for fraud detection applications, alternative processing applications, advertising applications, marketing applications, etc.
[0094] In some non - limiting embodiments or aspects, a machine - learning model includes a neural network that includes multiple layers, and each layer of the multiple layers is associated with a different model state in a set of model states defined by a model policy associated with the machine - learning model as compared to each other layer of the multiple layers. For example, a first machine - learning model may include a first neural network that includes multiple layers, where each layer of the multiple layers of the first neural network may be associated with a different model state in a set of model states defined by a first model policy associated with the first machine - learning model as compared to each other layer of the multiple layers of the first neural network, and a second machine - learning model different from the first machine - learning model may include a second neural network that includes multiple layers, where each layer of the multiple layers of the second neural network may be associated with a different model state in a set of model states defined by a second model policy associated with the second machine - learning layer as compared to each other layer of the multiple layers of the first neural network. As an example, a model state may include a fixed - length vector that selectively stores transformed model inputs over time, and the model state may define one or more parameters and / or weights of a neural network layer associated with the model state. In this example, a neural network including multiple layers may be associated with multiple model states corresponding to the multiple layers.
[0095] In some non - limiting embodiments or aspects, multiple data centers may provide multiple implementations of one or more machine - learning models. For example, and referring again to Figure 1B , a first data center 152a may provide a first implementation of a first machine - learning model, a second data center 152b may provide a second implementation of the first machine - learning model, and / or an nth data center 152n may provide an nth implementation of the first machine - learning model. In some non - limiting embodiments or aspects, one or more of the first data center 152a, the second data center 152b, and the third data center 152n may provide implementations of multiple different machine - learning models (e.g., a first implementation of a first machine - learning model provided at the first data center 152a, a first implementation of a second machine - learning model provided at the first data center 152a, a second implementation of the first machine - learning model provided at the second data center 152b, a second implementation of the second machine - learning model provided at the second data center 152b, etc.). In such examples, a trading - service - provider system 108 (e.g., a data - replication system 154, etc.) may receive model states and profile inputs associated with multiple implementations of one or more machine - learning models from multiple data centers 152a, 152b, 152n, and may manage updates of model states and profile inputs between each implementation of each machine - learning model at each of the multiple data centers 152a, 152b, 152n.
[0096] As Figure 3 shown, at step 304, process 300 includes determining that a model policy is satisfied based on a feature profile and a model state. For example, transaction service provider system 108 (e.g., data replication system 154, etc.) can determine that a model policy is satisfied based on a feature profile and a model state. As an example, transaction service provider system 108 (e.g., data replication system 154, etc.) can determine that a first model policy associated with a first machine learning model is satisfied based on a plurality of first model states including a set of model states defined by the first model policy and a plurality of first feature profiles including a set of feature profiles defined by the first model policy.
[0097] In some non-limiting embodiments or aspects, the model policy defines at least one of the following: a set of model states associated with a machine learning model, a set of feature profiles associated with a machine learning model, a sequence number order associated with a model input processed by an implementation of the machine learning model, or any combination thereof. For example, if transaction service provider system 108 (e.g., data replication system 154, etc.) receives (e.g., can access, is capable of providing, etc.) a model state associated with an implementation of a machine learning model, a feature profile associated with an implementation of the machine learning model, and a sequence number of a model input associated with the received model state and / or feature profile (e.g., a transaction identifier or timestamp associated with a transaction, etc.), then transaction service provider system 108 (e.g., data replication system 154, etc.) can determine that the model policy is satisfied, where the model state includes, corresponds to, or matches each model state in a set of model states defined by the model policy associated with the machine learning model, the feature profile includes, corresponds to, or matches each feature profile defined by the model policy associated with the machine learning model, and the sequence number includes, corresponds to, or matches the next sequence number in a sequence number order associated with a model input processed by an implementation of the machine learning model. As an example, transaction service provider system 108 (e.g., data replication system 154, etc.) can store and / or use the same model policy for each implementation of the same machine learning model. In this example, transaction service provider system 108 (e.g., data replication system 154, etc.) can store and / or use different model policies for each different machine learning model among a plurality of different machine learning models.
[0098] In some non - limiting embodiments or aspects, a set of model states defined by a model policy associated with a machine - learning model may include model states corresponding to or matching each layer of a neural network of the machine - learning model. For example, before a trading service provider system 108 (e.g., data replication system 154, etc.) can provide an update for another implementation of the same machine - learning model based on any model states (and / or feature profiles) received from the implementation of the same machine - learning model, the model policy associated with the machine - learning model may require the trading service provider system 108 (e.g., data replication system 154, etc.) to receive from the implementation of the machine - learning model model states corresponding to or matching each layer of the machine - learning model. As an example, the trading service provider system 108 (e.g., data replication system 154, etc.) may delay providing and / or updating other implementations of the same machine - learning model with any of the received model states (and / or feature profiles) until the model policy associated with the machine - learning model is satisfied. In this example, the trading service provider system 108 (e.g., data replication system 154, etc.) may obtain a plurality of first model states by receiving at least one first model state among a plurality of first model states at a first time and at least one other first model state among a plurality of model states at another time after the first time, where at least one first model state includes a model state in a set of model states defined by a first model policy, and at least one other first model state includes another model state in a set of model states defined by the first model policy.
[0099] In some non - limiting embodiments or aspects, a set of feature profiles defined by a model policy includes an appropriate subset of the feature profiles of the model inputs processed by an implementation of a machine - learning model (e.g., an appropriate subset of the feature profiles of the feature input layer of the machine - learning model, etc.). For example, before a transaction service provider system 108 (e.g., a data replication system 154, etc.) can provide an update for another implementation of the same machine - learning model based on any feature profile (and / or model state) received from the implementation of the same machine - learning model, the model policy associated with the machine - learning model may require the transaction service provider system 108 (e.g., a data replication system 154, etc.) to receive from the implementation of the machine - learning model a feature profile for each feature profile that corresponds to or matches an appropriate subset of the feature profiles. As an example, the transaction service provider system 108 (e.g., a data replication system 154, etc.) may delay providing and / or updating other implementations of the same machine - learning model with any of the received feature profiles (and / or model states) until the model policy associated with the machine - learning model is satisfied. In this example, the model policy may define the priority of the feature profiles associated with the machine - learning model (e.g., the amount of contribution of the feature profile to the accuracy of the machine - learning model, etc.) by requiring the receipt or provision of higher - priority feature profiles to satisfy the model policy, while allowing the model policy to be satisfied by receiving higher - priority feature profiles even if lower - priority feature profiles have not been received or cannot be provided. In this example, the transaction service provider system 108 (e.g., a data replication system 154, etc.) may obtain a plurality of first feature profiles, the obtaining process including receiving at least one first feature profile of the plurality of first feature profiles at a first time, and receiving at least one other first feature profile of the plurality of first feature profiles at another time after the first time, where the at least one first feature profile does not include a feature profile in the set of feature profiles defined by a first model policy, and where the at least one other first feature profile includes a feature profile in the set of feature profiles defined by the first model policy.
[0100] However, the non - limiting embodiments or aspects are not limited to a set of feature profiles defined by a model policy that includes an appropriate subset of the feature profiles of the model inputs processed by an implementation of a machine - learning model, and the set of feature profiles defined by a model policy may include each feature profile of the model inputs processed by an implementation of the machine - learning model (e.g., each feature profile of the feature input layer of the machine - learning model, etc.).
[0101] As Figure 3As shown, at step 306, process 300 includes providing an update for a second implementation of a machine learning model. For example, trading service provider system 108 (such as data replication system 154, etc.) may provide an update for a second implementation of a machine learning model. As an example, trading service provider system 108 (such as data replication system 154, etc.) may provide multiple first model states and multiple first feature profiles in response to determining that a first model policy associated with a first machine learning model is satisfied, for updating at least one second implementation of a first machine learning model that is different from a first implementation of the first machine learning model (such as at second data center 152b, etc.).
[0102] In some non - limiting embodiments or aspects, trading service provider system 108 (such as data replication system 154, etc.) may classify or group received model states and received feature profiles according to the sequence numbers of the model inputs associated with the model states and feature profiles. For example, received model states and received feature profiles associated with the same sequence number (and / or the same implementation of the same machine learning model) may be grouped into the same group or message. As an example, a group of model states and feature profiles associated with the same sequence number may be represented by a bitmap, and each bit in the bitmap may provide an indication of whether data replication system 154 has received a single model state or feature profile. As an example, trading service provider system 108 (such as data replication system 154, etc.) may provide a group or message to update at least one second implementation of a first machine learning model that is different from a first implementation of the first machine learning model in response to a model state, feature profile, and sequence number associated with the group or message satisfying a first model policy associated with the first machine learning model (such as, in response, the bitmap indicating that the first model states and first feature profiles defined by the first model policy have been received, etc.). In this example, in response to the first model policy at first data center 152a being satisfied, data replication system 154 may send or apply as an update a message (such as multiple first model states and multiple first feature profiles, etc.) to second data center 152b for updating at least one second implementation of a first machine learning model that is different from a first implementation of the first machine learning model at second data center 152b.
[0103] In some non - limiting embodiments or aspects, multiple data centers may provide multiple implementations of one or more machine learning models. For example, and again referring to Figure 1B, the first data center 152a may provide a first implementation of the first machine learning model, the second data center 152b may provide a second implementation of the first machine learning model, and / or the nth data center 152n may provide the nth implementation of the first machine learning model. In some non-limiting embodiments or aspects, one or more of the first data center 152a, the second data center 152b, and the third data center 152n may provide implementations of multiple different machine learning models (e.g., the first implementation of the first machine learning model provided at the first data center 152a, the first implementation of the second machine learning model provided at the first data center 152a, the second implementation of the first machine learning model provided at the second data center 152b, the second implementation of the second machine learning model provided at the second data center 152b, etc.). In such examples, the trading service provider system 108 (e.g., the data replication system 154, etc.) may receive model states and profile inputs associated with multiple implementations of one or more machine learning models from multiple data centers 152a, 152b, 152n, and may manage (e.g., provide, apply, etc.) the model states and profile inputs between each implementation of each machine learning model at each of the multiple data centers 152a, 152b, 152n.
[0104] Although the embodiments or aspects have been described in detail for purposes of illustration and description, it should be understood that such details are for those purposes only and that the embodiments or aspects are not limited to the disclosed embodiments or aspects, but rather are intended to cover modifications and equivalent arrangements within the spirit and scope of the appended claims. For example, it should be understood that the present disclosure contemplates, to the extent possible, that one or more features of any embodiment or aspect may be combined with one or more features of any other embodiment or aspect. In fact, any of these features may be combined in a manner not specifically recited in the claims and / or not disclosed in the specification. Although each dependent claim listed below may directly depend on only one claim, the disclosure of possible embodiments includes each dependent claim in combination with each other claim in the claim set.
Claims
1. A computer-implemented method for managing updates to a stateful machine learning model across multiple data centers to process electronic payment transactions in a transaction processing network, comprising: Obtaining, using at least one processor, a plurality of first feature profiles input to a first implementation of a first machine learning model provided at a first data center of the multiple data centers, and a plurality of first model states determined based on processing model inputs including the plurality of first feature profiles using the first implementation of the first machine learning model provided at the first data center, wherein the plurality of first feature profiles include transaction data associated with a plurality of first electronic payment transactions processed by the first implementation of the first machine learning model at the first data center; Delaying, using the at least one processor, an update to at least a second implementation of the first machine learning model provided at a second data center of the multiple data centers, the second implementation being different from the first implementation of the first machine learning model, until a first model policy associated with the first machine learning model is satisfied; Classifying, using the at least one processor, the received model states from the multiple data centers and the received feature profiles from the multiple data centers based on a sequence number of a model input associated with the received model state and the received feature profile, wherein the received model state and the received feature profile associated with the same sequence number are classified in the same group represented by a bitmap, and wherein each bit of the bitmap provides an indication of whether a single model state or a single feature profile has been received; Determining, using the at least one processor based on the plurality of first model states and according to the bitmap, that the first model policy associated with the first machine learning model is satisfied, the plurality of first model states including each model state of a set of model states defined by the first model policy, the plurality of first feature profiles including a set of feature profiles defined by the first model policy, and the sequence number associated with the model input including the next sequence number in a sequence number order associated with model inputs processed by the first implementation of the machine learning model, wherein the first machine learning model includes a first neural network, the first neural network includes a plurality of layers, and wherein each layer of the plurality of layers is associated with a different model state of the set of model states defined by the first model policy compared to each other layer of the plurality of layers; In response to determining that the first model policy associated with the first machine learning model is satisfied, use at least one processor to provide a classification group including the plurality of first model states and the plurality of first feature profiles for updating at least one second implementation of the first machine learning model that is different from the first implementation of the first machine learning model provided at the second data center among the plurality of data centers, such that the model states and / or input profiles of different implementations are updated consistently to maintain accurate and consistent processing of the electronic payment transactions across the plurality of data centers, wherein the first machine learning model and the second machine learning model include stateful machine learning models; and After updating at least one second implementation of the machine learning model provided at the second data center using the classification group including the plurality of first model states and the plurality of first feature profiles, use the at least one processor to process one or more current electronic payment transactions in the transaction processing network using at least one second implementation of the machine learning model provided at the second data center.
2. The computer-implemented method according to claim 1, wherein the set of feature profiles defined by the first model policy includes a suitable subset of the feature profiles of the model inputs processed by the first implementation of the machine learning model.
3. The computer-implemented method according to claim 1, wherein obtaining the plurality of first model states includes receiving at least one first model state among the plurality of first model states at a first time, and receiving at least one other first model state among the plurality of model states at another time after the first time, wherein the at least one first model state includes a model state in the set of model states defined by the first model policy, and wherein the at least one other first model state includes another model state in the set of model states defined by the first model policy.
4. The computer-implemented method according to claim 1, wherein obtaining the plurality of first feature profiles includes receiving at least one first feature profile among the plurality of first feature profiles at a first time, and receiving at least one other first feature profile among the plurality of first feature profiles at another time after the first time, wherein the at least one first feature profile does not include a feature profile in the set of feature profiles defined by the first model policy, and wherein the at least one other first feature profile includes a feature profile in the set of feature profiles defined by the first model policy.
5. The computer-implemented method according to claim 1, further comprising: Using at least one processor, update at least one second implementation of the first machine learning model through the plurality of first model states and the plurality of first feature profiles.
6. A computing system for managing stateful machine learning model updates across multiple data centers to process electronic payment transactions in a transaction processing network, comprising: One or more processors, programmed and / or configured to: Obtain a plurality of first feature profiles input to a first implementation of a first machine learning model provided in a first data center among the plurality of data centers, and a plurality of first model states determined based on processing model inputs including the plurality of first feature profiles using the first implementation of the first machine learning model provided in the first data center, wherein the plurality of first feature profiles include transaction data associated with a plurality of first electronic payment transactions processed by the first implementation of the first machine learning model in the first data center; Delay updating at least a second implementation of the first machine learning model provided in a second data center among the plurality of data centers, the second implementation being different from the first implementation of the first machine learning model, until a first model policy associated with the first machine learning model is satisfied; Classify the received model states from the plurality of data centers and the received feature profiles from the plurality of data centers according to the sequence numbers of the model inputs associated with the received model states and the received feature profiles, wherein the received model states and the received feature profiles associated with the same sequence number are classified in the same group represented by a bitmap, and wherein each bit of the bitmap provides an indication of whether a single model state or a single feature profile has been received; Based on the plurality of first model states, determine that the first model policy associated with the first machine learning model is satisfied according to the bitmap, the plurality of first model states including each model state of a set of model states defined by the first model policy, the plurality of first feature profiles including a set of feature profiles defined by the first model policy, and the sequence number associated with the model input including the next sequence number in the sequence number order associated with the model inputs processed by the first implementation of the machine learning model, wherein the first machine learning model includes a first neural network, the first neural network includes a plurality of layers, and wherein each layer among the plurality of layers is associated with a different model state in the set of model states defined by the first model policy compared to each other layer among the plurality of layers; In response to determining that the first model policy associated with the first machine learning model is satisfied, provide a classified set including the plurality of first model states and the plurality of first feature profiles for updating at least a second implementation of the first machine learning model that is different from the first implementation of the first machine learning model provided in the second data center among the plurality of data centers, such that the model states and / or input profiles of different implementations are updated consistently across the plurality of data centers, wherein the first machine learning model and the second machine learning model include stateful machine learning models; and After updating the at least one second implementation of the machine learning model provided at the second data center using the classification group including the plurality of first model states and the plurality of first feature profiles, process one or more current electronic payment transactions in the transaction processing network using the at least one second implementation of the machine learning model provided at the second data center.
7. The computing system of claim 6, wherein the set of feature profiles defined by the first model policy includes a suitable subset of the feature profiles of the model inputs processed by the first implementation of the machine learning model.
8. The computing system of claim 6, wherein the one or more processors are programmed and / or configured to obtain the plurality of first model states by receiving at least one first model state of the plurality of first model states at a first time and receiving at least one other first model state of the plurality of model states at another time after the first time, wherein the at least one first model state includes a model state of the set of model states defined by the first model policy, and wherein the at least one other first model state includes another model state of the set of model states defined by the first model policy.
9. The computing system of claim 6, wherein the one or more processors are programmed and / or configured to obtain the plurality of first feature profiles by receiving at least one first feature profile of the plurality of first feature profiles at a first time and receiving at least one other first feature profile of the plurality of first feature profiles at another time after the first time, wherein the at least one first feature profile does not include a feature profile of the set of feature profiles defined by the first model policy, and wherein the at least one other first feature profile includes a feature profile of the set of feature profiles defined by the first model policy.
10. The computing system of claim 6, further comprising: wherein the one or more processors are further programmed and / or configured to send the plurality of first model states and the plurality of first feature profiles to the at least one second data center for updating the at least one second implementation of the first machine learning model at the at least one second data center.
11. A computer program product for managing stateful machine learning model updates across multiple data centers to process electronic payment transactions in a transaction processing network, comprising at least one non-transitory computer-readable medium, the at least one non-transitory computer-readable medium including program instructions that, when executed by at least one processor, cause the at least one processor to: Obtain a plurality of first feature profiles input to a first implementation of a first machine learning model provided in a first data center among the plurality of data centers, and a plurality of first model states determined based on processing a model input including the plurality of first feature profiles using the first implementation of the first machine learning model provided in the first data center, where the plurality of first feature profiles include transaction data associated with a plurality of first electronic payment transactions processed by the first implementation of the first machine learning model in the first data center; Delay updating at least a second implementation of the first machine learning model provided in a second data center among the plurality of data centers, the second implementation being different from the first implementation of the first machine learning model, until a first model policy associated with the first machine learning model is satisfied; Classify the received model states from the plurality of data centers and the received feature profiles from the plurality of data centers according to the sequence numbers of the model inputs associated with the received model states and the received feature profiles, wherein, Received model states and received feature profiles associated with the same serial number are classified in the same group represented by a bitmap, and each bit of the bitmap provides an indication of whether a single model state or a single feature profile has been received; Based on the plurality of first model states, determine that the first model policy associated with the first machine learning model is satisfied according to the bitmap, the plurality of first model states including each model state of a set of model states defined by the first model policy, the plurality of first feature profiles including a set of feature profiles defined by the first model policy, and the serial number associated with the model input includes the next serial number in the serial number order associated with the model input processed by the first implementation of the machine learning model, where the first machine learning model includes a first neural network, the first neural network includes a plurality of layers, and each layer among the plurality of layers is associated with a different model state in the set of model states defined by the first model policy compared to each other layer among the plurality of layers; In response to determining that the first model policy associated with the first machine learning model is satisfied, provide a classified group including the plurality of first model states and the plurality of first feature profiles for updating at least a second implementation of the first machine learning model that is different from the first implementation of the first machine learning model provided in the second data center among the plurality of data centers, such that the model states and / or input profiles of different implementations are updated consistently across the plurality of data centers, where the first machine learning model and the second machine learning model include stateful machine learning models; and After updating at least a second implementation of the machine learning model provided in the second data center using the classified group including the plurality of first model states and the plurality of first feature profiles, process one or more current electronic payment transactions in the transaction processing network using at least a second implementation of the machine learning model provided in the second data center.
12. The computer program product according to claim 11, wherein the set of feature profiles defined by the first model policy comprises a suitable subset of the feature profiles of the model inputs processed by the first implementation of the machine learning model.
13. The computer program product according to claim 11, wherein the instructions cause the at least one processor to obtain the plurality of first model states by receiving at least one first model state of the plurality of first model states at a first time and receiving at least one other first model state of the plurality of model states at another time after the first time, wherein the at least one first model state comprises a model state of the set of model states defined by the first model policy, and wherein the at least one other first model state comprises another model state of the set of model states defined by the first model policy.
14. The computer program product according to claim 11, wherein the instructions cause the at least one processor to obtain the plurality of first feature profiles by receiving at least one first feature profile of the plurality of first feature profiles at a first time and receiving at least one other first feature profile of the plurality of first feature profiles at another time after the first time, wherein the at least one first feature profile does not comprise a feature profile of the set of feature profiles defined by the first model policy, and wherein the at least one other first feature profile comprises a feature profile of the set of feature profiles defined by the first model policy.
Citation Information
Patent Citations
Sharing learned information among robots
US20190197396A1
Determining the location of a mobile device
WO2018134587A1