XAI and XNN conversion

TW202242722AActive Publication Date: 2022-11-01UMNAI LTD
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
TW · TW
Patent Type
Applications
Current Assignee / Owner
Filing Date
2021-04-16
Publication Date
2022-11-01

Smart Images

  • Figure TWG2TA000880188_001
    Figure TWG2TA000880188_001
  • Figure TWG2TA000880188_002
    Figure TWG2TA000880188_002
  • Figure TWG2TA000880188_003
    Figure TWG2TA000880188_003
Patent Text Reader

Abstract

In an exemplary embodiment, a method for extracting a model from an existing machine learning model may be shown and described. In black-box models, transfer learning consists of transferring knowledge with the objective of learning new patterns. However, in an exemplary embodiment, transfer learning presents the concept of converting an explainable neural network into logically equivalent variants, which may not be possible with black-box neural networks, which typically consist of multiple fully-connected layers. The white-box nature of an exemplary XNN or XAI enables new ways of transferring knowledge with intelligent conversions of neural networks in ways that are impossible to do with a black-box model.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] A method for extracting a model from an existing machine learning model may be shown and described. [Previous Technology]

[0002] The terms interpretability and interpretability can have different meanings. Interpretability can be a characteristic that needs to be defined according to an interpreter. An interpreter can be an agent who uses one of the following combinations to interpret system outputs or human products: (i) their own knowledge and beliefs; (ii) the target action plan; (iii) the background content; and (iv) the world environment. An illustrative interpreter can be a knowledgeable human being.

[0003] One alternative to a knowledgeable human interpreter could be a suitable automated system, such as an expert system in a narrow domain, which could be able to interpret outputs or human products for a limited range of applications. For example, a medical expert system or a logical equivalent (such as an end-to-end machine learning system) could be able to effectively interpret one of the outputs of medical results in a specific set of medical application domains.

[0004] It may be considered that in the future, non-human interpreters may be developed that can partially or completely replace the role of a human interpreter and / or extend interpreting capabilities to a wider range of application domains.

[0005] There may be two different types of interpretability: (i) model interpretability, which measures the interpretability of any form of automated or mechanical model and its sub-components, structures and behaviors; and (ii) output interpretability, which measures the interpretability of the output from any form of automated or mechanical model.

[0006] Therefore, interpretability may not be a simple binary property, but can be evaluated on a floating scale ranging from fully interpretable to uninterpretable. Model interpretability may be the interpretability of the underlying implementation, implementation, and / or procedure that produces the output, while output interpretability may be the interpretability of the output itself or any artificial product being examined.

[0007] A machine learning system or suitable alternative embodiment may comprise a plurality of model components. A model component is model-interpretable if an interpreter can fully understand and correctly predict the internal behavior and operation of the model component for a subset of possible inputs. In one embodiment, the behavior and operation of a model component may be implemented and represented in various ways (such as a state transition diagram, a flowchart or program description, a behavioral model, or some other suitable method). A model component is output-interpretable if an interpreter can understand and correctly interpret the output of the model component for a subset of possible inputs.

[0008] An exemplary machine learning system or suitable alternative embodiment may be: (i) globally interpretable if it is fully model interpretable (i.e., all its components are model interpretable); or (ii) modularly interpretable if it is partially model interpretable (i.e., only some of its components are model interpretable). Furthermore, if all outputs of a machine learning system or suitable alternative embodiment are output interpretable, then the machine learning system or suitable alternative embodiment may be locally interpretable.

[0009] A gray box, as a hybrid mixture of black box and white box characteristics, may have the characteristics of a white box when it comes to output, but has the characteristics of a black box when it comes to its internal behavior or operation.

[0010] A white-box system can be a system that achieves either local interpretability or global interpretability, and whose model is fully interpretable and whose output is interpretable. Therefore, in terms of internal functionality and output, a completely white-box system is fully interpretable and fully interpretable.

[0011] A black box can be an output that is interpretable but a model that is not interpretable, and can achieve limited local interpretability, thus making it the least interpretable when there is little or no interpretability and minimal understanding of its internal functions. A deep learning neural network can be a system whose output is interpretable but whose model is not interpretable.

[0012] A gray box can be a system that is partially interpretable in terms of both model and output, and is partially interpretable in terms of both internal functionality and output. Therefore, an exemplary gray box lies between a white box and a black box on a scale ranging from most interpretable and translatable (white box) to least interpretable and translatable (black box). A gray box system can have a modular interpretability level because some of its components are model interpretable.

[0013] Transfer learning is a method in which one machine learning model developed for one task is reused as a starting point for another model for a different but related second task. The pre-trained model can be used to improve the generalization of a model in another context.

[0014] Deep learning models typically require significant resources for training. This can necessitate large and challenging datasets. Transfer learning offers an alternative method for training models that consume fewer resources. In transfer learning, a base network can be first trained on a base dataset and task, and then reused on a second target network that will be trained on a target dataset and task.

[0015] However, the newly created deep learning model will be a "black box" neural network. A black box neural network is a neural network that cannot provide an explanation for the results or conclusions it achieves, and detecting errors in a black box neural network may be more difficult. The specific functions of the components of a black box neural network are usually largely unknown and are discovered through a laborious trial-and-error process. [Summary of the Invention]

[0016] The method described in one exemplary embodiment can be applied to XAI and XNN models (which are instances of fully interpretable models). XNN makes all the internal workings of the neural network interpretable, so a large number of transformations or optimizations can be applied while still maintaining logical equivalence.

[0017] An architecture supporting an XNN can combine multiple local models into a global model. A local model analyzes a small region within the entire search space. When analyzing an anomaly in a local manner, a linear model is sufficient to explain the model. On the other hand, a global model provides a holistic view. An XNN can combine two or more partitions (or concepts) that can represent local zones and multiple linear models used to explain each partition, and when combined, they constitute a global model. Furthermore, XNNs go beyond linear data. They are designed to accommodate nonlinear data by embedding transformations within the neural network itself, while still maintaining interpretability. The layers, neurons, and connections within an XNN have precise, well-known, and understandable functions, unlike standard ANNs (Artificial Neural Networks) which operate as a black box, where users interact with standard ANNs only based on their inputs and outputs, and therefore standard ANNs do not provide explanations for their functions. XNN is the first all-white-box ANN ever, creating a new category of neural networks that is both understandable and interpretable.

[0018] In one exemplary embodiment, a method for extracting a model from an existing machine learning model can be shown and described. In a black-box model, transfer learning is a method for transferring knowledge with the aim of learning new patterns. Transfer learning can be uninterpretable. One exemplary embodiment proposes an alternative method for transferring knowledge by utilizing the interpretable structure of a white-box system (which is presented as a transformation system). One exemplary embodiment proposes the concept of transforming an interpretable neural network into a logically equivalent variant, which may not be feasible for a black-box neural network that typically consists of multiple fully connected layers. One exemplary embodiment demonstrates a new way of performing transfer learning and intelligence transformation of neural networks in a manner impossible with the white-box nature of interpretable neural networks (XNNs) or interpretable artificial intelligence (XAIs) in a way that is impossible with a black-box model.

[0019] In the first embodiment, a computer implementation method for converting from a first system to an interpretable neural network includes performing the following steps on a processor: extracting one or more conditions from one or more partitions within the system; forming rules from the extracted conditions; summarizing the rules into one or more partitions; transforming one or more of the conditions; combining one or more of the extracted and transformed conditions and identifying one or more coefficients related to the conditions and partitions; generating linear or nonlinear equations from the coefficients, wherein the linear or nonlinear equations are local models; converting an architecture formed by the generated linear or nonlinear equations into a logically equivalent architecture based on a predefined transformation algorithm, the logically equivalent architecture corresponding to an interpretable neural network having at least one difference in density, sparsity, and structure from the logically equivalent architecture; and maintaining the complete information and functionality of the first system during the conversion to the logically equivalent architecture for obtaining the converted interpretable neural network.

[0020] In the second state, there is a system for providing an interpretable neural network, comprising: a plurality of micro-neural networks, wherein each micro-neural network is configured to interface with another micro-neural network, wherein one of the outputs of each of the plurality of micro-neural networks is interpretable by at least one of the plurality of micro-neural networks, and wherein each of the plurality of micro-neural networks includes a local model.

[0021] In the third state, there is a system for converting from a first system to an interpretable neural network, comprising a processor configured to perform one of the following steps: extracting one or more conditions from one or more partitions within the system; forming rules from the extracted conditions; summarizing the rules into one or more partitions; transforming one or more of the conditions; combining one or more of the extracted and transformed conditions and identifying one or more coefficients related to the conditions and partitions; generating linear or nonlinear equations from the coefficients, wherein the linear or nonlinear equations are local models; converting an architecture formed by the generated linear or nonlinear equations into a logically equivalent architecture corresponding to the interpretable neural network having at least different densities based on a predefined transformation algorithm; and maintaining the information and functionality of the first system during the conversion to the logically equivalent architecture for obtaining the converted interpretable neural network.

[0022] In the fourth state, there is a computing device for converting a system into an interpretable neural network. The device includes: at least one processor; and at least one memory for storing computer-readable instructions, which, when executed by the one or more processors, cause the device to: extract one or more conditions from one or more partitions within the system; form rules from the extracted conditions; summarize the rules into one or more partitions; transform one or more of the conditions; combine one or more of the extracted and transformed conditions; and identify the conditions and... The partition relates to one or more coefficients; linear or nonlinear equations are generated from these coefficients, wherein these linear or nonlinear equations are local models; an architecture formed by the linear or nonlinear equations generated is transformed into a logically equivalent architecture based on a predefined transformation algorithm, the logically equivalent architecture corresponding to the interpretable neural network having at least one difference in density, sparsity, and structure from the logically equivalent architecture; and information and functionality of the first system are maintained during the transformation to the logically equivalent architecture for obtaining the transformed interpretable neural network.

[0023] In other forms, it refers to a device and a computer product used to convert any system to an interpretable neural network, the device and the computer product including a system configured to implement one or more processors or a system according to the system described herein.

[0024] The methods described herein can be executed by software in a machine-readable form on a tangible storage medium (e.g., in the form of a computer program comprising computer code components, which, when run on a computer, are adapted to perform all the steps of any of the methods described herein, and wherein the computer program may be embodied on a computer-readable medium). Examples of tangible (or non-transitory) storage media include magnetic disks, thumb disks, memory cards, etc., and do not contain transmitted signals. The software can be adapted to execute on a parallel processor or a serial processor so that the method steps can be performed in any suitable order or simultaneously.

[0025] It should be further understood that, as those skilled in the art will appreciate, the various options of the present invention can be suitably combined and can be combined with any of the forms of the present invention.

Implementation Method

[0044] The features of the invention are disclosed in the following description and related drawings with respect to specific embodiments thereof. Alternative embodiments may be designed without departing from the spirit or scope of the invention. Furthermore, well-known elements of exemplary embodiments of the invention will not be described in detail or will be omitted so as not to obscure the relevant details of the invention. In addition, to facilitate understanding of the description, several terms used herein are discussed below.

[0045] As used herein, the term "illustrative" means "serving as an example, example, or illustration." The embodiments described herein are not limiting but merely illustrative. It should be understood that the described embodiments are not necessarily to be construed as preferred or superior to other embodiments. Furthermore, the terms "embodiment of the invention," "embodiment," or "invention" do not require that all embodiments of the invention encompass the discussed features, advantages, or modes of operation.

[0046] Furthermore, most embodiments described herein are described based on sequences of actions performed by, for example, elements of a computing device. Those skilled in the art will recognize that the various sequences of actions described herein can be executed by specific circuitry (e.g., an application-specific integrated circuit (ASIC)) and / or by program instructions executed by at least one processor. Furthermore, the sequences of actions described herein can all be embodied in any form of computer-readable storage medium, such that execution of the sequences of actions enables at least one processor to perform the functionality described herein. Furthermore, the sequences of actions described herein can be embodied in a combination of hardware and software. Therefore, various aspects of the present invention can be embodied in many different forms, all within the scope of the claimed subject matter. Additionally, for each of the embodiments described herein, any corresponding form of such embodiment can be described herein as, for example, a "computer" configured to perform the described actions.

[0047] One exemplary embodiment proposes a method for converting between several variants of XAI models and XNN architectures that are logically equivalent to each other and still serve different purposes. The method may include a format based on general XAI model rules. Furthermore, the model may incorporate sparse, dense, and / or micro-XNN architectures. The formats are interchangeable and may have the same interpretability level. It should be further considered that the method for converting between several variants of XAI models and XNN architectures can be applied to white-box components within a gray-box model.

[0048] Referring now to the exemplary embodiment in FIG1, FIG1 illustrates the interaction between an exemplary interchangeable representation format of a model based on XAI rules and an XNN variant. XAI model 100 can be transformed to or from a sparse XNN 102, a dense XNN 104, or a miniature XNN 106. Furthermore, each of the sparse XNN 102, dense XNN 104, and miniature XNN 106 can be transformed to or from an XAI model 100. In a dense XNN 104, the network layers are fully connected by neurons in a single network layer. Each neuron receives input from all neurons in the previous layer. On the other hand, a sparse XNN 102 does not connect every neuron, thereby reducing the complexity of the system.

[0049] Referring now to the exemplary embodiment in FIG2, FIG2 illustrates an exemplary XNN architecture with embedded rules. First, a partitioning condition 202 can be selected using a localization method that references many rules and encoded knowledge. Partitions may be non-overlapping or overlapping. In the case of non-overlapping partitions, the XNN can implement a single path in a feedforward mode. In the case of overlapping partitions, the XNN can implement multiple paths in a feedforward mode and can compute a probability or ranking score for each path. Partitioning condition 202 can be interpreted as focusing the XNN on a specific region of the represented model. The partitioning localization method can generally be implemented in the form given by template 204, in which various features 206 are repeatedly compared with real numbers 208 using conjunctive normal form (CNF) or a logical equivalent (such as disjunctive normal form (DNF), first-order logic establishment, and the like). In an alternative embodiment, other non-Boolean logic systems may be utilized, such as type 1 or type 2 fuzzy logic systems, modal logic, quantum logic, probabilistic logic, or other suitable types of logic systems for expressing logic or similar statements.

[0050] An external program (such as an XAI model induction method or a logically equivalent method) can be used to select and identify the localization method values, conditions, and fundamental equations. In an alternative embodiment, an end-to-end method can be used with gradient descent methods (such as backpropagation, Newton's method, Broyden–Fletcher–Goldfarb–Shanno method, front-back method, stochastic gradient descent, fast gradient method, optimized gradient method, fast proximal gradient method, quantum annealing, or any other such method as can be understood) to partially or completely induce the localization values, conditions, and fundamental equations. The selected values ​​are iteratively tested and changed until an accuracy at a specific caliber is obtained when fitting the model to the provided relative test or synthetic data and / or by iteratively querying the initial black-box predictor model. An XNN may have four main components in its localization or focusing module, which may be part of a conditional network, which may include an input layer 210, a conditional layer 212, a value layer 214 and an output layer 216.

[0051] Input layer 210 is structured to receive various features that need to be processed by the XNN. Input layer 210 feeds the processed features through a conditional layer 212 in which activations switch on a group of neurons. The conditional layer may need to satisfy a condition before delivering an output. In most cases, the conditional network can output a binary value (one or zero) that determines which rule or partition to activate. In addition, the input can be further analyzed by a value layer 214. The value of output X (in the case of calculating an integer or real number, etc.) or category (in the case of a classification application, etc.), X is given by an equation Xe calculated by value layer 214. The result of the Xe function can be used to produce output 216. It can be considered that the conditional layer and the value layer can appear in any order or simultaneously.

[0052] In an exemplary XAI model induction, the modeling system can input data into a black-box system and record the outputs corresponding to each input. In another embodiment, the modeling system can use an indifferent predictor model (such as a simple mapping function) that returns labels or responses to all or part of the input dataset (this is equivalent to running induction directly on the training data). In another embodiment, the modeling system can use a suitable automatic predictor building method to create a predictor model directly from the training data. Adding a black-box or predictor model as input to the induction can help reduce or eliminate errors and / or noise from the original input dataset.

[0053] Data points can initially be obtained from all or part of the training data that needs to be combined with the synthetically generated data. The synthetically generated data can be generated by an external program (such as a simulation system, world model, etc.). The input data can also be an empty set, in which case the induction will work using perturbed data obtained from the input predictor model. Before performing the induction, an optional data quality assurance function can also be applied to a subset of the input data points and / or the entire input data. The induction constructs a global model by dynamically generating perturbed sample data points that are then injected into the input predictor model (which can be a black box), and then recording the output and combining it with all other available data points from the training and / or synthetic data. It can be considered that the perturbed data can be used independently without using the original training data. An exemplary embodiment of a perturbation method may utilize one of the following combinations: random noise addition method, rotation perturbation, projection perturbation, k-anonymization, generative adversarial network (GAN) or any other suitable perturbation method. The combined data points can form the input for the inductive segmentation function. Data points from the predictor model can be continuous, discrete, or categorical values. The predictor model that outputs a classification result can have this classifier for either: (i.) discretized output via an appropriate transformation function that assigns appropriate class labels; or (ii.) a probability output that can be used directly or via an appropriate transformation function.

[0054] The next exemplary step may identify a hierarchy of "partitions". Each partition may encompass a set or cluster of data points extracted by combining data that can be used in inductive reasoning. Each partition may define zero, one, or more rules and may contain sub-partitions with their respective associated rules as needed. Extracted partitions may be incorporated into overlapping and non-overlapping partitions. In the case of overlapping partitions, a priority function may be used to determine which partition to activate. In an alternative embodiment, if more than one partition is activated, a summarization function may be used to combine or split the results from multiple activated partitions. Various methods for finding rules or clusters of data points associated with a rule may be implemented as long as each partition has sufficient data to fit a linear model and is not too complex for a linear model to perform well. Nonlinear transformations (including, but not limited to, polynomial expansion, rotation, dimensional and non-dimensional scaling, state space and phase space transformations, integer / real / complex / quaternion / octon transformations, Fourier transform, Walsh function, continuous data bucketing, Haar and non-Haar wavelets, generalized L2 function, fractal-based transformations, Hadamard transform, Type I and Type II fuzzy logic, knowledge graph networks, classification coding, difference analysis, and normalization / standardization of data and conditional features) can be applied to a separate partition before linear fitting to enhance model performance.

[0055] A partition can be a cluster that groups data points according to some rules and / or distance similarity functions as needed. Each partition can represent a concept or a specific category of data. A partition represented by only one rule has a linear model that outputs a predicted or classified value. Since the model can be linearly modeled, the coefficients of the linear model can be used to score features according to their importance. When dealing with both linear and nonlinear data and / or both linear and nonlinear predictor models in an inductive manner, the underlying features can represent a combination of linear and nonlinear fits.

[0056] An exemplary embodiment can be illustrated using mathematical terminology. Referring to the exemplary embodiment in Figure 15, Figure 15 illustrates an exemplary model induction. In one exemplary embodiment, X may represent an input dataset 1502 and a predictor model function with n outputs 1504. X may be a matrix with m dimensions. Each dimension (m) may represent an input feature of X and each output may represent the number of categories (n). The input dataset may be a combination of training data and synthesized data. Furthermore, in one exemplary embodiment, a function such as a perturbation 1506 may be used to perturb the samples. This function may be any perturbation function that generates perturbed sample data given some input training or test data X, where X may be a subset of the input data, a neighborhood of the input data, a suitable embedding of the input / output / explanation data, or even an empty set, in which case the perturbation function needs to query the predictor model using some form of random or non-random pattern. Y can represent the combination of the perturbation and the original input data set, and Y can represent the output from the predictor model function 1508, such that and

[0057] The hierarchy of partitions can be represented by an external function partition 1510 denoted by P, such that , where k is equal to the number of rules in the case where each partition is defined by only one rule. The partitioning function can be a clustering algorithm, such as k-means, Bayesian, based on connectivity, based on centroid, based on distribution, based on grid, based on density, based on fuzzy logic, entropy, a mutual information (MI) based method, or any other logically suitable method. The partitioning function can also include a general method that will result in many overlapping or non-overlapping partitions. In the case of overlapping partitions, a summarizing function can be used to combine or split the results from multiple partitions. The partitioning function can alternatively include correlation-based algorithms, causal-based partitioning, or other logically suitable partitioning implementation schemes.

[0058] can represent each rule in the i-th partition. Each rule can contain multiple conditions such that, where q can represent the number of conditions in the rule and can be the j-th condition of the input matrix x of the i-th rule (i.e., the i-th partition). The perturbed input matrix can be divided into k matrices, where k equals the number of rules, such that, represented by the matrix of the defined local filtering, the union of when the partitions do not overlap. The union of when the partitions overlap. When the partitions overlap, a ranking function needs to be applied to select the most relevant rule or the ranking function needs to be used in some form of a probability-weighted combination method. In an alternative embodiment, if more than one partition is activated, a summing function is used to combine the results from multiple partitions.

[0059] The next exemplary step may involve fitting a local model to each of the defined partitions. The input found in and can be represented as . In other words, it can be the input or feature data applied to the i-th rule. The local samples can be filtered 1512. Then, can be perturbed 1514, and can be represented as a combination with a local perturbed dataset. Therefore, this locally predicted perturbed data 1516. Finally, it can be computed by finding a transformation 1518 such that . The transformation function can be a transformation pipeline, including but not limited to polynomial expansion, rotation, dimensional and non-dimensional scaling, Fourier transform, integer / real / complex / quaternion / octon transformation, Walsh function, state space and phase space transformation, Haar and non-Haar wavelets, generalized L2 function, fractal-based transformation, Hadema transform, Type 1 and Type 2 fuzzy logic, knowledge graph network, classification coding, discriminant analysis, and data normalization / standardization. The transformation function pipeline can further contain transformations that analyze data sequences ordered according to the values ​​of one or more variables (including time-ordered data sequences). XT can generate new features such that z represents the total number of features derived from the transformation function.

[0060] For each j (i.e., the number of outputs) in the range of 1 to n, the system can compute a local model 1520 in a linear manner. This is a matrix containing one of n vectors (one vector for each output) such that represents the j-th output vector. The linear model can be defined as a function of a linear model, such as linear regression, logistic regression, kernel methods, etc., that fits the model. The linear model defines a set of coefficients 1522 such that... A linear model or a combination of linear models can provide a regular XAI model 1524. In an alternative embodiment, the local model can be fitted in an atomic fitting function using parallel linear design or gradient descent techniques or a suitable equivalent method. Note that the feature can be a transformed feature, such as a polynomial (e.g., x, y); a conditional feature (e.g., and); a Fourier transform, etc. Note that the feature can be positive or negative, corresponding to a positive or negative contribution to the model of the relevant transformed feature. Positive or negative contributions are also commonly referred to as stimulating and inhibiting effects. Compression or regularization techniques can also be applied to simplify the fitting of local models, which indirectly simplifies the interpretation of results. Finally, various combinations of these can form rules. If , then if , then if , then if , then

[0061] In addition, extra functions can be applied to the final output of the rules. For example, the softmax function can be used to define rules for a multi-class classification system such that: if , then , and

[0062] In an alternative exemplary embodiment, the sigmoid function can be applied to the output for use in a binary classification algorithm, such that: if, then

[0063] . The inductive model can be represented using a general format (such as first-order symbolic logic) or can be used directly. It can be considered that this induction or a logically equivalent procedure of a portion thereof can be recreated using a suitable machine learning system (such as neural networks, transducers, transformers, autoencoders, spiking networks, memory networks, and / or reinforcement learning systems) that has been appropriately trained (e.g., via gradient descent techniques). Furthermore, the extracted model can be global, such that it captures the entire multidimensional space of the original model. Even if the original model is not fully interpretable, the global model can still be fully interpretable and can still maintain a high level of model performance or accuracy. Interpretation can be performed simultaneously and in parallel with the answer and may not result in performance loss.

[0064] Referring now to illustrative Figure 16, Figure 16 illustrates an illustrative method for extracting an interpretable white-box model of a machine learning algorithm from another existing system. The target system may be considered as a black-box system, or any other considered system, machine learning algorithm, neural network, or the like. In an illustrative first step, synthetic data and / or training data (1602) may be generated or obtained. A perturbation variation of the set of synthetic data and / or training data may also be generated, allowing for the acquisition of a larger dataset without increasing the need for additional synthetic data and / or training data, thereby saving resources. It may be considered that, prior to step 1602 or within any of steps 1602, 1604, 1606, 1608, 1610, 1612, and 1614, a suitable normalization method (such as min-max scaling, standard scaling, or other suitable methods) may be used to normalize the synthetic data and / or training data. It is further possible to apply an inverse normalization method using a suitable inverse method of any normalization method applied, prior to step 1602 or within any of steps 1602, 1604, 1606, 1608, 1610, 1612, and 1614. The synthetic data and / or training data can then be loaded as input into the target system 1604. The target system can be any machine learning algorithm with any infrastructure. The infrastructure can be a black box and therefore unknown. In one exemplary embodiment, the machine learning algorithm can be a deep neural network (DNN). Furthermore, the target system can contain data with non-linear modeling. The infrastructure and structure of the target model may be unknown or unnecessary, as it may not be directly analyzable. Alternatively, the synthetic data and / or training data can be loaded as input 1604, and the output can be recorded as data point predictions or classifications 1606. Since a large amount of synthetic data and / or training data can be loaded as input, the output data point predictions or classifications can provide a global view of the target system. In an alternative embodiment, the target model can be segmented in a suitable manner so that it is only partially inductively generalized. For example, in the case of a convolutional neural network (CNN), only fully connected non-convolutional layers can be inductively generalized, leaving the previous layers (convolutional and pooling layers) as transformed inputs to the induction.

[0065] Referring again to illustrative Figure 16, the method can continue 1608 by predicting or classifying data points into hierarchical partitions. Rule conditions can be obtained from hierarchical partitions.

[0066] The procedure for finding partitions or the boundaries of partitions is an external function defined by Partition(X). Partition(X) can be a configured function for partitioning similar data and can be used to create rules. The partitioning function may include a clustering algorithm, such as k-means, Bayesian, connectivity-based, centroid-based, distribution-based, grid-based, density-based, fuzzy logic-based, entropy-based, or a mutual information (MI)-based method. Alternatively, the partitioning function may include correlation-based algorithms, causal-based partitioning, or other logically appropriate partitioning implementations.

[0067] Hierarchical partitioning can organize output data points in various ways. In one exemplary embodiment, data points can be aggregated such that each partition represents a rule or a set of rules. The hierarchical partitioning can then be modeled using mathematical transformations and linear models. Any transformation function or combination of transformation functions can be used, including but not limited to polynomial expansion, convolutional filters, fuzzy subordination functions, integer / real / complex / quaternion / octon transformations, Fourier transforms, and others. Transformation functions or combinations of transformation functions can be applied before step 1608 and / or during step 1610. One exemplary embodiment may apply a polynomial expansion. Within step 1608, the hierarchical partitioning may also undergo one or more iterative optimization steps involving merging and splitting the hierarchical partitions using a suitable aggregation, segmentation, or optimization method, as needed. A suitable optimization method seeks to find all path-connected topological spaces within the predictor's computational data space while providing an optimal metric that minimizes the total number of partitions. Furthermore, a linear fitting model can be applied to partition 1610. Depending on the application of the black-box model, additional functions and transformations (such as softmax or sigmoid functions) can be applied before linear fitting. The computed linear model obtained from partitioning can be used to construct rules or some other logical equivalent representation.1612 Rules can be stored in any medium. For example, rules can be stored as mathematical equations or represented using first-order symbolic logic. Such storage of rules allows the extracted model to be applied to any known programming language and to any computing device. Finally, the rules can be applied to the white-box model.1614 The white-box model can store the rules of the black-box model, thus allowing it to mimic the functionality of the black-box model while providing interpretations that the black-box model may not provide. Furthermore, the extracted white-box model can be parallel to the original black-box model in terms of performance, efficiency, and accuracy. The extracted white-box model W, as a result of transforming the input predictor model U via induction, is an approximation or perfect mutual simulation of U, i.e., W ~ U. The degree of mutual simulation between the inductive white-box model and the original predictor model can be set as a parameter during steps 1608, 1610, 1612, and 1614. Regarding model and output interpretability, in the case of the extracted model, which is the final result of induction, mutual simulation is generally related to output interpretability.

[0068] One embodiment proposes a solution for lossless transfer of knowledge from logic-based rules to an artificial neural network (ANN) implemented as an XNN, while preserving the knowledge in the rules and maintaining the interpretability and interpretability of the model. The transformation can also be applied to several variants of the same XNN, which can be dense, sparse, or miniature. The transformation can be applied in all directions across all white-box XAI / XNN models.

[0069] An exemplary schematic diagram of a conditional network 510 is an extended possible implementation of the conditional network 510 shown in Figure 14. The conditional network 510 may include three main layers that may be combined together depending on the implementation constraints. The first of these main layers may be a conditional layer 512, which may be initialized according to the hierarchy of partitions implemented in the XNN. The second of these main layers may be a summarizing layer 514, which may be initially initialized by an external procedure defining the XNN and subsequently improved using backpropagation training methods (such as gradient descent). The third of the main layers may be a switching output layer 516 that combines the results of the summarizing layer 514 and the conditional layer 512.

[0070] The switching output layer 516 can also be initialized by the same external procedure that defines the XNN and is typically implemented as the initialization procedure for the summation layer 514, but it can be considered that such procedures may be independent as needed. All values ​​in the connection weights between neurons can be updated using standard neural network training techniques. XNN provides a further novel approach to updating the connections themselves using machine learning methods (such as genetic algorithms, Monte Carlo simulations, simulated annealing, reinforcement learning, etc.) or via causal logic models.

[0071] In an exemplary neural network, the result of one layer of the network can be the dot product of the input and the weights of the connected neurons. For example, a generalized linear equation is equivalent to the neural network in exemplary Figure 3A. Similarly, a logic function is equivalent to the neural network shown in exemplary Figure 3B. Input 302 can be an input feature or variable. Each input 302 is weighted with a corresponding weight 304 to obtain a result value 306. Various weights 304 can increase or decrease the influence of each input variable 302. Note the addition of activation functions, such as the sigmoid 310 in Figure 3B. The activation function is not limited to the sigmoid type. Any suitable activation function can be used to transform the output. The result value 306 can be combined in a value output layer 308.

[0072] Consider the following rule set as an example:

[0073] Depending on the number of input features, the rule set can be structured hierarchically in multiple dimensions.

[0074] In one exemplary embodiment, the rule can be defined as:

[0075] Referring now to illustrative Figure 5, Figure 5 illustrates an implementation scheme of the transformed features. Each newly transformed feature 500 (such as x2, y2, xy) can be processed by adding an additional neuron for each feature. For example, feature 302x can be combined with feature y to produce transformed feature 500xy. Alternatively, feature 302x can be transformed independently to produce feature 500x2.

[0076] Illustrative Figure 4 provides a plotted definition of R0 to R3 in the form of a prediction network 400. Input features 302 or transformed features 500 (such as x2, y2, xy, x, and y) are weighted by weighting coefficients β0 to β10 to produce local models 306R0 to R3. The resulting values ​​of rules R0 to R3 can be combined and / or output in a value output layer 308.

[0077] Illustrative Figure 6 illustrates a conditional network, one of the conditional components of the defined rule set. The conditional network 600 may contain three main layers that can be combined depending on the implementation constraints. The conditional layer 602 is initialized based on the hierarchy of partitions implemented in the XNN. The summarization layer 604 is initially initialized by an external procedure defining the XNN and can subsequently be improved using gradient descent methods (such as backpropagation). The conditional network may be trainable or non-trainable. In the latter case, when backpropagation is applied, the partitions remain static and only the value / prediction network is improved.

[0078] Condition layer 602 can be initialized using IF conditions defined in the XAI model. For example, "IF x ≤ 10" can be defined in the XAI model and will generate a neuron in the transformed XNN model for x ≤ 10. An IF condition of x > 10 and x ≤ 20 for [x > 10, x ≤ 20] will generate a summarized neuron in summary layer 604. The output of each neuron can be 1 or 0. Switching output layer 606 combines the results of summary layer 604 and condition layer 602.

[0079] As illustrated in illustrative Figure 6, each condition can be divided into partitions. Each box in condition layer 602 can represent a single partition. For example, "y > 15" can be a single partition, representing a single rule applied in the case of "y > 15" (and therefore not in the alternative case where y ≤ 15). The partition can then be combined with another partition in summary layer 604. In summary layer 604, partition "y > 15" is combined with partition "x > 20". These two partitions are then combined in switching output layer 606 to produce S3.

[0080] Referring now to illustrative Figure 7, Figure 7 illustrates an exemplary subnetwork of an XNN that combines the output layer result 606 and the value output layer result 308. Note that the XAI model and XNN can incorporate overlapping and non-overlapping partitions. In the case of overlapping partitions, a priority function can be used to determine which partition to activate. In this exemplary embodiment, the resulting combination can produce a value set 700, V0 to V3. The value set 700 can be further modified by weights 702 P0 to P3 to produce a result 704. The weights in 702 can also be non-trainable and set to a fixed value of 1. Finally, the result can be modified by an activation function 310.

[0081] In an alternative embodiment, overlapping functions may also be merged. Alternatively, partitions may be divided into further partitions.

[0082] The transformation can be applied using sparse connections or by using uniformly dense networks. For reference, in scientific computing, the information density of a particular structure can be characterized by the "sparseness" of that structure. To give an example, a "sparse" matrix can be a matrix in which many or most of its elements are zero, such as an identity matrix. Conversely, a "dense" matrix can be a matrix in which most of its elements are non-zero. The same applies to networks; a sparse network can be a network with fewer than the maximum possible number of links within the network, while a uniformly dense or complete network maximizes the possible number of links.

[0083] Miniature XNNs employ techniques similar to those used in sparse or dense networks, but are divided into multiple miniature networks. Each network in a miniature network can represent a local model that can be trained or used independently. These miniature networks are the modular equivalents of XNNs in conventional software engineering design, allowing neural networks to be structured according to optimal practical modular design. This is another advantage of XNNs that conventional ANNs and deep learning models cannot achieve at all. In a uniformly dense XNN, coefficients can be zero-valued, resulting in more nodes and connections because zero-valued coefficients are still connections, and therefore the result is a uniformly dense network (maximizing the number of possible links). On the other hand, in a sparse XNN, zero-valued coefficients can be eliminated, resulting in a more compact network. Therefore, a uniformly dense set of equations used as the basis of a sparse XNN (where zero-valued coefficients are eliminated and the set of equations has all non-zero elements) can produce a sparse network (such as the illustrative embodiment in Figure 8) because the number of possible links is less than the number of possibilities. (The reverse is also true, and using a sparse system of equations in which most of the elements are zero can produce a uniform dense network that maintains the connection between all the units, as shown in Figure 9).

[0084] Although sparse and dense networks are logically equivalent on the same rule set, they converge to different results (i.e., different rule sets) when gradient descent methods (such as backpropagation) are applied. For example, a uniformly dense network initialized with some zero values ​​after training can terminate with a completely non-zero weight matrix. On the other hand, a sparse network, which does not contain zero values, forces training to be more restrictive by keeping the zero values ​​zero. Sparse networks can be useful in cases where the rule set may have been pruned, regularized, or compressed for better generalization to eliminate unimportant features and / or coefficients. In this case, a sparse network is more suitable because it maintains compression or regularization.

[0085] Referring now to exemplary Figure 8, Figure 8 illustrates an exemplary sparse XNN architecture. A sparse XNN may include a conditional network 600 as previously described. In addition, the sparse XNN may include a prediction network 400, which may include transformed features 500, obtained rules 306, and a value output layer 308.

[0086] A prediction network in a sparse XNN can be applied using the dot product between weights in inputs 500 and 304. The result is equivalent to solving a linear function such as this. This is equivalent to an illustrative dot product:

[0087] This dot product can be represented by a prediction / value network. In a neural network, the intercept of a linear equation is usually represented by a single bias vector.

[0088] Both dense XNN and sparse XNN support rule improvement through incremental learning using gradient descent methods (such as backpropagation). Although the construction of a sparse network architecture may be more complex, it is ideal for low memory footprint, low power hardware and edge processing, pruned rules with zero-value coefficients, or for preventing overfitting of zero-value coefficients. In addition, sparse XNN can employ efficient CPU processing techniques and is ideal for both large and small datasets.

[0089] The exemplary XNN architecture in Figure 8 is logically equivalent to the following set of equations:

[0090] In an example of a dense XNN, each neuron in a layer can be fully connected to each neuron in the layer.

[0091] Referring now to illustrative Figure 9, a typical dense XNN architecture can be illustrated. A dense XNN may contain the same components as a sparse XNN, such as a prediction network 400 and a conditional network 600. However, the prediction network in a dense XNN may differ from the prediction network in a sparse XNN; that is, even if the connection system is via a zero-valued weight, or coefficients represented by a rule set, nodes in one layer are fully connected to nodes in another layer. For example, the nodes in the transformed feature layer 500 are connected to the rule output values ​​in rule 306 obtained in the next layer.

[0092] The difference between a sparse XNN and a uniformly dense XNN can be seen in the way the dot product is calculated. For example, in a uniformly dense XNN, although the illustrative diagram shows two separate steps 306 and 308 for visual purposes, this can actually be performed as a single step. In these illustrative steps 306 / 308, matrix multiplication is performed between the weight / coefficient matrix and the vector / matrix of the input / transformed value 500. The intercept of the equation can also be represented as a single bias vector. An illustrative matrix multiplication of the coefficient matrix and the transformed value can be:

[0093] Alternatively, in a sparse XNN, the dot product is divided into multiple dot products 306 and combined into a layer 308. In step 306, each rule is computed separately using a single dot product. For example:

[0094] Finally, the prediction network of the sparse XNN concatenates the output vectors into a vector 308, so that matrix multiplication and output switching can be applied together in step 700.

[0095] Like sparse XNNs, dense XNNs can still support rule improvement through incremental learning using gradient descent methods (such as backpropagation). However, the network architecture of dense XNNs is simpler to construct than that of sparse XNNs. Dense XNNs are ideal for high-power hardware, rules with non-zero coefficients, and for implementing or analyzing high-dimensional data. Dense XNNs are efficient for GPU processing and ideal for both small and large datasets because they can utilize GPU parallelism to perform efficient multiplication and other mathematical operations. Sparse XNNs are useful for limiting training through rule-based methods, while dense XNNs are useful for providing predictions and explanations. Quantization can also be applied to a wide variety of XNN models (including sparse / dense and miniature). Since XNNs utilize extensive learning in addition to deep learning, quantization can be attributed to its better performance due to fewer mathematical operations applied to low-precision numbers. XNNs typically support both deep learning and extensive learning methods.

[0096] XNN can be a type of Wide-Range Neural Network (WNN). The order of magnitude of WNN can significantly outperform logically equivalent but structurally more complex Deep Neural Networks (DNN). The training speed of WNN can also be several times faster than that of DNN.

[0097] The exemplary dense XNN shown in Figure 9 is logically equivalent to the following set of equations:

[0098] After zeroing out unused features, a uniformly dense network is logically equivalent to a sparse network. Therefore, to transform a sparse XNN into a uniformly dense XNN, additional features multiplied by a coefficient weight of 0 can be added. Furthermore, to transform from a uniformly dense XNN to a sparse XNN, features with a coefficient weight of 0 are removed from the equation.

[0099] For example, the dense XNN in Figure 9 is logically equivalent to the following system of equations:

[0100] It can be simplified to:

[0101] In rule 0, , , ; in rule 1, , ; in rule 2, , ; and in rule 3, .

[0102] Logical equivalence applies to feedforward propagation. Once a network is converted to a consistent dense XNN and trained on it, the zero-value weights (i.e., coefficients) can be updated via backpropagation.

[0103] Referring now to illustrative Figure 10, Figure 10 illustrates a comparison between a uniformly dense XNN and a sparse XNN implementing a model based on the same rules. The choice between one or the other depends on the use case. For example, a sparse XNN can be used during training to restrict certain coefficients to a non-zero value, which allows for maintaining a simpler model that has been regularized or compressed. Once training or improvements are applied, the sparse XNN can be converted to a uniformly dense XNN, which is fully connected to have a simpler network for providing predictions and interpretations, resulting in faster execution times. The construction and execution of sparse networks can be slightly more complex, but use less memory, making them suitable for applications where memory and space are major concerns. These space, time, and performance trade-offs can initially be used to select the best type of XNN for a specific application. It is recommended to conduct additional testing on different variants to determine the optimal architecture, as XNN variants can be optimized for ease of training, loading time, memory and space utilization, execution speed, etc.

[0104] Sparse networks may require some prior knowledge of the interpretable model (which is needed to initialize the sparse network). This knowledge can be obtained using a suitable inductive method. When training directly on a uniformly dense XNN, training can be performed as an external and / or integrated procedure that can be used end-to-end or in part with deep learning. Standard loss functions (such as mean squared error and binary / classification cross-entropy) can be applied to XNNs. However, a custom loss function can also be applied to XNNs to minimize the overlap between partitions and minimize the error between the prediction and the labeled output. Once the network is sufficiently trained, it can be converted to a sparse network for further training or deployed as an efficient low-memory network.

[0105] In an exemplary embodiment for medical imaging, an XNN can be used to classify and interpret an X-ray image or an MRI scan. Dense and sparse XNNs can be applied at different stages of the model lifecycle. After initial model generalization, converting an XAI model to an XNN may be suitable for this particular use case. The XAI model may then need to be converted to a sparse XNN to improve the model globally. This sparse XNN allows the XNN to utilize regularization and compression of parts of the existing XAI model. Once the model is sufficiently trained, converting the sparse XNN model to a uniformly dense XNN model for deployment in a production environment can be useful, thereby requiring a simpler architecture to provide fast classification and interpretation. It should also be noted that in this embodiment, sparse and dense XNNs provide different levels of accuracy. In this case, hardware resources may be sacrificed to improve model performance (accuracy) as needed. These trade-offs can be applied on a case-by-case basis. In one exemplary embodiment, a uniformly dense XNN can be implemented as part of a large-scale MRI scanner, while a sparse XNN can be implemented as part of a smaller portable device.

[0106] Micro XNNs employ a technique similar to that of a sparse network, but are divided into multiple micro-networks. These micro-networks are the XNN equivalent of modules in traditional software engineering design, thus allowing neural networks to be structured according to optimal practical modular design. Micro XNNs can operate in feedforward propagation and may not support global rule improvement through gradient descent methods (such as backpropagation). Micro-networks can be small local models that can be trained independently on different machines and environments. Multiple local models can employ different training techniques, including distributed learning. A local model within a micro XNN can be sparse or dense. Furthermore, micro XNNs can employ different levels of precision for each micro-model. Therefore, micro XNNs are also suitable for deployment in production-type environments or for conversion to fixed hardware circuits (such as (i) ASICs; (ii) neuromorphic hardware; or (iii) analog / digital circuit systems). Miniature XNNs are also suitable for deployment and conversion to quantum computer hardware circuits. The reduced size of miniature XNNs lowers the complexity of conversion to quantum-enabled hardware circuits, making it a practical and feasible implementation method. Miniature XNNs can be used to provide prediction and interpretation. One or more miniature XNNs can be implemented in low-memory-footprint, low-power hardware and edge processing. A miniature XNN can handle high-dimensional data and handle fast switching between prediction and interpretation. By utilizing a simple transformation step from a miniature XNN to one of other XNN variants (such as sparse or dense XNNs), running a backpropagation procedure, and then converting back to the miniature XNN format without any information loss, backpropagation and related techniques can still be used in conjunction with miniature XNNs.

[0107] In addition to the exemplary medical imaging embodiment, an alternative deployment may be required on a low-power handheld device. In this exemplary use case, a miniature XNN may be suitable because it may require less hardware resources to process classification and interpretation.

[0108] Referring now to the exemplary embodiment in Figure 11, Figure 11 illustrates four exemplary value micronetworks: R01100, R11102, R21104, and R31106. An XNN network can be combined in which the feedforward pass is decomposed into one or more smaller micronetworks. Taking the conditional network illustrated in Figure 11 as an example, once a conditional network is evaluated, switching the output layer results S0 to S3 determines which value network to execute. Individual micronetworks can be used for value networks.

[0109] For example, if S0 is triggered, the network is triggered for the value of rule R0; if S1 is triggered, the network is triggered for the value of rule R1; if S2 is triggered, the network is triggered for the value of rule R2; and if S3 is triggered, the network is triggered for the value of rule R3.

[0110] Referring to the exemplary embodiment in Figure 12, Figure 12 can be illustrated as a flowchart showing one of the exemplary combined micro XNN architectures. Conditional network 600 can be itself a micro XNN and can interface with individual value network micro XNNs 1100, 1102, 1104, and 1106. This allows best practices in software engineering design to be reflected in the XNN design. Due to the white-box nature of XNNs, this modular approach is only possible within the XNN itself.

[0111] An example of a micro-XNN architecture allows for the efficient linking of easily developed modules and other networks. This allows, for example, value networks to be independently debugged and formally checked, making them more suitable for both software and hardware applications, especially in deployment environments involving mission-critical applications (e.g., in real-time applications, aerospace, space exploration, etc.). Micro-networks can be updated to a certain extent within micro-fragments using gradient descent techniques or other methods applied to individual modules or value networks. These updates can also be reflected in all other variations, thus allowing for a combination of modularity and efficiency.

[0112] An XNN or XNN can be transformed into a miniature XNN. In an exemplary embodiment, the value network and conditional network of an XNN are split to generate two miniature XNNs. The main difference between an XNN and a set of miniature XNNs is that each subnetwork in the set of miniature neural networks is constructed in a way that allows it to operate independently by having a complete data flow from input, transformation (such as a polynomial) to output prediction. When an XNN is transformed from miniature to dense or sparse, the transformation is only a combination of results without having repeating neurons that compute the same function. For example, referring to the exemplary embodiment in Figure 12, the neuron that computes "xy" is computed only in a sparse or dense XNN, but the connections of the neuron can be changed to link it with R0 and R1. In the connected set of the miniature XNN shown in Figure 12, the value "xy" may appear twice, but it is only computed after transformation to a dense or sparse XNN.

[0113] One exemplary embodiment allows human knowledge to be directly injected into and incorporated into neural networks without a training step or any training data, representing a significant breakthrough in connection-based methods in artificial intelligence. Logic-based rules, which can be represented in if-then-else format, can all be incorporated into an XNN, and logical methods can be used to convert rules to if-then-else format.

[0114] An exemplary embodiment also allows reinforcement learning to occur by directly incorporating knowledge from an inductive XAI model into an XNN, and then using gradient descent and new incremental data to improve the resulting XNN model over time by maintaining the best performance of the XNN and improvements in the current iteration.

[0115] Human knowledge injection is a procedure for defining new rules or editing existing rules. Human rules can be written and represented in a format based on generalized XAI rules (such as disjunctive paradigm), which allows human knowledge to be injected into the XNN via the transformation methods defined in this paper. Gradient descent methods allow rules to be improved by considering human rules across the entire model. Furthermore, human rules can be configured to be trainable or non-trainable. In the latter case, only the machine-generated rules are improved, while the human rules remain unchanged. This allows for manual control of the resulting XNN model and ensures the safe operation of a predictable system.

[0116] Furthermore, an exemplary embodiment may also allow the implementation of a genetic algorithm (GA) and a generalized Monte Carlo simulation (MCSM). First, an XNN can be initialized, and then GA and / or MCSM can optimize the weights and dynamically create or delete connections. This feature surpasses the typical capabilities of backpropagation and gradient descent methods because it allows the XNN to dynamically adjust its own structure and automatically adapt to changing circumstances without human intervention. This allows the XNN to exceed the theoretical hard limits of what methods such as deep learning can achieve.

[0117] Referring now to the exemplary embodiment in FIG13, FIG13 is a schematic flowchart outlining one of the possible transformations between XNN variants and a model based on XAI rules. As previously described, a miniature XNN 106 can be transformed into a sparse XNN 104 or a uniformly dense XNN 102 by simply combining 1302 to form a miniature network of an exemplary miniature XNN 106. Alternatively, a uniformly dense XNN 102 or a sparse XNN 104 can be transformed into a miniature XNN by splitting the conditional network 600 and the prediction network 1304. The neurons in the prediction network can also be further segmented into individual miniature networks, and the collection of miniature networks can operate jointly as a miniature XNN 106. Other types of transformations are possible but are not shown in FIG13, which covers typical application cases encountered during the course of the present invention.

[0118] In one exemplary embodiment, a sparse XNN 104 can be easily converted into a uniformly dense XNN 102 by connecting each neuron in each layer of the prediction network 1306 and by inserting previously unused coefficients or coefficients with 0 or suitable null values. The reverse operation can be performed, and a uniformly dense XNN 102 can be converted into a sparse XNN 104 by disconnecting unused neurons with coefficients of 0 or suitable null values ​​from 1308.

[0119] In one exemplary embodiment, an XNN, dense XNN, sparse XNN and / or micro XNN may have at least one of its nodes replaced by a combination of finite-state transducers in a lossless transition procedure that maintains full logical equivalence.

[0120] In one exemplary embodiment, an XNN, dense XNN, sparse XNN and / or micro XNN may have at least one of its nodes transformed in a lossless transformation procedure that maintains full logical equivalence to utilize a combination of polynomial expansion, convolutional filter, fuzzy attribution function, integer / real / complex / quaternion / octon transformation and / or Fourier transform.

[0121] The XNN transformation procedure can also transform an XNN back into an XAI model (including an exemplary rule-based XAI model). Since the XNN has a white-box architecture, neurons, weights, and connections can be directly mapped to a rule-based XAI model or a logical equivalent 1310. This transformation from an XNN to an XAI model works by first extracting partition conditions from the conditional network 600, then extracting coefficients 304 and input / transformed features 302 / 500. These coefficients and features can be used to generate linear or nonlinear equations as defined by a general rule-based XAI model. The resulting XAI model will be a logical equivalent of the original XNN and can be transformed back into an XNN and vice versa without loss of information or functionality. Furthermore, it is considered that an XAI model can incorporate features from multiple XNNs, each feature being assigned its own segment in the XAI model and having a fusion procedure that integrates information from each XNN into a combined XAI model. If all rules are compatible with the encoding in a single conditional layer of an XNN or in an XNN network combined within a larger XNN, then this combined XNN model can be reconverted back to a larger XNN.

[0122] An exemplary embodiment also allows selective deletion of a specific logical rule or set of rules from the resulting XNN, thereby allowing the neural network to comply with privacy laws and allowing the establishment of ownership of the training dataset to occur effectively and in accordance with best practices in Europe, the United States and other parts of the world.

[0123] The following are some exemplary implementations of XNN:

[0124] Convolutional XNN (CNN-XNN) allows for seamless integration of convolutional layers with XNNs, thereby giving them the ability to process images, 3D data, and other signal processing suitable for convolutional feature recognition, transformation, and extraction. CNN-XNN can incorporate one or more sets of convolutional layers as part of a preprocessing step between input features and the input to a conditional and prediction network of an XNN. The original features and the outputs from the convolutional layers are both considered as inputs to the XNN. Convolutional features can also be used in conditions placed in conditional layers. The outputs from the convolutional layers can also be reduced in dimension and can be partially or completely deconvolutioned. Convolutional filters or kernels can be used to produce an appropriate interpretation in a logical and human-readable manner.

[0125] Specific applications of CNN-XNN include image interpretation and diagnostic analysis of X-ray and MRI images in medical devices; interpretation of LiDAR and stereoscopic image data and fusion-based visual control model interpretation in autonomous aerial, land, sea, underwater, and space indoor and outdoor vehicles; and object and event detection and image interpretation in various application domains (such as traffic cameras, UAVs and satellite imagery, social media web photos, etc.). The most well-known current applications of artificial intelligence based on image, video, or 3D data can be incorporated with CNN-XNN to add interpretive capabilities to these applications.

[0126] Capsule XNN (CAP-XNN) retains the hierarchical information captured by a CNN-XNN during the convolution steps. Therefore, CAP-XNN can be considered an alternative variant of the standard CNN-XNN. CAP-XNN adds a capsule network between the input layer and the conditional and prediction layers in the XNN. CAP-XNN is similar to CNN-XNN, but because the capsule network also retains hierarchical information and the XNN utilizes hierarchical partitioning and hierarchical interpretation concepts, the hierarchical information from the capsule network layers can be directly used by the XNN. Due to the addition of hierarchical information, CAP-XNN can provide performance different from CNN-XNN. Instance applications of CAP-XNN are the same as CNN-XNN. CNN-XNN and CAP-XNN are largely interchangeable, ensuring that a CNN-XNN can be swapped for a CAP-XNN and vice versa. Due to the presence of hierarchical information, CAP-XNN combinations can potentially be more computationally powerful and expressive. The addition of hierarchical information to CNNs, both current and future enhancements, will also be compatible with XNNs, revealing the possibility of other XNN options based on convolutional networks but not on capsule networks. These modifications can be implemented into an XNN as long as the convolutional state remains unchanged.

[0127] Text XNN (T-XNN) is a variant of XNN that can handle text processing and text data containing syntactic and semantic information. T-XNN may include a processing step to transform text data into input features that are appropriate vector representations, and therefore can incorporate techniques such as word2vec and end-to-end processing for text feature engineering, and similar techniques. T-XNN typically leverages the white-box nature of XNNs to incorporate taxonomic knowledge and external linguistic knowledge as needed into both the conditional and predictive networks within the XNN. Incorporating such knowledge can improve the performance and interpretive capabilities of T-XNN.

[0128] T-XNNs can typically be combined with sequence processing in XNN prediction networks (such as extensions to the description of predictive and recursive XNNs (PR-XNNs)). Instantaneous applications of T-XNNs include: a document understanding system; a machine document translation system; an information retrieval or other form of search engine system; a semantic-based knowledge extraction and understanding system; and any other embodiments related to text processing. T-XNNs also reveal the possibility of better control and understandability of the resulting neural network model, which is one of the obstacles to further improving traditional black-box neural networks. For example, a T-XNN can interpret learned grammatical rules for a specific set of training documents, corpora, or input languages, and then a human review step can be used to collaboratively analyze and improve these learned grammatical rules. Initial grammatical rules can be learned automatically using a T-XNN initialization procedure without human intervention. Starting with the initial review, these reviews can then incorporate the suggested edits back into the T-XNN, allowing for a virtuous cycle of machine-human collaboration and semi-supervised learning to improve performance. T-XNN supports supervised, semi-supervised, and unsupervised learning modes. Since T-XNN remains compatible with gradient descent and other neural network training methods, all the advantages of retraining can be applied to a single T-XNN.

[0129] Speech XNN (S-XNN) is an extension of XNNs used for speech recognition and generation, adding an explanation to speech recognition by inserting an XNN or alternatively using an inductive model as part of a speech recognition solution. S-XNN incorporates a speech model as part of a preprocessing step between input features and the input to a conditional and prediction network of an XNN. The original features and the output from the speech model are both considered as input to the XNN. Speech model features can also be used in conditions placed in the conditional layer. The output from the speech model can also be dimensionality-reduced and can be partially or fully encoded or decoded. The speech model data itself can be used to generate an appropriate explanation in a logical and human-readable manner. The speech model can take the form of a speech-specific neural network or other forms of machine learning models (such as Bayesian networks, HMMs, and other models used in automated speech modeling). For speech generation, an S-XNN can, for example, be used to generate an explanation for why a particular phoneme and intonation were chosen. S-XNN can also be used to explain why specific interjections, filler words, non-lexical word shells, and other breaks and irregularities are inserted into speech output to make it sound more natural. Typical applications of S-XNN include automated speech recognition systems; automated speech generation systems; smart personal, home, and office assistants; voice-based control software and hardware systems, such as those used to control various industrial machines and in the transportation and aviation industries; voice control systems for pilots and future autonomous vehicles; voice-based interfaces and agents; call center and telemarketing systems; telecommunications hardware utilizing automated speech recognition and generation; conversational and dialogue agent systems, and the like.

[0130] Dialogue and Conversation XNN (QA-XNN) automates conversation, dialogue, and question-and-answer (Q&A) systems that incorporate XNNs. Given a specific question, an interpretable neural network outputs an answer and an explanation of why that answer was specified. QA-XNN incorporates additional contextual information into the conditional and predictive networks of an XNN to track the current state of a conversation, dialogue, or Q&A session. QA-XNN can also incorporate multiple XNNs within a monolithic control loop structure or system that allows multiple iteration requests and queries to be executed over the duration of a user session. The XNN interpretive coefficients used in a QA-XNN incorporate stateful information and, if used in a monolithic control loop system, some form of positional information to help generate an appropriate response to that particular loop or iteration within a session. QA-XNN leverages the white-box nature of XNNs to seamlessly incorporate additional contextual information, particularly in the predictive network. It is considered that QA-XNN will be used to transparently replace existing neural networks in existing Q&A systems. Due to the inherent iterative and causal nature of QA-XNNs, it is considered that in many practical implementations, QA-XNNs will be combined with predictive and recursive XNNs (PR-XNNs) and causal XNNs (C-XNNs). For most applications, QA-XNNs will also be used in conjunction with T-XNNs, unless the input features of the QA-XNN have already been processed by another separate system that has encoded semantic attributes and knowledge. Instance applications of QA-XNNs include automated chatbot systems, such as those for automating booking and assistance; interactive expert systems and search engine systems; and applications where further explanation of the reasons underlying a particular answer is required. The advantage of using a QA-XNN is the addition of the ability to answer questions about why the system gives a particular answer, thereby allowing for better human-machine interaction and a better understanding of the direct results. Feedback from this program can also be used in subsequent retraining and improvement programs to enable Q&A systems that utilize QA-XNN to improve their accuracy and usefulness to achieve a faster speedup than other systems that do not utilize explanations as part of their improvement and training pipeline.

[0131] Predictive and recursive XNNs (PR-XNNs) add one element of time and / or sequence to the input and output. These XNNs can match an input sequence and identify its trends, while simultaneously outputting and predicting possible outputs and explanations for each possible output. These XNNs can utilize recursion in the explanation and allow some explanations to reference themselves in a modular manner. Certain types of predictive architectures can lead to different variants of PR-XNNs, such as a Long Short-Term Memory (LSTM) PR-XNN or a gated recursive unit (GPU) PR-XNN.

[0132] PR-XNN adds background content location information to the conditional and prediction network of an XNN. If needed, this background content location information can also be incorporated into the output, depending on the specific application and implementation. The background content location information can also be added to the matched answer and explanation pairs, as it may be necessary to accurately distinguish the PR-XNN output as part of a sequence of output items rather than a single output item.

[0133] It is considered that PR-XNNs typically have some form of recursion in their prediction networks, and to a lesser extent, recursion is also required in conditional networks. The recursion is learned from the original predictor model during the PR-XNN initialization step. For example, if the original predictor model is an LSTM network, the recursion can reflect the behavior of the LSTM as part of the basic explanation given by PR-XNN.

[0134] It can be considered that a practical implementation will completely replace the original model. Therefore, in an example case, the LSTM model can be implemented as part of the prediction network of the PR-XNN; or alternatively, the original predictor can be placed before or after the input layer of an XNN. When the original predictor is placed before the input layer of an XNN, the resulting PR-XNN will treat the output of the original predictor as an input feature sequence, just like any other black-box predictor model that is generalized to a white-box XNN. When the original predictor model is placed after the input layer of an XNN, the resulting PR-XNN will have additional information to ensure that any explanatory coefficients are passed through the predictor model. For example, if an LSTM is placed between the input layer of an XNN and the conditional and prediction network, or if an LSTM is incorporated as part of the prediction network of an XNN, the LSTM model needs to pass explanatory coefficients to ensure that the resulting PR-XNN is still a white-box model. This innovative approach allows a PR-XNN to remain a white box, even if one of its predicted elements is actually a black box or a gray box, which is a mixture of white box elements and black box structures.

[0135] A PR-XNN can also incorporate an LSTM or similar model after its output layer, allowing the LSTM to learn to predict the explanation itself. It can be considered that a similar model (such as an RNN, transformer, Bayesian network, Markov model, and other suitable models) can be used instead of an LSTM. Combining an LSTM or other similar model with one of the PR-XNNs can result in efficient new systems that not only generate an explanation from a single data item and / or an ordered or unordered sequence of data items, but also predict possible explanations. This capability of PR-XNNs makes them particularly suitable for industrial applications that require anticipating the results of planned actions before their actual execution.

[0136] For example, in industrial robot manufacturing applications involving a robotic arm, predictive interpretation of a set of movement commands can be used to determine whether such movement commands will result in an unsafe condition for any human operator, living or inanimate equipment in the vicinity of the robotic arm. Therefore, PR-XNN can enable a new set of capabilities in industrial, commercial and non-commercial applications that allow safety to be part of the control loop of automated machinery, equipment and systems.

[0137] Another example of the practical implementation and advantages of a PR-XNN is the prediction of the behavior and subsequent consequences of an autonomous vehicle (including, but not limited to, autonomous air, land, sea, underwater, and space indoor and outdoor vehicles). Using a PR-XNN, an autonomous driverless car can, for example, determine that, in one of its predicted future interpretations, a child or adult may be hit by the driverless car. When the safety control system in the driverless car can detect such predicted references, it can take appropriate safety-related measures, such as switching the car to a safer driving mode, slowing down, or activating a higher-resolution sensor to better analyze future possibilities before they actually occur. PR-XNN allows practical systems to operate automated machinery safely based on the prediction and forecasting of outcomes. The ability to ensure a safe operating mode for machinery and robots (especially machinery and robots that interact with humans) is a major unresolved issue that PR-XNN can largely address.

[0138] Video XNN (V-XNN) is a combination of CNN-XNN and PR-XNN, using a sequence of images (frames) to predict, anticipate, and interpret what might happen in future frames. This combination can be common enough to ensure that an explicit variant of the XNN is simplified by reusing best practices. Video XNN is not limited to 2D video. A 3D data stream processed by a CNN-XNN will enable the XNN to process and interpret 3D data (such as stereoscopic video, LiDAR data, RADAR, SONAR, and the like). V-XNN is typically incorporated into a CNN-XNN before the input of a PR-XNN, thus making the CNN-XNN a preprocessing step for the input to the PR-XNN. The output of the PR-XNN can also be incorporated into a feedback loop that returns to the CNN-XNN. Sensor data (such as 2D or 3D video) is typically fed into the CNN-XNN. Upon consideration, alternative configurations (such as a PR-XNN followed by a CNN-XNN and a subsequent second PR-XNN) can also be useful in one practical implementation of a V-XNN. V-XNNs can also be used to efficiently process non-visual data (e.g., stock price information or time series data), provided that one of the input information is defined as a sequence or order.

[0139] An example application of V-XNN is in medical devices performing continuous scans of a patient, such as during the operation of fluoroscopy equipment involving continuous X-ray scanning of a patient during a surgeon's procedure. In this situation, V-XNN can provide the surgeon with near-immediate feedback and interpretation of any diagnosis, which is especially important in time-sensitive situations such as a surgical procedure. Another example application of V-XNN is during troubleshooting of industrial machinery, where continuous scanning is performed and anomalies need to be detected. Subsequent intervention and troubleshooting steps will force the system to adapt its answers and interpretations to the new situation, and the resulting interpretations make V-XNN a more suitable solution than other solutions that do not provide an explanation.

[0140] It can be considered that V-XNN can be combined with other XNN variants (such as a QA-XNN) to implement interactive solutions that require context awareness and interventions and actions that affect the physical world, thereby enabling the system to adapt to changing circumstances while maintaining its ability to explain itself. Combining this system with a PR-XNN also gives it a certain degree of future-predicting ability, thus giving it useful capabilities beyond the scope of current black-box neural network-based systems.

[0141] Interpretable Generative Adversarial Networks (XGANs) extend the XNN architecture concept to generative adversarial networks (GANs) that enable interpretation to be generated, processed, and incorporated into the encoding and decoding processes. XGANs utilize XNNs instead of standard neural networks, thereby introducing interpretability into both the generator and the discriminator. An XGAN utilizes an XNN in either the generator or the discriminator, or in both parts of a GAN system. An advantage of an XGAN over a standard GAN is that the interpretable information present in an XNN becomes available in a generative adversarial system, allowing the XGAN to perform more complex behaviors than a standard GAN can. For example, in an XGAN application attempting to effectively detect anomalies by generating potential instances of anomalous situations over a telecommunications network, the discriminator can use the interpretation to more effectively distinguish between true and false alarms compared to a situation where no interpretation is available.

[0142] A reinforcement learning (RL) training method can utilize XNN to create an interpretable reinforcement learning model (XRL). XRL can be included in the action plan and world model components of the RL system to generate interpretations. XRL can use the interpretations themselves as part of cost and reward functions. XRL can be extended to the entire category of agent-environment interactions, such as those based on Markov decision procedures, game theory, and partially observable Markov decision procedures. XRL can use interpretive information as part of feedback, error, reward, cost, state space, action space, etc. Indicative applications of XRL will be in robotics, where XRL can use interpretive information to anticipate safety issues and minimize or prevent unsafe operating modes; in vehicle traffic control, XRL can use interpretations of anticipated vehicle behavior to ensure better flow and throughput and more effectively anticipate potential risks of accidents and bottlenecks, and can also be extended to a hybrid of human and autonomous vehicle traffic; in resource logistics and planning, XRL can use interpretations of the actions of various agents involved in (e.g.) a warehouse to optimize the behavior of autonomous driving systems (such as autonomous forklifts). In such situations, interpreting information can be crucial to avoid erroneous or potentially illogical actions by automated systems that would lead to mistakes humans would never normally make (e.g., attempting to pack a box, which accidentally falls to the floor, and no attempt is made to pick it up again). Faced with such an interpretation, XRL would modify its action plan to include a sequence of commands to re-attempt picking up the box before proceeding with the remainder of the plan, thereby altering the cost analysis in the process to accurately reflect changes in the global situation.

[0143] Explainable autoencoders (XAEs) and autodecoders (XADs) extend the XNN architecture concept to autoencoders and autodecoders. Therefore, explanations can be generated, processed, and incorporated into the encoding and decoding processes. An XAE or XAD system can utilize XNN explanation outputs as part of its autoencoder or autodecoder processing pipeline, thereby giving the system additional capabilities beyond a standard autoencoder (AE) or autodecoder (AD) system. For example, an XAE system can utilize explanations to perform more efficient dimensionality reduction and generalization of an input data stream by considering the similarity of explanations. Other potential XAE / XAD applications include information retrieval, where explanations allow for better vectorization of database entries for efficient indexing; anomaly detection, where explanations are used to better detect anomalies from non-anomalies; and drug development systems, where XAE / XAD-based methods benefit from explanations that explain why predicting a particular drug molecule is more effective than other drug molecules.

[0144] Causal XNN (C-XNN) extends XNN to integrate XNN with a causal logic model, thereby enabling the causal logic model to provide causal explanations for the XNN. C-XNN can be incorporated into a causal logic model as part of the prediction network within an XNN. Alternatively, the outputs of the XNN and / or C-XNN can also be incorporated as part of the inputs to a causal logic model to form another variant of C-XNN. C-XNN can also utilize a causal logic model to generate explanations that make causal relationships effective, providing explanations beyond a simple description of a particular case to reveal a range of new explanations for a series of causal cases and causes. C-XNN can also generate explanations that have both a what-if and a what-if-not nature. For example, a C-XNN can be used to generate a medical diagnosis of a particular condition and also explain the causal relationship of that diagnosis. Using the if-then-otherwise capability of causal logic, the resulting explanations can cover not only what the system has detected, but also the reasons that exclude other potential symptoms or diagnoses.

[0145] It can be considered that a C-XNN can be combined with an XRL system to produce a system that can anticipate and act in a physical (or simulated) world, providing automatic input to the XRL simulation system to explain itself and further improve the overall performance of the combined system. For example, a combined C-XNN and XRL system can be used in the aforementioned warehouse application to detect a specific type of box continuously falling from a forklift. The C-XNN is then used to provide the correct parameters to simulate different changes in the correct amount or procedural command for increasing or decreasing pressure to pick up this specific type of box, and the simulation results are then used to update the XRL system. Real-world feedback from the next similar case encountered will then lead to further iterative improvements, much like how humans learn from real-life experiences. The combination of C-XNN and XRL allows the system to explain itself, learn self-explanatory and overriding causal models, and then automatically adapt with little or no supervision.

[0146] All of the above variants of XNN remain compatible with the general XNN architecture, meaning that they can be mixed and matched in various combinations as part of a larger and more complex XNN. For example, a C-XNN can be combined with a CNN-XNN or a V-XNN to provide causal explanations for an autonomous vehicle.

[0147] In one embodiment, a computer-implemented method for converting from a first system to an interpretable neural network includes performing the following steps on a processor: extracting one or more conditions from one or more partitions within the system; forming rules from the extracted conditions; summarizing the rules into one or more partitions; transforming one or more of the conditions; combining one or more of the extracted and transformed conditions and identifying one or more coefficients related to the conditions and partitions; generating linear or nonlinear equations from the coefficients, wherein the linear or nonlinear equations are local models; converting an architecture formed by the generated linear or nonlinear equations into a logically equivalent architecture based on a predefined transformation algorithm, the logically equivalent architecture corresponding to an interpretable neural network having at least one difference in density, sparsity, and structure from the logically equivalent architecture; and maintaining the complete information and functionality of the first system during the conversion to the logically equivalent architecture for obtaining the converted interpretable neural network.

[0148] As an option, the transformation includes the following steps: adding one or more additional features to the system; multiplying such additional features by one or more coefficient weights of zero; repeating the step of adding one or more additional features until one of the predictive networks of the interpretable neural network is fully connected.

[0149] As another option, the neural network is further implemented on a graphics processing unit.

[0150] As another option, it further includes improving one of the rule sets generated by the coefficient weights via at least one gradient descent technique.

[0151] As another option, the at least one gradient descent technique includes a backpropagation method, a Newton method, a Broyden–Fletcher–Goldfarb–Shanno method, a back-and-forth method, a stochastic gradient descent method, a fast gradient method, an optimal gradient method, a fast proximal gradient method, and a quantum annealing method.

[0152] As another option, this can explain the neural network system as a dense neural network.

[0153] As another option, it further includes acquiring knowledge via a model induction method and identifying one or more additional features based on the acquired knowledge; if necessary, a reinforcement learning type is incorporated into or directly applied to the acquired knowledge together with the acquired knowledge and the reinforcement learning type is followed by a gradient descent implementation that incrementally improves the interpretable neural network, wherein the improved interpretable neural network maintains an incremental improvement over previous iterations for each increment or iteration.

[0154] As another option, it further includes: receiving human knowledge and identifying the one or more additional features based on the human knowledge, wherein the received human knowledge is incorporated as an identifiable feature in the absence of a training step or training data.

[0155] As another option, the human knowledge is represented as a rule in a logic-based format, wherein the transformation further includes directly combining the rule with a plurality of rules formed by the extracted conditions.

[0156] As another option, the conversion includes the following steps: identifying one or more zero-valued coefficients; and eliminating the one or more zero-valued coefficients.

[0157] As another option, the neural network is further implemented on at least one hardware circuit system, the at least one hardware circuit system including a flexible architecture, a programmable architecture, an application of an integrated circuit system, a relatively static or low-power architecture, a neuromorphic architecture suitable for implementing a connection mechanism model, and an architecture suitable for quantum computing implementation or quantum computing hardware.

[0158] As another option, it further includes: receiving human knowledge and identifying the one or more zero-value coefficients based on the human knowledge.

[0159] As another option, the system is a dense neural network.

[0160] As another option, the interpretable neural network is a sparse neural network or a dense neural network, wherein the sparse neural network and the dense neural network are configured to be implemented on low-power hardware.

[0161] As another option, the conversion includes the following steps: implementing one or more local models in a micro neural network, wherein each micro neural network is self-contained; and summing the plurality of micro neural networks to form a global model.

[0162] As another option, it further includes training each of the plurality of miniature neural networks independently.

[0163] As another option, the plurality of miniature neural networks includes at least one of a sparse neural network and a dense neural network.

[0164] In another embodiment, there is a system for providing an interpretable neural network, comprising: a plurality of micro-neural networks, wherein each micro-neural network is configured to interface with another micro-neural network, wherein one of the outputs of each of the plurality of micro-neural networks is interpretable by at least one of the plurality of micro-neural networks, and wherein each of the plurality of micro-neural networks includes a local model.

[0165] In one option of the system, each of the plurality of miniature neural networks is implemented independently on a low-power hardware resource.

[0166] In another option of the system, the plurality of miniature neural networks are deployed on quantum processing hardware.

[0167] In another option of the system, each of the plurality of micro neural networks can be configured to a user-defined precision level.

[0168] In another option of the system, each of the plurality of miniature neural networks is trained independently.

[0169] In another option of the system, the plurality of miniature neural networks includes at least one of a dense neural network and a sparse neural network.

[0170] In another option of the system, at least one of the plurality of micro-neural networks includes one or more of the following: a conditional layer configured to model input features based on one or more partitions, wherein each of the one or more partitions includes a rule; a summarizing layer configured to summarize one or more rules into one or more of the partitions; and a switching output layer configured to selectively share the summarized partitions from the summarizing layer with the remaining partitions from the conditional layer; a feature generation and transformation network including a summarizing layer... The input features are configured to apply one or more transformations to one or more transformation neurons; a fitting layer configured to combine features generated by the feature and transformed by the network to identify one or more coefficients related to one or more features and at least one or more partitions; a value output layer configured to output a value related to one or more features and at least one of the one or more partitions as applied to the one or more coefficients; and an output layer configured to present the output that can be interpreted and explained by at least one machine program or a human.

[0171] In another option of the system, a miniature neural network forms a conditional network, which includes the conditional layer, the summarizing layer and the switching output layer.

[0172] In another option of the system, a miniature neural network forms a prediction network, which includes the feature generation and transformation network, the fitting layer and the value output layer.

[0173] In another option of the system, the prediction network is one or both of a sparse neural network and a uniform dense neural network.

[0174] In another option of the system, one or both of the sparse neural network and the dense neural network are configured to be processed at low power or configured to be implemented on low power hardware.

[0175] In another option of the system, an excitation path comprising one combination of micro-neural networks is further included to generate the output recognized and presented by the output layer.

[0176] In another embodiment, there is a system for converting from a first system to an interpretable neural network, comprising a processor configured to perform one of the following steps: extracting one or more conditions from one or more partitions within the system; forming rules from the extracted conditions; summarizing the rules into one or more partitions; transforming one or more of the conditions; combining one or more of the extracted and transformed conditions and identifying one or more coefficients related to the conditions and partitions; generating linear or nonlinear equations from the coefficients, wherein the linear or nonlinear equations are local models; converting an architecture formed by the generated linear or nonlinear equations into a logically equivalent architecture corresponding to the interpretable neural network having at least different densities based on a predefined transformation algorithm; and maintaining the information and functionality of the first system during the conversion to the logically equivalent architecture for obtaining the converted interpretable neural network.

[0177] As one of the options for any state of the method or system, each of the micro-neural networks has a different level of precision or quantization.

[0178] As another option for any state of the method or system, the micro neural network is configured to operate in a low-power environment.

[0179] As another option for any state of the method or system, the micro neural network is configured to be implemented on quantum processing hardware.

[0180] As another option for any form of method or system, the interpretable neural network or the transformed interpretable neural network is configured to selectively delete such rules or rule sets in order to comply with at least one privacy regulation.

[0181] As another option for any form of method or system, the transformed interpretable neural network includes one or more neural network variants.

[0182] As another option for any of the methods or systems, the one or more neural network variants include a convolutional neural network, a recurrent neural network, a text neural network suitable for natural language processing, a video neural network, a generative adversarial network, a generalized neural network, a neural network compatible with reinforcement learning, a neural network suitable for processing temporal or sequential data, a speech neural network, a hybrid neural network, and a neural network compatible with one or more graphics or a graphics neural network.

[0183] As another option for any form of method or system, wherein the one or more neural network variants are adapted for quantification or use.

[0184] In another embodiment, there is a computing device for converting a system into an interpretable neural network, the device comprising: at least one processor; and at least one memory for storing computer-readable instructions, which, when executed by the one or more processors, cause the device to: extract one or more conditions from one or more partitions within the system; form rules from the extracted conditions; summarize the rules into one or more partitions; transform one or more of the conditions; combine one or more of the extracted and transformed conditions; and identify the conditions. And one or more coefficients related to partitioning; generate linear or nonlinear equations from such coefficients, wherein such linear or nonlinear equations are local models; transform an architecture formed by such linear or nonlinear equations into a logically equivalent architecture based on a predefined transformation algorithm, the logically equivalent architecture corresponding to the interpretable neural network having at least one difference in density, sparsity and structure from the logically equivalent architecture; and maintain the information and functionality of the first system during the transformation to the logically equivalent architecture for obtaining the transformed interpretable neural network.

[0185] As an option, the interpretable neural network further includes a plurality of micro-neural networks representing the local models aggregated to form a global model and including the local models, wherein each of the plurality of micro-neural networks is configured to interface with at least one other micro-neural network of the plurality of micro-neural networks.

[0186] As another option, each of the plurality of micro-neural networks is configured to provide an output that can be interpreted by at least one of the plurality of micro-neural networks.

[0187] As another option, it further includes: an interface for displaying one or a combined output of the transformed interpretable neural network in relation to the plurality of miniature neural networks.

[0188] As another option, the plurality of micro-neural networks includes: a conditional layer configured to model input features based on one or more partitions, each of the one or more partitions including a rule; a summarizing layer configured to summarize one or more rules into one or more of the partitions; and a switching output layer configured to selectively share the summarized partitions from the summarizing layer with the remaining partitions from the conditional layer; and a feature generation and transformation network configured to apply one or more rules to the input features. One or more transform neurons; a fitting layer configured to combine features generated by the feature and transformed by the feature to identify one or more coefficients related to one or more features and at least one or more partitions; a value output layer configured to output a value related to one or more features and at least one of the identified one or more coefficients and one or more partitions; and an output layer configured to present the output to an interface, wherein the output can be interpreted and explained by at least one machine program or a human.

[0189] As another option, the device is adapted to operate at low power or to be deployed in a quantum processing environment.

[0190] As another option, the plurality of miniature neural networks further includes: an input layer configured to receive an input via an interface at a precision level defined by a user.

[0191] As another option, the plurality of miniature neural networks includes at least one of a dense neural network and a sparse neural network.

[0192] As another option, the predefined transformation algorithm is configured to transform the system to the interpretable neural network by: adding one or more additional features to the system; identifying one or more zero-valued coefficients corresponding to the added one or more additional features; multiplying the additional features by zero weights of the identified one or more coefficients; and iterating the above steps until at least one prediction network of the interpretable neural network is fully connected.

[0193] As another option, the predefined transformation algorithm is further configured to: eliminate one or more zero-value coefficients based on the sparsity of the interpretable neural network.

[0194] As another option, the device is further configured to apply an iterative optimization algorithm based on the weights of one or more coefficients of zero to improve a set of rules.

[0195] As another option, the iterative optimization algorithm includes a gradient descent technique, wherein the gradient descent technique is applied to the rule set in the form of backpropagation.

[0196] As another option, the weight of one or more coefficients is identified based on external knowledge provided by a user.

[0197] As another option, the one or more micro-neural networks are transformed from the local model such that each of the one or more micro-neural networks is self-constrained.

[0198] As another option, the one or more micro-neural networks are configured to be trained independently of each other.

[0199] As another option, the system is a dense neural network and the interpretable neural network is a sparse neural network.

[0200] As another option, the device is implemented on at least one or a combination of the following: a graphics processing unit, a central processing unit, a low-power computing unit, and a quantum computing unit.

[0201] As another option, the transformation from the generated linear or nonlinear equations to the logical equivalent architecture provides information transferred to the logical equivalent architecture and from the generated linear or nonlinear equations, and / or a complete transformation of the functionality associated with the generated linear or nonlinear equations, or a lossless transformation in which no loss is made to the information and / or the functionality.

[0202] The foregoing description and accompanying drawings illustrate the principles, preferred embodiments, and operating modes of the present invention. However, the present invention should not be construed as limited to the specific embodiments discussed above. Those skilled in the art will recognize additional variations to the embodiments discussed above (e.g., features associated with a particular configuration of the invention may alternatively be associated with any other configuration of the invention as needed).

[0203] Therefore, the above embodiments should be considered illustrative rather than restrictive. It should be understood that those skilled in the art can make changes to these embodiments without departing from the scope of the invention as defined by the following claims. [Simplified Explanation of the Diagram]

[0026] The advantages of the embodiments of the present invention will become clear from the following detailed description of exemplary embodiments thereof, which should be considered in conjunction with the accompanying drawings, in which the same numbers indicate the same elements, wherein:

[0027] Figure 1 is an exemplary embodiment of a schematic flowchart illustrating the interchangeability between the formats of a model based on XAI rules and XNN variants.

[0028] Figure 2 is an example schematic flowchart of an XNN architecture with an embedded rule.

[0029] Figure 3A is an example diagram illustrating a linear function that can be executed by a neural network.

[0030] Figure 3B is an example diagram demonstrating a logic function that can be executed by a neural network.

[0031] Figure 4 is an example diagram illustrating the architecture of a local linear model for an example XNN.

[0032] Figure 5 is an example illustration of the transformation of features.

[0033] Figure 6 is an example of a conditional network architecture of an example XNN.

[0034] Figure 7 illustrates an example network of a result output layer architecture.

[0035] Figure 8 illustrates an example network of a consistent dense XNN architecture.

[0036] Figure 9 illustrates an example network of a sparse XNN architecture.

[0037] Figure 10 is an illustrative comparison of a dense XNN architecture and a sparse XNN architecture.

[0038] Figure 11 is an example set of value networks used for micro XNN.

[0039] Figure 12 is an exemplary flowchart of one of the combined micro XNN architectures.

[0040] Figure 13 is an exemplary embodiment of a schematic flowchart illustrating one of the conversions between XNN variants and XAI models.

[0041] Figure 14 is an exemplary embodiment of a high-order XNN architecture.

[0042] Figure 15 is an example of inductive reasoning.

[0043] Figure 16 is a higher-order induction method.

Claims

1. A computer-implemented method for converting from a first system to an interpretable neural network, comprising performing the following steps on a processor: extracting one or more conditions from one or more partitions within the system; forming rules from the extracted conditions; summarizing the rules into one or more partitions; transforming one or more of the conditions; combining the extracted and transformed conditions and identifying one or more coefficients related to the conditions and partitions; generating linear or nonlinear equations from the coefficients, wherein the linear or nonlinear equations are local models; converting an architecture formed by the generated linear or nonlinear equations into a logically equivalent architecture based on a predefined transformation algorithm, the logically equivalent architecture corresponding to an interpretable neural network having at least one difference in density, sparsity, and structure from the logically equivalent architecture; and maintaining the complete information and functionality of the first system during the conversion to the logically equivalent architecture for obtaining the converted interpretable neural network.

2. The method of Request 1, wherein the transformation comprises the following steps: adding one or more additional features to the system; multiplying such additional features by one or more coefficient weights of zero; repeating the step of adding one or more additional features until one of the predictive networks of the interpretable neural network is fully connected.

3. The method of claim 1 or 2, further comprising implementing the neural network on a graphics processing unit.

4. The method of claim 1 or 2, further comprising improving a rule set generated by the coefficient weights via at least one gradient descent technique.

5. The method of claim 4, wherein the at least one gradient descent technique comprises a backpropagation method, a Newton method, a Broyden–Fletcher–Goldfarb–Shanno method, a back-and-forth method, a stochastic gradient descent method, a fast gradient method, an optimal gradient method, a fast proximal gradient method, and a quantum annealing method.

6. The method of claim 2, wherein the interpretable neural network is a dense neural network.

7. The method of claim 1 or 2, further comprising acquiring knowledge via a model induction and identifying one or more additional features based on the acquired knowledge; where necessary, a reinforcement learning type is incorporated into or directly applied to the acquired knowledge along with the acquired knowledge and the reinforcement learning type is followed by a gradient descent implementation that incrementally improves the interpretable neural network, wherein the improved interpretable neural network maintains an incremental improvement over previous iterations for each incremental iteration.

8. The method of claim 2, further comprising: Receive human knowledge and identify one or more additional features based on that human knowledge, wherein the received human knowledge is incorporated as an identifiable feature in the absence of a training step or training data.

9. The method of claim 8, wherein the human knowledge is represented as a rule in a logic-based format, and wherein the transformation further includes directly combining the rule with a plurality of rules formed by the extracted conditions.

10. The method of claim 1 or 2, wherein the transformation includes the steps of: identifying one or more zero-valued coefficients; and eliminating the one or more zero-valued coefficients.

11. The method of claim 10, further comprising implementing the neural network on at least one hardware circuit system, the at least one hardware circuit system including a flexible architecture, a programmable architecture, an application of an integrated circuit system, a relatively static or low-power architecture, a neuromorphic architecture suitable for implementing a connectivity mechanism model, and an architecture suitable for quantum computing implementation or quantum computing hardware.

12. The method of claim 10, further comprising: Receive human knowledge and identify one or more zero-value coefficients based on that human knowledge.

13. The method of claim 10, wherein the system is a dense neural network.

14. The method of claim 10, wherein the interpretable neural network is a sparse neural network or a dense neural network, wherein the sparse neural network and the dense neural network are configured to be implemented on low-power hardware.

15. The method of claim 1 or 2, wherein the transformation comprises the following steps: implementing one or more local models in a micro-neural network, wherein each micro-neural network is self-contained; and summing the plurality of micro-neural networks to form a global model.

16. The method of claim 15, further comprising training each of the plurality of miniature neural networks independently.

17. The method of claim 15, wherein the plurality of miniature neural networks includes at least one of a sparse neural network and a uniform dense neural network.

18. A system for providing an interpretable neural network, comprising: A plurality of micro-neural networks, wherein each micro-neural network is configured to interface with another micro-neural network, wherein one of the outputs of each of the plurality of micro-neural networks can be interpreted by at least one of the plurality of micro-neural networks, and wherein each of the plurality of micro-neural networks includes a local model.

19. The system of claim 18, wherein each of the plurality of miniature neural networks is implemented independently on a low-power hardware resource.

20. The system of claim 18 or 19, wherein the plurality of miniature neural networks are deployed on quantum processing hardware.

21. The system of request item 18 or 19, wherein each of the plurality of micro neural networks can be configured to a user-defined precision level.

22. The system of claim 18 or 19, wherein each of the plurality of miniature neural networks is trained independently.

23. The system of claim 18 or 19, wherein the plurality of miniature neural networks includes at least one of a dense neural network and a sparse neural network.

24. The system of claim 18 or 19, wherein at least one of the plurality of micro-neural networks comprises one or more of the following: a conditional layer configured to model input features based on one or more partitions, wherein each of the one or more partitions includes a rule; a summarizing layer configured to summarize one or more rules into one or more of the partitions; and a switching output layer configured to selectively share the summarized partitions from the summarizing layer with the remaining partitions from the conditional layer; and a feature generation and transformation network comprising one or more transform neurons configured to apply one or more transformations to the input features. A fitting layer configured to combine features generated and transformed by the feature to identify one or more coefficients related to at least one of one or more features and one or more partitions; a value output layer configured to output a value related to at least one of one or more features and one or more partitions as applied to the one or more coefficients; and an output layer configured to present the output that can be interpreted and explained by at least one of a machine program or a human.

25. The system of claim 24, wherein a micro neural network forms a conditional network, the conditional network including the conditional layer, the aggregation layer and the switching output layer.

26. The system of claim 24, wherein a miniature neural network forms a prediction network, the prediction network including the feature generation and transformation network, the fitting layer and the value output layer.

27. The system of claim 26, wherein the prediction network is one or both of a sparse neural network and a uniform dense neural network.

28. The system of claim 27, wherein one or both of the sparse neural network and the dense neural network are configured to be processed at low power or configured to be implemented on low-power hardware.

29. The system of claim 18 or 19 further includes an activation path comprising a combination of micro-neural networks that is activated to generate the output to be recognized and presented by the output layer.

30. The system of claim 18 or 19, wherein each of the micro-neural networks has a different level of precision or quantization.

31. The system of claim 30, wherein the micro neural network is configured to operate in a low-power environment.

32. The system of claim 30, wherein the micro neural network is configured to be implemented on quantum processing hardware.

33. The system of request 18 or 19, wherein the interpretable neural network or the transformed interpretable neural network is configured to selectively delete such rules or rule sets in order to comply with at least one privacy regulation.

34. The system of claim 33, wherein the transformed interpretable neural network includes one or more neural network variants.

35. The system of claim 34, wherein the one or more neural network variants include a convolutional neural network, a recurrent neural network, a text neural network suitable for natural language processing, a video neural network, a generative adversarial network, a generalized neural network, a neural network compatible with reinforcement learning, a neural network suitable for processing temporal or sequential data, a speech neural network, a hybrid neural network, and a neural network compatible with one or more graphics or a graphics neural network.

36. The system of claim 34, wherein the one or more neural network variants are adapted for quantification or use.

37. A system for converting from a first system to an interpretable neural network, comprising a processor configured to perform one of the following steps: extracting one or more conditions from one or more partitions within the system; forming rules from the extracted conditions; summarizing the rules into one or more partitions; transforming one or more of the conditions; combining the extracted and transformed conditions and identifying one or more coefficients related to the conditions and partitions; generating linear or nonlinear equations from the coefficients, wherein the linear or nonlinear equations are local models; converting an architecture formed by the generated linear or nonlinear equations into a logically equivalent architecture corresponding to the interpretable neural network having at least different densities based on a predefined conversion algorithm; and maintaining the information and functionality of the first system during the conversion to the logically equivalent architecture for obtaining the converted interpretable neural network.

38. A computing device for converting a system into an interpretable neural network, the device comprising: At least one processor; and at least one memory for storing computer-readable instructions, which, when executed by the one or more processors, cause the device to: extract one or more conditions from one or more partitions within the system; form rules from the extracted conditions; summarize the rules into one or more partitions; transform one or more of the conditions; combine one or more of the extracted and transformed conditions; identify one or more coefficients related to the conditions and partitions; generate linear or nonlinear equations from the coefficients, wherein the linear or nonlinear equations are local models; transform an architecture formed by the generated linear or nonlinear equations into a logically equivalent architecture based on a predefined transformation algorithm, the logically equivalent architecture corresponding to an interpretable neural network having at least one difference in density, sparsity, and structure from the logically equivalent architecture; and maintain the information and functionality of the first system during the transformation to the logically equivalent architecture for obtaining the transformed interpretable neural network.

39. The computing device of claim 38, wherein the interpretable neural network further includes a plurality of micro-neural networks representing local models aggregated to form a global model and including the local models, wherein each of the plurality of micro-neural networks is configured to interface with at least one other micro-neural network of the plurality of micro-neural networks.

40. The computing device of claim 39, wherein each of the plurality of micro-neural networks is configured to provide an output that can be interpreted by at least one of the plurality of micro-neural networks.

41. The computing device as claimed in claims 38 to 40, further comprising: An interface for displaying one or a combination of the outputs of the transformed interpretable neural network associated with the plurality of miniature neural networks.

42. A computing device as claimed in any of claims 38 to 40, wherein the plurality of miniature neural networks comprises: A conditional layer configured to model input features based on one or more partitions, each of the one or more partitions including a rule; a summarizing layer configured to summarize one or more rules into one or more of the partitions; and a switching output layer configured to selectively share the summarized partitions from the summarizing layer with the remaining partitions from the conditional layer; and a feature generation and transformation network including one or more transformation neurons configured to apply one or more transformations to the input features. A fitting layer configured to combine features generated and transformed by the feature to identify one or more coefficients related to at least one of one or more features and one or more partitions; a value output layer configured to output a value related to one or more features and at least one of one or more partitions as applied to the identified one or more coefficients; and an output layer configured to present the output to an interface, wherein the output can be interpreted and explained by at least one of a machine program or a human.

43. The computing device of any one of claims 38 to 40, wherein the device is adapted to operate at low power or to be deployed in a quantum processing environment.

44. The computing device of claim 39, wherein the plurality of miniature neural networks further comprises: An input layer is configured to receive an input via an interface at a precision level defined by a user.

45. The computing device of claim 39, wherein the plurality of miniature neural networks includes at least one of a dense neural network and a sparse neural network.

46. ​​A computing device as claimed in any of claims 38 to 40, wherein the predefined transformation algorithm is configured to transform the system to the interpretable neural network by: adding one or more additional features to the system; identifying one or more zero-valued coefficients corresponding to the added one or more additional features; multiplying the additional features by zero weights of the identified one or more coefficients; and iterating the above steps until at least one prediction network of the interpretable neural network is fully connected.

47. The computing device of any one of claims 38 to 40, wherein the predefined transformation algorithm is further configured to: eliminate the one or more zero-value coefficients based on the sparsity of the interpretable neural network.

48. The computing device of any one of requests 38 to 40, wherein the device is further configured to apply an iterative optimization algorithm based on the weights of one or more coefficients of zero to improve a rule set.

49. The computing apparatus of claim 48, wherein the iterative optimization algorithm includes a gradient descent technique, wherein the gradient descent technique is applied to the rule set in the form of backpropagation.

50. The computing device of any of claims 38 to 40, wherein the weight of one or more coefficients of zero is identified based on external knowledge provided by a user.

51. The computing device of claim 39, wherein the one or more micro-neural networks are transformed from the local model such that each of the one or more micro-neural networks is self-constrained.

52. The computing device of claim 39, wherein the one or more micro neural networks are configured to be trained independently of each other.

53. The computing device of any one of claims 38 to 40, wherein the system is a dense neural network and the interpretable neural network is a sparse neural network.

54. A computing device as claimed in any of claims 38 to 40, wherein the device is implemented on at least one or a combination of: a graphics processing unit, a central processing unit, a low-power computing unit, and a quantum computing unit.

55. A computing device as claimed in any of claims 38 to 40, wherein the transformation from the generated linear or nonlinear equations to the logical equivalent architecture provides information transferred to the logical equivalent architecture and from the generated linear or nonlinear equations, and / or a complete transformation of functionality associated with the generated linear or nonlinear equations, or a lossless transformation in which no loss is made to the information and / or the functionality.