Training dynamic hybrid artificial intelligence network

Through a dynamic hybrid network architecture and human-supervised training methods, the problems of deep neural networks being sensitive to perturbations and difficult to interpret nodes are solved, the sensitivity and interpretability of the network are improved, and the security and controllability of the AI ​​system are enhanced.

CN120677487APending Publication Date: 2025-09-19D5AI LLC
View PDF 16 Cites 0 Cited by

Patent Information

Application Number
CN202480012181.1
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Priority Date
2023-09-11
Filing Date
2024-01-24
Publication Date
2025-09-19

AI Technical Summary

Technical Problem

Deep neural networks are sensitive to tiny adversarial perturbations, and their internal nodes are difficult to interpret, resulting in high error rates, lack of common sense and overall explainability, and affecting the reliability and security of AI systems.

Method used

A dynamic hybrid network architecture, including units and cells, is adopted, trained with piecewise constant activation function and incremental growth, combined with human team supervision to avoid classification errors and improve network robustness and interpretability.

Benefits of technology

It enhances the sensitivity of neural networks, reduces vulnerability to adversarial attacks, improves the interpretability of internal nodes and overall reliability, supports continuous training and customization, and enhances the security and controllability of AI systems.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120677487A_ABST
    Figure CN120677487A_ABST
Patent Text Reader

Abstract

Computer-implemented methods and systems dynamically train a machine learning network from a base system. Calculating the learning parameters of the network includes, for at least a first portion of the machine learning network, back propagation through the machine learning network. For a first portion of the machine learning network, back propagation includes calculating a derivative of the learning parameter relative to a loss function. The method further includes performing a sensitivity level assessment, the assessment including determining whether the machine learning network produces an imperceptible result according to a sensitivity criterion. The method further includes, in response to determining that the machine learning network produces an imperceptible result in the sensitivity level evaluation of the machine learning network, making one or more sensitivity-enhancing modifications such that the one or more sensitivity-enhancing modifications make the machine learning network less susceptible to the imperceptible result.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] CROSS-REFERENCE TO RELATED APPLICATIONS

[0002] This patent application claims the benefit of priority from the following U.S. provisional patent application, the entire contents of which are incorporated herein by reference:

[0003] (1) filed January 26, 2023, serial number 63 / 481,697, entitled “Training Dynamic Hybrid AI Networks”; (2) filed May 22, 2023, serial number 63 / 468,145, entitled “Training Human-Guided Hybrid AI Networks”; (3) filed July 28, 2023, serial number 63 / 529,563, entitled “Explainable Adaptable Artificial Intelligence Networks”; and (4) filed September 11, 2023, serial number 63 / 537,671, entitled “Explainable Adaptable Artificial Intelligence Networks”. Background Art

[0004] Deep neural networks have achieved remarkable success in recent years. However, fundamental issues remain, such as sensitivity to small adversarial perturbations in the data and the difficulty of interpreting the internal nodes of large networks. Sensitivity to small adversarial perturbations can cause deep neural network classifiers to make errors that no sensible entity would make. The difficulty of fully interpreting internal nodes in context can make it difficult to fully trust the decisions and actions of AI systems based on such networks. As society becomes increasingly reliant on AI systems that use deep neural networks, the dangers posed by these issues could become significant.

[0005] Although deep learning, which uses large deep neural networks, is one of the most successful techniques in artificial intelligence, the size and complexity of large deep networks can make it very difficult to understand their inner workings and detect and diagnose any problems. Furthermore, the design and training techniques of neural networks make large neural networks prone to making mistakes that no sensible human would make. Deep neural networks are typically trained using a process called gradient descent, in which a computer system applies the chain rule of calculus to backpropagate the derivative of an objective, such as a measure of the divergence of the penalized error, for each item of training data. Adversarial attacks can exploit gradient descent to discover small adversarial perturbations that cause a deep neural network classifier to make mistakes. Designing a network trained using gradient descent makes the network vulnerable to gradient descent-based adversarial attacks and other sources of small perturbations.

[0006] Errors caused by such small perturbations exemplify a system's lack of sensitivity. That is, the system might make mistakes that a sensible person wouldn't. More generally, deep neural networks lack common sense. Furthermore, the complexity of large neural networks makes it difficult for humans to understand the details of the training process, let alone contribute common sense. As AI systems become more capable and take on a wider range of tasks, this lack of common sense will become an increasing danger. Once AI systems take over the task of designing the next generation of AI systems without human understanding and control, incorporating sensitivity and common sense will become increasingly difficult. As AI systems control more aspects of human life, the consequences of their mistakes could be catastrophic.

[0007] The difficulty in understanding the internal nodes of neural networks is primarily due to the sheer size and depth of the networks, and the fact that the training routines do not teach the internal nodes to represent concepts that can be expressed in human language. This lack of sensitivity and overall interpretability is largely a consequence of the methods used to train deep neural networks. Summary of the Invention

[0008] In one general aspect, the present invention proposes the concept of dynamic hybrid networks, a generalization of the concept of neural networks. Hybrid training methods offer an alternative to training networks solely through gradient descent. The architecture of the hybrid network includes new elements, called units and cells, as well as neural network nodes. The training techniques for dynamic hybrid networks support training architectures that are robust to perturbations in the input data. The system supports a variety of methods for training elements, such as piecewise constant activation functions, including linear threshold functions. Training supports incremental growth of the network and continuous training during deployment. The configuration of the hybrid network is dynamic and can be changed and customized after receiving specific input data items. Techniques are included to train the system to avoid classification errors that violate sensitivity, including errors caused by adversarial attacks. The hybrid model and training techniques also help interpret internal elements in the context of surrounding elements and the rest of the network. The system supports the supervision of the training process through collaboration between a human team and one or more AI systems trained in supervised hybrid network training. These and other benefits of dynamic hybrid networks will become apparent from the following description. BRIEF DESCRIPTION OF THE DRAWINGS

[0009] Various embodiments of the present invention are described in conjunction with the following drawings.

[0010] Figure 1 is a flow chart of an illustrative embodiment of the present invention.

[0011] Figure 2 is a flow chart of an illustrative embodiment of a process for enhancing base sensitivity in one aspect of the present invention.

[0012] Figure 3A is a schematic diagram of a mixing unit in an exemplary embodiment of the present invention.

[0013] Figure 3B is a schematic diagram of one aspect of the present invention, referred to as active defense.

[0014] Figure 3C is a schematic diagram of an alternative derivative function used in one aspect of the present invention.

[0015] Figure 4 is a schematic diagram of the hierarchy of techniques for improving sensitivity.

[0016] Figure 5 is a schematic diagram of an embodiment of aspects of hybrid training organized by stages of the training process.

[0017] Figure 6 is a flow chart of an illustrative embodiment of constrained optimization during training.

[0018] Figure 7 is a flow chart of an illustrative embodiment of hidden state space modeling in one aspect of the present invention.

[0019] Figure 8 is a flow chart of an exemplary embodiment of a reasonable classification operation using a trained hybrid network and fast matching.

[0020] Figure 9 is a schematic diagram of an autoencoder used in one aspect of the present invention.

[0021] Figure 10 is a schematic diagram of an illustrative embodiment of a robust template model used in one aspect of the present invention.

[0022] Figure 11 Included are flow charts of exemplary embodiments of training data exclusion and data delegation in accordance with aspects of the present invention.

[0023] Figure 12 is a flow chart of an illustrative embodiment of training an alignment model in accordance with one aspect of the present invention.

[0024] Figure 13 is a flow chart of an illustrative embodiment of one aspect of the present invention, referred to as "conditional hybrid training."

[0025] Figure 14 is a schematic diagram of an illustrative embodiment of one aspect of the present invention for data space conversion or translation.

[0026] Figure 15 is a flow chart of an illustrative embodiment of one aspect of the present invention using regression of counts in histogram bins.

[0027] Figure 16 is a schematic diagram of a mixed network of units and cells.

[0028] Figure 17 is a schematic diagram of a multi-processor computer system that may be used to implement various aspects of the present invention.

[0029] Figure 18 is a flow chart of an illustrative embodiment of data example backpropagation in accordance with one aspect of the present invention.

[0030] Figure 19 is a flow chart of an exemplary embodiment of parallel or serial computation in a network of cells connected by data communication links.

[0031] Figure 20 is a flow chart of an illustrative embodiment of empirical training.

[0032] Figure 21 is a schematic diagram of an illustrative embodiment of aspects of the present invention, including one or more hybrid networked artificial intelligence systems implemented on a computer system 1700 collaborating with a team of one or more humans on a joint task.

[0033] Figure 21A It is a schematic diagram of a multi-layer feedforward neural network.

[0034] Figure 22 is a flow chart of an illustrative embodiment of training and using an image generation system with human guidance.

[0035] Figure 23 is a flow chart of an illustrative embodiment of a process for building and training an interactive, human-guided writer's assistant.

[0036] Figure 24 is a flow chart of an illustrative embodiment of a process for training selected nodes to make them more interpretable.

[0037] Figure 25 is a schematic diagram and flow chart of an illustrative embodiment of a process for replacing an attention block output node with a multi-node unit and training the nodes in the unit to be interpretable.

[0038] Figure 26 is a flow chart of an illustrative embodiment of a process referred to herein as "circuit training."

[0039] Figure 27 is a flow chart of an illustrative embodiment of a process for improving the security of a text generation system.

[0040] Figure 28 is a flow chart of an illustrative embodiment of a process for training a set of one or more nodes as a named set discriminator and for training and using an associated confidence estimator.

[0041] Figure 29 A flowchart illustrating an exemplary embodiment that aims to improve performance and interpretability through targeted systematic network growth.

[0042] Figure 30 It is a system diagram of a distributed system consisting of multiple autonomous modular cooperating subsystems.

[0043] Figure 31 is a flow chart of an illustrative embodiment of a process for training a system including one or more autonomous modular cooperating subsystems, such as Figure 30 In a preferred embodiment, the computer system 1700 can expand the system during initial training, and can continue to train and expand while the end user uses the system. During training, the computer system 1700 can expand the system with the goal of making it easier for human users to understand and control.

[0044] Figure 32is a flow diagram of an illustrative embodiment of a process by which computer system 1700 can efficiently train large language models with arbitrarily large numbers of trainable parameters, including transformer models and stochastic models.

[0045] Figure 33 is a system diagram of an illustrative embodiment of one aspect of the present invention, in which a computer system 1700 collaboratively uses different types of models to efficiently train and rapidly and incrementally grow one or more machine learning systems while improving performance, explainability, and control.

[0046] Figure 34 is a flow diagram of an illustrative embodiment of one aspect of the present invention involving user control and computer system 1700 tracking data and resources used during system training and use.

[0047] Figure 35 In some embodiments, the computer system 1700 may be configured as follows: Figure 30 and Figure 33 The system shown and / or Figure 31 、 Figure 32 、 Figure 36 、 Figure 37 、 Figure 38 and Figure 39 A flowchart of an illustrative embodiment of several optional procedures for use in the process shown.

[0048] Figure 36 is a flow chart of an illustrative embodiment of a collaborative process using different machine learning systems, such as Figure 33 As shown, the generation system is based on a large language model of the transformer.

[0049] Figure 37 is a flow chart of an illustrative embodiment of a process for building a large-scale text generation system based on an integrated hierarchy of conditional probability models and joint optimization combination networks. In some embodiments, the computer system 1700 can be implemented on a distributed computer system with multiple local computers. Figure 37 The process shown.

[0050] Figure 38 is a flow chart of an illustrative embodiment of one aspect of the present invention by which a computer system 1700 can expand the state space of a sequence of hidden Markov process modeling of text.

[0051] Figure 39 is a flow chart of an exemplary embodiment for incrementally building and training an arbitrarily large distributed AI system from individual components, each of which conforms to specific constraints on memory and / or compute.

[0052] Figure 40is a flow chart of an illustrative embodiment of text generation that can be used with a system that includes a stochastic process model.

[0053] Figure 41 is a flow chart of an illustrative embodiment of one aspect of the present invention, in which a neural network can be incrementally grown, or a hybrid network can be made, making copies of one or more components to improve the performance of the network or make the network easier to understand and control.

[0054] Figure 42 is a flow diagram of an exemplary embodiment of a computer system 1700 that selects nodes to split based on testing one or more criteria for potential improvements from various reasons and methods for splitting nodes.

[0055] Figure 43 is a flow diagram of an illustrative embodiment of one aspect of the present invention in which a computer system 1700 can manage the training, saving, and loading of certain types of conditional probability models.

[0056] Figure 44 is a diagram of an illustrative embodiment of one aspect of the present invention, in which a computer system 1700 can use combined networks, data-dependent regularized links, and selective backpropagation to decorrelate errors to jointly optimize the performance of a set of networks and train them differently from each other.

[0057] Figure 45 is a flow diagram of an illustrative embodiment in which a computer system 1700 can generate text using a combination of a transformer language model and a stochastic model, collaboration between AI language models, and explicit collaborative interaction between a human author and an AI system acting as an author assistant.

[0058] Figure 46 is a flow diagram of an illustrative embodiment of one aspect of the present invention, wherein in some embodiments, computer system 1700 can efficiently train a large neural network by first training smaller neural networks.

[0059] Figure 47 is a flow diagram of an illustrative embodiment of a process by which computer system 1700 may train a large language model.

[0060] Figure 48 is a flow diagram of an illustrative embodiment of a process by which computer system 1700 can generate text using a pre-trained large language model.

[0061] Figure 49 is a flow diagram of an illustrative embodiment of one aspect of the present invention in which a computer system 1700 trains a large language model including a hidden Markov process model.

[0062] Figure 50is a flow diagram of an illustrative embodiment of one aspect of the present invention in which a computer system 1700 incrementally increases the size of a converter by increasing the number of interest heads in a given layer of interest.

[0063] Figure 51 is a flow chart of an illustrative embodiment of one aspect of the present invention, which uses virtual gaming to train guardrails for a generative AI system and trains the system to detect guardrail violations.

[0064] Figure 52 is a flow diagram of an illustrative embodiment of the present invention in which a computer system 1700 trains a translation system using a multi-path chain of unidirectional translations, where each link in the chain translates from a source language to a target language.

[0065] Figure 53 is a flow diagram of an illustrative embodiment of one aspect of the present invention in which a computer system 1700 computes a robust composite transformation using a multi-path chain of pairwise language transformations.

[0066] Figure 54 is a flow chart of an illustrative embodiment of one aspect of the present invention in which a computer system 1700 can add nodes with linear threshold activation functions to a neural network or hybrid network and train the nodes using methods other than gradient descent.

[0067] Figure 55 is a flow chart of an illustrative embodiment of one aspect of the present invention, wherein, in some embodiments, a computer system 1700 can develop, grow, and train an interpretable large-scale language model generation AI system.

[0068] Figure 56 is a flow chart of an illustrative embodiment of a process for using an interpretable large-scale language model text generation system in an interactive deployment.

[0069] The process shown in the figure can be implemented in a multi-processor computer system 1700, such as Figure 17 In a preferred embodiment, the training and development of the system under development can be overseen by a collaborative effort of a human team of knowledge engineers and an AI system, referred to herein as a hybrid network learning management system (HNLMS). The AI ​​system in the HNLMS can also be implemented on a computer system such as computer system 1700. DETAILED DESCRIPTION

[0070] The following paragraphs provide definitions for discussing the figures.

[0071] Neural Network: A directed graph consisting of a set of nodes and a set of directed connections between ordered pairs of nodes. Typically, each connection has an associated learning parameter, called a weight. Typically, computer system 1700 multiplies the output of a connection's source node by the connection's weight to calculate a value that is provided as input to the connection's destination node. Figure 21A A feed-forward neural network with multiple hidden layers is shown.

[0072] Most of the discussion in this disclosure may involve non-recurrent neural networks whose graphs are directed acyclic graphs. However, computer system 1700 can make multiple copies of a recurrent neural network, where all connections that would create cycles are redirected to the next copy of the network. In this way, computer system 1700 can model a recurrent neural network as a large "unrolled" network of non-recurrent copies of the underlying network, so for practical purposes, there is no loss of generality in assuming that the graph of the neural network is a directed acyclic graph.

[0073] Computer system 1700 can also use this unfolding mechanism with hybrid networks. Furthermore, hybrid networks provide an additional method for training models of cyclic processes. For example, computer system 1700 can model cyclic processes using hidden state space models within hybrid network cells. In a hybrid network, cells can be connected using bidirectional data communication links. Data communication link networks may contain cycles.

[0074] Node: A node in a neural network. In hybrid networks, components are referred to as units and cells rather than nodes, except for internal neural nodes within a unit. Nodes within a unit can receive connections from nodes in other units and send connections to nodes in other units.

[0075] Unit: A unit is a generalization of a neural network node. A unit may have multiple output values ​​and multiple connections per output value. A unit can consist of multiple nodes and subunits. Units can also include special-purpose components called "cells" that are interconnected via data communication links rather than network connections. A unit can consist of either a single neural node or a single cell.

[0076] Cell: An element in a hybrid network that can store and transmit the value of a specified variable. Computer system 1700 can store and execute program code associated with a cell upon receiving data as network input or data sent from other cells. A cell can be associated with program code that computer system 1700 can execute when computing the network's activation and response to specified input data items.

[0077] Hybrid Network: A network composed of cells and connections, rather than neural nodes and connections. A hybrid network may also include cells and data communication links. Computer system 1700 can change and customize the configuration of a dynamic hybrid network upon receiving a data item to be classified.

[0078] Components of a neural node: A typical node in a neural network consists of two component operations: an affine summation and an activation function.

[0079] Affine Summation: In an affine summation operation at a neural node, the computer system 1700 computes a weighted sum of the input values ​​connected to the node plus a node-specific bias term.

[0080] Activation Function: In a typical neural node, the computer system 1700 computes a specified function of the affine sum. This function is called the "activation function" of the node. The value of the activation function for data item d is called the "activation" of the node for data item d. The output value of the node is the output of the activation function for data item d. Examples of activation functions include, but are not limited to, sigmoid, softmax, Tanh, and ReLU (Rectified Linear Unit) activation functions.

[0081] Implicit Error: When the computer system 1700 compares the activation of a node with respect to a specified threshold to the sign of the back-propagated derivative of the objective function, the computer system 1700 may determine that the activation function with the standard discriminator (in Figure 2 An error occurred on a particular data item at an internal node of (defined in block 203 of ).

[0082] Known Set: A known set is a set of data items for which computer system 1700 can determine with a specified degree of accuracy whether any particular data item is in the known set. For example, the set of training data items for any output class in a classification system is a known set. Any set of items that computer system 1700 can detect with a specified degree of accuracy based on the output values ​​of a node, cell, unit, or network that fall within a specified interval is a known set.

[0083] Named collections: Named collections are known collections of the computer system 1700 that have human-readable names. Typically, any collection of data items in any output category is a named collection. In some embodiments, humans can provide names for unnamed known collections.

[0084] Network Repository: A repository of previously trained nodes, cells, units, and networks that can be implemented by computer system 1700. In some embodiments, computer system 1700 can place trained networks or partially trained networks into the network repository. In some embodiments, computer system 1700 can place subnetworks that activate selected nodes, cells, or units into the network repository. In some embodiments, computer system 1700 can share some or all of the contents of its network repository with other computer systems.

[0085] Knowledge Engineering: Developing tools for analyzing data and computing useful functions and properties of data in a specific domain to facilitate the development of machine learning systems to classify data items in that domain.

[0086] Hybrid Network Learning Management System (HNLMS): A system in which a team of one or more humans collaborates with one or more AI systems. The human team and the AI ​​system guide the training of the hybrid network to improve the sensitivity and overall interpretability of the trained network, as well as its performance.

[0087] Detector: A node, unit, or cell with an output value that the computer system 1700 characterizes as attempting to have values ​​within a specified interval for data items that are in the target acceptance set, and values ​​that are not within the specified interval for data items that are not in the acceptance set. In some embodiments, the specified interval is a set of values ​​above a specified threshold. In some embodiments, the target acceptance set is known to the computer system 1700, such as the output nodes of a classifier used to supervise training data. The actual set of data items within the specified interval may be referred to as the "empirical acceptance set." Where the meaning is clear, the target acceptance set or the empirical acceptance set may be simply referred to as the "acceptance set." In some embodiments, the target acceptance set of a network element is not explicitly specified and is not a known set. In some embodiments where the acceptance set of a detector is not explicitly known, the computer system 1700 may temporarily empirically associate the output value with a known set.

[0088] Discriminator: A node, unit, or cell that has an output value that computer system 1700 characterizes as attempting to have a value within a first specified interval for data items in a first target acceptance set and a second specified interval for data items in a second target acceptance set. In some embodiments, computer system 1700 may not have a target interval for data items that are not in either acceptance set. In some embodiments, a cell may have additional output values ​​to characterize data items that are not in either target acceptance set.

[0089] Recall: In data retrieval or detection tasks, the score of a machine learning system that correctly retrieves or detects target data items from a specified set of data items divided by the total number of target data items in the specified set of data items.

[0090] Precision: In a data retrieval task or detection task, the score of the number of target data items correctly retrieved or detected by a machine learning system from a specified set of data items divided by the total number of data items (including false or incorrect items) in the specified set of data items detected or accepted by the machine learning system.

[0091] Association: The association of a specified known or named set with a dataset corresponding to a specified detector node, unit, or cell or node activation function interval, refers to determining that a specified detection meets the specified criteria of recall and / or precision for the specified known or named set.

[0092] Knowledge Sharing Links: Knowledge sharing links are links between ordered pairs of nodes, a reference node and a receiving node. The nodes can both be nodes in the same network or in two separate networks. Only the receiving network needs to be in the network currently being trained. If the nodes are in separate networks, it must be possible to activate both nodes on the same data item. For example, the two nodes may share a global or local input data space. In some embodiments, the computer system 1700 can compute a mapping from one data space to another. During training of the network that includes the receiving node, for a specified data item, if the activations of two nodes fail to satisfy a specified relationship, the computer system 1700 can apply a regularization penalty.

[0093] Relationships for Creative Commons Links: A common example relationship for Creative Commons links is the "equals" relationship. 参考 (data) and act 接收 The equality relationship between (data), the computer system 1700 can apply a regularization penalty,

[0094] α*|act 参考 (d)-act 接收 (d)|,

[0095] where α is a hyperparameter, such as that controlled by HNLMS. The hyperparameter α is called the "strength" of the knowledge-sharing link. HNLMS can also specify that regularization is applied only to specific data items. Knowledge-sharing links are not connections. For example, in an acyclic network, a link might go from a reference node at a higher level to a sink node at a lower level, which is not allowed in an acyclic network. Other common knowledge-sharing relations include less than, greater than, and not equal to. By convention, in asymmetric relations, the reference node is the first argument.

[0096] Greater than and less than inequality relationships are useful, for example, when sharing knowledge between two nodes where one node is associated with a known set that is a subset of a known set associated with the other node. For example, the set of horses is a subset of the set of equines, which is a subset of the set of mammals, which is a subset of the set of animals, which is a subset of the set of organisms. In some embodiments, the computer system 1700 can enforce a knowledge sharing link that the activation of the node associated with the superset should be greater than or equal to the activation of the node associated with the subset. For act 参考 (data) and act 接收 The computer system 1700 can impose a regularization penalty for the greater-than relationship between (data):

[0097] α*(act 接收 (d)-act 参考 (d) If act 参考 (d) <act 接收 (d), where α is a hyperparameter, such as that controlled by HNLMS. For example, in speech recognition, the activation of nodes associated with a set of vowels should be greater than or equal to the activation of nodes associated with a set of high front vowels. In some embodiments, computer system 1700 can restrict the performance of regularization to data within a specified interval in the reference node.

[0098] In some embodiments, the computer system 1700 may limit the maximum regularization penalty for a inequality relationship. For example, for a inequality relationship, the computer system 1700 may impose a regularization penalty of:

[0099] Maximum value (0,β-α*|act 参考 (d)-act 接收 (d)|),

[0100] It has a maximum penalty β, where α and β are hyperparameters, eg controlled by HNLMS.

[0101] In some embodiments, computer system 1700 can enforce equal knowledge sharing links or not equal knowledge sharing links in both directions between a pair of nodes.

[0102] Using links that are equal to the knowledge share in both directions is also referred to as "soft binding" of a node pair. Using links that are not equal to the knowledge share in one or both directions is also referred to as "anti-binding" of a node pair. In some embodiments, soft binding and anti-binding links can be bidirectional, although anti-binding links are asymmetric.

[0103] In some embodiments, computer system 1700 may use equal soft binding and / or not equal anti-binding regularization on the weight parameters of one or more corresponding connections in a pair of homologous nodes. However, since the values ​​of the weight parameters are independent of the data, the knowledge sharing links between the weights are also independent of the data.

[0104] Flat activation interval: An interval within the activation function that satisfies a specified flatness criterion, such as a limit on the magnitude of the function's derivative within the interval or a limit on the difference between the maximum and minimum values ​​of the function within the interval. An extreme case of a flat activation interval is one where the function has a constant value throughout the interval.

[0105] Data exclusion: The process of excluding data based on specified criteria when training or deploying units in a hybrid network.

[0106] Data Exchange: An element in a network that can selectively pass activations or other incoming variables to a specified subset of one or more destinations. In some embodiments, the specified subset can be an empty set.

[0107] Local data space: An n-tuple of variables in a hybrid network that is an input variable to a specific unit and / or set of nodes. Variables in a local data space may reside in inner layers of the network. A local data space may also be called a "local input space" or a "local feature space." A local data space may be an encoding of a larger set of variables.

[0108] Decision element: A computable variable f(d) that depends on a specified interval within the range of the network input data d, where the value of f(d) within the specified interval is interpreted as a variable indicating that the data item d is in the specified set (detection) or the data item is not in the specified set (rejection).

[0109] Decision element group: A set of one or more detection decision elements, where the specified target detection sets are disjoint. Computer system 1700 can interpret a discriminator as a decision element group consisting of two intervals, where each interval is a decision element detector for one of the discriminator alternatives. Computer system 1700 can interpret a softmax set as a decision element group, where each node in the softmax set is a detector for a set of targets that is disjoint from the other nodes.

[0110] Holistic explanation: A human-understandable explanation of a node or unit's relationships to other nodes and units, and to the system as a whole. Many techniques for improving sensitivity also contribute to holistic explainability, and vice versa. For example, the association of a node or unit with a named collection is directly an aspect of holistic explainability and also contributes to improving sensitivity.

[0111] Alternative derivative function: A specified function that computer system 1700 uses as an input to the activation function for one or more specified data items, in place of the actual derivative of the activation function. HNLMS can specify the same alternative derivative function for the selected nodes for all data items, or it can specify different alternative activations for different data items. HNLMS can change the specified alternative derivative function during training.

[0112] Template Model: A specified computation intended to assign a higher value to data items in a particular target set than to data items not in the target set, while satisfying specified base sensitivity criteria. In an illustrative embodiment, a template model includes inputs from a local or global data space, a specified norm in the data space, a specified center point of the target set within the data space, and an output value that is a function of the distance from the center point to the input data items as measured by the norm. A template model can be represented in nodes, cells, or units. Without loss of generality, in an exemplary embodiment, computer system 1700 can represent a template model as a specialized cell, as a cell paired with a specified node or unit can represent the same computation as the node or unit that includes the computation for that cell.

[0113] Robust template model: A template model designed to meet specified sensitivity criteria.

[0114] Having provided various definitions, embodiments of the present invention are further described below. Figure 1 is a flow chart of an illustrative embodiment of one aspect of the present invention. Figure 1 In the illustrated embodiment, computer system 1700 constructs and trains a hybrid network. The class of hybrid networks includes the class of neural networks as a strict subset in terms of equivalent computations.

[0115] In a preferred embodiment, the process of building and training the hybrid network is a process of continuous growth and improvement of the system built and trained using a variety of training methods. In blocks 101 to 107, the computer system 1700 modifies and expands the system under development before deployment. In blocks 108 to 114, the computer system 1700 continues to expand and train during and after deployment. In various aspects of the present invention, the computer system 1700 can use various processes to improve the sensitivity of the system under development. For ease of discussion, the improvement process is divided into two levels. Each level is associated with a different standard for evaluating sensitivity. Generally speaking, the second level of sensitivity involves a more complex sensitivity standard. In some embodiments, the computer system 1700 can use a specific process to improve the sensitivity level, rather than discussing the level of that specific process.

[0116] In block 101, the computer system 1700 selects one or more base machine learning systems. In some embodiments, the computer system 1700 may select a base machine learning system that is not represented as a network and use incremental growth to build a hybrid network. In some embodiments, the computer system 1700 may select a partially trained or fully trained traditional neural network as a base system. Figure 21A A traditional feedforward neural network is described. In some embodiments, the computer system 1700 may select a hybrid network as the base network. Figure 1 As with the processes shown in the other figures, the computer system 1700 can make modifications and additions to the base system during a continuous training process.

[0117] In some embodiments, the computer system 1700 can jointly train multiple networks. In some embodiments, the computer system 1700 can jointly train a diverse set of homogenous networks, including a diverse set of perceptual hybrid networks and a diverse set of canary networks, and optionally a diverse set of networks optimized for classification accuracy without considering sensitivity, such as in combination with Figure 21 and Figure 5 As explained in block 516 of FIG.

[0118] In some embodiments, computer system 1700 may select a single underlying network.

[0119] If the base network is a traditional neural network, the computer system 1700 can modify and extend the network to make it a hybrid network. In some embodiments, the computer system 1700 can select an empty network as the starting network and extend a reasonable hybrid network from scratch. In some embodiments, the computer system 1700 can use a non-network or network-based system as a reference system for knowledge sharing and / or simulation learning to extend a reasonable hybrid network from scratch. Simulation learning is described in U.S. Patents 11,410,050 and 11,531,900, both of which are entitled "Imitation training for machine learning systems with synthetic data generators", and in published PCT application WO / 2021 / 194516, entitled "Data-dependent node-to-node knowledge sharing by regularization in deep learning", all of which are incorporated herein by reference in their entirety.

[0120] In some embodiments, computer system 1700 may use one or more reference networks as references for known or named collections.

[0121] In some embodiments, the computer system 1700 can use human consultation to associate names with known sets. In some embodiments, when the computer system 1700 associates names with known sets, the computer system 1700 can then train one or more detectors for the known sets to better match detection of the named sets. The computer system 1700 can use the named set detectors in the reference system to train detectors in the current system through knowledge sharing and / or imitation learning. In imitation learning, elements in the trained system are trained using local training objectives to match the output of specified elements in the reference system. In some embodiments, the computer system 1700 can use one-way or two-way transformations between the data space in the current network and the reference network in order to apply knowledge sharing and / or imitation learning. In combination Figure 4 Human consultation is further discussed in block 414. Figure 14 One-way and two-way transformations of data spaces are discussed.

[0122] In block 102, in some embodiments, the computer system 1700 optionally acquires and / or builds and trains one or more systems that are smaller or simpler than the current base system. For example, in some embodiments, the computer system 1700 may designate a simpler system to facilitate potential human guidance and consultation, such as in conjunction with Figure 4 As discussed in block 414 of FIG. In some embodiments, the human consultant can specify experimental changes to the system. In some embodiments, specifying experimental changes in a simpler system may take less time and effort than in a more complex system. In some embodiments, computer system 1700 can follow specified design rules to make it easier for the human consultant to understand and control the simpler system.

[0123] In some embodiments, computer system 1700 may specify a simpler network to reduce the amount of computation required for training. In some embodiments, computer system 1700 may specify a simpler network for which sensitivity is easier to design and train. In some embodiments, computer system 1700 may specify a simpler network for better overall interpretability.

[0124] In some embodiments, computer system 1700 can work with one or more simpler systems in parallel with the current base system. In some embodiments, computer system 1700 can temporarily replace the current base system with the simpler system.

[0125] In some embodiments, these simpler systems can also be designed to generalize better from a limited amount of training data. The goal of these simpler systems is not to match the classification accuracy of the base system selected in block 101. Instead, the primary goal is to reduce the risk of making imperceptible errors. The vulnerability of a classifier system to imperceptible errors is often proportional to the number of input variables, so computer system 1700 can more easily make simpler systems with fewer input variables less vulnerable. In some embodiments, computer system 1700 can use one or more smaller, simpler systems to accelerate the training and use of a larger system.

[0126] In image recognition tasks, a smaller, simpler system example would be for computer system 1700 to pre-process images to obtain lower resolution images. In speech recognition tasks, a smaller, simpler system example would be for computer system 1700 to use fewer spectral frequencies and / or calculate fewer speech spectral frames per second. In some embodiments, computer system 1700 can reduce the average number of spectral frames per second by using a variable frame rate. For example, if the difference between several consecutive spectral frames is less than a specified amount, computer system 1700 can replace multiple frames with a single frame.

[0127] In smaller, simpler systems, computer system 1700 can use fewer categories in classification tasks. More generally, computer system 1700 can use fewer, larger sets at each level of the ontology. In some embodiments, the larger set in the simpler system can be the union of the sets in the ontology of the less simple system.

[0128] On the other hand, in the case of image recognition, in some embodiments, the computer system 1700 can take advantage of the availability of higher resolution images to analyze input data items of a smaller, simpler base system. For example, when aligning data items with a mereological graph, such as in conjunction with Figure 12 As discussed, the computer system 1700 can use the higher resolution image to verify preliminary alignment of regions in the lower resolution image with designated parts in the mereology. In this example, the system analyzing the higher resolution image is Figure 1 A "simpler" system in the sense of box 102.

[0129] In block 103, computer system 1700 begins or resumes the process of continuing to grow and improve the current network (i.e., the base system selected in block 101, optionally in combination with the simpler system selected at block 102, if one was selected in block 102). In blocks 101 and / or 102, computer system 1700 may have replaced the previous base network with the new base network based on the validation testing in blocks 106 or 111.

[0130] In some embodiments, the computer system 1700 may use incremental growth ( Figure 5 504) to improve classification performance and sensitivity through training without using any backpropagation, neither using backpropagation of derivatives ( Figure 5 506 in ), nor does it use backpropagation of labeled data examples ( Figure 5 510 in ). For example, in some embodiments, computer system 1700 may use constrained optimization ( Figure 5 and Figure 6 524) to train each new node added to the network incrementally without using backpropagation. As long as there is any residual error on the training data, the computer system 1700 can use incremental growth combined with constrained optimization to reduce the number of errors.

[0131] In some embodiments, the computer system 1700 can add elements to the network as part of various embodiments of hybrid training, such as data delegation ( Figure 11 and Figure 5 Block 518), split one or more nodes ( Figure 5 519), adding additional output values ​​to components, training different sets in the discrimination ( Figure 5 523 in ), adding local autoencoders to the network or simply adding one or more elements for other purposes.

[0132] In some embodiments, the computer system 1700 can add local autoencoders to the network to support improved sensitivity ( Figure 2 、 Figure 9 and Figure 10 ), as the local data space ( Figure 3C and Figure 4 and Figure 9 411), or as Figure 5 A data generator (514) is provided.

[0133] In some embodiments, computer system 1700 can create multiple networks from an original base network and can continue to expand and improve each of the multiple networks. For example, computer system 1700 can use one or more simpler systems specified in block 102 in addition to one or more current base systems. As another example, computer system 1700 can develop one or more canary networks while developing the current base network. Canary networks are designed to be vulnerable to adversarial attacks and other perturbations to the input as a means of detecting and diagnosing such perturbations. Canary networks are designed to be vulnerable to adversarial attacks and other perturbations to the input as a means of detecting and diagnosing such perturbations. Figure 4 415 of the present invention.

[0134] In some embodiments, in block 103 , the computer system 1700 may build a hybrid network from scratch.

[0135] In blocks 104 and 105, the computer system 1700 modifies the base network to improve the sensitivity of the network in a hierarchy of two sensitivity levels and uses a variety of training methods and techniques to improve sensitivity. Each sensitivity level has different criteria. The computer system 1700 can use different processes, models, and system designs to improve each level. Figure 2 、 Figure 4 、 Figure 5 Illustrative processes and models for each sensitivity level are discussed in more detail in FIGURE 1 and other figures. However, in some embodiments, computer system 1700 can also use improved processes or models for levels other than those discussed.

[0136] In some embodiments, in block 104, the computer system 1700 may increase the base sensitivity ( Figure 2 and Figure 4 405), perform active flattening ( Figure 4 406), perform hybrid training ( Figure 5 and Figure 4 407 in the network), find the best location of a piece of knowledge in the network ( Figure 4 408), and / or perform data selective training ( Figure 4 In some embodiments, the computer system 1700 may be configured to Figure 1 Using randomized training ( Figure 5 520) and randomized activation ( Figure 4 box 418) to improve sensitivity, robustness and / or classification performance.

[0137] One aspect of a preferred embodiment of the present invention is a hybrid network learning management system (HNLMS) that includes a collaborative association of a team of human experts and one or more AI systems to develop tools and models that help the computer system 1700 improve the sensitivity, classification performance, and overall interpretability of the developed system. In some embodiments, the HNLMS can guide the training of the system being developed and can determine its sensitivity.

[0138] An illustrative criterion for the first level of sensitivity of a detector or discriminator is that for any data item inside the empirical acceptance set and the target acceptance set, for a specified ε, the L ∞ A change in norm < ε should not cause the data item to no longer be in the empirical acceptance set. In other words, a barely perceptible change in the input data item should not cause the system to make an error that it did not make before the change. Any successful L∞ Adversarial attacks all violate the first level sensitivity. Design L ∞ The techniques of adversarial attacks are well known to those working in the field of deep neural networks.

[0139] An important subset of the first level of sensitivity is called "base sensitivity". Base sensitivity ( Figure 4 405) has a standard that can be checked for each node, unit or internal variable. For basic sensitivity, the computer system 1700 changes the basic system to improve the basic sensitivity of each node or unit.

[0140] Informally speaking, the sensitivity levels vary in the skill and / or sensitivity of the HNLMS involved in each level of computer system 1700 development and in the judgment of the developing system.

[0141] The first level technique requires minimal involvement of HNLMS during the development process. The sensitivity of the system modified by the first level sensitivity improvement is also the easiest to objectively evaluate by the computer system 1700, with HNLMS primarily controlling the hyperparameters in the sensitivity criteria.

[0142] In block 105, in some embodiments, the computer system 1700 may modify the current network to increase the second level of sensitivity. In the second level of technology, the computer system 1700 may utilize more guidance from the HNLMS during the development and evaluation process ( Figure 4 414).

[0143] If combined Figure 4 As discussed, Figure 1 In block 105 of FIG. 1 , in some embodiments, the computer system 1700 may analyze and refine the decision boundary ( Figure 4 Block 410 of ) and / or creating and training a local normed space ( Figure 9 and Figure 4 411).

[0144] In some embodiments, Figure 1 In block 105, the computer system 1700 may calculate attributes and other variables that the computer system 1700 may store in the cell, such as in combination with Figure 4 As discussed in block 412 of FIG.

[0145] exist Figure 1 In block 105, the computer system 1700 may also construct and train a hidden state space model under the guidance of, for example, HNLMS, such as in combination with Figure 4 Box 413 and Figure 7 In some embodiments, the computer system 1700 may also use a hidden state space model in active classification, such as in combination with Figure 1 Box 109 and Figure 4 403, 416 and 417 of .

[0146] The computer system 1700 may specify and / or change the state of the hidden state space model and / or related learning parameters or hyperparameters under the control of, for example, the HNLMS. In some embodiments, the computer system 1700 may specify and / or change the state of the hidden state space model and / or related learning parameters or hyperparameters based on human consultation, such as in conjunction with Figure 4 as discussed in block 414 of FIG.

[0147] exist Figure 1 In block 105, the computer system 1700 may use human consultation to verify the sensitivity of the discriminator and / or classifier decision boundaries, such as in conjunction with Figure 4 as discussed in block 414 of FIG.

[0148] In order to improve the sensitivity, Figure 1 In blocks 105 and 106 of FIG. 1 , the computer system 1700 may analyze the decision boundary ( Figure 4 410), constructing a local normed space ( Figure 4 411), computed properties and cell variables ( Figure 4 412), building and training a hidden state space model ( Figure 7 and Figure 4 413), build and train active defense structures, optionally using data exchange ( Figure 4 416 and Figure 8 803), perform active alignment ( Figure 12 and Figure 19 as well as Figure 4 Box 417), random activation training ( Figure 4 418), building and training a robust template model ( Figure 10 and Figure 4 419) and / or using mixed conditional training ( Figure 13 and Figure 5 512).

[0149] In addition to improving sensitivity, some explanatory processes and models can also improve the overall interpretability of nodes and units in the system. Some explanatory processes and models can improve the performance of assigned classification or regression tasks. In one aspect of the present invention, computer system 1700 can reformulate a regression task as a classification task. Without loss of generality, in this disclosure, the term "classifier" is used to refer to a system whose task can be either a classification task or a regression task.

[0150] As mentioned above, the phrase "neural network" is used to refer to a directed network consisting of a set of nodes and a set of directed connections between ordered pairs of nodes. The phrase "neural network" refers to a generally accepted concept well known to those skilled in the art of training and using neural networks.

[0151] As mentioned above, the phrase "hybrid network" refers to a generalization of a neural network composed of more complex components, here called "units". Units may have multiple output values ​​and may include multiple internal nodes and connections, such as Figure 3A As shown. A unit may also include special elements referred to herein as "cells". On the other hand, in a hybrid network, a unit may consist of only a single neural node, so any traditional neural network is also a simple hybrid network.

[0152] The modifications performed by computer system 1700 on the base network in blocks 104 and 105 may include changing the activation function of one or more selected nodes. Modifications may include converting one or more nodes into more complex structures called "cells." Modifications may include adding nodes and cells to the network. In some embodiments, modifications may include creating one or more cells and adding them to the network. Computer system 1700 may add cells to a cell, or may add cells to the network external to any cell.

[0153] Cells in a hybrid network are distinct from nodes. A cell may include the values ​​of one or more variables that can be calculated by computer system 1700. For example, computer system 1700 may store the output value of a selected element of the network for the current input data item and / or the output value of a selected element of the network for the previous data item in a cell. Each cell may include or be associated with any stored program to be executed on computer system 1700. For example, computer system 1700 may perform serial computations associated with the cell to compute logical or probabilistic inferences. A cell may include one or more incoming data communication links and / or one or more outgoing data communication links. Data links are distinct from neural network connections. Data links only transmit data and do not have associated "weight" parameters. Data links may be unidirectional or bidirectional.

[0154] The data that computer system 1700 transmits over the data link from the first cell to the second cell may include any value that computer system 1700 can calculate based on the value stored in the first cell.

[0155] The computer system 1700 may also transmit data from the neural node to the cell via the data link. For example, the data transmitted from the neural node to the cell may be the input or output of the neural node activation function. In some embodiments, the data transmitted from the neural node to the cell may be the value of the back-propagated derivative calculated by the computer system 1700 during the calculation of the gradient by back-propagation. In some embodiments, the back-propagated derivative may be derived from an alternative local derivative ( Figure 5 509).

[0156] The computer system 1700 can also transmit data from the cell to the neural node via the data link. The data transmitted by the computer system 1700 on the data link from the cell to the neural node can be any value that the computer system 1700 can calculate based on the value stored in the cell. In some embodiments, the computer system 1700 can use the received data value as an additional input connection to the receiving node, with a connection weight of 1.0. In a preferred embodiment, the computer system 1700 does not backpropagate derivatives along the data link from the cell. However, if desired, in some embodiments, the computer system 1700 can achieve a similar effect by creating a second node to receive data from the cell and then connecting the second node to the first node via a neural network connection, through which the computer system 1700 can backpropagate derivatives.

[0157] Combine Figure 2 、 4 , 5 and other figures discuss the details of the process used in each level (boxes 104 and 105) in more detail.

[0158] In block 121, in some embodiments, the computer system 1700 may train the network to participate in a human+AI joint activity, where one or more humans play a sufficient role to contribute a certain amount of common sense. An example of a joint+AI activity is HNLMS. Figure 21 Other joint activities, including the production of creative works, were discussed. Figure 21 Joint educational activities were also discussed.

[0159] In block 106, the computer system 1700 trains the modified network and tests the trained network on validation data set aside from the training data. Figure 5 and other figures discuss an exemplary embodiment of a process for training a hybrid network, referred to as "hybrid training."

[0160] In some embodiments, in block 106, the computer system 1700 may perform a histogram analysis ( Figure 15 and Figure 5 507), back propagation derivatives ( Figure 5506), creating a low-dimensional local data space and building a low-dimensional model ( Figure 5 517 of the ), implementation of data delegation and data exclusion ( Figure 4 Frame 420, Figure 5 Box 518 and Figure 10 and 11 ), determine the local target ( Figure 5 508), using alternative derivative functions ( Figure 5 509), back propagation labeled data ( Figure 18 and Figure 5 510), simulating another network ( Figure 5 511), perform conditional mixed training ( Figure 13 and Figure 5 512), perform experience training ( Figure 5 521 in ), generate more data, optionally under human guidance ( Figure 5 514), building a homology network ( Figure 21 and Figure 5 516), and perform random training ( Figure 5 520), and the weights of individual items are calculated empirically to estimate their reliability ( Figure 5 522), creating different sets to better represent combinations of known sets ( Figure 5 523), and / or using constrained optimization ( Figure 6 and Figure 5 524).

[0161] If the validation testing completed by computer system 1700 in block 106 meets the specified acceptance criteria, computer system 1700 replaces the previous base network with the network modified by computer system 1700 in blocks 104 and 105. In some embodiments, computer system 1700 may save the new base network or selected subnetwork in a network repository.

[0162] In some embodiments, the computer system 1700 may compare the performance of the current base system on the validation data with the performance of a simpler system. In some embodiments, the computer system 1700 may compare the performance of the current system on data from an adversarial attack on the validation data with the performance of one or more canary systems. In some embodiments, based on an analysis of the results of these comparisons, the computer system 1700 may make experimental changes to the current system and preferably retest it on new validation data. In some embodiments, the computer system 1700 may request human consultation, such as in conjunction with Figure 4 as discussed in block 414 of .

[0163] In block 107, the computer system 1700 checks the stopping criteria for the ongoing modification and training in the loop from block 101 to block 107. If the stopping criteria are met, the computer system 1700 proceeds to block 108. Otherwise, the computer system 1700 returns to block 101 to continue modifying the current base network.

[0164] In block 108, the computer system 1700 receives an item to be classified. In some embodiments, the phrase "item to be classified" may include an item for which a regression value is to be calculated.

[0165] In block 109, in some embodiments, computer system 1700 may perform a process referred to herein as "active classification" or "active perceptual classification." In preferred embodiments, during active classification, computer system 1700 may modify the network and / or perform additional computations beyond neural network activation upon receiving a data item to be classified. Computer system 1700 may tailor these additional computations to the received data item.

[0166] Active perceptual classification includes calculating activation values ​​of neural nodes in the network, a process known as "inference" in neural networks. However, in exemplary embodiments, "active perceptual classification" may include additional processes distinct from neural network inference.

[0167] In block 109, the computer system 1700 may perform diagnostics and defenses on the specific data item received in block 108. For example, the computer system 1700 may classify the received item using various unprotected canary networks and various robust networks to analyze the difference nodes in the response, such as Figure 4 as discussed in block 415 of .

[0168] When using a hybrid network for active classification in block 109, the computer system 1700 can perform serial computations in cells after receiving an item to be classified. This capability provides additional functionality to the hybrid network.

[0169] For example, in active perceptual classification, the computer system 1700 may modify the hybrid network after receiving the item to be classified as an active defense ( Figure 4 416 and Figure 8 803), which enables computer system 1700 to make the network aware of the specific item received. In some embodiments, computer system 1700 can construct a hybrid network with data exchanges that effectively reconnect the hybrid network in a specially designed configuration to avoid generating an insensitive response to the specific data item received in block 108.

[0170] In some embodiments, in block 109, the computer system 1700 may compute an alignment of the data item to be classified with the model and / or other data examples ( Figure 12 and 19 as well as Figure 4 In some embodiments, the computer system 1700 may use cells in the network to store information used in computing alignments. In some embodiments, the computer system 1700 may use a hidden state space model ( Figure 7 and Figure 4 In some embodiments, the computer system 1700 may retrieve example alignments or other information from a repository when computing alignments for data items to be classified. In some embodiments, the computer system 1700 may store information computed when aligning data items to be classified for future use.

[0171] As another example, the computer system 1700 may use a set of cells to model a hidden random process, such as a combination of Figure 7 and Figure 4 As discussed in block 413 of . For a group of cells in a hybrid network, the computer system 1700 can perform recurrent computations even if the neural node network is a non-recurrent network.

[0172] In block 110, in some embodiments, computer system 1700 may continue training the machine learning system after it is deployed. In some embodiments, computer system 1700 may continue acquiring new data as the system is deployed. In some embodiments, computer system 1700 may acquire data from other systems that have already been deployed. In some embodiments, computer system 1700 may continue training the deployed system using data acquired during the development and training of the new system.

[0173] In some embodiments, in block 110 , the computer system 1700 may continue to modify and extend the network to improve classification performance, sensitivity, and / or overall interpretability.

[0174] In block 110, in some embodiments, computer system 1700 may compute incremental training using the item received for classification in block 108. Because the item is received for classification, unlike the training data, the correct classification may not be known. In this case, in some embodiments, computer system 1700 may perform semi-supervised training, that is, after classifying the received item, computer system 1700 may perform incremental training on the item as if it were training data labeled with the classification computed during classification.

[0175] However, as those skilled in the field of semi-supervised training are well aware, while semi-supervised training often works well, it can sometimes fail catastrophically.

[0176] In a preferred embodiment, in block 110, computer system 1700 may perform additional processes to improve the reliability of semi-supervised training. For example, computer system 1700 may utilize the data exchange associated with block 109 to construct a virtual ensemble that not only improves the overall classification performance but, more specifically, can detect and diagnose that the classification of a received item may be unreliable. If computer system 1700 detects that the classification of an item may be unreliable, computer system 1700 may skip that item during semi-supervised training.

[0177] In some cases, during deployment, the computer system 1700 may know the correct classification from interactions with end users, who may correct errors made by the system. In some cases, the computer system 1700 may not know the correct answer, but may know based on user responses that the calculated classification is incorrect or unreliable.

[0178] In block 111, in some embodiments, the computer system 1700 may perform iterative training using accumulated data acquired from multiple passes of the loop from block 108 to block 112. In some embodiments, the computer system 1700 may then validate the performance of the trained system on a set of labeled validation data that the computer system 1700 sets aside from the training dataset. If the validation test meets specified acceptance criteria, the computer system 1700 may replace the current base network with the newly validated network.

[0179] In block 112, the computer system 1700 checks criteria for stopping or pausing the process of blocks 108 to 112. If the stopping criteria are met, the computer system 1700 continues to block 114. Otherwise, the computer system 1700 returns to block 108 to process more items to be classified.

[0180] In block 113, computer system 1700 may determine whether to add more data to the training data set and may determine how much data to select in a particular region. In some embodiments, computer system 1700 may begin training with a selected sample of data and gradually add more training data as the system grows. In some embodiments where there is a large amount of data, the data may not be evenly distributed across the regions of interest. In some embodiments, computer system 1700 may selectively add sampled data in regions where current sampling is sparse. In a preferred embodiment, the computing system may track the relative frequency of sampling and adjust any estimates of prior or posterior probabilities appropriately.

[0181] For example, in some embodiments, computer system 1700 can use selective sampling in histogram analysis, which will be combined with Figure 15 In some embodiments, the computer system 1700 can use selective sampling in any process of segmenting data, such as: (1) activating the data exchange of intervals ( Figure 2 209 and 211), (2) interval-dependent training ( Figure 4 406, 407, 409, 410 and 416), (3) node segmentation ( Figure 5 519), and (4) histogram analysis ( Figure 15 and Figure 5 507).

[0182] In some embodiments, computer system 1700 can use selective sampling in other situations where additional data is used, such as (5) back propagation of data ( Figure 18 and Figure 5 510), (6) adjusting the data delegation and exclusion norm ( Figure 4 Frame 420, Figure 5 Box 518 and Figure 10 and 11 ), (7) Generate data under human guidance ( Figure 5 514), and (8) random training and diagnosis ( Figure 5 520).

[0183] In block 114, computer system 1700 checks whether to resume training and growing the current base network modified in blocks 103 through 110 and verified in blocks 106 and 111. If so, computer system 1700 returns to block 102. Otherwise, computer system 1700 continues to block 115.

[0184] In block 115, the computer system 1700 checks the stopping criteria. If the stopping criteria are met, the computer system 1700 exits Figure 1 Otherwise, the computer system 1700 returns to block 101.

[0185] In some embodiments, if additional training data has been acquired, computer system 1700 may resume training of the currently updated base system in block 101. In some embodiments, computer system 1700 may select one or more new base systems.

[0186] Figure 2 FIG. 1 is a flow chart of an exemplary embodiment of a process for enhancing basic sensitivity in one aspect of the present invention. Figure 4 As shown in blocks 401 and 405 of FIG. , the base sensitivity is an aspect of the first level of sensitivity. Figure 2As shown, there are several aspects to basic sensitivity.

[0187] exist Figure 2 In block 201 of FIG. 1 , computer system 1700 may modify a regression-type output to represent it as a perceptible classification-type output. A regression-type output is a continuous-valued output value from a network or unit, where the output value is a parameter function of the input value, and where the parameters are trained to optimize a specified measure of fit between the output of the parameter function and target values ​​in a training dataset. For example, the regression type may be linear regression, logistic regression, or another suitable regression type.

[0188] In some embodiments, the computer system 1700 may replace a continuous-valued output with a piecewise constant function in block 201. In the typical case where a parameter continuous-valued function is monotonic, the computer system 1700 may replace the parameter function with a step function.

[0189] In some embodiments, in block 201, the computer system 1700 may replace a parameter function with a vector of one or more finite discrete-valued variables. The vector of discrete variables may be referred to as a vector embedding of the continuous-valued function value. The computer system 1700 may compute the vector embedding as a bottleneck layer of an autoencoder. In some embodiments, the computer system 1700 may impose a sparsity constraint or regularization on the bottleneck layer. In some embodiments, the computer system 1700 may use an autoencoder with some hybrid parameter control having specified characteristics, such as a combination of Figure 9 In some embodiments, the computer system 1700 can use this discrete-valued vector embedding to perform multiple regression on two or more continuous-valued variables. In some embodiments, the computer system 1700 can use this discrete-valued vector embedding to perform multiple regression on a continuous-valued data space.

[0190] Whether piecewise constant functions or vector embeddings, computer system 1700 can train a neural network or hybrid network to simulate a continuous-valued function or continuous-valued vector to any desired degree of accuracy because computer system 1700 can use the continuous-valued function to compute target values ​​for an infinite number of input value examples, thereby providing an infinite amount of training data.

[0191] However, in some embodiments, computer system 1700 may limit the number of intervals in the embedded piecewise constant function or discrete vector space to better meet sensitivity criteria.

[0192] In block 202, the computer system 1700 may replace one or more unbounded variables with bounded variables. For example, the computer system 1700 may replace one or more unbounded activation functions with bounded activation functions. In some embodiments, the computer system 1700 may simply impose minimum and maximum values ​​on the output of the activation function as constraints. In some embodiments, the computer system 1700 may replace the activation function with a new activation function that asymptotically approaches the limiting values, which the computer system 1700 may change to a step function later in training. In some embodiments, the computer system 1700 may constrain global or local data space values. In some embodiments, the computer system 1700 may constrain values ​​stored in and / or transmitted by cells. In some embodiments, the computer system 1700 may constrain variable values ​​in local data space.

[0193] In some embodiments, for a trained or partially trained network, computer system 1700 may use the minimum and maximum values ​​of node activations observed in the training data to set limits on the bounded activation functions of the nodes, which may allow some extra margin for values ​​that may be required by new data.

[0194] In some embodiments, the computer system 1700 may implement a semi-automated process with a controlled amount of human consultation to specify or verify restrictions, such as in conjunction with Figure 4 In some embodiments, the computer system 1700 may use empirical training ( Figure 5 521) to determine the limit.

[0195] In some embodiments, computer system 1700 may replace nodes or units with unbounded activation functions with one or two detectors or discriminators, as discussed in conjunction with blocks 211 , 212 , and 213 .

[0196] In block 203, the computer system 1700 may replace the activation function of each of the one or more nodes having a non-monotonic activation function with a monotonic activation function or a modified monotonic function. For example, the computer system 1700 may specify an activation function that is monotonic on a specified internal interval, rather than monotonic on the entire domain of the activation function.

[0197] In some embodiments, computer system 1700 may specify a non-monotonic activation function that is monotonic within a specified internal interval, but computer system 1700 modifies it outside the specified interval. For example, for an activation function that computer system 1700 characterizes as a discriminator between set S1 and set S2, computer system 1700 may specify an activation function that has the maximum activation value corresponding to the node in the probability distribution of set S2 and the minimum activation value corresponding to the node in the probability distribution of set S1. Computer system 1700 may specify an activation function that is monotonic within the interval between the minimum and maximum values.

[0198] However, for example, if the nodes of set S1 or set S2 are located at interior points of the data space, the computer system 1700 can specify an activation function that has a local maximum for S2 and a local minimum for S1. In some embodiments, the computer system 1700 can specify an activation function that is equal to or asymptotically close to a specified out-of-domain background value outside the monotonic interval between the minimum and maximum values, such as used in data exclusion ( Figure 2 204, Figure 5 518 and Figure 11 In some embodiments, the computer system 1700 may specify an activation function that is monotonic between a background value and a minimum or maximum value. An activation function that is monotonic on the interval between a unique minimum and a unique maximum value and monotonic outside of that interval is referred to herein as a "standard discriminator function." In a standard discriminator function, the minimum or maximum value may occur at an endpoint (or at an infinite limit), so the monotonic interval may be the entire domain or a half-open interval.

[0199] In some embodiments, in block 203 , the computer system 1700 may convert the activations of any node that the computer system 1700 characterizes as a discriminator into a standard discriminator function.

[0200] For a node with a standard discriminator function and a specified threshold T between a minimum and a maximum value, the computer system 1700 can determine whether the node has made an implicit error on a particular data item.

[0201] Implicit Error: In some embodiments, for a node with a standard discriminator activation function f(x) and a specified discrimination threshold T, where x(d) is a function of the input data d, the computer system 1700 may designate an implicit error for an activation x(d) of the node within the interval between a minimum and a maximum if the sign of (x(d))*(f'(x(d)-T)) is the same as the sign of the back-propagated derivative of the error measure objective function to be minimized. In some embodiments, the computer system 1700 may invert the sign test for activations outside the interval between the minimum and maximum values. In some embodiments, the computer system 1700 may not perform the test on delegated or excluded data. If the derivative is the objective function to be maximized, the computer system 1700 inverts the sign test.

[0202] In some embodiments, if the magnitude of |T-act(d)| is less than a specified multiple of the magnitude of the backpropagation derivative, then the computer system 1700 may determine that the node has made an end call on the data item d, where "act(d)" represents the activation value of the node for the data d. The end call may be an end call with an implicit error or an end call with an implicit correct answer.

[0203] In some embodiments, the computer system 1700 can add regularization penalties to the derivatives of backpropagation when determining whether a node with a standard discriminant activation function has made an implicit error, such as knowledge sharing regularization, soft tying, and counter-tying. Soft tying is described in U.S. Patent 10,839,294, entitled “Soft-tying nodes of a neural network,” and counter-tying is described in U.S. Patent 11,151,455, entitled “Counter-tying nodes of a nodal network.” The entire contents of both patents are incorporated herein by reference. Data-dependent node-to-node knowledge sharing by regularization is described in published PCT application WO / 2021 / 194516A1, entitled “Data-dependent node-to-node knowledge sharing by regularization in deep learning,” the entire contents of which are also incorporated herein by reference.

[0204] In some embodiments, computer system 1700 may determine that a node has made an explicit error if the node is being trained to a known set and the activation x(d) for a data item d is on the wrong side of a discrimination threshold T. In some embodiments, computer system 1700 may use an explicit error criterion instead of an implicit error criterion when such an explicit error criterion is known.

[0205] In some embodiments, computer system 1700 can ignore relatively small deviations from monotonicity, such as the decline of Gaussian error linear units (GELU). Those skilled in the art of neural networks are familiar with the GELU activation function. In some embodiments, computer system 1700 can use an alternative activation function that is monotonic except for the specified decline, such as in the GELU function. In some embodiments, for the detector unit, computer system 1700 can use a center-surround function, wherein the function has a decline value when it is close to but not in the activation of the acceptance region. Computer system 1700 can make the function value in this decline less than the function value of the activation farther from the acceptance region and the value in the acceptance region.

[0206] In some embodiments, computer system 1700 may partition the domain of nodes having non-monotonic activation functions into alternating intervals of monotonically increasing and monotonically decreasing values. In some embodiments, computer system 1700 may create a new node for each interval.

[0207] In some embodiments, the computer system 1700 can create a node for each pair of monotonically increasing intervals followed by monotonically decreasing intervals to create one or more nodes with unimodal activation functions. In some embodiments, the computer system 1700 can replace nodes with unimodal activation functions with robust template cells, such as Figure 10 shown.

[0208] In some embodiments, computer system 1700 may replace an activation function having multiple local maxima with multiple robust template units.

[0209] In some embodiments, the computer system 1700 may divide the domain of the discriminator node into a first interval and a second interval, wherein a local minimum in the activation function in the first interval indicates detection of the first target set and a local maximum in the activation function in the second interval indicates detection of the second target function. In some embodiments, the computer system 1700 may create a first interval for local maxima and a second interval for local minima. In some embodiments, the computer system 1700 may replace the discriminator node with a unit that includes a detector for the first target set, a detector for the second target set, and an element that calculates a discrimination score based on the two detector scores. In some embodiments, for each target set, the computer system 1700 may train a template model as a detector for the target set.

[0210] In some embodiments, the computer system 1700 can create cells in which nodes with non-monotonic activation functions are replaced by cells with multiple monotonic or unimodal activation functions, separating the computation of the input affine sum from the computation of the activation function with data exchange in between. In some embodiments, the computer system 1700 can switch any incoming data item to a monotonic or unimodal activation function corresponding to the interval of the incoming data item. This structure within the cell is as follows: Figure 3A shown.

[0211] In some embodiments, computer system 1700 may replace nodes with non-monotonic activation functions with a set of nodes, wherein the activation function of each node is constant outside a specified interval and monotonic or unimodal within the interval. In some embodiments, computer system 1700 may initialize incoming connections to each node to replicate the incoming links of the replaced node. In some embodiments, computer system 1700 may then train weights on the new connections separately from the weights of the connections to the original nodes. In some embodiments, computer system 1700 may tie or soft-tie one or more weights to the corresponding connections.

[0212] In block 204, in some embodiments, the computer system 1700 may implement data exclusion and / or data delegation for the detector elements and the discriminator elements. In some embodiments, the computer system 1700 may implement data pruning, limiting the detection area, and / or data exclusion. In some embodiments, the computer system 1700 may adjust the limits of data delegation, data exclusion, and / or pruning based on empirical training ( Figure 5 521).

[0213] In some embodiments, computer system 1700 can use data delegation to improve the performance of a component by limiting training to an appropriate subset of the training data.

[0214] In basic statistical analysis, data items may be removed from the training data as outliers. In robust statistics, a significant portion of the data may be removed from the sufficient statistics of the parameters in the probability distribution of the training parameters. Typically, when training a neural network, for each training data item, a feedforward calculation is performed, which calculates the activation of each node in the network and backpropagates the derivatives to update each connection to each node.

[0215] However, in large neural networks or large hybrid networks, the situation is more complicated. The input that one node receives for a given data item from another node may change as the weights in the network are updated during training. Whether the data item is an outlier for the first node may also change.

[0216] In some embodiments of the invention, computer system 1700 can build redundancy into the network so that delegating a data item that is no longer an outlier to the first node does not necessarily degrade performance.

[0217] In block 205, in some embodiments, the computer system 1700 may replace the activation function of one or more selected nodes with an activation function for which the change in activation function value over one or more selected intervals is less than that of the replaced activation function. In some embodiments, the computer system 1700 may make such a change in the activation function to continue training the selected nodes by backpropagation of derivatives, but at a later stage in training, may change the activation function to a piecewise constant function, as described in connection with block 206.

[0218] In block 206, in some embodiments, the computer system 1700 may change the activation function of one or more selected nodes to a piecewise constant function. Preferably, the computer system 1700 specifies a piecewise constant function that satisfies a specified criterion for approximation of the selected function being replaced. For example, for each constant interval in the piecewise constant function, the computer system 1700 may set the value of the piecewise constant function to the value of the selected function averaged over the interval. In a preferred embodiment, the computer system 1700 may replace a monotonic interval in a monotonic activation function, or any function, with a monotonic step function.

[0219] In some embodiments, the computer system 1700 may make the value of the piecewise constant function within a specified interval a hyperparameter, and the computer system 1700 may change the value during the training process. In some embodiments, the computer system 1700 may make the value of the piecewise constant activation function a learning parameter, and the computer system 1700 may use a hybrid training method to train it, such as combining Figure 5 As discussed. For example, computer system 1700 can train such parameters using empirical training.

[0220] In block 207 , in some embodiments, the computer system 1700 may specify an alternative derivative function for the node. Figure 3C An example of an alternative derivative function is shown.

[0221] In block 208, computer system 1700 may replace the selected node with a plurality of nodes. An example is discussed in conjunction with block 203. Computer system 1700 may replace a node having a non-monotonic activation function with a set of nodes where each monotonic interval corresponds to one node.

[0222] As another example, computer system 1700 may replace a node with two or more nodes or with a unit that includes two or more nodes in block 208. For example, if the interval of the activation function for a given node is associated with a known set, computer system 1700 may create a unit with two or more output values, a node trained to detect data items in the known set, and a second node trained to detect data items not in the known set.

[0223] In some embodiments, computer system 1700 may replace a node that distinguishes between two known sets with two new nodes, or add two new nodes, where one new node is trained to detect one of the known sets and the second node is trained to detect the second known set.

[0224] In some embodiments, in each case where computer system 1700 creates two new detector nodes, computer system 1700 may create a cell that includes the two new detector nodes and includes one or both of the two new nodes. Computer system 1700 may create one additional node to detect data items that are not in either of the two known sets and create a second additional node to directly detect data items that are in the intersection of the two known sets.

[0225] Note that a node trained directly to detect data items at the intersection of two sets or at the intersection of their complements will not necessarily agree with the detection results of each individual detector, since, in general, each detector has a non-zero error rate, and the error profile may vary under different objectives. Furthermore, in some embodiments, computer system 1700 can train new detectors using a different trade-off between precision and recall than known set detectors. In any case, the two new detectors provide separate outputs to the unit to directly indicate to higher-level nodes and units in the hybrid network whether a data item near the decision boundary between the two detectors is an equally good match for both detectors, referred to herein as a "BOTH" detector, or an equally poor match for both detectors, referred to herein as a "NEITHER" detector. Computer system 1700 can use the BOTH or NEITHER indication as a useful distinction for higher-level nodes or units receiving connections from the discriminator unit. This information is not available from the output of a single-node discriminator.

[0226] As another example, in block 208, the computer system 1700 may replace a node with two or more nodes or a unit consisting of two nodes, where one new node is trained to detect a known set and the second new node is trained to recognize a different known set. In some embodiments, the computer system 1700 may add a third node that includes incoming connections from the two detector nodes, and optionally additional incoming connections. The computer system 1700 may train the third node as a discriminator for the two known sets. For example, the activation of the third node may include the difference between the scores of the two detector nodes, or a smooth monotonic function of the difference between the scores of the two nodes. The two detector nodes may be newly created nodes, and the computer system 1700 may initialize them from the two intervals of the replaced node. The computer system 1700 may also train the unit or three node discriminators to distinguish between the two known sets.

[0227] In block 208, computer system 1700 may also replace nodes that have a monotonic activation function and one or more class-signature intervals. A "class-signature" interval is an interval where the maximum value in the interval is greater than the minimum value in the interval. For example, HNLMS has determined that replacing an interval with a constant value can degrade performance by more than a specified amount. The class-signature interval can include the entire range of a node, in which case the node can be referred to as a "signature" node.

[0228] In some embodiments, the computer system 1700 may consider extreme values ​​near the end of the class feature interval and / or values ​​outside the extreme values ​​of the class feature interval as detectors.

[0229] In this case, in some embodiments, the computer system 1700 controlled by, for example, HNLMS may select one or more of several options for processing the class feature intervals:

[0230] (1) The computer system 1700 may replace the class feature interval with a unit comprising one or more of the following detectors, preferably in conjunction with Figure 2 The sense in which box 212 is associated is sensitive:

[0231] a. Sensitive detectors are used for each extreme value of the class feature interval

[0232] b. A sensitive detector is used to detect data items in the "border region" where it is unclear which (if any) of the two extreme detectors correctly detected or rejected them.

[0233] c. Two sensitive detectors are used to distinguish between extreme detector uncertainties for two reasons:

[0234] i. The scores of both detectors are higher than the specified value

[0235] ii. The scores of both detectors do not exceed the specified value

[0236] d. Two or more sensitive detectors are used to detect clusters within the boundary region.

[0237] (2) The computer system 1700 may replace the node with multiple nodes, thereby segmenting the class feature interval.

[0238] a. The computer system 1700 can create two or more sensitive detectors to detect clusters in the detection within a specified interval in the activation function.

[0239] (3) The computer system 1700 can replace the nodes with multiple step functions with different constant intervals, such as Figure 2 Frame 211, Figure 4 Box 416 and Figure 8 As discussed in block 803 of .

[0240] As another example, in block 208, in some embodiments, the computer system 1700 may replace a single node with multiple nodes to achieve redundancy. In this example, the computer system 1700 may initialize each of the multiple new nodes to have the same connections and the same connection weights as the single node being replaced. The computer system 1700 may then train the network, including the multiple new nodes, allowing the connection weights entering each node copy and the connection weights outgoing from each node copy to offset each other. In some embodiments, the computer system 1700 may apply regularization, such as anti-tying or inequality regularization links, to diversify node activation and weight training.

[0241] In block 209, the computer system 1700 may use multiple activation functions and data exchanges (e.g., Figure 3B 3 ) to select which activation function to use for a particular data item. In some embodiments, computer system 1700 may create a node for each activation function and create a data exchange, such as 342 in FIG. 3 , to select between two nodes. For example, HNLMS may specify that computer system 1700 make such a substitution for any of the following reasons:

[0242] (1) Assign new nodes or activation functions to detect known sets related to one or more new nodes to simulate the original node acquiring data that is not in the related known set

[0243] (2) Delegating one or more problematic data items. The HNLMS or computer system 1700 can delegate specified data to a first node or activation function by controlling data exchange so that activation from the specified data item input cannot activate the first node or activation function. In some embodiments, the computer system 1700 or HNLMS can control data exchange to send the data item to a specified second node. In some embodiments, the computer system 1700 or HNLMS can create a new node to receive the data item.

[0244] (3) Excluding data based on basic sensitivity criteria

[0245] a. The computer system 1700 can exclude based on the distance from a specified center point, which is measured by a specified norm defined on the local data space. For example, HNLMS can specify some features for the automatic encoder controlled by the hybrid parameter to create the local data space.

[0246] (4) For active defense, such as combining Figure 4 Box 416 and Figure 8 As discussed in block 803 of .

[0247] In block 210 , the computer system 1700 may add additional nodes or units to the network to improve classification performance.

[0248] In some embodiments, the computer system 1700 can add error prediction nodes and error correction nodes to fix one or more explicit or implicit errors. In some embodiments, the computer system 1700 can interpret the activation of a first node within a specified interval as accepting or rejecting a received data item belonging to a specified known set. In some embodiments, the computer system 1700 can train a second node to predict whether the first node has made a false positive error, and can train a third node to predict whether the first node has made a false negative error. In some embodiments, the computer system 1700 can create additional nodes or cells called error correction elements that replace the changes in the output of the first node when one of the error prediction nodes predicts an error on the received data item. In some embodiments, the computer system 1700 can add the output of the error prediction node as an additional output value to the cell that includes the first node. Error prediction nodes are also called judgment nodes and are described in published U.S. patent application 2022 / 0335296, entitled "Deep Learning with Judgment," the entire contents of which are incorporated herein by reference.

[0249] In some embodiments, if the activation value of a node is within a range that the computer system 1700 interprets as an acceptance or rejection of a received data item in a known set, for which the computer system 1700 knows that the acceptance or rejection is false, then the computer system 1700 may determine that the node has an explicit error.

[0250] In some embodiments, computer system 1700 may add one or more nodes to receive data delegations for one or more data items where an explicit or implicit error has occurred at a node or unit.

[0251] In some embodiments, the computer system 1700 may add one or more nodes to represent clusters in a known or named set. In some embodiments, the computer system 1700 may add one or more nodes to detect clusters in a specified target set. In some embodiments, the computer system 1700 may determine whether clusters need to be modeled based on an analysis of multiple local maxima in a smoothed histogram function, such as Figure 15 As shown in box 1509.

[0252] In some embodiments, the computer system 1700 may add one or more nodes to represent clusters in the complement of the detected set. The complement of the detected set may be more diverse than the detected set. In some embodiments, the computer system 1700 may represent the complement of the set by multiple clusters to represent the diversity in the data.

[0253] In some embodiments, the computer system 1700 can add one or more nodes to support continuous lifelong learning. For example, the computer system 1700 can add one or more nodes to detect and / or distinguish new data encountered during continued use of the system.

[0254] After receiving the item to be classified, the computer system 1700 can add additional nodes in the active defense. Figure 4 Box 416 and Figure 8 803 for discussion.

[0255] In block 211, in some embodiments, the computer system 1700 may partition the domain of the activation function into intervals. In some embodiments, the computer system 1700 may replace the activation function with an activation function that satisfies a specified criterion for flatness across each of a specified set of intervals. For example, the computer system 1700 may specify that the difference between the maximum and minimum values ​​of the activation function is less than a specified value. In some embodiments, the computer system 1700 may specify that the activation function is constant within a selected interval. In some embodiments, the computer system 1700 may select all intervals in the activation function partition to satisfy a specified flatness criterion. In some embodiments, the computer system 1700 may specify that the activation function is piecewise constant.

[0256] In block 211, in some embodiments, the computer system 1700 may create two or more partitions of the activation function. In some embodiments, the computer system 1700 may define the partitions such that the endpoints of some or all intervals in one partition are offset from the endpoints in one or more other partitions. In some embodiments, for each partition, the computer system 1700 may specify an activation function that satisfies the interval flatness condition for the partition. In some embodiments, the computer system 1700 may create a hybrid node with multiple activation functions, with each partition having an activation function and a data exchange, such as Figure 3B In some embodiments, the computer system 1700 can create multiple nodes, each node having a different one of multiple activation functions, and having data exchange, such as Figure 3B 342 or 362.

[0257] In some embodiments, the computer system 1700 may control data exchange 325, 342, or 362 based on the relative position of the input value of the data exchange of the data item and the start and end points of the relevant interval in the corresponding partition. In some embodiments, the computer system 1700 may control data exchange as an active defense, such as in conjunction with Figure 4 Box 416 and Figure 8 As discussed in block 803 of .

[0258] In some embodiments, computer system 1700 may replace a detector with a more sensitive detector in block 212. In some embodiments, computer system 1700 may replace a selected detector with a piecewise constant function in block 212, preferably excluding some data, both properties of which contribute to increased sensitivity.

[0259] In block 206 or block 212, the computer system 1700 may have replaced the activation function with a piecewise constant function. The piecewise constant function helps the computer system 1700 make the network more intelligent. However, the piecewise constant activation function requires special training techniques, such as replacing the derivative function ( Figure 2 207 and Figure 5 509), mixed training ( Figure 4 407), selective training ( Figure 4 409), data back propagation ( Figure 5 510), simulation ( Figure 5 511) and / or mixed condition training ( Figure 13 and Figure 5 512).

[0260] Data exclusion and Figure 11 Related.

[0261] However, for detector nodes, in some embodiments, computer system 1700 may take a different approach.

[0262] In some embodiments, the computer system 1700 in block 203 may replace the non-monotonic bounded activation function in block 202 with a bounded monotonic activation function. However, in some embodiments, for the detector node, the computer system 1700 may determine that a non-monotonic activation function with a single node may be a more realistic model for the set of target data items.

[0263] In some embodiments, the computer system 1700 may compute a histogram of the inputs to the activation function in block 212. In some embodiments, the computer system 1700 may compute a smooth function approximation of the histogram. In some embodiments, the computer system 1700 may model the data as a unimodal probability distribution if there is a single local maximum in the smoothed histogram function, or if one local maximum is larger than the other local maxima by at least a specified criterion.

[0264] In some embodiments, if there are multiple local maxima in the smoothed histogram function, the computer system 1700 may temporarily divide the domain of the activation function into intervals, each interval having a new node, and assign each data item to a corresponding new node based on the selected interval for data exchange. In some embodiments, the computer system 1700 may use statistical training techniques such as maximum likelihood estimation to train a unimodal parameter probability distribution for each of the original node and the multiple new nodes. In some embodiments, the computer system 1700 may train a parameter template model such as Figure 10 In some embodiments, the parameter template model may include parameters comparable to those of the parameter probability model. In some embodiments, the parameter template model may include additional parameters or hyperparameters, such as restrictions on one or more exclusion norms. In some embodiments, the computer system 1700 may use statistical training methods such as maximum likelihood to estimate template parameters. In some embodiments, the computer system 1700 may use empirical training to train template parameters ( Figure 5 In some embodiments, computer system 1700 may use gradient descent to train some parameters of the template. In some embodiments, some parameters may be designated as hyperparameters controlled, for example, by HNLMS. In some embodiments, computer system 1700 may designate a local data space of input values ​​for the detector template. In some embodiments, computer system 1700 may calculate a weighted norm in the local data space.

[0265] In some embodiments, the computer system 1700 can then test the performance of the single-node system compared to the multi-node system. In some embodiments, the computer system 1700 can evaluate the performance of the single-node and multi-node systems based on precision and recall measurements when detecting a specified set of targets, preferably based on data set aside from the training data. In some embodiments, the computer system 1700 can evaluate performance based on deviation or other accuracy metrics for systems or subsystems that include the selected element or its replacement.

[0266] In some embodiments, if one or more detectors in the multi-node version has multiple nodes in its smoothed histogram function, the computer system 1700 may repeat the process of partitioning the detector domain.

[0267] In some embodiments, the computer system 1700 may impose data exclusion restrictions on the input values ​​and output values ​​of the parameter probability model or template model, such as Figure 10 1002, 1003, 1004, and 1010. In some embodiments, computer system 1700 may use a "center surround" detection score that is lower for data items that are close but outside the acceptance distance than for data items that are far from the center point.

[0268] In some embodiments, the computer system 1700 can use a flatter function for data within the acceptance norm, such as a super-Gaussian function clipped to one standard deviation or less, while training using an alternative derivative function such as the L1 norm, as combined with Figure 2 In some embodiments, computer system 1700 may use a constant acceptance score while training using an alternative derivative function.

[0269] In block 213, in some embodiments, the computer system 1700 can create a perceptual discriminator. For example, the computer system 1700 can replace the discriminator with two sensitive detectors and replace the combining nodes with connection weights and activation functions, by which the computer system 1700 can calculate an approximation of the difference or ratio of the two detection scores.

[0270] In block 214, the computer system 1700 may train the node or cell to simulate one or more known sets. In some embodiments, the computer system 1700 may train the node so that its activation value is specified to be above or below a specified threshold for data items in the known set, and to have activation values ​​on the other side of the specified threshold for data items not in the known set. In some embodiments, for two or more known sets, the computer system 1700 may train the node or cell so that it has specified values ​​that are above or below the specified threshold for one or more known sets and on the opposite side of the specified threshold for one or more other known sets.

[0271] In block 215, the computer system 1700 may convert the node into a cell. The cell may have multiple output values. The cell may store one or more values. In some embodiments, the computer system 1700 may pass a value to be stored by the cell from the activation value of the node. In some embodiments, the computer system 1700 may pass a value from another cell to a specific cell to be stored in the specific cell. In some embodiments, the computer system 1700 may pass a value representing a node attribute stored in a cell associated with the node. Attributes and Figure 4In some embodiments, computer system 1700 may store values ​​inferred from state space probability estimates computed by computer system 1700 in cells, where a set of cells represents a hidden state space. The hidden state space will be combined with Figure 7 Have a discussion.

[0272] Figure 3A is a schematic diagram of an illustrative example including unit 301. Figure 3A Also included are some external elements, including cells 313 and 314, nodes 316, 317, and 318, and an autoencoder bottleneck layer 319 controlled by a mixing parameter. Figure 3A Also included are elements within unit 301, including cells 312, nodes 315, components of hybrid network nodes (302, 303, 304, 305, 306, and 307), and components of template models. A unit can include an unlimited number of nodes, cells, template models, and other units.

[0273] exist Figure 3A , the illustrative cells also include a robust template model that includes input variable norm cells 309, 310, and 311, a bias cell 320, and a template sum cell 308. Each of cells 309, 310, and 311 computes a univariate norm of the form

[0274] f i (x)=|x i -μ i | p , where μ i Can be a learned parameter or a hyperparameter specified by HNLMS.

[0275] The norm p is a hyperparameter, for example, specified by HNLMS. In some embodiments, the computer system 1700 can estimate μ by empirical training. i value( Figure 5 521). For networks not optimized for sensitivity, typical values ​​of p are 1 or 2. Larger values ​​of p are preferred for flatter responses and higher sensitivity. In some embodiments, computer system 1700 can change the value of p during training, e.g., as specified by the system design and / or HNLMS.

[0276] In template sum cell 308, computer system 1700 may calculate

[0277] g(x)=S*(∑ i a i f i (x)) 1 / p ,

[0278] Where S is a set of scaling hyperparameters, such as those set by HNLMS. In some embodiments, the output of cell 308 may be -g(x) or exp(-g(x)). The value a i It can be a learning parameter or a hyperparameter specified by HNLMS, for example. In some embodiments, all a i are all set to 1.0. In some embodiments, the computer system 1700 can train the value a through empirical training. i and deviation 320( Figure 5 In some embodiments, the computer system 1700 can train the value a by maximum likelihood of a parameter probability distribution model. i and deviation 320. Figure 3A In the example, the weight of the input connection of the template input is written as a i , rather than the more traditional w k , to avoid the normal node connection weight w connected to element 302 k confusion. Figure 10 A more detailed schematic of the template is shown, where it is indicated that w k Value (corresponding to Figure 3A a in i value) can be estimated as the estimated propagation metric The reciprocal of .

[0279] The internal components of the unit 301 also include internal components of the hybrid network node, including multiple activation functions 305, 306 and 307, data exchange 304, and an element 302 that calculates a weighted sum of input values ​​and bias 303, where the input values ​​include the output value of node 316 multiplied by the connection weight w1, the output value of node 317 multiplied by the connection weight w2, and the output value of node 318 multiplied by the connection weight w k and deviation 303. Solid arrows represent directed connections, such as connections between nodes in a neural network. Dashed-dot arrows represent data communication links between cells and between cell 312 and node 315. Data communication links can be unidirectional or bidirectional, such as the link between cell 314 and cell 312.

[0280] In a preferred embodiment, the computer system 1700 may also impose data exclusion restrictions on the template sum variable 308 and / or the input variables 309, 310, 311 ( Figure 11 and Figure 5518 of the example program). For example, in some embodiments, the computer system 1700 may impose a data exclusion restriction on a template having output 321 by replacing the output with a constant background score if one or more of the variables 309, 310, 311, or 308 exceeds a specified limit. In some embodiments, if the norm of the difference between the data item and the specified center data point of the template exceeds a specified limit for a specified norm in the data space 319, the computer system 1700 may implement norm-based data exclusion by replacing the output 321 with a specified background value. In some embodiments, the computer system 1700 may impose data exclusion restrictions during training and deployment. Hybrid network template units with data exclusion restrictions such as Figure 10 shown.

[0281] Each of the input variables 309 , 310 , and 311 may have an incoming connection from a node or cell, or as shown, the input variables may receive incoming connections from the bottleneck layer of a traditional autoencoder or a hybrid parameter-controlled autoencoder 319 .

[0282] Figure 3B Three embodiments of data exchange that can be used by computer system 1700 in active defense are shown ( Figure 4 Box 416 and Figure 8 803).

[0283] Element 322 is an exemplary embodiment of a hybrid element that includes two activation functions 323 and 324 with outgoing connections to one or more nodes, such as 327. Element 322 also includes a data exchange 325 that selectively forwards the result of summation element 326 to one of activation functions 323 or 324. In an exemplary embodiment of active defense ( Figure 4 Box 416 and Figure 8 803 ), the computer system 1700 may control the data exchange 325 to select between activation functions 323 and 324 to reduce 322 vulnerability to data that may cause imperceptible errors.

[0284] In some embodiments, an element may have more than two activation functions. In some embodiments, computer system 1700 may include a probabilistic component in its control of data exchange 325, wherein the probabilistic component may select between two or more activation functions that all meet a specified sensitivity criterion. In some embodiments, computer system 1700 may vary the probability of selection in data exchange 325 based on the value of the data item being exchanged.

[0285] Element 331 is an illustrative embodiment of a unit including summation element 334, activation function 333, and data exchange 332. In the illustrative embodiment of element 331, in some embodiments, computer system 1700 can control data exchange 332 as part of a more indirect active defense method than the illustrative example of 322.

[0286] In some embodiments, computer system 1700 can control data exchange 332 to control data delegation. Figure 5 Box 518 and Figure 11 Have a discussion.

[0287] Element 342 is a pure data exchange that exchanges data stream 341 between node 343 and node 344. Figure 3A As with other examples in the , computer system 1700 can use data exchange 342 ( Figure 4 Box 416 and Figure 8 The difference is that the computer system 1700 can directly control the data exchange 342 without tying the data exchange 342 to a specific node.

[0288] In some embodiments, computer system 1700 may only use data exchange 342 to control data flow. For example, computer system 1700 may use data exchange 342 to control data distribution in a distributed computing system. As another example, computer system 1700 may use data exchange 342 to select specific members of a collection to classify a specified data item.

[0289] Because data exchange 342 is not internal to the component, computer system 1700 can use the exemplary embodiment represented by data exchange 342 in a component of a traditional neural network or a hybrid network, where the component is designated to contain only traditional neural network nodes.

[0290] Figure 3C is an example graph of an alternative derivative of an activation function. In some embodiments, the computer system 1700 may use a derivative of a function different from the actual activation function in a selected node in the network as an alternative derivative. Figure 3C In the illustrative example of , the alternative derivatives are functions represented by bold dashed double-dotted segments 361 , 362 , and 363 , which are derivatives of functions represented by straight dashed double-dotted segments 364 , 365 , and 366 .

[0291] exist Figure 3CIn the example of , the actual activation function is a piecewise constant function, represented by segments 351, 352, 352, 354, 355, and 356. In some embodiments, computer system 1700 can use this activation function for nodes that are distinguishing between known set S1 associated with interval 352 and known set S2 associated with interval 355. In some embodiments, computer system 1700 can use a step function as shown in intervals 353 and 354 to represent the lack of a definitive decision between 352 and 355. In some embodiments, computer system 1700 can use more steps for the intermediate regions. In some embodiments, computer system 1700 can use a single intermediate step, or can jump directly from 352 to 355 with a single discontinuity.

[0292] While the illustrative example is a piecewise constant activation function, in some embodiments, the computer system 1700 can use an alternative derivative function in place of any activation function.

[0293] In some embodiments, the computer system 1700 can use a piecewise constant activation function as the activation function of the detector node. For example, in some embodiments, the computer system 1700 can use an activation function with only three segments 354, 355, and 356 to represent the detector node. As another example, for a feature variable with ordered values, the computer system 1700 can use a pure step function, such as segments 352, 353, 354, and 355. In any of these cases, in some embodiments, the computer system 1700 can use an alternative derivative function.

[0294] Figure 4 is a diagram of the sensitivity levels and active perceptual classification hierarchy. For ease of discussion, Figure 4 The dashed boxes 401, 402, and 403 in FIG. 4A and FIG. 5A place each illustrative technique in the dashed box that best fits that technique. However, the grouping is not absolute. Many techniques may be useful for more than one dashed box.

[0295] Dashed box 401 includes an illustrative example of a model and process associated with a first level of sensitivity. The first level of sensitivity is the first line of defense against imperceptible errors in a hybrid network. In some embodiments, computer system 1700 may be able to explicitly test whether the system meets the first level of sensitivity.

[0296] Dashed box 402 includes an illustrative example of a model and process associated with the second level of sensitivity.

[0297] Dashed box 403 includes illustrative examples of models and processes related to active classification, including classification during deployment and ongoing lifelong learning.

[0298] In block 405, the computer system 1700 may use a relatively simple set of first level sensitivity techniques, combined with Figure 2 1700 can evaluate the relationship between these properties and the degree to which a component is susceptible to imperceptible errors. In some embodiments, the computer system 1700 can test for violations of basic sensitivity by using simulated adversarial attacks.

[0299] A classifier system violates sensitivity if a small change in the input can change a correct classification to an incorrect classification. In some cases, small changes may be imperceptible or easily ignored by a human observer or any sensible animal.

[0300] For example, in image recognition, if the change in each color component of a pixel is comparable to or less than the quantization level, then a human observer of a digital image can easily ignore or fail to perceive the change. The maximum magnitude of the change in any input variable is called the L of the change vector. ∞ Norm. For L ∞ ≤ε input changes, functions f(x1,x2,…,x N ) is approximately If the number of input variables N is large, then L ∞ Small changes in the norm can lead to large changes in the output. This property of multivariate functions in high-dimensional spaces is the main source of imperceptible errors in classifier networks.

[0301] Unfortunately, for classifier systems, the number of input variables is a fixed, specified number. Furthermore, in many classification tasks, including image recognition, N can be very large. On the other hand, the number of input variables for a single element may be specified by the system design and / or HNLMS and may be much smaller than the number of input variables for the entire system.

[0302] In basic sensitivity, computer system 1700 focuses on ensuring that each element meets the specified sensitivity criteria.

[0303] Examples of sensitivity criteria for individual components are as follows:

[0304] 1) The derivative of the output should be less than the specified magnitude, with the possible exception of data items within the specified distance of the decision boundary.

[0305] 2) For any interval of the activation function representing the detection, the difference between the maximum and minimum output values ​​should be less than the specified magnitude.

[0306] 3) The difference between the maximum output value and the minimum output value of all data in the "remote area" should be less than the specified value

[0307] a) A “remote area” is a designated area where the minimum distance from any point in the area to any point in one or more designated detection areas is greater than a specified standard.

[0308] b) The detection region can be specified by an interval in the activation function or by the norm of a specified point in the template detector.

[0309] In block 405, the computer system 1700 may modify the activation functions in the nodes, add elements to the network, add several special models, and / or make various other changes to the network to better meet several basic sensitivity criteria that the computer system 1700 may automatically check. Figure 2 An example of the modifications made by computer system 1700 in block 405 is discussed.

[0310] For example, in some embodiments, Figure 2 In block 202 , the computer system 1700 may change the unbounded activation function to a bounded activation function to better satisfy the above criterion (3).

[0311] In some embodiments, Figure 2 In block 204, one of the reasons computer system 1700 may exclude data is that it better meets the above criterion (3).

[0312] In some embodiments, the computer system 1700 may change the activation function so that Figure 2 The box 205 has a flatter interval and / or Figure 2 , block 206 in , has piecewise constant intervals to better satisfy criteria (1) and (2) above. In some embodiments, computer system 1700 can use alternative derivative functions to speed up the training process, particularly after applying the changes made by computer system 1700 in blocks 205 and 206, which might otherwise slow or stop training in backpropagation through the modified elements.

[0313] In some embodiments, computer system 1700 may make changes in blocks 203 , 208 , 209 , 212 , and 213 to better meet basic sensitivity criteria, such as the illustrative examples described above.

[0314] In block 406 , computer system 1700 may select one or more of several methods to increase the sensitivity of a node having an activation function that includes one or more intervals that do not meet a flatness criterion, i.e., intervals within which the variation in activation function value exceeds a specified limit.

[0315] In some embodiments, computer system 1700 may first divide the domain of the node's activation function into intervals. For example, HNLMS may specify a rule for dividing the activation function into intervals. For example, in some embodiments, computer system 1700 may attempt to find one or more intervals that meet a specified flatness criterion. Computer system 1700 may then divide the domain into alternating flat and non-flat intervals. In some embodiments, computer system 1700 may arbitrarily divide the domain into intervals.

[0316] Computer system 1700 may then select a non-flat interval, which in some embodiments may be the entire domain of the activation function.

[0317] In some embodiments, the computer system 1700 may divide the selected interval into subintervals. The computer system 1700 may then create a unit with a separate activation function for each subinterval, and the input of the activation function of the original node is used as data exchange. This structure of data exchange with activation selected from multiple activation functions is as follows: Figure 3A and 3B As shown. In some embodiments, computer system 1700 can use this structure to divide the activation function into alternating monotonically increasing and monotonically decreasing intervals. In some embodiments, at block 406, computer system 1700 can use the same structure in a two-layer arrangement, first dividing the domain of the original activation function into alternating flat and non-flat intervals, and then dividing each non-flat interval into multiple subintervals. Computer system 1700 can use other embodiments to achieve similar results.

[0318] Once the non-flat interval is divided into subintervals, the computer system 1700 can approximate the activation function in the subinterval with a function that meets the flatness criterion. In some cases, the computer system 1700 can approximate the activation function on the subinterval with a constant.

[0319] In some embodiments, computer system 1700 can create separate copies of the subnetwork for the selected nodes and train the subnetwork separately for each subinterval. In some embodiments, computer system 1700 can use knowledge sharing links with equal relationships to normalize the copies of the subnetwork so that they have similar activation values ​​as the original subnetwork. In some embodiments, computer system 1700 can use knowledge sharing links with not equal relationships to create diversity among multiple copies of the subnetwork.

[0320] In some embodiments, the computer system 1700 may analyze the selected node as a discriminator, possibly under the guidance of HNLMS. For example, if the selected node is an output node of a network or a unit with a clear target, the computer system 1700 may interpret the node as distinguishing data items in one target set from data items in another target set. In some embodiments, if the node is already associated with two known sets, the computer system 1700 may characterize the node as distinguishing between the two known sets. In some embodiments in which the selected node is trained by backpropagation derivatives, the computer system 1700 may interpret the selected node as distinguishing between data items with negative backpropagation derivatives and data items with positive backpropagation derivatives.

[0321] If the selected node does not have a bounded monotonic activation function, in some embodiments, the computer system 1700 may Figure 2 The nodes are modified in steps 201, 202, and 203 of

[17] to obtain nodes with bounded monotonic activation functions. For bounded monotonic activation functions, correctly distinguished data items will activate at the extreme values ​​of the activation function domain, where the activation function is relatively flat because the activation function is bounded. In other words, non-flat intervals will be located in the middle region of the activation function domain. In other words, data items in non-flat regions are data items that have not been correctly distinguished in the current training state. Training each subinterval separately allows computer system 1700 to successfully distinguish many data items in each subinterval.

[0322] In some embodiments, for example, under the guidance of HNLMS, the computer system 1700 can exploit this opportunity to improve classification performance. For example, in some embodiments, the computer system 1700 can train a subinterval with the original non-flat activation function until a stopping criterion is met, and then change the activation function of the subinterval to be flatter while approximating the original activation function.

[0323] In some embodiments, computer system 1700 can partition the domain of the activation function for the selected node in a variety of different ways. For example, computer system 1700 can first partition the domain into intervals and then perform a second partition on the domain, where, except for the open intervals at the extremes, each interval boundary in the second partition is located at the center of the interval in the first partition. In some embodiments, computer system 1700 can create two or more ways to partition the domain into intervals. In some embodiments, computer system 1700 can also partition each non-flat interval into subintervals in a variety of ways. Two confusable data items in the same subinterval in one partition may be in different subintervals in another partition. Therefore, cells with different partitions may differ in which confusable data pairs become distinguishable.

[0324] In some embodiments, computer system 1700 can use this diversity to improve classification performance, even higher than that achieved using a single partition. In some embodiments, computer system 1700 can test each partition and select the partition with the best performance. In some embodiments, computer system 1700 can use a collection of networks with different partitions, such as an ensemble.

[0325] In some embodiments, the computer system 1700 can use a collection of networks with different partitions for diagnosis and detection, such as Figure 4 In some embodiments, the computer system 1700 can use a network set with different partitions for active defense, such as combining Figure 4 Box 416 and Figure 8 As explained in block 803 of FIG.

[0326] In some embodiments, computer system 1700 may use different methods to rationalize non-flat intervals in place of or in addition to partitioning into sub-intervals in block 406. In some embodiments, computer system 1700 may verify that outgoing connections from non-flat nodes or intervals connect only to robust template models. In some embodiments, computer system 1700 may impose data exclusion restrictions on nodes or cells that receive connections from non-flat nodes or intervals.

[0327] In block 407, in some embodiments, the computer system 1700 may perform hybrid training. That is, the computer system 1700 may use multiple training techniques, not just gradient descent with backpropagation of derivatives. Figure 5 A number of example hybrid training techniques are discussed.

[0328] In block 408, in some embodiments, the computer system 1700, in coordination with the HNLMS, can find the best location in the network to integrate the selected "knowledge fragment." The selected knowledge fragment can be from an external source or can be knowledge represented in cells and / or nodes of the network or in an accompanying network. In some embodiments, the knowledge fragment can be in the network in a network repository.

[0329] An example of a "piece of knowledge" is knowing which data items are members of a known set. By definition, a set of data items is a known set only if the computer system 1700 has a way to determine whether a specified data item is in the set. Although any subset of the training data items is a known set, preferably, in block 408, the computer system 1700 is able to determine whether a data item that is not in the training data is in the known set. For example, any set defined as a data set accepted by a specified detector node or unit is a known set, and the computer system 1700 can determine whether a specified data item is in the known set by computing the activations of a subnetwork of the detector and observing the output of the detector. In some embodiments, a "piece of knowledge" may relate to two sets that a discriminator distinguishes. Without loss of generality, some illustrative examples may be discussed with respect to the detector element. However, in some embodiments, the computer system 1700 may use substantially the same process for the discriminator element.

[0330] In some embodiments, in block 408 , for a specified knowledge snippet, the computer system 1700 may test selected candidate locations in the network to see whether integrating the knowledge snippet into the selected network location may improve classification performance, sensitivity, and / or overall interpretability.

[0331] If the knowledge fragment is a detection of a known set, the computer system 1700 can integrate the knowledge fragment in any of a variety of ways. In some embodiments, the computer system 1700 can connect the detector to one or more nodes or units in the candidate location.

[0332] In some embodiments, the computer system 1700 can create new nodes or units in the current base network and train the new nodes or units to simulate the detector. In simulation training, the new node or unit is trained to match the detector output for all specified data items. The specified data items do not need to be labeled. The specified data items do not even need to be real data items. They can be generated or synthetic data items. The computer system 1700 can train the new node to match the output of the detector for synthesized generated data. The computer system 1700 is not limited to using the existing subnetwork of the candidate location with the new node. In some embodiments, the computer system 1700 can train a completely new subsystem using an unlimited amount of potential training data for simulation.

[0333] In some embodiments, the computer system 1700 can test the performance, sensitivity, and / or overall interpretability of each selected candidate location. For example, under the guidance of HNLMS, the computer system 1700 can then select a set of one or more candidate locations and integrate the knowledge fragment into these locations.

[0334] In some embodiments, the computer system 1700 can screen potential candidate locations. For example, in some embodiments, the computer system 1700 can calculate the correlation between the output of the detector and the back-propagated derivative of the global or local target of the potential candidate node. This correlation indicates the extent to which the incremental training update can improve the target, which is averaged over the data set that measures the correlation. A high correlation will indicate a good candidate location. If the potential candidate node back-propagates data examples instead of derivatives, the computer system 1700 can calculate the degree of consistency between the back-propagated data examples and the detection and rejection sets of the detector. In some embodiments, for example, based on an analysis of the needs of the candidate locations estimated by the computer system 1700 under the guidance of HNLMS, the computer system 1700 can limit the consistency metric to recall or precision.

[0335] In block 409, in some embodiments, the computer system 1700 may selectively train only a subset of the elements in the network being trained and / or selectively train elements only on a specified subset of the data. The computer system 1700 may use selective training to speed up or better control hybrid training, which may be applied to any sensitivity level. Figure 4 , selective training is arbitrarily placed in box 401.

[0336] In some embodiments, computer system 1700 may selectively train an element that distinguishes two related known sets only on data items in the union of the two known sets.

[0337] In some embodiments, the computer system 1700 can selectively train the decision element only on data close to the decision boundary. In some embodiments, the computer system 1700 can change the selection of training data items when the location of the decision boundary changes during training.

[0338] In some embodiments, computer system 1700 may apply selective training by selecting a subset of elements to be trained for one or more specified data items.

[0339] The selectivity of the subset of training elements complements two features of sensitivity hybrid learning. In some embodiments, the first feature of hybrid training is that computer system 1700 will continuously modify the network during training and, in some embodiments, during deployment. In a preferred embodiment, when computer system 1700 modifies a trained network, computer system 1700 can temporarily focus training on the modified element and other elements most affected by the modified element.

[0340] A second feature of hybrid training is that the learning process can be actively controlled, for example, by the HNLMS. For example, the AI ​​system or human team within the HNLMS can instruct the computer system 1700 to focus on training specific components. Furthermore, the HNLMS can actively monitor the training process and focus training on the components that need the most improvement.

[0341] In an illustrative embodiment, computer system 1700 may maintain a list of components that are being trained.

[0342] Due to an error or end call for an explicit or implicit local or global target, the computer system 1700 can actively add the element being trained to the list or add a data item to the element's list of data items. In some embodiments, the error or end call can be for data that did not previously have an error or end call for the element. In some embodiments, the error or end call can be for new real data or newly generated or simulated data. The error or end call can occur on a data item that has been modified by a simulated attack or other interference.

[0343] In some embodiments, computer system 1700 can remove elements from the list based on specified criteria.

[0344] In some embodiments, computer system 1700 may add newly created or modified elements to the list being actively trained.

[0345] In some embodiments, for a new or modified component, the computer system 1700, under the direction of, for example, HNLMS, can temporarily suspend training of components connected to the new or modified component. In other embodiments, the computer system 1700 can activate training of components through connections from the new or modified component.

[0346] In block 410, computer system 1700 can test the sensitivity of the decision boundary and, if necessary, modify the network to move the decision boundary to improve the sensitivity of the decision. For the purposes of block 410, a "decision boundary" is a set of points in local or global data space where the activations of the discriminators for two sets of targets are at a specified threshold. Preferably, each set of targets is a known set. The discriminator can be a node or unit that has been trained as a discriminator, or a new node or unit created by computer system 1700 by combining the scores of two trained detectors.

[0347] For block 410, the desired goal is to make any data point in the selected normed local or global data space that is on or near the decision boundary appear reasonable to a human observer as an example of data on the boundary. A human observer may agree that a data point is reasonable because (1) it matches both target sets reasonably well. In some embodiments, a human observer may agree that a data point is reasonably on the boundary because (2) it matches neither target set very poorly and should not be accepted as an example of either. For the purposes of block 410, in some embodiments, data points that connect data points that satisfy the rationality condition (1) with data points that satisfy the rationality condition (2) to form a smooth surface may also be considered reasonable.

[0348] In some embodiments, in block 410, computer system 1700 may construct and train a traditional neural network with outputs that are differentiable with respect to input values ​​from a global or local data space to simulate the hybrid network discriminator whose decision boundary computer system 1700 is testing and improving. Computer system 1700 may train a neural network or hybrid network to simulate another network using generated or simulated data as well as unlabeled real data. Using the necessary data, computer system 1700 may train the simulated network using the necessary unlabeled or generated data, up to the capacity of the simulated network. In some embodiments, computer system 1700 may train a simulated neural network that has a node corresponding to each node in the hybrid network being trained, with each node in the neural network trained to simulate the corresponding node in the hybrid network as closely as possible. In a preferred embodiment, computer system 1700 uses at least the same local or global input space as the discriminator being simulated and trains the nodes in the neural network to simulate the discriminator as closely as possible. This simulation cannot be perfect. For example, a simulated neural network with a differentiable activation function can at best approximate the activations of a node with a discontinuous activation function, and vice versa.

[0349] In some embodiments, the computer system 1700 can find data points on the decision boundary of a traditional neural network with differentiable outputs by backpropagating the objective of minimizing |act(x(d)-T)| to the input data value d, where T is the discrimination threshold of the decision boundary and act(x(d)) is the activation of the discriminator node for the data item d.

[0350] For this goal, every point on the decision boundary of the simulated neural network will have a value of zero. Through many different random starts, the computer system 1700 can find multiple points on the decision boundary of the neural network that simulates the hybrid network. In some embodiments, the computer system 700 can locally estimate the tangent hyperplane of the decision boundary of the simulated neural network by fitting a multivariate linear regression model to example points on the decision boundary. In some embodiments, the computer system 1700 can then calculate an orthogonal line to the estimated decision boundary. In some embodiments, the computer system 1700 can then search along this orthogonal line, for example, by using a binary search, to find a point in the data space that is on the decision boundary of the hybrid network.

[0351] In some embodiments, computer system 1700 can test for reasonableness by testing for consistency. That is, computer system 1700 can train a diverse set of networks. Then, computer system 1700 can measure how much the location of the decision boundary varies from one network to another. If there are significant differences between the networks, computer system 1700 can use this as a diagnostic that at least some networks did not find a reasonable decision boundary.

[0352] In some embodiments, the computer system 1700 can train a "BOTH" detector and / or a "NEITHER" detector for data points on or near the decision boundary of a hybrid network and / or a simulated neural network. Figure 2 208 associated with the BOTH and / or NEITHER detectors. In some embodiments, the computer system 1700 may assign a constant background score as a unit output value to all data items detected by the NETHER detector.

[0353] In some embodiments, computer system 1700 can train a discriminator between the sets "BOTH" and "NEITHER" and a detector for each set. In some embodiments, if the discriminator variable associated with the decision boundary includes input from a detector for each alternative, computer system 1700 can use two detectors above a specified detection threshold as an initial indication that a data item is in the "BOTH" set. In some embodiments, computer system 1700 can use two detectors below a specified detection threshold as an initial indication that a data item is in the "NEITHER" set. In some embodiments, if the discriminator element does not yet include such a detector or input from such a detector, computer system 1700 can train a detector for each set being discriminated.

[0354] In some embodiments, the computer system 1700 may use additional indicators to distinguish between "BOTH" sets and "NEITHER" sets. For example, in some embodiments, the computer system 1700 may calculate a histogram of the data from the union of two sets on or near the decision boundary. The computer system 1700 may then determine whether the histogram is unimodal or bimodal, as combined with Figure 15 In some embodiments, the computer system 1700 can calculate such a histogram of the data projected onto a line orthogonal to the hyperplane of the estimated decision boundary. In some embodiments, the computer system 1700 can calculate the projection of an orthogonal line of multiple orthogonal lines.

[0355] As a second example, the computer system 1700 can calculate the magnitude of the derivative of the discrimination score along a line orthogonal to the decision boundary through a point on the decision boundary of the data input being evaluated. A low magnitude of this derivative indicates that the data point is in the "NEITHER" set. A high magnitude indicates that the data point is in the "BOTH" set.

[0356] In some embodiments, the computer system 1700 and HNLMS can create one or more new features to distinguish between data items detected by both detectors. For example, in some embodiments, the computer system 1700 can create new features to distinguish between the two sets through standard training of the discriminator node. In some embodiments, the computer system 1700 can train additional new nodes in the subnet for the new discriminator node. As another example, the computer system 1700 can use constrained optimization to train the new discriminator ( Figure 5 524).

[0357] In some embodiments, computer system 1700 may use mereological knowledge to refine the decision boundary. In an illustrative embodiment, computer system 1700 may compute the alignment of image portions with mereological representations of portions of an object in the image or an object hypothesized to be present in the image. Figure 4 Boxes 413 and 415 and Figure 7 、 12 , 13, and 19, further discuss the alignment of parts with designated mereology.

[0358] For example, in some embodiments, computer system 1700 can sample a pair of data items near a decision boundary, the pair of data items from each of two known sets whose mereologies contain one or more shared components. In some embodiments, a pair of data items from the same category or named set can share the same mereology. For any shared mereological component, computer system 1700 can align each data item with its mereology and store the alignment information in a cell in the unit that detects the specified portion of each image, thereby at least partially aligning the two images with each other. Even if the mereologies are not identical, computer system 1700 can create and train detectors and / or feature variables to distinguish one or more pairs of two parts that are aligned with each other.

[0359] In some embodiments, computer system 1700 may project a set of selected data items onto a line that computer system 1700 calculates to be orthogonal to the estimated decision boundary of the simulated neural network and / or the estimated decision boundary of the hybrid network. In some embodiments, computer system 1700 may constrain the selected data items to be within a specified distance of the orthogonal line. In some embodiments, computer system 1700 may generate additional data items for each of the two sets being distinguished. In some embodiments, computer system 1700 may generate additional data items by applying random perturbations and / or adversarial attacks to each selected data item. In some embodiments, preferably, computer system 1700 may augment each selected data item with the same number of generated items. In some embodiments, computer system 1700 may generate the additional data items using a pair of generators, one generator trained to generate examples of one of the known sets being distinguished, and a second generator trained to generate examples of the second known set. In general, computer system 1700 may use any method to create a proportional number of additional examples of each known set near the decision boundary.

[0360] In some embodiments, computer system 1700 can then estimate the probability density function of each of the two sets being identified. In some embodiments, computer system 1700 can calculate a histogram of data item counts based on the position of each selected data item projected onto a line orthogonal to the decision boundary. In some embodiments, computer system 1700 can estimate a regression function of the difference or ratio of two estimated density functions. In some embodiments, computer system 1700 can estimate the Bayesian minimum error segmentation point of the smoothed estimate obtained from the smoothed approximation of the regression estimate or histogram counts of the two estimated probability density functions or from the regression estimate or histogram counts. In some embodiments, computer system 1700 can use the Bayesian minimum error point of this estimate as a point on the decision boundary of the update.

[0361] In block 411, in some embodiments, the computer system 1700 may create a local normed space. In some embodiments, the computer system 1700 may create the local normed space using a neural network autoencoder or an autoencoder controlled by a hybrid network parameter with specified characteristics. Figure 9 ). In block 411, the specified features may be engineered features specified and / or calculated by, for example, HNLMS. As is well known to those skilled in the art of neural networks, an autoencoder is a network that is trained for a specified set of data examples to encode each input data item using a restricted encoding, referred to as the autoencoder's "bottleneck" layer, such as a vector having a specified finite dimension, and then, for a specified training data set, to produce an output for each data example that matches the input as closely as possible. For example, for a local autoencoder, the computer system 1700 or HNLMS may specify a set of nodes as the input data space. For example, the input space of the autoencoder may be a collection of nodes connected to a node or unit, such as a detector node or unit or a discriminator node or unit. As another example, the input space may be the union of elements connected to a pair of detectors, a classifier, or a set of two or more detectors. The input space may be the union of input variables or the union of elements connected to a group of decision elements.

[0362] Combine Figure 9 Autoencoders with hybrid parameter control of specified features are discussed.

[0363] In some embodiments, the computer system 1700 can introduce a local normed space to limit the effective dimensionality of input to one or more detectors and / or discriminators, thereby helping to improve the sensitivity of the detectors and / or discriminators. For example, in some embodiments, in block 410, the computer system 1700 uses a local normed space.

[0364] In block 412, in some embodiments, the computer system 1700 can manipulate data and perform sequential computations in ways that are not representable with traditional neural networks. In some embodiments, each cell has local memory. In some embodiments, the computer system 1700 can perform sequential computations associated with the cell before, during, and / or after activation of the computational unit and node.

[0365] For example, in some embodiments, computer system 1700 may use these cells to calculate attributes and features, as described in the following paragraphs.

[0366] In some embodiments, the computer system 1700 may use these cells to implement specialized code developed specifically for the domain in which the hybrid network is deployed. This specialized code may represent a process known as "knowledge engineering." In some embodiments, the computer system 1700 may use these cells to perform logical reasoning ( Figure 21 2102). In some embodiments, the computer system 1700 can use these cells to represent a probabilistic network, such as a hidden Markov process or a dynamic Bayesian network ( Figure 21 2102). In some embodiments, the computer system 1700 can use these cells to represent cellular automata. Figure 19 and 21 These uses of cells for performing sequential calculations after receiving data items to be classified are discussed.

[0367] In some embodiments, computer system 1700 can perform sequential computations specified by knowledge engineering on data stored in cells or in input or output data. For example, if computer system 1700 has generated text, images, or videos, in some embodiments, computer system 1700 can compare the proposed generated output with the training data to verify that the proposed output is not close enough to any of the project data to infringe copyright.

[0368] As another example, in some embodiments, computer system 1700 performs logical or set-theoretic computations on the inputs, outputs, and / or data of computations within the network. For example, in a text generator, in some embodiments, computer system 1700 may test the logical consistency of the output. For example, computer system 1700 may have program code that represents syllogisms such as "If A implies that B is true, and A is true, then B is true" and "If A is true and B contradicts A, then B is not true." In some embodiments, computer system 1700 may have ontology-based logic, such as "If A is a kind of B, and there is an example of A with property C, then there is an example of B with property C."

[0369] As a concrete example of violating the logical use of the ontology, a state-of-the-art text generator repeatedly asserts that “perceptrons cannot represent the XOR function,” while also acknowledging that “basic perceptrons can represent the XOR function” and even providing an algorithm to train basic perceptrons to represent the XOR function. This behavior is neither logical nor perceptible.

[0370] The claim that "perceptrons cannot represent the XOR function" is false but widely cited online. The text generator is trained on web text, but it is also a verbatim quote from the out-of-print book where Frank Rosenblatt introduced perceptrons and demonstrated that even a basic perceptron can be trained to represent any Boolean function, including the XOR function. Without explicit logical analysis, it is difficult to get a neural network with trillions of learned parameters to forget something, even if it logically contradicts something else it has learned. In various embodiments, computer system 1700 can overcome this difficulty by explicitly applying logical reasoning in cells, in computations that are separate from and / or override computations in nodes.

[0371] In some embodiments, computer system 1700 may store a known value, called an "attribute," associated with a specified element as a variable in a cell. In some embodiments, computer system 1700 may determine whether to store an attribute associated with an element based on the activation value of the element for the current data item. For example, in some embodiments, for a detector or discriminator element, computer system 1700 may only store an attribute if the activation value is within a specified interval, such as a detection acceptance interval.

[0372] An example of an attribute is the position of a node in an image in a convolutional network. Another example of an attribute is the orientation of a detected object, such as the rotation angle of a line segment. Other attributes of an object include size, color, and texture. In models based on hierarchical knowledge structures such as mereology or ontologies, elements may have attributes inherited from other elements in a hybrid network. In some embodiments, cells can be programmed to communicate attributes through data communication links between cells and between cells and nodes. In some embodiments, computer system 1700 can control the communication of attributes based on node activation values ​​and the attribute values ​​of the current data item.

[0373] In some embodiments, computer system 1700 may implement software to calculate attributes or features specified by a human team, such as HNLMS. In some embodiments, computer system 1700 may store the value of the human-specified feature in a cell within a specified unit. An example of a human-specified feature is the estimated frequency of formants in speech analysis. Estimation of formant frequencies is well known to those skilled in the art of speech signal processing. Another example of a human-specified feature is explicit edge detection in an image using a high-pass filter. While convolutional neural networks can detect edges in an image, edge detection in a convolutional neural network is intermixed with all other activations of the network nodes. In some embodiments, computer system 1700 may explicitly label detected edges as edges. Detection of edges in an image is well known to those skilled in the art of image digital signal processing. In some embodiments, computer system 1700 may use the detected edges in mereology. In some embodiments, computer system 1700 may use the detected edges to align an image with a model or another image.

[0374] In some embodiments, the computer system 1700 can specifically design and train new features to improve discrimination between two known sets. In some embodiments, the computer system 1700 can use such features as specified features in an autoencoder with a mixture of specified features, where the bottleneck layer includes new features in variables in the local normed space. In some embodiments, as part of HNLMS, the computer system 1700 can develop new features to discriminate between examples of real or generated data items near the decision boundary between two known sets, such as Figure 4 For example, computer system 1700 can create and train new features to discriminate between data items from two known sets detected by BOTH detectors, as described in association with block 410.

[0375] In some embodiments, computer system 1700 can automatically create new features by training new discriminator nodes to improve the discriminative ability of existing discriminator nodes or units for a specified target set pair. In some embodiments, computer system 1700 can train new feature nodes or units on a selected dataset. In some embodiments, computer system 1700 can select errors and end calls of existing discriminators as training data for new features. In some embodiments, computer system 1700 can select data items near the decision boundary of existing discriminators as training data for new features.

[0376] In some embodiments, the computer system 1700 can create and train one or more candidate new features, and then use the one or more selected candidate new features added to the specified features in an autoencoder controlled by a mixture parameter with the specified features to test the performance of the system. In some embodiments, the computer system 1700 can use the selection of new features and classification performance to test the comparative sensitivity of the system. For example, in some embodiments, the computer system 1700 can implement one or more simulated adversarial attacks on the system and measure the success rate of the adversarial attacks.

[0377] For example, in some embodiments, the computer system 1700 may sample a pair of data items near the decision boundary, selecting one from each known set. The computer system 1700 may then align each data item with the mereology and store the alignment information in a unit that detects a specified portion of each image, thereby aligning the two images with each other. The computer system 1700 may then create and train a detector and / or feature variable to distinguish the two aligned portions from each other.

[0378] In some embodiments, computer system 1700 can use attributes as features. In some embodiments, a node can have a known latent attribute that is implemented for a specified data item if the node's activation is within a specified interval when the specified data item is used as input to a global or local data space. For example, a node may have a latent location attribute that is activated when the node's activation value is above a specified threshold.

[0379] For example, in a convolutional network designed for image recognition, typically each low-level node receives only activated connections for a small number of pixels located at or near a specified location in the image. Similarly, in a speech recognition system, a node receives a series of input vectors, each vector coming from a limited time interval. In addition, a node in a speech recognition system may receive only values ​​for a single frequency or a limited range of frequencies. The position of the input received by a node in convolutional image recognition is a constant and does not change with the input data item. However, in some embodiments, the computer system 1700 may store the position of a detector node activated above a specified detection threshold in a position attribute cell as an attribute of the current data item. Similarly, in a speech recognition system, the computer system 1700 may store the time and frequency position of a detector node activated above a specified detection threshold in a time-frequency attribute cell.

[0380] In some embodiments, when one or more nodes associated with an attribute cell are activated above a specified minimum threshold, the computer system 1700 may set the attribute value in the cell to the known attribute of the associated cell with the highest activation level. Such attributes are not explicitly represented in the node activation and therefore cannot be used by higher-level nodes through network connections. However, depending on the design of the system or the provisions of the HNLMS, for example, the computer system 1700 may store the attribute in the cell and create data links from the cell to other cells and / or other nodes in the network. In a network representing a mereology, in a higher-level node or cell, the computer system 1700 may match two or more attributes (e.g., the position of related parts in the mereology) with a trained model of relative attribute values ​​in a specified object image. In some embodiments, the computer system 1700 may scale the position values ​​of object components based on the size of the object seen in the image.

[0381] In some embodiments, the computer system 1700 may use cells to store state information in state space modeling ( Figure 7 and Figure 4 In some embodiments, computer system 1700 may perform state-space analysis on a data item to change the behavior of the system after receiving and classifying the data item.

[0382] In some embodiments, the computer system 1700 may use cells to calculate active alignment of data items ( Figure 12 and Figure 4 417 ), changing the behavior of the system after receiving the data item for classification.

[0383] Changing the behavior of the system after receiving a data item may help computer system 1700 make the system more robust to adversarial attacks and other perturbations that may cause imperceptible errors.

[0384] In using cells for active alignment and / or other analyses related to mereology and other human knowledge representations, the computer system 1700 may make the system easier to understand and may facilitate interaction with HNLMS and other human advisories.

[0385] For example, in some embodiments, as part of HNLMS, computer system 1700 can train a model of attribute combinations while training the weights and biases of network connections.

[0386] In block 413 , computer system 1700 may construct one or more hidden state-space models.

[0387] In classification tasks where the input data variables can be organized by temporal and / or spatial location, the computer system 1700 can add cells to the network connected to a structure that represents the geometry of the relative positions of the input variables. More generally, the computer system 1700 can construct structures between cells in the network to represent any adjacency graph between the input variables. In some embodiments, at higher layers of the hybrid network, the computer system 1700 can construct an adjacency graph between sets of cells in the higher layer. In each cell, at each layer, the computer system 1700 can store the value of one or more hidden variables. In some embodiments, cells in higher layers can have the same adjacency graph as cells in lower layers, but with different or additional hidden variables.

[0388] In some embodiments, in block 413, the computer system 1700 may implement probabilistic reasoning or a dynamic Bayesian network ( Figure 21 2102 in).

[0389] Hidden state space model combination Figure 7 Provide explanation.

[0390] In block 414, the computer system 1700 can manage the option of human consultation in many aspects of the present invention. In a preferred embodiment, the computer system 1700 can manage human consultation to maximize the amount of improvement per unit of human time and labor required. In some embodiments, the computer system 1700 can semi-automate a process that would otherwise require human knowledge engineering with specialized knowledge and the amount of work that would increase as the size and complexity of the network increases. Other aspects of the communication between the computer system 1700 and one or more humans will be combined Figure 21 Have a discussion.

[0391] There are multiple examples of aspects of the present invention in which computer system 1700 can efficiently and effectively manage human consultations. In some embodiments, computer system 1700 can provide information to human team members of HNLMS and / or users of the system so that humans can initiate the human consultation process.

[0392] An example of a human consultation process in which the computer system 1700 or a human can initiate human consultation is the naming of known sets. The computer system 1700 can ask the human to provide a human-understandable name for a known set, and the computer system 1700 can provide examples for the set. In a preferred embodiment, the computer system 1700 can manage the efficiency of this process by only asking for the names of known sets associated with elements that play an important role in the hybrid network, which has been trained to meet specified criteria. In some embodiments, a human can volunteer to name any known set or any variable at any time, at the discretion of the volunteering human. For example, a human can volunteer a name if the human consultant believes that the name will enable the computer system 1700 to guide the training to learn concepts that generalize better to new data. The human can also volunteer a name if the human believes that the provided name will effectively improve the overall interpretability of the hybrid network.

[0393] In some embodiments, when associating sets with elements being actively trained, the computer system 1700 may prioritize associating elements with named sets over associating elements with unnamed known sets. This preference may help satisfy the human expectation that naming sets will help improve the generalization performance of the network. This preference will also improve the overall interpretability of any elements associated with named sets.

[0394] For example, a human team member in the computer system 1700 or HNLMS may initiate human consultation when defining the initial state space of the hidden state space model, such as Figure 7 In some embodiments, computer system 1700 can largely automate future changes in state space. However, whether computer system 1700 or a human can initiate further human consultations whenever it appears that the consultations would be efficient, valuable, and effective.

[0395] In a preferred embodiment, the computer system 1700 can provide data and displays to help humans follow and understand the training process and system being trained. Figure 15 and Figure 5 During the histogram analysis in block 507 , the computer system 1700 may generate a graph of the histogram.

[0396] In some embodiments, computer system 1700 may provide data from any comparative assessments that may make significant improvements or indicate a performance degradation exceeding a specified standard.

[0397] Humans may provide mereologies and other human knowledge representations, and / or oversee computer system 1700 in selecting human knowledge representations from public sources.

[0398] Humans can provide supervision for any changes in the hybrid network that change the trade-off between classification performance and sensitivity by more than a specified amount.

[0399] In some embodiments, computer system 1700 may provide data to inform humans about changes that improve classification and sensitivity, although consultation may not be required.

[0400] In some embodiments, a human can provide guidance when deciding when to use a surrogate to backpropagate derivatives during hybrid training. Preferably, to reduce manpower, such human guidance will apply a single decision to a large portion of the hybrid network, such as one or more complete layers, rather than a single element. In some embodiments, if a single element is critical to the overall performance based on specified criteria, the computer system 1700 can enable a human to intervene in that element. Such an implementation can include the computer system 1700 collecting data and presenting the data in a manner that enables efficient and effective human understanding. In some embodiments, if a single element is critical to one or more critical data items based on specified criteria, the computer system 1700 can enable a human to intervene in that element.

[0401] In some embodiments of continuous lifelong learning, the computer system 1700 may continuously test the performance of new versions of the system on old tasks and prepare a report for humans on any degradation in performance on old tasks.

[0402] In some embodiments, the computer system 1700 may seek human consultation to verify the sensitivity of the decision boundary in the discriminator. If the human consultant disagrees that the provided data item examples on or near the decision boundary are appropriately described as being close to the boundary, then the system has failed to meet the second level of sensitivity and the computer system 1700 should take remedial action. In some embodiments, the computer system 1700 may take remedial action by delegating and / or excluding data items. For example, the computer system 1700 may identify additional data items to delegate by empirically training data weights and delegating data items with negative weights, such as Figure 11 If the human consultation indicates that one of the alternatives does not match, the computer system 1700 can take remedial action through data exclusion.

[0403] In a preferred embodiment, computer system 1700 may seek this form of human consultation only for a small fraction of examples that are less than a specified consultation volume criterion.

[0404] In block 415, in some embodiments, the computer system 1700 may perform diagnosis and detection of instances of sensitivity violations. In some embodiments, the computer system 1700 may use a tool known as a "canary" network. A canary network is a network designed and trained so that its classification output is susceptible to changes in adversarial attacks and other minor changes in input. In some embodiments, the computer system 1700 may train a diverse set of canary networks and a robust set of networks. In some embodiments, the computer system 1700 may diversify by training multiple networks with the same or similar architectures using counter-tying. The use of counter-tying to increase diversity in a set of networks is described in U.S. Patent No. 11,151,455, entitled "Counter-tying nodes of anodal network," which is incorporated herein by reference in its entirety.

[0405] Given a classification task, the computer system 1700 can create a canary network by training a traditional neural network on the classification task, avoiding any methods for making the neural network resistant to adversarial attacks. For example, in some embodiments, the computer system 1700 can avoid training the canary neural network with random perturbations or simulated adversarial attacks. In some preferred embodiments, the computer system 1700 can also avoid Figure 1 、 2 , 3, 4, 5 and any other steps to improve the sensitivity of the network discussed in connection with the accompanying figures. In addition, in some embodiments, the computer system 1700 can perform the reverse of some of the recommended steps associated with these figures. For example, in some embodiments, rather than replacing an unbounded activation function with a bounded activation function, the computer system 1700 can replace a bounded activation function (if any) with an unbounded activation function. In some embodiments, the computer system 1700 can increase the slope and / or length of the non-flat interval of the activation function. Preferably, the computer system 1700 will select changes that will increase the vulnerability of the canary network to input changes while minimizing the impact of the changes on classification performance. In some embodiments, the computer system 1700 can retrain the canary network to obtain optimal performance on clean data while allowing it to fail on perturbed data.

[0406] In some embodiments, the computer system 1700 may be combined with Figure 1 、 2 , 3, 4, 5 and other figures recommend methods for creating one or more robust networks.

[0407] Based on one or more examples of canary networks and one or more examples of robust networks, in some embodiments, computer system 1700 can create an arbitrarily large collection of different networks by continuing or resuming training on multiple copies of a base network and performing unbinding between selected pairs of corresponding nodes in any two copies of the same base network. In some embodiments, computer system 1700 can unbind a pair of nodes by creating a bidirectional knowledge sharing link with an inequality relationship. By selecting different subsets of nodes in different network pairs and / or selecting different subsets of the training data set to enforce regularization of the links, computer system 1700 can generate a variety of differences between network pairs in different network collections.

[0408] Once computer system 1700 has trained various canary networks and various robust networks, computer system 1700 can use these different networks to diagnose any data item presented for classification. Any adversarial attack or other perturbation to the input data is more likely to change the answer of the canary network than the answer of the robust network.

[0409] In some embodiments, the computer system 1700 can test the null hypothesis that there is no difference between the responses of the canary network and the robust network. The computer system 1700 can continue testing with new selections of one or more canary networks and one or more robust networks until the null hypothesis is rejected or a stopping criterion is met.

[0410] In other embodiments, computer system 1700 may test for discrepancies between the responses of the canary network and the robust network in other ways. In some embodiments, to further confirm that the normal input has been perturbed, computer system 1700 may perform a non-targeted reverse adversarial attack. That is, computer system 1700 may simulate an adversarial attack on the data item to be identified and present the data altered by the simulated adversarial attack to one or more canary networks. Preferably, in the non-targeted attack, computer system 1700 may simulate a form of adversarial attack that attempts to cause the canary network to degrade the score of the current answer, without targeting any new answer. If a new answer appears multiple times in multiple simulated non-targeted attacks, this indicates that the multiple answers can be easily accessed through minor changes in the input. If multiple answers from the non-targeted simulated attacks are consistent with multiple responses from the robust network, this is strong evidence that the presented data item has been altered by the adversarial attack or other perturbation, and that the multiple answers are the correct answers to the original, unperturbed input.

[0411] In block 416, in some embodiments, the computer system 1700 may implement active defense against imperceptible errors. In some embodiments of active defense, the computer system 1700 may control one or more units using data exchange, such as Figure 3B In some embodiments, active defense and Figure 8 803 is used in conjunction with .

[0412] In some embodiments, to implement active defense, computer system 1700 may train two or more activation functions for nodes having discontinuities that are offset from each other and intervals with high-order derivatives separated by intervals with zero derivatives and / or intervals where the difference between the maximum and minimum values ​​is less than a specified value and the magnitude of the derivative is less than a specified value.

[0413] In some embodiments, computer system 1700 can implement one or more data-dependent data exchanges. In some embodiments, computer system 1700 can specify a set of activation functions and data-dependent data exchanges such that for an input data value d, under the control of computer system 1700, the data exchange uses d as the input to an activation function for which the input lies within a relatively flat interval and does not approach a specified amount near the closest end of the flat interval. In other words, computer system 1700 can control the data exchange such that small changes in the input do not cause the output to change by more than a specified amount. In some embodiments, all relatively flat intervals in all activation functions have constant values, so that for any small change in the component input, the output does not change.

[0414] In block 417, in some embodiments, the computer system 1700 may perform data item-specific proactive alignment. That is, the computer system 1700 may calculate the alignment of the data item after receiving the data item for classification. In some embodiments, the computer system 1700 may perform local classification within the hybrid network, and the classification may be a set of specified known sets rather than a final classification category.

[0415] In active alignment specific to a data item, in some embodiments, the computer system 1700 can calculate the values ​​of variables in a set of cells that specify the alignment of the cells with a human knowledge representation (e.g., mereology). In an image recognition task, each alignment cell can be associated with a specific location in an image received for classification. Thus, in such an embodiment, the computer system 1700 is calculating the alignment between the received image and the mereological model.

[0416] In some embodiments, computer system 1700 may have trained an enhanced mereological model that also models the relative positions of parts in the mereology.

[0417] Combine Figure 12 The process of training a mereological alignment model is discussed.

[0418] In some embodiments, computer system 1700 can align data items with human knowledge representation types other than mereology. For example, in tasks involving words, such as speech recognition, handwriting recognition, translation, or text comprehension, computer system 1700 can align observed or hypothesized words with parses in a specified grammar. In some embodiments, computer system 1700 can align words with the semantic web.

[0419] In some embodiments of image or video alignment, the computer system 1700 can first create a lower resolution representation of the video image to allow for quick preliminary analysis, thereby speeding up the analysis of the original image or video. Computing a low resolution representation of a high resolution image or video is well known to those skilled in the art of image processing.

[0420] In some embodiments, the computer system 1700 can perform classification of low-resolution images or videos. In some embodiments, the computer system 1700 can use the classification of low-resolution data items to build a list of best-scoring categories or known sets. In some embodiments, the computer system 1700 can use the list of best-scoring categories or named sets to partially restrict the possible classifications of higher-resolution data items. In some embodiments, if the mereological fit alignment is worse than a specified standard, the computer system 1700 can add a candidate to the list. In some embodiments, the computer system 1700 can determine the specified standard in each target category or named set based on a measure of fit in a previous alignment of instances of the category or named set.

[0421] In some embodiments, computer system 1700 may align a low-resolution image or video with cells in a simpler hybrid network trained on the low-resolution image or video. In a preferred embodiment, computer system 1700 may design the mereologically aligned cells in the low-resolution model to be homologous to a specified subset of mereologically aligned cells in the high-resolution model. In such an embodiment, computer system 1700 may use the alignment of the low-resolution image to initialize a rough alignment of the high-resolution image. In some embodiments, computer system 1700 may then refine the alignment of the high-resolution image by filling in the alignments of cells that have not yet been aligned. In some embodiments, computer system 1700 may iteratively improve the alignment, changing the alignment of one or more cells to better match the alignment of cells that are adjacent to the changing cell in the mereological adjacency graph. In some embodiments, computer system 1700 may stop the alignment calculation if no changes are made during an iteration of incremental improvement, or if computer system 1700 detects a repeating loop. In some embodiments, computer system 1700 may stop the iterative alignment process if some other specified stopping criteria are met. For example, in some embodiments, the computer system 1700 may stop the alignment process if the only changes still being made are too small to be detected by the computer system 1700 as previously trained, i.e., detecting changes that are so small that they do not affect the classification by more than a specified small error rate.

[0422] In some embodiments, the computer system 1700 can update the mereological alignment model. In some embodiments, the computer system 1700 can save the data and analysis in a repository.

[0423] In block 418, the computer system 1700 may implement random activations during training and inference, including inference during deployment. In random activations, the activation values ​​of one or more elements in the hybrid network may vary when the same input data item is repeatedly presented.

[0424] In some embodiments, in block 418, computer system 1700 may use one or more of six types of randomization or noise: (1) adding noise to the output of one or more elements and / or other variables, (2) simulating errors in one or more elements, (3) probabilistic swapping of data swap destinations, (4) probabilistic swapping of partitioned activation function intervals, (5) random dropout, and / or (6) simulating adversarial attacks on network inputs and / or one or more local data spaces. In a preferred embodiment, computer system 1700 may use the same type of randomization or noise ( Figure 5In some embodiments, computer system 1700 may use a higher degree of randomization and / or noise during training than during inference during deployment.

[0425] In some embodiments, in block 418, the computer system 1700 may use Figure 5 Any of the six types of randomization or noise can be implemented using techniques explained in association with block 520. In some embodiments, when generating randomization and / or noise during inference during deployment, computer system 1700 can use control hyperparameters that produce less variation than those used during training and / or diagnosis.

[0426] In some embodiments, in block 418, computer system 1700 may generate randomization and noise multiple times for the network or selected cells to classify the received data item. In some embodiments, computer system 1700 may combine multiple sets of output values ​​during multiple randomizations, as with output values ​​from a virtual ensemble. In such embodiments, computer system 1700 may empirically train hyperparameters that control the randomization.

[0427] In some embodiments, the computer system 1700 may use random activation to help create a diverse set of canary networks and / or a set of robust networks ( Figure 4 415). In some embodiments, computer system 1700 can use anti-binding and / or unequal knowledge sharing regularization links to further increase diversity. In some embodiments, computer system 1700 can use soft binding and / or equal knowledge sharing regularization links to moderate differences between different sets of networks so that corresponding elements in each network maintain response relationships except for differences in random activations.

[0428] In some embodiments, during deployment, upon receiving a data item to be classified, the computer system 1700 may randomly select a subset of various canary networks and a subset of robust networks using a selection probability distribution, which the computer system 1700 does not specify until after receiving the data item to be classified.

[0429] In block 419, in some embodiments, the computer system 1700 may construct and train a robust template model, such as Figure 10 shown.

[0430] In block 420 , in some embodiments, the computer system 1700 may replace values ​​of x less than a specified threshold T1 and / or values ​​of x greater than a specified value T2 with a constant background score in the activation function f(x).

[0431] In some embodiments, in block 420, if the input value X kThe value of satisfies the specified value T for more than a specified number of k input values k |μ k -X k |>T k , then the computer system 1700 in the robust template model can replace the output value of the template model with the specified constant background score. In some embodiments, if the deviation + ∑ k w k f(|μ k -X k |) exceeds the specified value, the computer system 1700 can replace the output value of the template model with the background score. Figure 10 The robust template model is discussed.

[0432] In block 421, in some embodiments, the computer system 1700 may collaborate with one or more human teams to build and train one or more generators and / or classifiers, such as in conjunction with Figure 21 In some embodiments shown in this figure, human involvement in training and development may be greater than Figures 1 to 5 More extensively described in Figure 21 In a joint development, one or more humans can directly control the training process. Figure 21 In the generator discussed, the computer system 1700 can implement an interface that allows one or more humans to directly control the details of the generation. In the joint development process, unlike semi-automated knowledge engineering where the amount of manual labor is minimized, more human involvement can be used to associate names with more known but unnamed sets and unnamed features. The additional names make the network easier to interpret, thereby providing more human guidance during the training process. The additional named features also make the control of the generator more humane. In some embodiments, in box 412, the computer system 1700 can implement logical and / or probabilistic reasoning in the cells of the network, such as in combination with Figure 21 as discussed in Box 2102.

[0433] In some embodiments, joint development and human guidance can be used with a collaborative generator, for example, to Figure 5 Additional training data is generated in block 514 of .

[0434] In block 422, in some embodiments, the computer system 1700 may train an adversarial generator and a real and non-real discriminator. In some embodiments, the computer system 1700 may also train one or more collaborative generators. In some embodiments, the computer system 1700 may train a generator such as Figure 21In some embodiments, the computer system 1700 can use training of real and non-real discriminators and adversarial and cooperative generators based on variable resolution game theory, as described in International Application No. PCT / US23 / 64296, entitled “Generation and discrimination training as a variable resolution game,” the entire contents of which are incorporated herein by reference, for generation and discrimination training / discrimination games.

[0435] Figure 5 is a schematic diagram of an illustrative embodiment of various aspects of hybrid training. Figure 5 In

[15] , topics are grouped by stages of the training process, as indicated by dashed boxes: 501 represents initial training, 502 represents the main hybrid training stage, and 503 represents lifelong learning and continuous training during deployment (i.e., deploying the model to perform the task for which it was trained). However, many concepts and techniques apply to multiple stages.

[0436] Figure 5 This is not a flowchart. No order of blocks is implied. Computer system 1700 can apply the concepts and techniques in any order within the blocks, rather than being roughly grouped into phases represented by dashed blocks 501, 502, and 503. In some embodiments, computer system 1700 may impose some constraints on the order in which the technical prerequisites are applied in some detail. In some embodiments, all concepts and techniques work together, and computer system 1700 may develop them together.

[0437] In some embodiments, to begin training, in block 504, the computer system 1700 may select a base network and gradually make changes to the network to improve it, such as by combining Figure 1 Boxes 101 and 103 and Figure 1 and Figure 2 The chosen base network can be a neural network or a hybrid network.

[0438] In some embodiments, the computer system 1700 iteratively searches for opportunities to improve sensitivity, overall interpretability, classification performance, and / or cost / performance in block 504. In some embodiments, the computer system 1700 may repeatedly test the system on validation data in addition to the training data.

[0439] In some embodiments, the computer system 1700 can grow a network from scratch. In some embodiments, in block 505, the computer system 1700 can grow a neural network from scratch and then convert the neural network into a hybrid network.

[0440] In block 506, in some embodiments, computer system 1700 may train the connection weights and node biases of one or more elements using gradient descent derivative backpropagation. Gradient descent backpropagation is a standard method for training neural networks. However, for a reasonable network, not all training is done using gradient descent. In some embodiments, computer system 1700 may construct the hybrid network directly from scratch.

[0441] In block 506, in some embodiments, computer system 1700 may train the connection weights and node biases of one or more components using gradient descent derivative backpropagation. Gradient descent backpropagation is a standard method for training neural networks. However, not all training of a perceptual network is done using gradient descent.

[0442] However, in some embodiments, even after initial training, training may be based in part on gradient descent. However, in a preferred embodiment, training is not based solely on gradient descent. In a preferred embodiment, computer system 1700 uses a hybrid training approach to improve the sensitivity of the network being built and trained.

[0443] In block 507, in some embodiments, the computer system 1700 performs a histogram analysis. Block 507 uses an initial training group for two reasons: (1) histogram analysis is a basic technique that does not require other techniques as a prerequisite, and (2) histogram analysis is also a broadly useful technique that can be used as a preliminary step to other techniques. On the other hand, histogram analysis can also be used during the main training (502) and / or continued training (503). For example, in any case where the computer system 1700 uses human consultation, the computer system 1700 can use histogram analysis to facilitate human consultation ( Figure 4 414). Histogram analysis will be combined with Figure 15 、 Figure 2 Boxes 202 and 204 and Figure 4 Block 405 of FIG. 1 is further discussed.

[0444] In block 507, the computer system 1700 may compute a histogram of one, two, or more variables. The variables may be continuous-valued real numbers or discrete variables with a specified finite set of values. The specified finite set may represent a finite number of classification categories, a set of known sets, or a set of possible states of a hidden state space model.

[0445] For a neural network node, the computer system 1700 can use the value of the affine sum or the output value of the activation function of the node as a variable to calculate the histogram. The computer system 1700 can also use the value received from any connection of the node as a histogram variable.

[0446] For hybrid networks, the computer system 1700 may also use the values ​​provided by the cells as histogram variables.

[0447] The computer system 1700 can also use the value of the back-propagated derivative as a histogram variable. The derivative can be a derivative of a classification target or other specific function. In a hybrid network, the computer system 1700 can use the derivative of a local target as a histogram variable, such as Figure 5 The computer system 1700 can also use a local alternative derivative function as a histogram variable, such as Figure 5 As shown in box 509.

[0448] In some embodiments, the computer system 1700 can perform a regression on the histogram counts to test a set of known sets to determine whether any of the known sets meet a specified criterion for being associated with a specified variable. For example, in some embodiments, if the magnitude of the regression coefficient is greater than a specified value, the computer system 1700 can temporarily associate the variable with the known set. Figure 15 The use of histogram count regression is further discussed.

[0449] In some embodiments, computer system 1700 may select intervals of a specified variable to represent detections of a known set based on histogram counts.

[0450] In some embodiments, computer system 1700 may select a variable as a discriminator between two known sets. In some embodiments, computer system 1700 may use histogram counts to determine an initial threshold for use with the discriminator. In some embodiments, computer system 1700 may perform comparative performance testing to empirically adjust the threshold for use with the discriminator. In some embodiments, computer system 1700 may perform such comparative performance testing using data set aside from the training data. In some embodiments, computer system 1700 may continue to empirically adjust the threshold using data collected from one or more deployed systems.

[0451] When testing a selected variable as a detector of a known set or as a discriminator of two known sets, the computer system 1700 may find multiple known sets where the variable meets the specified criteria as a detector or discriminator. In this case, in some embodiments, the computer system 1700 may make multiple copies of the variable and the subnetwork that leads to the variable. The computer system 1700 may then train each copy and its subnetwork on a different task in the detector and / or discriminator tasks.

[0452] In some embodiments, the computer system 1700 can use histogram counting to determine the boundaries of data-related variables. A variable can be the output value of a node, cell, or unit. In some embodiments, the computer system 1700 can limit the maximum and / or minimum values ​​of a specified variable to better ensure the sensitivity of a node or unit that directly or indirectly receives an input value as a function of the variable. In some embodiments, the computer system 1700 can limit the minimum and / or maximum values ​​of a variable based on the extreme values ​​of the variable observed on a specified data set (such as a training data set). In some embodiments, the computer system 1700 can set the limit value of the variable to the extreme value plus a specified margin. In some embodiments, for some variables, the margin can be zero or a negative value, thereby reducing the observed range. In some embodiments, the computer system 1700 can adjust the limit of the variable later.

[0453] In some embodiments, when the computer system 1700 is Figure 2 When replacing an unbounded activation function in block 202 of , the computer system 1700 may use the histogram counts to determine the bounds to use in the new activation function.

[0454] In some embodiments, the computer system 1700 may use histogram counts to determine μ in the template model. k In some embodiments, the computer system 1700 may k A parameter estimate is the mean, median, or mode of a set of data items. In some embodiments, computer system 1700 can make any of these estimates based on a histogram.

[0455] In some embodiments, if the selected variable is associated with one or more known sets, the computer system 1700 may limit the data selected for the histogram to the data in the union of the related known sets. The computer system 1700 may then initially set exclusion limits for the selected variable based on the histogram, such as Figure 15 shown.

[0456] In some embodiments, the computer system 1700 may use histogram counts when setting decision thresholds, such as Figure 15 as described in box 1506.

[0457] In some embodiments, the computer system 1700 may calculate a joint histogram of two or more variables. In some embodiments, the computer system 1700 may use fewer and longer bins for each variable in a multivariate joint histogram than in a single variable histogram.

[0458] In some embodiments, if the computer system 1700 detects significant correlation or significant clustering in the low-dimensional histogram, the computer system 1700 may perform additional low-dimensional analysis ( Figure 5 517).

[0459] In block 508 , in some embodiments, computer system 1700 may determine an implicit local goal of the node.

[0460] In some embodiments, the computer system 1700 may determine an implicit or explicit local target based on the association of one or more intervals of the node activation function with the known set. For example, the computer system 1700 may set a specified point in the interval as a target for a data item in the known set.

[0461] In some embodiments, computer system 1700 can determine an implicit local target based on the sign of the backpropagated derivative of a data item. For example, computer system 1700 or HNLMS can specify a pair of values, such as {0, 1} or {1, 1}, where the lower value is the target for any data item with a negative backpropagated derivative and the higher value is the target for any data item with a positive backpropagated derivative. In some embodiments, computer system 1700 can use the lower bound of the activation function as the lower bound and the upper bound of the activation function as the upper bound.

[0462] In some embodiments, computer system 1700 may use one or more intermediate values ​​as targets for data items having back-propagated derivatives less than a specified absolute value.

[0463] In some embodiments, computer system 1700 can use the determination of the presence or absence of implicit errors to convert the backpropagation of derivatives into the backpropagation of data ( Figure 18 and Figure 6 as well as Figure 5 510).

[0464] In some embodiments, computer system 1700 can determine whether a node made an implicit error in determining the extent to which the node's activation within a specified interval is consistent with membership in a known or named set. In some embodiments, computer system 1700 can use one or more correction outputs to repair implicit errors in determining whether to associate a node with a known or named set. When computer system 1700 establishes a new association or changes an existing association, in some embodiments, computer system 1700 can thereafter use the new or modified association to determine explicit errors for the node.

[0465] Combine Figure 2 Block 203 discusses the use of implicit errors in training error prediction nodes.

[0466] In block 509, in some embodiments, computer system 1700 may create a surrogate derivative function for a node. In some embodiments, computer system 1700 may use the surrogate derivative function to enable or accelerate node training for intervals having one or more relatively low magnitude derivatives, as Figure 3C shown. In some embodiments, computer system 1700 may select a base surrogate derivative function, and then computer system 1700 multiplies it by the backpropagated derivative value or the sign of the backpropagated derivative value.

[0467] In some embodiments, computer system 1700 may use continuous surrogate derivative function activation during a portion of training, such as early training before a criterion is met, and discontinuous surrogate derivative functions after the criterion is met. In a preferred embodiment of this type of surrogate derivative function, computer system 1700 may multiply the base surrogate derivative function by the backpropagated derivative value or the sign of the backpropagated derivative value. In some embodiments, computer system 1700 may multiply the base surrogate derivative function by the backpropagated derivative or only the sign of the backpropagated derivative for input value x, for specified thresholds T1 and T2, where T1 < x < T2. In some embodiments, computer system 1700 may set a constant background score and use this background score for all data having values outside of a specified interval, regardless of the sign or magnitude of the backpropagated derivative. In some embodiments, computer system 1700 controlled by HNLMS may customize the criteria for surrogate derivative function variation for an individual node. For example, HNLMS may calculate customized criteria for a node based on measurements collected during node training.

[0468] In some embodiments, computer system 1700 may design a surrogate derivative function to push activation from a discontinuity point or higher order derivative in an activation function towards the center of a relatively flat interval, as Figure 3C shown by functions 361, 362, and 363. In some embodiments, computer system 1700 may delay using such a surrogate activation function until after a training criterion is met.

[0469] In some embodiments, computer system 1700 may use a surrogate derivative function where the value of the surrogate derivative function is always positive for input values less than a specified threshold T1, and / or always negative for input values greater than a specified threshold T2. In some embodiments, computer system 1700 may use such a surrogate derivative function for a node, which multiplies the base surrogate derivative function by the backpropagated value of x in the interval T1 < x < T2, as Figure 3C shown by intervals 353 and 354.

[0470] In block 510, in some embodiments, for a particular node, computer system 1700 may backpropagate labeled data examples instead of derivatives. In some embodiments, computer system 1700 may continue to backpropagate derivatives on pre-existing incoming connections while backpropagating the labeled data examples to one or more new elements.

[0471] In some embodiments, for a selected element with a standard discriminator activation function, computer system 1700 may determine whether an implicit error has occurred in the element for each data item in a specified set. In some embodiments, computer system 1700 may use this information to backpropagate data items with corrected implicit errors.

[0472] In some embodiments, computer system 1700 may backpropagate these labeled data items to one or more new elements while optionally continuing to backpropagate derivatives to its pre-existing incoming connections.

[0473] By correcting implicit errors, computer system 1700 may be able to train new elements with information that cannot be obtained through conventional backpropagation. An illustrative example of such a training procedure is described below, as Figure 18 shown. In the description, set S1 is the set associated with lower values x < X1 in the activation function input, and set S2 is the set associated with higher values x > X2, where X1 < X2. S1 or S2 may be associated with the maximum output value of the activation function, and the internal interval of the activation function increases or decreases monotonically accordingly.

[0474] In some embodiments, computer system 1700 may use the following procedure, as Figure 18 shown:

[0475] (1801) Obtain training data items.

[0476] (1802) Compute the activations of the network; call the activation value x.

[0477] (1803) Backpropagate the derivatives.

[0478] (1804) Associate X1 with set S1 and X2 with set S2. <00​​​​​​​​

[0482] (1808) Select S2;

[0483] (1809) Back-propagate the current data item with label S1 or S2 to one or more of the following

[0484] a. A pair of detector elements;

[0485] b. Linear separator ( Figure 6 );

[0486] c. Output the subnet trained directly by labels S1 and S2;

[0487] d. Backpropagate labels to the error predictor and whether there is implicit error.

[0488] (1810) Save the corrected labels of S1 and S2 for all training data.

[0489] (1811) Repeat steps (1801) to (1811) until the stopping criteria are met.

[0490] (1812) New elements are trained using the corrected labels of S1 and S2.

[0491] In some embodiments, computer system 1700 may delay saving the correction labels for S1 and S2 until the training of the selected standard discriminator element is sufficiently stable such that the correction sets S1 and S2 no longer vary beyond a specified standard.

[0492] In some embodiments, the computer system 1700 can create a new unit using constrained optimization to identify S1 and S2 with correct labels, such as combining Figure 5 As discussed in block 524 of [ 0055 ], based on the solution to the constrained optimization, computer system 1700 can create a linear threshold function as a new element. In some embodiments, computer system 1700 can freeze the copy of the subnetwork so that the performance of the linear threshold function does not degrade as the network changes with further training. In some embodiments, if further training causes the selected standard discriminator element to produce a new error, computer system 1700 can train another linear threshold function. If computer system 1700 removes the selected standard discriminator element from the network at or before training stops, there will be no path to backpropagate the non-zero derivative of the specified function of the output through the one or more linear threshold functions that computer system 1700 uses to replace the selected standard discriminator element.

[0493] In some embodiments, the computer system 1700 can create one or more new units, each of which includes a pair of detectors trained on sets S1 and S2 and an associated discriminator node. In some embodiments, the computer system 1700 can specify the associated discriminator to calculate the difference in output of the two detectors or a similar combination function without any training of the connection weights. In some embodiments, the computer system 1700 can use a piecewise constant function as the activation function of the discriminator. In some embodiments, the computer system 1700 makes the activation function a standard discriminator function. In some embodiments, the computer system 1700 can train two or more new units to diversify their S1 and S2 detectors. In some embodiments, the computer system 1700 can also train various canary network sets as S1 and S2 detectors and / or various discriminator sets.

[0494] In some embodiments, computer system 1700 can connect the one or more new elements created in block 1809 to elements in higher layers of the network, up to and including the network's output. In some embodiments, computer system 1700 can train higher-layer subnetworks by backpropagating the output target derivatives without backpropagating the derivatives to or through the new elements. Furthermore, in some embodiments, computer system 1700 can discard the original standard discriminator elements once the new elements are trained. In such embodiments, network activations for new data items do not have corresponding derivatives backpropagated through the one or more new elements, thereby increasing protection against adversarial attacks.

[0495] If, when the network's training converges, the selected standard discriminator element still has implicit errors, the computer system 1700 can improve the network's performance by replacing the standard discriminator element with one or more new elements trained to the correction sets S1 and S2. In addition, because the new elements are trained with data explicitly labeled as S1 or S2, they may be more easily interpreted than typical internal nodes of a deep network.

[0496] In block 511, in some embodiments, computer system 1700 may partially or approximately train a second network to mimic a semi-homologous first network, wherein each designated node in the second network is associated with a node in the first network to be mimicked. In some embodiments, computer system 1700 may use the output activation values ​​of nodes in the first network as targets for the activation values ​​of one or more designated nodes in the second network. In some embodiments, computer system 1700 may use equal knowledge sharing links to train designated nodes in the second network to better align with related nodes in the first network.

[0497] In some embodiments, the design of the first network may be less sensitive than the design of the second network. In some embodiments, the first network may be a neural network and the second network may be a hybrid network. On the other hand, in some embodiments, the second network may be less sensitive than the first network. For example, the first network may be a hybrid network trained to be perceptive, while the second network may be a canary network ( Figure 4 415). In each case, computer system 1700 can relax the simulation when the activations in the first network approach a point of discontinuity or a higher-order derivative of the activation function of a node in the first network.

[0498] In some embodiments, the simulation may be limited to specified data items. For example, in some embodiments, the second network may be a new element of an ensemble that is being trained to be diverse on a specified subset of the data, consistent on a particular disjoint subset, and, in some embodiments, neutral on a third subset.

[0499] In block 512, in some embodiments, the computer system 1700 implements conditional hybrid training. In conditional hybrid training, the computer system 1700 can customize the hybrid training technique, such as applying the technique only to selected data items and / or only on selected units or nodes.

[0500] For example, in block 512, in some embodiments, the computer system 1700 may implement conditional flattening. In some embodiments, the computer system 1700 may use data exchange (e.g., Figure 3B 325) to achieve conditional flattening customized for each selected data item. In some embodiments, after an amount of training specified by, for example, HNLMS, the computer system 1700 can start from a partially trained selected node having an activation function y=act1(x) partitioned into disjoint intervals such that act1(x) is non-flat for one or more intervals. The computer system 1700 can copy act1(x) as act1A(x) ( Figure 3B 323 in ), which may make some intervals less flat. The computer system 1700 may then copy act1(x) as act1B(x) to make some or all intervals flatter. In some embodiments, the computer system 1700 may copy act1B(x) ( Figure 3B 324) becomes a piecewise constant function. Then, the computer system 1700 can add Figure 3B The data exchange 325 to form Figure 3B Unit 322.

[0501] In some embodiments, the computer system 1700 may conditionally apply Figure 5Any technology associated with blocks 508, 509, 510, 511, and / or 512.

[0502] In some embodiments, computer system 1700 can apply any of training techniques 513, 514, and / or 516 as ongoing training after system deployment. In some embodiments, computer system 1700 can apply one or more of these techniques during primary training prior to deployment.

[0503] Mixed Condition Training will combine Figure 13 Further discussion.

[0504] In block 513, the computer system 1700 may apply continuous learning during deployment, ie, the computer system 1700 may actively update learning parameters using acquired data during operational use. In some embodiments, the computer system 1700 may continue to add elements to the network.

[0505] In some embodiments, the computer system 1700 can continue to test the performance of the previous training and validation data. In some embodiments, the computer system 1700 can apply equal knowledge sharing links from an earlier version of the network to a specified node in a revised version of the network to maintain the performance of the specified data item.

[0506] In a preferred embodiment, the computer system 1700 can repeatedly test the performance of the system on the data set aside for the validation test. Preferably, the computer system 1700 will append new data to the validation data according to a specified schedule.

[0507] In some embodiments, the computer system 1700 may use single-shot or few-shot learning to train a new template model to match new data.

[0508] For example, in some embodiments, the computer system 1700 may Figure 10 The new template shown in μ k The value is set to the value in a single example or the average value in multiple examples. In some embodiments, the computer system 1700 can k or The value of is set to a value specified by a hyperparameter. In some embodiments, the computer system 1700 can adjust the hyperparameter to a specified tradeoff between precision and recall. Such a template is referred to as a single or few-shot template. In some embodiments, the computer system 1700 can continue to train the single or few-shot template as additional data is acquired.

[0509] In some embodiments, the computer system 1700 can calculate the alignment between the current data item and a mereological model or other human knowledge model represented by a graphical structure. Figure 12 and Figure 4 417 for discussion.

[0510] Continuous learning during deployment will be combined with Figure 8 Further discussion.

[0511] In block 514, the computer system 1700 may generate additional data examples. For example, in some embodiments, the computer system 1700 may use a mixture of generator models as described in U.S. Patent 11354578, entitled “Mixture of generator models,” the entire contents of which are incorporated herein by reference. As another example, the computer system 1700 may use a stochastic categorical autoencoder (SCAN) as described in U.S. Patents 10,679,129 and 11,461,661, entitled “Stochastic categorical autoencoder network,” the entire contents of which are incorporated herein by reference. In some embodiments, the computer system 1700 may develop a SCAN with a parameter-controlled mixture of autoencoders, such as Figure 9 In some embodiments, computer system 1700 can train a generator system or a hybrid of SCAN with backpropagation from a joint objective to produce data that is classified as real by both real and synthetic discriminators.

[0512] In some embodiments, the computer system 1700 can generate additional data examples as joint human + AI creative activities, such as Figure 21 and Figure 4 As described in box 421.

[0513] In some embodiments, the computer system 1700 may generate data from some other form of collaborative generator, where the phrase "collaborative generator" is used to contrast with a generative adversarial generator (GAN). Unlike a GAN, the computer system 1700 can train the collaborative generator based on examples of real data. In some embodiments, the computer system 1700 can train the generator to generate real data using one or more real and synthetic discriminators. In some embodiments, the computer system 1700 can train the real and synthetic discriminator as a discriminator in a GAN and then use the discriminator with one or more collaborative generators. In some embodiments, the computer system 1700 can train the real and synthetic discriminator together as a hybrid network, train it together with one or more hybrid classifier networks, and share known sets and human knowledge representations (e.g., mereology). In some embodiments, the computer system 1700 can use a unidirectional or bidirectional knowledge sharing link between the classifier hybrid network and the real and synthetic discriminator. In some embodiments, the computer system 1700 can also share human knowledge representations with one or more collaborative generators.

[0514] In some embodiments, the computer system 1700 may use a traditional autoencoder with a random bottleneck layer or a parameter-controlled autoencoder with a random layer ( Figure 9 ) to generate additional data examples.

[0515] In block 516, computer system 1700 may collectively train a set of partially or fully homologous networks. In a set of partially homologous networks, each given node in a network is structurally homologous to corresponding nodes in one or more other networks. In a set of fully homologous networks, each node in each network is structurally homologous to corresponding nodes in each homologous network.

[0516] The computer system 1700 can be used during initial training ( Figure 5 501) and / or Master Training ( Figure 5 502) and continued training ( Figure 5 503) during which joint training of homologous networks was used.

[0517] In some embodiments, computer system 1700 can use joint training of homologous networks to reduce the computational effort required to train multiple networks. For example, in some embodiments, computer system 1700 can use standard training on a single network or a selected subset of a collection of networks. Computer system 1700 can then train the remaining networks using links that are equal to the knowledge share on the specified subset of nodes using a high value for the strength hyperparameter α. In some embodiments, computer system 1700 can also use links that are not equal to the knowledge share on selected nodes and / or selected data items to train the network for diversity.

[0518] In some embodiments, the activation function for a given set of nodes in one or more homologous networks may have different activation functions than the activation functions for homologous nodes in other networks. For example, one network may have a continuous activation function for its nodes, while a second network may have a piecewise constant activation function for homologous nodes.

[0519] In some embodiments, computer system 1700 can create diversity by unbinding a selected set of nodes in a given pair of networks. In some embodiments, computer system 1700 can create diversity by having one or more non-homologous nodes in each network.

[0520] In some embodiments, computer system 1700 can obtain one or more pre-trained networks, such as traditional neural networks that have not undergone sensitivity training. In some embodiments, computer system 1700 can then use the same knowledge sharing link to train the same traditional or hybrid network in addition to or instead of gradient descent training. In some embodiments, computer system 1700 can reduce the strength hyperparameter α at a later stage in training the same traditional or hybrid network.

[0521] As another example, computer system 1700 can use federated training to share knowledge across a group of distributed systems. For example, during continuous learning during the deployment of a group of distributed homologous networks, a particular distributed network may encounter new data items that result in incorrect classification. In some embodiments, computer system 1700 can train the particular distributed network to correctly classify the new data items. In a preferred embodiment, computer system 1700 can limit changes in a particular distributed network to a selected set of nodes. In some embodiments, computer system 1700 can then use the knowledge sharing links to train other networks to emulate the selected nodes of the particular distributed network.

[0522] Although corresponding nodes in a set of homologous networks are homologous in network structure, computer system 1700 can jointly train a set of different homologous networks by applying equality regularization links only on a selected subset of the data and applying inequality knowledge sharing links on a selected subset of the data.

[0523] For example, when the activation of a robust node for a data item is closer to a discontinuity in an activation function in the robust network than a specified value, computer system 1700 may jointly train one or more robust networks and one or more canary networks by not enforcing equal knowledge sharing links between the robust nodes and the canary nodes.

[0524] When jointly training a set of different homologous networks, in some embodiments, computer system 1700 can select a subset of nodes and / or a subset of data on which equal knowledge sharing links are not enforced. In some embodiments, computer system 1700 can select a subset of nodes and / or a subset of data and enforce not equal knowledge sharing links on the selected nodes and the selected data. In some embodiments, computer system 1700 can select a different subset of data for each selected node.

[0525] In some embodiments, computer system 1700 may train a set of homology networks using equality and / or inequality knowledge sharing links on unlabeled data.

[0526] exist Figure 5 In block 517, computer system 1700 may perform an analysis of two or more variables. Each variable may be an output value of a node, cell, or unit, an input to an activation function, or one of the input values ​​of a node or template. The set of two or more variables may be a subset of the variables in the local data space.

[0527] In some embodiments, in block 517, computer system 1700 may calculate correlations for all pairs of variables in a specified set of variables. In some embodiments, computer system 1700 may calculate a covariance matrix for a set of variables. In some embodiments, the specified set of variables may be a set of values ​​of the incoming connections of an element. In some embodiments, the set of variables may be the union of the value sets of the incoming values ​​of the specified set of elements. In some embodiments, the specified set of elements may be two or more detectors for disjoint sets. In some embodiments, computer system 1700 may calculate correlations or covariances evaluated only on a specified subset of the training data. For example, in some embodiments, computer system 1700 may calculate correlations or covariances only for data to be discriminated by a specified element. For example, for a discriminator of two known sets, in some embodiments, computer system 1700 may calculate correlations or covariances only for data in the union of the two known sets. In some embodiments, computer system 1700 may calculate correlations or covariances only for data to be classified by a specified unit or subnetwork.

[0528] In some embodiments, the set of elements can be two detectors whose outputs are inputs to the combining node. In some embodiments, the combining node can be a discriminator. In some embodiments, the computer system 1700 can train the combining node to approximate some logical function of its input, such as (A AND B), (A OR B), (A=B), (A≠B), or (A implies B).

[0529] In some embodiments, computer system 1700 may multiply a set of variables by a matrix to eliminate one or more of the pairwise correlations. In some embodiments, computer system 1700 may specify a linear order for the variables and may multiply the variables by the matrix to eliminate correlations between pairs of variables that are adjacent in the linear order. For example, in a spectrum, computer system 1700 may multiply the spectrum by a matrix to eliminate pairwise correlations between spectral amplitudes at adjacent frequencies.

[0530] In some embodiments, computer system 1700 may multiply the set of variables by the inverse of the estimated covariance matrix.

[0531] In some embodiments, computer system 1700 may replace the original variables with aggregate variables obtained by multiplying by a decorrelation matrix or an estimated inverse covariance matrix. In some embodiments, computer system 1700 may duplicate the set of nodes that received the original variables and connect the transformed variables to the new nodes while retaining the original nodes for the untransformed variables. In some embodiments, computer system 1700 may temporarily create two networks, one without a specified variable transformation and the other with a specified transformation. In some embodiments, computer system 1700 may compare the performance of the two networks and select the network with better performance. In some embodiments, computer system 1700 may maintain the two networks as members of an ensemble.

[0532] In some embodiments, the computer system 1700 may perform cluster analysis on the specified data set using the specified set of variables in block 517. In some embodiments, the computer system 1700 may perform cluster analysis using a set of variables for which the computer system Figure 5 Clusters of data are detected in the histogram analysis performed by the computer system 1700 in block 507 .

[0533] In some embodiments, in block 517, the computer system 1700 may train a discriminator or classifier in a data space for which the computer system 1700 has detected a nonlinear decision boundary between two or more known sets. In some embodiments, the computer system 1700 may detect such a nonlinear decision boundary by multivariate histogram analysis, such as in combination with Figure 15 and Figure 5 As discussed in Box 507.

[0534] In block 518, in some embodiments, the computer system 1700 may determine control parameters for excluding or delegating data from training and / or inference for the selected element. Figure 11 Have a discussion.

[0535] In block 519, the computer system 1700 may add new nodes and / or new connections to the network, such as in conjunction with Figure 2 In some embodiments, computer system 1700 can create new nodes to implement a node split, where a node is replaced by a group of two or more nodes.

[0536] In box 519, in some embodiments, the computer system 1700 can make one or more copies of the element and then train these copies to be different from the original element and each other. In some embodiments, the computer system 1700 can train each copy on a different data set, or can train each copy with data weightings having different weights. In some embodiments, the computer system 1700 can utilize data exchange to achieve data distribution. In some embodiments, the computer system 1700 can implement different data weights by digital multipliers in learning parameter updates. In some embodiments, the computer system 1700 can implement data selection and weighting by specifying data-related probabilities in probabilistic data exchange. Data weighting is described in U.S. Patent No. 11,010,671, entitled "Iterative training of a nodal network with data influence weights," the entire contents of which are incorporated herein by reference.

[0537] In some embodiments, the computer system 1700 may partition a node to create a node to receive data delegation, such as Figure 11 shown.

[0538] In block 520, in some embodiments, the computer system 1700 may use randomized training and diagnostics. In some embodiments, the computer system 1700 may use randomized training to make the system more robust to external noise (e.g., noise in the input data) and internal noise (e.g., noise and / or errors generated by individual components in the network). In some embodiments, the computer system 1700 may use randomized training to support randomized activations ( Figure 4 In some embodiments, the computer system 1700 may use random training and random activation to improve classification performance, for example, by training and using pseudo-random ensembles. In some embodiments, in block 520, the computer system 1700 may use one or more types of randomization and / or noise to better understand the interdependencies of elements in the network and diagnose possible vulnerabilities.

[0539] In some embodiments, in block 520, computer system 1700 may use one or more of six types of randomization or noise: (1) adding noise to the output of one or more elements and / or other variables, (2) simulating errors in one or more elements, (3) probabilistic switching of the destination of data swapping, (4) probabilistic switching of partitioned activation function intervals, (5) random dropout, and / or (6) simulated adversarial attacks on network inputs and / or one or more local data spaces. In some embodiments, computer system 1700 may use a higher degree of randomization and / or noise during training than during inference during deployment.

[0540] In block 520, for the noise type (1) described above, in some embodiments, the computer system 1700 may apply a technique referred to herein as "additive noise activation" to one or more variables during the computation of the activation of the hybrid network when providing a specified input data item to the network global input space or any selected local data space. In some embodiments, the computer system 1700 may apply noise activation to the output values ​​of one or more nodes, units, or cells. The basis variables to which the noise is added are referred to as "base activation variables." The random variables that are added to the specified base activation variables during a particular activation computation are referred to as "additive random noise variables."

[0541] In some embodiments, the computer system 1700 can use noise activation during training, diagnostic procedures, and / or classification inference. The computer system 1700 can use noise activation during initial training ( Figure 5 dotted box 501) and / or main training ( Figure 5 When receiving a data item d for training or classification, the computer system 1700 determines the value of each additive random noise variable as a new random sample.

[0542] The probability distribution of the additive random noise variable that specifies the noise activation variable can be any type of probability distribution. For example, it can be a Gaussian distribution, a trimmed Gaussian distribution, or a uniform distribution.

[0543] The type of probability distribution may be specified by, for example, system design, HNLMS, or may be selected by computer system 1700 through empirical testing of two or more specified options for distributions. In some embodiments, computer system 1700 may use different types of probability distributions for different noise activation variables.

[0544] Without loss of generality, the mean of the additive random noise variable can be set to zero, since any non-zero mean is equivalent only to a change in the underlying activation variable.

[0545] For each additive random noise variable, the computer system 1700 can specify one or more variables or hyperparameters to control the degree of spread of the random sample population. For example, for a Gaussian distribution, the computer system 1700 can specify the standard deviation. For a uniform distribution, the computer system 1700 can specify the length of the interval centered at zero. For a pruned Gaussian distribution, the computer system 1700 can specify the standard deviation and the number of standard deviations to pruned.

[0546] In some embodiments, the computer system 1700 can empirically estimate the value of one or more diffusion parameters of one or more additive random noise variables through empirical training, such as combining Figure 5 As discussed in Box 521.

[0547] In some embodiments, for simulated error type (2), for elements associated with one or more known sets, computer system 1700 may simulate errors for data items in the known sets by randomly selecting alternative activation values ​​in intervals unrelated to the known sets. For data items not in intervals associated with the named sets, computer system 1700 may randomly select alternative activation values ​​in intervals associated with known sets other than the named sets.

[0548] In some embodiments, for randomization type (3), activation interval switching, or type (4) data exchange destination switching, computing system 1700 may generate a discrete-valued random variable to select the activation interval or the destination of the data exchange. The probability distribution of the discrete-valued random variable may be specified by parameters or hyperparameters, such as those specified by HNLMS, or the computer system 1700 may determine the probability distribution of the discrete-valued random variable through empirical training ( Figure 5 521).

[0549] In some embodiments, for random dropout type (5), computer system 1700 can determine whether to randomly drop selected elements of a particular data item with a probability specified by a hyperparameter. In some embodiments, the activation value used in the case of dropout can be specified as zero or can be specified by a hyperparameter. In some embodiments, in the case of dropout, elements can have element-specific alternative activation values.

[0550] In some embodiments, for random type (6), computer system 1700 may randomly select whether to use a simulated adversarial attack on a specified element of a specified data item with a probability specified by a hyperparameter. In some embodiments, for example, the system design and / or HNLMS may specify multiple adversarial attack methods. In such embodiments, computer system 1700 may randomly select which adversarial attack method to use on a specific element of a specific data item.

[0551] In some embodiments, in block 520, computer system 1700 can use randomization and noise to understand and diagnose interactions between components in a network. For example, computer system 1700 can add noise and / or change the output of a first designated component to discover and / or assess the impact of these changes in the output of the first designated component on a second designated component. In some embodiments, the first designated component need not be directly connected to the second designated component. The second designated component can be any component in the network that is directly or indirectly affected by changes in the output of the first designated component.

[0552] In some embodiments, computer system 1700 may determine the magnitude of the additive noise, the probability of one or more other variations, and / or the strength of the simulated adversarial attack based on a set of hyperparameter values ​​in block 520. In some embodiments, computer system 1700 may use separate randomization hyperparameters for each noise or randomization type for each element in the network.

[0553] In some embodiments, in block 520, the computer system 1700 may use a greater degree of noise and randomization during training than during inference during deployment. In some embodiments, in block 520, the computer system 1700 may estimate optimal values ​​for randomized hyperparameters during training by empirical training using the randomized hyperparameters, such as in combination with Figure 5 As discussed in Box 521.

[0554] In some embodiments, as a diagnostic procedure, the computer system 1700 may choose to study the effects of randomization of other variables and noise on a specified set of important elements or variables. For example, in some embodiments, the computer system 1700 may choose to study the effects of randomization of internal variables on the output nodes of the network. In some embodiments, the computer system 1700 may choose to study the effects of randomization of other variables on the output values ​​of one or more units. In some embodiments, the computer system 1700 may choose to study the effects of randomization of other variables on the values ​​of one or more variables in one or more local data spaces.

[0555] In some embodiments, when studying the effect on a specified set of important variables, the computer system 1700 can calculate the effect of multiple randomizations, randomly varying the value of each randomized hyperparameter within a specified range of values. In some embodiments, the computer system 1700 can measure the effect of a noise activation or measure each ordered pair including a noise variable and an affected variable.

[0556] To improve efficiency, in some embodiments, rather than analyzing each ordered pair of selected important variables and noise variables, the computer system 1700 may first select an important variable to measure its impact and then select a set of noise activation variables specific to the affected important variable, as described below. In some embodiments, the computer system 1700 may reverse the order and first select the noise variable and then select a set of important variables affected by the selected noise variable, as described in a later paragraph.

[0557] In some embodiments, as part of a diagnostic procedure, computer system 1700 can select one of a set of important variables to measure the effects of noise activation. In some embodiments, computer system 1700 can select each important variable in turn. Computer system 1700 can then calculate multiple randomizations and calculate the regression correlation between the change in the selected important variable and the degree of change in one or more variables varied in the randomizations. In some embodiments, computer system 1700 can use a greater degree of randomization and noise during the diagnostic process than during training.

[0558] In some embodiments, for a given significant variable, computer system 1700 may select one or more noise variables where the randomization effect of the noise variables on the given significant variable is greater than a specified criterion. In some embodiments, computer system 1700 may use a specified criterion that prioritizes noise variables that are less directly correlated with the significant variable over noise variables that are more directly correlated with the significant variable. In some embodiments, computer system 1700 may make additional changes to further improve the sensitivity and robustness of one or more selected noise variables.

[0559] In some embodiments, when diagnosing an error or end call of one of the important variables, the computer system 1700 can examine the related noise variables to determine whether an error or disturbance in one of the related noise variables may have caused or significantly contributed to the error or end call of the important variable. If so, the computer system 1700 can take corrective measures to improve the accuracy and / or robustness of the noise variable.

[0560] In some embodiments, the computer system 1700 can select one or more candidate noise variables and calculate the impact of randomization and noise in the noise variables on other variables in the network. In some embodiments, the computer system 1700 can select a set of one or more other variables that are significantly affected by the selected candidate noise variables based on specified criteria. In some embodiments, the computer system 1700 can add the selected candidate noise variables and the selected significantly affected variables to a set of associated significant variable and noise variable pairs.

[0561] In some embodiments, the computer system 1700 can use the relationship between the noise variable and one or more related important variables to help explain the noise variable. In some embodiments, the computer system 1700 can use the relationship between the important variable and one or more noise variables to help explain the important variable.

[0562] For example, the computer system 1700 can determine whether a set of data items having activation values ​​within a specified activation interval in one member of a pair of variables is close to a specified degree of equality or inequality with a set of data items having activation values ​​within the specified interval in the other member of the pair. If so, in some embodiments, the computer system 1700 can create a knowledge sharing link in one or both directions between the specified activation intervals.

[0563] In some embodiments, if an interval in a significant variable or noise variable is associated with a known or named set, the computer system 1700 can check to determine whether the known or named set is likely associated with a pair of affected or significant variables.

[0564] In some embodiments, the computer system 1700 can use the pairing of important variables and noise variables to diagnose the cause of and potential solutions to errors or dead calls on a single data item. For example, the computer system 1700 can attempt to determine changes that the computer system 1700 may be able to make in the network design and / or learning parameters of one or more noise variables to correct the errors or dead calls on the important variables on the single data item. In some embodiments, the computer system 1700 can generate simulated adversarial attacks and / or random perturbations in the network input space and / or local data space to create examples of errors or dead calls on one or more important variables.

[0565] In block 521, in some embodiments, the computer system 1700 may empirically estimate optimal values ​​for one or more hyperparameters. In some embodiments, the computer system 1700 may empirically estimate the values ​​of one or more learning parameters. In some embodiments, the computer system 1700 may use empirical estimates of learning parameters as an alternative to gradient descent training and / or as an alternative to data backpropagation training. In some embodiments, the computer system 1700 may alternate between using empirical estimates of learning parameters and one or more other methods of training learning parameters. In some embodiments, the computer system 1700 may alternate between training learning parameters by empirical estimation and / or by another training method, and further alternate with hyperparameters controlled by, for example, HNLMS. In some embodiments, the computer system 1700 may empirically estimate the performance of hyperparameters as information provided to the HNLMS for controlling the hyperparameters.

[0566] like Figure 5 As discussed in the discussion of block 520 of

[0066] , computer system 1700 may empirically estimate the values ​​of one or more diffusion parameters for one or more additive random noise variables. Another example of a parameter that computer system 1700 may empirically estimate is the endpoints of the acceptance or rejection intervals in a detector or discriminator node or unit. As another example, computer system 1700 may empirically estimate the background score of any detector or discriminator variable. More generally, computer system 1700 may empirically estimate the value of any constant value interval for a variable. Furthermore, computer system 1700 may empirically estimate the maximum and minimum values ​​of any specified relatively flat interval. As another example, in some embodiments, computer system 1700 may empirically estimate the norm or other limits of the acceptance region of a template model. In some embodiments, computer system 1700 may empirically estimate the norm of the data rejection of a detector or discriminator element. In some embodiments, computer system 1700 may estimate one or more norms of the data rejection of a robust template model.

[0567] In some embodiments, computer system 1700 can empirically estimate multiple parameters simultaneously. For example, in some embodiments, computer system 1700 can empirically estimate diffusion parameters for one or more diffusion parameters of an additive random noise variable. In some embodiments, computer system 1700 can empirically estimate one or more or all parameters associated with one or more constant or relatively flat intervals.

[0568] In some embodiments, computer system 1700 may empirically estimate one or more parameters that characterize the location and direction of the decision boundary.

[0569] In some embodiments, computer system 1700 can evaluate multiple quantifiable objectives or specified combinations of multiple quantifiable objectives simultaneously.

[0570] Without limitation, illustrative examples of quantifiable objectives that computer system 1700 may use in empirical learning of classification tasks include: (1) classification performance, (2) sensitivity, and (3) overall interpretability.

[0571] Without limitation, illustrative examples of quantifiable objectives that computer system 1700 may use in empirical learning of generative tasks include: (1) recall of generated named set examples, (2) precision of generated named set examples, (3) for a collaborative or adversarial generator, performance against one or more previously trained real and synthetic discriminators, (4) performance of a classifier trained using supplemental data generated by the generator on new data, and (5) sensitivity of a classifier trained using supplemental data generated by the generator.

[0572] In some embodiments, the computer system 1700 may calculate a function of two or more quantifiable objectives as a new quantifiable objective. For example, the computer system 1700 may calculate a weighted average of classification performance, sensitivity, and overall interpretability, where the weighted average represents a trade-off between the objectives.

[0573] In some embodiments, the computer system 1700 can evaluate classification performance by running multiple trials with noise activations and / or random noise added to the input variables.

[0574] In some embodiments, computer system 1700 may evaluate sensitivity by running multiple experiments using simulated adversarial attacks and / or noise activations.

[0575] In the illustrative embodiment, the computer system 1700 can simultaneously optimize multiple parameters and / or hyperparameters based on experience, such as in combination with Figure 20 discussed.

[0576] In some embodiments, during training or during ongoing learning after deployment, computer system 1700 may repeat the empirical optimization of one or more parameters based on criteria governing the frequency of repetition. In some embodiments, computer system 1700 may repeat the empirical estimation more frequently based on observations of system operation. For example, if the measured values ​​of one or more quantifiable objectives decrease during continued use or training, computer system 1700 may repeat the empirical estimation. In some embodiments, computer system 1700 may repeat the empirical estimation if continued training on new data examples has changed the value of the learning parameter by more than a specified criterion.

[0577] In block 522, in some embodiments, the computer system 1700 may replace the selected node with a set of three or more nodes. More specifically, the computer system 1700 may replace the node with a unit or a set of nodes, including (1) a first new node created from the selected node and a copy of a connection to the selected node having a positive weight, (2) a second new node created from the selected node and a copy of a connection to the selected node having a negative weight, and (3) a third new node having connections from the first and second new nodes and a copy of the outgoing connection of the selected node. In some embodiments, the computer system 1700 may copy connections having a weight magnitude less than a specified value to the first and second new nodes of the selected node.

[0578] In some embodiments, computer system 1700 may create more new nodes and divide incoming connections into more groups.

[0579] In some embodiments, computer system 1700 can interpret each source node that sends a connection to a selected node as a detector of a data item that produces a higher activation value. Thus, computer system 1700 can interpret an incoming connection with a positive weight as evidence that the connected source node has a set of data items with a high activation value. In some embodiments, computer system 1700 can interpret nodes with a mixture of negative and positive weights as distinguishing between a set of data items detected by a consensus of source nodes with positive weights and a set of data items detected by a consensus of source nodes with negative weights.

[0580] In continued training where the signs of incoming connections do not change much, computer system 1700 training backpropagation from selected nodes will tend to cause the source node to learn to better match this interpretation.

[0581] In some embodiments, computer system 1700 may create a new cell including a new node. Each of the new nodes in a pair may have a subset of the original node's incoming connections and an outgoing connection to a third node. In some embodiments, computer system 1700 may select only connections with weights greater than a specified threshold T1 for the first node in the pair. Computer system 1700 may select only connections with weights less than a threshold T2 as incoming connections to the second node in the pair. In some embodiments, T1 ≤ 0 ≤ T2. In some embodiments, computer system 1700 may reverse the sign of the weights on all incoming connections to the second node in the pair. In these embodiments, for the second node in the pair, computer system 1700 may replace the activation function of the original node with an activation function equal to a constant minus the original activation function. In some embodiments, computer system 1700 may limit the magnitudes of T1 and T2 to less than a specified amount. In such embodiments, the majority of the incoming weights for each of the new nodes in the pair will be positive. In some embodiments, T1 = T2 = 0.

[0582] In some embodiments, computer system 1700 may interpret each node in the new pair as representing a detector with a higher activation function value.

[0583] The new third node might have an activation function that represents some form of difference, e.g.

[0584] f(x,y)=xy or f(x,y)=(exp(x)-exp(y)) / (exp(x)+exp(y)).

[0585] In some embodiments, computer system 1700 may associate a third node as a discriminator between two sets, the discriminator modeling the two sets as disjoint.

[0586] In some embodiments, as training continues, computer system 1700 may add or remove incoming connections if the updated weight of the connection exceeds one of thresholds T1 or T2.

[0587] In some embodiments, for two known sets A and B, the computer system 1700 may associate one of a pair of new nodes with the data set in A, but not with the data set in B, and associate the other node in the pair of new nodes with the data set in B, but not with the data set in A. In some embodiments, the computer system 1700 may train additional nodes associated with the intersection of A and B and / or train additional nodes associated with data sets that are not in A and B.

[0588] If the original node is associated as a detector of a known set, in some embodiments, computer system 1700 may temporarily associate the first node of the pair as a detector of the known set and the second node of the pair as a detector of a supplemental subset of the known set.

[0589] If the original node is a discriminator of two known sets, in some embodiments, computer system 1700 can associate each node in the node pair as a detector of one of the known sets, with each detector having predominantly positive weighted incoming connections.

[0590] In some embodiments, computer system 1700 can train nodes using weight decay. That is, at each weight update, computer system 1700 can multiply the revised weight by a specified constant r < 1. The process of weight decay is well known to those skilled in the art of training neural networks. In some embodiments, if the magnitude of a weight is less than a specified magnitude and has been so for a specified number of iterative updates, computer system 1700 can prune the connection.

[0591] In some embodiments, computer system 1700 may replace one or more new detector nodes with a template model.

[0592] In block 523, in some embodiments, the computer system 1700 may select a set of two or more decision elements. In some embodiments, for each selected decision element, the computer system 1700 may create a new decision element that is initialized to replicate the selected decision element. In some embodiments, the computer system 1700 may connect each replicated element to a connection that replicates the incoming connection of the selected decision element and initialize the connection weights to be the same.

[0593] In some embodiments, the computer system 1700 can then form a decision element group that includes copies of the selected decision element. In some embodiments, the computer system 1700 can add one or more decision elements that represent the intersection of the target set and the complement of the target set of the original selected decision element. In some embodiments, the computer system 1700 can then form a softmax relationship on the expanded set of duplicate detectors. The computer system 1700 can then train the system to associate the expanded set of duplicate detectors with the disjoint set.

[0594] In some embodiments, computer system 1700 may replace one or more disjoint set detectors with a template model and continue training using the softmax relationship.

[0595] In block 524, in some embodiments, the computer system 1700 may use constrained optimization to train the weights of the linear threshold function, such as in conjunction with Figure 6 After training the weights of the linear threshold function, the computer system 1700 can then backpropagate to the nodes connected to the linear threshold node using backpropagation of derivatives, backpropagation of labeled data examples, or both, or neither. Figure 1 103 and Figure 5 504), in some embodiments, the computer system 1700 can build and train the entire network without using any back propagation.

[0596] Figure 6 is a flow chart of an illustrative embodiment of constrained optimization during training.

[0597] In block 601 , the computer system 1700 obtains or selects a network.

[0598] In block 602, in some embodiments, the computer system 1700 may switch activation and / or make other modifications to the selected network, such as in conjunction with Figure 2 discussed.

[0599] In block 603, in some embodiments, computer system 1700 selects a discrimination task. For example, computer system 1700 may select an element that includes a standard discriminator activation function. In some embodiments, computer system 1700 may select a target set or a known set of detector elements and specify the discrimination task as discriminating between the selected set and its complement. In some embodiments, computer system 1700 may select a task to discriminate between two known sets.

[0600] In block 604, in some embodiments, computer system 1700 may select a set of data items having target values ​​for the task selected in block 603. For example, in some embodiments, computer system 1700 may select only data items for which the selected node generates an implicit error. In some embodiments, computer system 1700 may select data items for which the selected node has an end call. In some embodiments, computer system 1700 may avoid selecting data items that exceed a specified exclusion limit. In some embodiments, computer system 1700 may avoid selecting data items that have been delegated from the selected node. In some embodiments, computer system 1700 may avoid selecting data items that are correctly classified by the network, but are erroneous for the selected node.

[0601] In block 605, in some embodiments, computer system 1700 may determine whether the implicit objective of a node is linearly separable by finding weights that minimize T2 - T1, provided that for any data item with the lower-valued objective, the input to the activation function is less than or equal to T2, and for any data item with the higher-valued objective, the input to the activation function is greater than or equal to T1. For example, if the input to the activation function is a weighted affine sum of the values ​​from the node's incoming connections, computer system 1700 may find the optimal weights using linear programming. In some embodiments, computer system 1700 may select a nonlinear objective function for optimization in block 605. In this case, computer system 1700 may find the weights using nonlinear programming with linear constraints. Linear and nonlinear programming with linear constraints are well known to those skilled in the art of mathematical programming.

[0602] In some embodiments, the computer system 1700 may use incremental growth ( Figure 1 103 and Figure 5 504) to build a hybrid network without any back propagation, neither the back propagation of derivatives ( Figure 6 612), nor backpropagation of data examples ( Figure 6 613 and Figure 5 510). For example, in some embodiments, the computer system 1700 may repeatedly discard the target ( Figure 6 607).

[0603] In some embodiments, in block 605 , the computer system 1700 may create a new element having an activation function, such as a linear threshold function or other monotonic function, whose weights and discrimination thresholds are calculated in block 605 .

[0604] In block 606, computer system 1700 checks whether the minimum value of T2-T1 is less than or equal to 0. If so, the selected data item is linearly separable. In this case, computer system 1700 proceeds to block 609. Otherwise, computer system 1700 proceeds to block 607.

[0605] In block 607, in some embodiments, the computer system 1700 may determine whether to discard some of the selected targets, and if so, which targets to discard. In some embodiments, the computer system 1700 may choose to proceed without discarding any of the selected targets.

[0606] In some embodiments, the decision of whether to discard selected data items for a node may involve a cost / performance tradeoff. In some embodiments, the computer system 1700 may make this decision based on fixed criteria specified by the system design. In some embodiments, the HNLMS may perform a cost / performance analysis for the specific case of the selected node or unit. In some embodiments, for example, the computer system 1700 and the HNLMS may test the performance tradeoff, preferably on data other than the training data.

[0607] In block 608, computer system 1700 determines whether to repeat the constrained optimization after discarding some target data items. If so, computer system 1700 returns to block 605. Otherwise, computer system 1700 proceeds to block 609. In some embodiments, computer system 1700 may repeatedly discard target data items until the number of errors is reduced. Unless there are two identical data items, one of which is an error and the other is not, as long as there are remaining errors, computer system 1700 will eventually reduce the number of errors because a set of two non-identical data items is always linearly separable.

[0608] In block 609, in some embodiments, computer system 1700 may examine the performance of the selected element on the data items (if any) not selected in block 604. Because the weights of the incoming connections may have changed, the performance of the selected element on these non-selected data items may have changed.

[0609] In block 610 , in some embodiments, computer system 1700 may determine whether to select additional data items for the element selected or created in block 603 .

[0610] In some embodiments, the decision of whether to select other data items for a node may involve a cost / performance tradeoff. In some embodiments, the computer system 1700 may make this decision based on fixed criteria specified by the system design. In some embodiments, the HNLMS may perform a cost / performance analysis for a specific case of a selected node or unit. In some embodiments, for example, the computer system 1700 and the HNLMS may test the performance tradeoff, preferably on data other than the training data.

[0611] In box 611, computer system 1700 chooses whether to backpropagate the data examples, the derivatives, or both, or neither. If computer system 1700 decides to backpropagate the data examples, it proceeds to box 613. If computer system 1700 decides to backpropagate the derivatives, it proceeds to box 611. If computer system 1700 decides to backpropagate both, it may proceed to boxes 612 and 613 in parallel. If computer system 1700 decides to backpropagate neither, computer system 1700 proceeds directly to box 614. For example, if computer system 1700 determines to make and freeze a copy of the subnetwork of the new linear threshold function, computer system 1700 may choose not to backpropagate either. If, in addition to the linear threshold function, each discriminator trained on the selected task in box 603 is eventually discarded from the network and replaced by one or more linear threshold functions with frozen subnetworks, as shown in FIG. Figure 5 As shown in block 510 of , the final trained network will not have a path to backpropagate the derivatives of the selected identification task to the input variables, which can prevent the adversary from using the backpropagation of gradients to calculate adversarial attacks. In some embodiments, the computer system 1700 can use this strategy for multiple identification tasks without restriction.

[0612] In block 613, in some embodiments, computer system 1700 may backpropagate the data example. In some embodiments, computer system 1700 may backpropagate only the errors and terminate the call. In some embodiments, computer system 1700 may use a data item as a criterion for terminating the call for backpropagation purposes that accepts more data items than the criteria used as the selected data item in block 604.

[0613] In block 612, in some embodiments, computer system 1700 may use Figure 3C The alternative derivative function shown backpropagates the derivatives.

[0614] In block 614 , in some embodiments, the computer system 1700 may determine whether to select additional authentication tasks based on specified stopping criteria.

[0615] Figure 7is a flowchart of an illustrative embodiment of one aspect of hidden state space modeling in one aspect of the present invention. Note that the word "hidden" in the phrase "hidden state space model" has a very different meaning from the phrases "hidden layer" or "hidden node" in discussions of hierarchical neural networks. In discussions of hierarchical neural networks, all layers except the output layer and its nodes can be referred to as "hidden." The input values ​​are also not considered "hidden." However, the values ​​of the state variables in the hidden state space model are hidden more deeply. In the hidden state space model, the activations of all nodes are considered observable values. In some embodiments, some values ​​stored in cells can also be considered observable values. However, in the hidden state space model in a hybrid network, the state variables are not considered observable values, although estimates of their values ​​may be stored in cells.

[0616] In some embodiments, computer system 1700 can model hidden state variables as unobserved random variables. In some embodiments, computer system 1700 can model observable variables as random variables whose values ​​depend on unobserved hidden state variables. Based on the values ​​of the observed variables, computer system 1700 can estimate the hidden variables by applying Bayes' rule.

[0617] In block 701, in some embodiments, computer system 1700 may specify a cell space containing hidden state variables. For example, for an image, in some embodiments, computer system 1700 may create a two-dimensional rectangular cell grid. The hidden state variables may then represent interpretations of local regions in the image. Alternatively, in some embodiments, computer system 1700 may create a two-dimensional hexagonal or other tiling of the plane. In some embodiments, the hidden state space may represent a conditional random field.

[0618] For data represented as a sequence, in some embodiments, the computer system 1700 can formulate a one-dimensional sequence of cells. The hidden state space variables can then represent the state of a time-varying process at a given time. In some embodiments, the hidden state space can represent a hidden Markov process.

[0619] In some embodiments, computer system 1700 may specify an adjacency graph, i.e., a graph in which each cell is connected to its neighboring cells, such as four neighbors in a rectangular grid (eight neighbors if corner neighbors are counted) or six neighbors in a hexagonal grid. In a sequence of cells, computer system 1700 may connect each cell to the previous and next cell in the sequence.

[0620] In some embodiments, the computer system 1700 may represent the relationship between adjacent parts in the mereology as an adjacency graph. In some embodiments, the computer system 1700 may determine the mapping from the elements in the mereology to the cells in the hybrid network through an alignment process, specifically for each input data item ( Figure 12 ).

[0621] In block 702, in some embodiments, computer system 1700 may specify one or more hidden state variables. In some embodiments, the hidden state variables may be variables having values ​​selected from a finite set. In some embodiments, the hidden state variables may be continuous-valued variables.

[0622] In some embodiments, computer system 1700 may represent hidden states via n-tuple variables.

[0623] In block 703, in some embodiments, computer system 1700 may obtain a model of the relationship between the hidden state variables and the observable variables. In some embodiments, the relationship may represent any numerical relationship. In some embodiments, the model may represent the conditional probabilities of the observed variables in and around the grid points of the hidden state cells, conditional on the values ​​of the hidden state variables. In some embodiments, the model may represent the relationship between the state variables in adjacent cells in an adjacency graph. For example, the graph may be an adjacency graph of the parts in a mereological model of the hypothetical object being detected.

[0624] In block 704, in some embodiments, computer system 1700 may obtain a model of co-occurrence of specified state pairs in adjacent cells. For example, computer system 1700 may represent the probability of a particular hidden state variable as a probability based on the values ​​of the hidden state variables at adjacent locations in the adjacency graph.

[0625] In some embodiments, computer system 1700 can use learning parameters to train an abstract model of the degree of association of state values ​​in cells at adjacent positions in an adjacency graph, and these parameters are not necessarily trained to model conditional probabilities. In some embodiments, computer system 1700 can train directional learning parameters between state values ​​in ordered pairs of adjacent cell pairs. In some embodiments, computer system 1700 can train association parameters in each direction. In some embodiments, computer system 1700 can train non-directional associations between learning parameters for unordered adjacent cell pairs.

[0626] In block 705, in some embodiments, computer system 1700 may select one or more paths in state space for evaluation. For example, in a layer of a convolutional neural network, computer system 1700 may select a path of cells corresponding to a path of grid points in an image. In a sequence model, computer system 1700 may select a forward sequence or a reverse sequence. More generally, in some embodiments, computer system 1700 may select any path through the adjacency graph.

[0627] In block 706, in some embodiments, computer system 1700 may calculate the probability of the state given the observed text. In some embodiments, computer system 1700 may update learned parameters of an abstract model of the degree of association of ordered or unordered state-value pairs of adjacent cells in an adjacency graph.

[0628] In block 707 , in some embodiments, computer system 1700 may update the model of the observed variables given the estimated distribution of the hidden state space variables.

[0629] In block 708 , in some embodiments, the computer system 1700 may update a model of a conditional probability model of state values ​​in neighboring cells, or update a model of an abstract model of directed or non-directed associations of state values ​​in neighboring cells.

[0630] In block 709, in some embodiments, the computer system 1700 determines whether to select a new path through the graph based on specified criteria. If so, the computer system 1700 returns to block 705. Otherwise, the computer system 1700 continues to block 710.

[0631] In block 710, in some embodiments, the computer system 1700 determines whether to train different models for the association of the observed variable and the state value in the adjacent cell based on a specified criterion. If so, the computer system 1700 returns to block 703. Otherwise, the computer system 1700 continues to block 711.

[0632] In block 711, in some embodiments, the computer system 1700 may determine whether to perform analysis of a different state space formulation. If so, the computer system 1700 returns to block 701. Otherwise, the computer system 1700 will perform the analysis according to Figure 7 The process shown is completed.

[0633] Figure 8A flow chart of an exemplary embodiment of a perceptual classification operation using a trained hybrid network and fast matching. The exemplary embodiment includes protection against potential noise in the data. The exemplary embodiment also includes methods for reducing the amount of computation required for classification. In one aspect of the present invention, the exemplary embodiment also provides continuous training during inference using fast matching and continuous training during inference.

[0634] In block 801 , the computer system 1700 obtains a trained system.

[0635] In block 802 , the computer system 1700 receives a data item to be classified.

[0636] In block 803, in some embodiments, computer system 1700 may implement active defense against disturbed data using sensitivity data exchanges, as discussed in conjunction with block 416. In active defense, the network includes one or more data exchanges through which computer system 1700 selects between multiple activation functions or multiple nodes such that the selected activation for the data item received in block 802 is within a relatively flat region and not near a boundary of the region.

[0637] In block 804, in some embodiments, the computer system 1700 may perform a quick preliminary classification. In some embodiments, the computer system 1700 may use a lower resolution image or other simplified representation of the data items received for classification to calculate the preliminary classification. In some embodiments, the computer system 1700 may use a simpler model instead of the full hybrid network or instead of some units.

[0638] In some embodiments, computer system 1700 may perform a table lookup of a pre-computed sort on a low-order representation of a cell input.

[0639] In some embodiments, computer system 1700 can perform bottom-up component detection. In some embodiments, computer system 1700 can perform bottom-up component detection using a simplified network. In bottom-up component detection, computer system 1700 can first perform classification and detection of smaller units, such as small objects or parts of objects in an image, or short sound clips in speech or other audio. In bottom-up component detection, computer system 1700 can then classify a selected subset of larger units based on the identities of the best-scoring smaller units.

[0640] In some embodiments, computer system 1700 may perform hypothesis pruning on some larger units based on their scores relative to the best scoring unit during a stage of bottom-up component detection.

[0641] In some embodiments, the computer system 1700 can create a short list of best-scoring alternative classifications for one or more cells or the entire classification network. In some embodiments, the computer system 1700 can then skip some computations for hypotheses that are not on the computed short list. In some embodiments, the computer system 1700 can replace hypotheses that are not on the short list with a specified fallback score.

[0642] In some embodiments, computer system 1700 may coordinate bottom-up component detection with alignment of the adjacency graph, as described in connection with block 805 .

[0643] In block 805, in some embodiments, the computer system 1700 may perform a fast classification based on alignment with the adjacency graph. Figure 12 Training based on adjacency graph alignment is discussed.

[0644] As an example of preliminary alignment for classification via a full hybrid network, computer system 1700 can detect portions of the object's periphery. Computer system 1700 can then align the detected components and other elements of the periphery with the object's mereology. Computer system 1700 can then align and classify portions within the mereology. In some embodiments, computer system 1700 can coordinate this alignment-based rapid classification with bottom-up component detection, as discussed in conjunction with block 804.

[0645] In block 806, the computer system 1700 may perform other sequential processing in the cell. For example, the computer system 1700 may calculate a hidden state space model, such as a combination of Figure 7 As another example, the computer system 1700 can depict line segments, curves, and / or contours by sequentially connecting pairwise associations or similarity chains of adjacent elements. The computer system 1700 can use this sequential processing for tasks such as: (1) determining whether two local regions are connected, (2) finding a contour around an object, (3) finding a boundary separating two regions, or (4) solving a maze.

[0646] In block 807 , in some embodiments, computer system 1700 may perform a check on the preliminary results.

[0647] In some embodiments, the computer system 1700 may verify the classification result based on results obtained by other means. For example, the computer system 1700 may compare the result of the current preliminary matching with the results obtained from other preliminary matching.

[0648] In some embodiments, in an image recognition task, if the current preliminary match uses a low-resolution representation of an image, the computer system 1700 may compare the results of the current preliminary match with classification results using a higher-resolution image. In some embodiments, the computer system 1700 may accelerate the classification of higher-resolution images by pruning calculations based on the preliminary match results.

[0649] In some embodiments, the computer system 1700 can verify the preliminary results against higher resolution images at key points in the mereology of the short list of preliminary matched best candidate classifications. For example, the computer system 1700 can verify the classification along portions of the periphery of the aligned mereology.

[0650] In some embodiments, the computer system 1700 can calculate the backpropagation based on the output activations of each candidate classification on the short list of preliminary matches. In some embodiments, the computer system 1700 can calculate the backpropagation using a network other than the network used in the preliminary matches, and / or can calculate the backpropagation based on a higher resolution image. In some embodiments, the computer system 1700 can then check each node in the network to see if the node is wrong relative to the implicit local goal, such as Figure 5 As described in block 508. In some embodiments, the computer system 1700 can augment the short list of answers from the preliminary matches by adding candidate answers that are obtained by changing the activation of the selected nodes to near a threshold that will change the error or end call to the implicit local goal.

[0651] In some embodiments, computer system 1700 can use different knowledge sources or different input data sources to verify the results of the preliminary matching with the results obtained from the classification. For example, in the classification of speech or other audio, computer system 1700 can use different signal processing of the audio signal to verify the preliminary classification results. As another example, in speech recognition or handwriting recognition, computer system 1700 can compare the results obtained from recognizing phonemes or letters with the results obtained using a word sequence language model.

[0652] In some embodiments, computer system 1700 can verify the results of the preliminary match by using a parameter generator. In some embodiments, computer system 1700 can adjust the parameters of the parameter generator to adapt to the observed input data, subject to the constraint that the parameters of the generator are consistent with one of the constraints on the preliminary matching candidate answer shortlist. In some embodiments, computer system 1700 can select the answer whose output from the parameter generator best matches the input data of the classifier. In some embodiments, computer system 1700 can compare the output of the parameter generator with the input to prune the shortlist of candidate answers or add to the shortlist.

[0653] In some embodiments, the computer system 1700 can add additional answers to the short list based on previous experience with errors in confusing output classes. For example, the HNLMS can maintain a confusion matrix of errors made by previous versions of the network being developed or other systems trained for the same classification task.

[0654] In some embodiments, computer system 1700 can use abductive reasoning to evaluate each candidate answer on the shortlist. For example, in some embodiments, computer system 1700 can apply abductive reasoning to explain potential reasons why a candidate answer scored low. As a specific example, if a candidate word in a speech recognition task matches well except for one phoneme based on formant tracking, computer system 1700 can check the following hypothesis: formant identification in formant tracking may be erroneous because two formants with close frequencies may form a single peak in the spectrum.

[0655] In block 808, in some embodiments, computer system 1700 may determine whether to perform additional preliminary classifications. If not, computer system 1700 proceeds to block 809. If so, computer system 1700 returns to block 803 to perform additional preliminary classifications. In some embodiments, computer system 1700 may perform a more complex classification based on the previous preliminary classification. In some embodiments, computer system 1700 may perform a new preliminary classification that is designed to be different from the previous preliminary classification.

[0656] In block 809, in some embodiments, the computer system 1700 may perform a test to detect whether the data item received in block 802 has been perturbed by an adversarial attack or other perturbation that could change the classification. In some embodiments, the computer system 1700 may check the network to verify that the nodes and activation functions satisfy the Figure 2 In some embodiments, to detect potential adversarial attacks or other interference, the computer system 1700 may use a diverse set of canary networks, such as a combination of Figure 4as discussed in block 415 of .

[0657] In block 810, in some embodiments, computer system 1700 may acquire additional data. In some embodiments, the additional data may include additional training data. In some embodiments, the additional data may include data acquired during operation of the current classifier system or from other deployed classifier systems. In some embodiments, the data may be generated or synthesized data. In some embodiments, computer system 1700 may generate additional data in a region selected by computer system 1700 by analyzing the results of the preliminary classification.

[0658] In block 811, in some embodiments, the computer system 1700 may apply continuous learning and growth techniques, such as combining Figure 1 Technology discussed.

[0659] In some embodiments, computer system 1700 may make additions and modifications to the network that are customized to the data items received in block 802 .

[0660] In block 814, in some embodiments, computer system 1700 may optionally perform controlled semi-supervised learning using unlabeled data. In some cases, it may not be possible to verify that the classification is correct during deployment. In some embodiments, computer system 1700 may obtain additional unlabeled or unclassified data. In some embodiments, during deployment, an end user or another person may explicitly or implicitly confirm some of the classification results, while other classification results may remain unconfirmed.

[0661] In some embodiments, computer system 1700 may perform additional training, including on unconfirmed data obtained during deployment by temporarily labeling each unconfirmed result with the classifier's best scoring label. This process of using unconfirmed labels from the classifier is known as semi-supervised learning, which is well known to those skilled in the art of machine learning. Semi-supervised learning typically improves the performance of a machine learning system when the amount of labeled training data is limited. On the other hand, in some cases, semi-supervised learning may cause the performance of a machine learning system to degrade, sometimes to an extreme degree. In fact, there is a theorem that as the amount of unlabeled data in semi-supervised learning approaches infinity, the performance of semi-supervised learning converges to that of unsupervised learning.

[0662] In some embodiments, computer system 1700 can limit the amount of unverified data relative to the training data and verified labeled data obtained during deployment. In some embodiments, computer system 1700 can use labeled data other than training data to verify network performance after semi-supervised learning. In some embodiments, computer system 1700 can check network performance after semi-supervised learning by comparing classification results obtained with other systems that were not trained on unverified semi-supervised labeled data.

[0663] In block 815 , in some embodiments, computer system 1700 may save the trained network to a network repository and save the data to a data repository.

[0664] In a preferred embodiment, the computer system 1700 may return to block 802 to continue lifelong learning.

[0665] Figure 9 is a schematic diagram of a parameter-controlled autoencoder that a computer system 1700 can use in several aspects of the present invention.

[0666] A conventional autoencoder includes input data 901, which the computer system 1700 provides as input to an encoder network 902. The computer system 1700 also provides the input data 901 as output targets to a decoder network 905. In a conventional autoencoder, the output node 904 of the encoder 902 is also an input value to the decoder 905. In a parameter-controlled autoencoder, the computer system 1700 can add control parameters or specified features 903 as additional input values ​​to the decoder 905.

[0667] Because the input data 901 is also the target data output by the decoder 905, the computer system 1700 does not need to provide classification labels or any other additional information for training the autoencoder. Therefore, the computer system 1700 can use unsupervised learning to train the autoencoder. Conventional autoencoders and methods for training autoencoders are well known to those skilled in the art of training deep neural networks.

[0668] In designing and training a useful autoencoder, it is necessary to impose some restrictions on the n-tuples of output values ​​904 of encoder 902. If values ​​904 were unrestricted, the encoder could simply copy the input values ​​901 to 904, and the decoder could copy them to its output, which would then perfectly match input 901. However, such an autoencoder would be useless.

[0669] One form of restriction is to limit the number of output variables 904 of encoder 902. Another form of restriction is to impose a sparsity constraint or regularization on the number of variables that may have non-zero values ​​in 904 for each input data item. However, different input data items may have different variables in 904 that are non-zero, and the total number of variables in 904 may be equal to or greater than the number of input variables.

[0670] The vulnerability of a decision element in a network to small changes in its input data is often proportional to the number of input variables. In some embodiments, the computer system 1700 can replace the local data space of a decision element group with the bottleneck layer of an autoencoder for that local data space to reduce the number of input variables for the decision element group. In some embodiments, the computer system 1700 can train the autoencoder using only data from the union of the target sets of elements in the decision element group. In some embodiments, the computer system 1700 can train a detector or discriminator to separate data from the union of the target sets of elements in the decision element group from data that is not in the union.

[0671] In some embodiments, the computer system 1700 may modify the network to replace connections from the local data space to elements in the decision element group with connections from the bottleneck layer of the autoencoder to elements in the decision element group.

[0672] In some embodiments, computer system 1700 can test the comparative performance of the system before making such modifications to the network and test the performance after such modifications. In some embodiments, computer system 1700 can generate simulated adversarial attacks and / or other perturbations in the data in this comparative evaluation.

[0673] In some embodiments, the computer system 1700 may also compare the interpretability of the original local data space with the interpretability of the variables in the bottleneck layer of the autoencoder. In some embodiments, the computer system 1700 may compare the interpretability of the variables in the bottleneck layer with a specified standard. In some embodiments, the computer system 1700 may estimate the interpretability of the variables by measuring the degree of association of the variables with known or named sets. Preferably, the computer system 1700 will rank associations with named sets higher than associations with known, unnamed sets.

[0674] Because the variables in the bottleneck layer of the autoencoder are nonlinear functions of multiple input variables, the variables in the bottleneck layer may be more difficult to interpret than the input variables.

[0675] In some embodiments, computer system 1700 may use a parameter-controlled autoencoder instead of a traditional autoencoder. In a preferred embodiment, computer system 1700 may select designated feature variables 903 based on interpretability. Computer system 1700 may use any variable calculated by computer system 1700 from global input data space 921 via analysis system 922 as a designated feature in 903. In some embodiments, in analysis system 922, computer system 1700 may use the output of an element already in a trained hybrid network. In some embodiments, computer system 1700 may create and train new elements in a hybrid network.

[0676] In some embodiments, the computer system 1700 may select variables associated with a named set in the current network being trained or a previously trained network as one or more designated feature variables in 903. In some embodiments, the computer system 1700 may train a new node, cell, or unit to detect the named set.

[0677] In some embodiments, computer system 1700 may select variables associated with features known to humans as one or more designated feature variables in 903. For example, in speech analysis, the frequencies of sound resonances are called formants. Estimation of formant frequencies is well known to those skilled in the art of speech analysis.

[0678] In some embodiments, the computer system 1700 may implement knowledge engineering specified by a human domain expert. In some embodiments, the computer system 1700 may use specified feature variables 903 having values ​​calculated by knowledge engineering in a previously trained system.

[0679] In some embodiments, the computer system 1700 may select one or more control parameters of a parameter synthesizer or a data generator as the designated feature variable 903 .

[0680] In some embodiments, the computer system 1700 may use a random bottleneck layer as a generator to train a parameter-controlled autoencoder. For example, the computer system 1700 may use a random classification autoencoder (SCAN) as a generator. SCAN is described in U.S. Patents 10,679,129 and 11,461,661 (previously incorporated herein by reference). In some embodiments, the computer system 1700 may use such a generator to generate additional data, such as in conjunction with Figure 4 Box 410 and Figure 5In some embodiments, the computer system 1700 can use a parameter-controlled autoencoder for style adjustment, as discussed in conjunction with blocks 2109 and 2110. In some embodiments, the computer system 1700 can train a parameter-controlled autoencoder to use the decoder as a parameter-controlled generator of speech or music, as discussed in conjunction with Figure 20 In some embodiments, when control of a speech or music synthesizer may require a trained professional, computer system 1700 can specify parameters in a parameter-controlled autoencoder that can be understood and controlled by an end user.

[0681] In some embodiments, the computer system 1700 can train a generator based on a parameter-controlled autoencoder with specified features 903 that are designed to be understood and controlled by an end user. For example, the computer system 1700 can design an image generator that can be controlled by a professional artist or an amateur. For professional artists, the computer system 1700 can design the specified feature set 903 to use named features that are referred to by terms known to professional artists. For amateurs, the computer system 1700 can design the specified feature set 903 to use named features with names that are understandable to untrained amateurs.

[0682] In some embodiments, computer system 1700 may design feature set 903 to be used by untrained individuals to create projects solely for their own enjoyment and not for others.

[0683] For example, in some embodiments, computer system 1700 can design a parameter-controlled autoencoder with a random layer to control a music synthesizer. In some embodiments, computer system 1700 can design a system for use by people who have no training in any musical instrument but love music and have strong musical preferences.

[0684] In some embodiments, computer system 1700 can design a system for use by a person who loves music but has hearing loss, so that for live or recorded performances, the person can hear the quality of music that they remembered before the hearing loss, even though no hearing aid can correct the hearing loss. Computer system 1700 can design a parametrically controlled synthesizer with designated, individually customized control values ​​that will allow the person to exaggerate various aspects of the music to optimize the perceived quality of the music heard by the person.

[0685] In some embodiments, the computer system 1700 may use a parameter-controlled autoencoder to back-propagate to the values ​​of the specified feature variables 903, which generate data items on the decision boundary of the selected decision element. In some embodiments, the computer system 1700 may use a random parameter-controlled autoencoder to generate additional data near the decision boundary. In some embodiments, the computer system 1700 may use the additional data near the decision boundary to test the sensitivity of the decision boundary, such as in combination with Figure 4 As discussed in block 410 of FIG.

[0686] In some embodiments, the computer system 1700 can use the additional data as training data to improve the classification performance of the system. In some embodiments, the computer system 1700 can use one or more control variables of the parameter synthesizer as designated features 903, for which different values ​​of the control parameters can be designed or known to be associated with different classification categories or other named sets.

[0687] In some embodiments, computer system 1700 may use the values ​​of specified characteristic variables 903 to help interpret elements in the network that receive incoming connections directly or indirectly from variable group 903 .

[0688] Figure 10 1 is a diagram of an illustrative embodiment of a robust template detector model that can be used by computer system 1700 as a more robust replacement for detector node activation functions. Computer system 1700 can design template models to be more robust to reduce their vulnerability to making imperceptible errors.

[0689] exist Figure 10 In the exemplary model shown, in some embodiments, the computer system 1700 can replace the raw inputs to the detector nodes with the bottleneck layer (1001) of the autoencoder of the data space that includes these raw inputs.

[0690] Ring structures 1002, 1003 and 1004 include connections from the bottleneck layer or other designated local data space to the corresponding nodes and to the function elements Y1, Y2, ..., Y K In some embodiments, for ring k, the computer system 1700 calculates |μ k -X k |, that is, the input value X k With parameter μ k In some embodiments, the computer system 1700 can calculate the parameter μ k As a statistical estimate of a parameter of a parametric probability distribution, such as the mean of a Gaussian distribution or the median of a two-sided exponential distribution. In some embodiments, the computer system 1700 can determine the parameter μ by maximum likelihood estimation.k In some embodiments, the computer system 1700 can determine the parameter μ by iterative training using gradient descent. k In some embodiments, the computer system 1700 can be used to compare the performance of the system with the value of μ k This value is estimated by empirically comparing different values ​​of . k The value of can be set by a hyperparameter specified by, for example, HNLMS.

[0691] In some embodiments, the computer system 1700 can calculate the function f(|μ k -X k |). For example, in some embodiments, for the constant S k For a specified value, the computer system 1700 can use the function f(x)=min(|μ k -X k |,S k ). For example, in some embodiments, the system design or HNLMS may specify S k In some embodiments, S k The value of can be the same for all k.

[0692] In some embodiments...

Claims

1. A computer-implemented method comprising: Dynamically training a machine learning network from a base system by a programmed computer system, wherein the machine learning network comprises a plurality of layers when constructed, wherein the plurality of layers comprises an input layer, an output layer, and one or more hidden layers between the input layer and the output layer, wherein training the machine learning network comprises: Iteratively training the machine learning network using a training dataset by the programmed computer system, wherein the iterative training comprises calculating learning parameters of the machine learning network, wherein the learning parameters comprise weights of weighted connections in the machine learning network, wherein for each training data item in the training dataset, calculating the learning parameters comprises: a forward propagation through the machine learning network, which involves performing computations using the learned parameters; and for at least a first portion of the machine learning network, backpropagating through the machine learning network, wherein, for the first portion of the machine learning network, the backpropagation comprises computing derivatives of the learning parameters with respect to a loss function; performing, by the programmed computer system, a sensitivity level assessment on the machine learning network, wherein the sensitivity level assessment comprises determining, according to a sensitivity standard, whether the machine learning network produces an imperceptible result; and performing, by the programmed computer system, one or more sensitivity-increasing modifications to the machine learning network, wherein each of the one or more sensitivity-increasing modifications is responsive to a determination in an evaluation of a sensitivity level of the machine learning network that the machine learning network produces an imperceptible result, such that the one or more sensitivity-increasing modifications render the machine learning network less susceptible to producing the imperceptible result.

2. The computer-implemented method of claim 1 , wherein: At least one of the one or more sensitivity-enhancing modifications comprises a structural modification to the machine learning network.

3. The computer-implemented method of claim 2, wherein: The structural modification includes replacing, by the programmed computer system, nodes of the machine learning network with a plurality of replacement nodes.

4. The computer-implemented method of claim 3, wherein: The node has a non-monotonic activation function with N monotonic intervals, where N>1; and The plurality of replacement nodes includes N replacement nodes, wherein each of the N replacement nodes corresponds to a respective one of the N monotonic intervals.

5. The computer-implemented method of claim 3 , further comprising: Initializing, by the programmed computer system, the plurality of replacement nodes to have the same connections and connection weights; as well as After initialization by the programmed computer system and subsequent training of the plurality of replacement nodes, the connection weights of the plurality of replacement nodes are made different.

6. The computer-implemented method of claim 3, wherein: Each of the plurality of replacement nodes has a different activation function.

7. The computer-implemented method of claim 6, wherein: The structural modification also includes adding a switch to the machine learning network to select which of the plurality of replacement nodes is to use a particular data item.

8. The computer-implemented method of claim 2, wherein: The structural modification includes adding nodes to the machine learning network.

9. The computer-implemented method of claim 8, wherein: The nodes include error prediction nodes.

10. The computer-implemented method of claim 8, wherein: The nodes include error correction nodes.

11. The computer-implemented method of claim 8, wherein: The nodes include a detector simulating node trained to simulate a detector, and wherein making one or more modifications to increase sensitivity includes determining, by the programmed computer system, a position of the detector simulating node in the machine learning network.

12. The computer-implemented method of claim 1 , wherein: Making one or more modifications to increase sensitivity include: a first training phase of the machine learning network that selectively trains a sub-portion of the machine learning network; and After the first training phase, a second training phase is performed to train the entire machine learning network.

13. The computer-implemented method of claim 1 , wherein: Performing one or more sensitivity-enhancing modifications includes a first training phase of the machine learning network that trains selected elements in the machine learning network using a selected sub-portion of the training data.

14. The computer-implemented method of claim 13, wherein: The selected element comprises a detector element of the machine learning network, and wherein the selected sub-portion of the training data comprises training data within a threshold distance of a decision boundary of the detector element.

15. The computer-implemented method of claim 2, wherein: The structural modification includes replacing, by the programmed computer system, selected nodes in the machine learning network with a set of replacement nodes, the set of replacement nodes including first, second, and third replacement nodes, wherein: The first replacement node copies the incoming connection with the positive weight to the selected node; The second replacement node copies the incoming connection with the negative weight to the selected node; The third replacement node replicates outgoing connections from the selected node; and The third replacement node has a first incoming connection from the first replacement node and a second incoming connection from the second replacement node.

16. The computer-implemented method of claim 1 , wherein: Prior to the one or more sensitivity-enhancing modifications, the machine learning network includes a regression-type output; and At least one of the one or more sensitivity-enhancing modifications includes converting, by the programmed computer system, the regression-type output to a classification-type output of the machine learning network.

17. The computer-implemented method of claim 1, wherein: One or more sensitivity-enhancing modifications to the machine learning network include creating and using, by the programmed computer system, alternative derivative functions for nodes of the machine learning network.

18. The computer-implemented method of claim 1, wherein: The one or more sensitivity-enhancing modifications to the machine learning network include excluding, by the programmed computer system, one or more training data items from selected nodes of the machine learning network.

19. The computer-implemented method of claim 1 , wherein: The one or more sensitivity-enhancing modifications to the machine learning network include delegating, by the programmed computer system, one or more training data items from a training dataset in the machine learning network.

20. The computer-implemented method of claim 1, wherein: At least one of the one or more sensitivity-enhancing modifications comprises a modified activation function for a node of the machine learning network.

21. The computer-implemented method of claim 20, wherein: The modified activation function includes, for a node of the machine learning network, prior to one or more modifications to increase sensitivity, the node comprising an unbounded activation function, replacing the unbounded activation function with a bounded activation function for the node.

22. The computer-implemented method of claim 20, wherein: The modified activation function includes, for a node of the machine learning network, prior to one or more modifications to increase sensitivity, the node comprising a non-monotonic activation function, replacing the monotonic activation function with the non-monotonic activation function of the node.

23. The computer-implemented method of claim 20, wherein: The modified activation function comprises a modified activation function whose output value changes less than the activation function of the node prior to at least one of the one or more sensitivity-increasing modifications.

24. The computer-implemented method of claim 20, wherein: The modified activation function comprises a piecewise constant activation function.

25. The computer-implemented method of claim 20, wherein: The modified activation function includes a plurality of selectively used replacement activation functions, wherein the plurality of selectively used replacement activation functions are selected based on inputs to the machine learning network.

26. The computer-implemented method of claim 1, wherein: The one or more modifications to increase sensitivity include training nodes in the machine learning network to: Producing a first output value for an input within a known set; as well as When the input is not within the known set, a second output value different from the first input value is generated.

27. The computer-implemented method of claim 20, wherein: The modified activation function includes a randomized activation function such that activation values ​​for particular data items from a node are randomly different.

28. The computer-implemented method of claim 20, wherein: The modified activation function includes an activation function f(x) where a constant background score is output for values ​​of x less than a threshold T1.

29. The computer-implemented method of claim 20, wherein: The modified activation function comprises an activation function f(x) where a constant background score is output for values ​​of x greater than a threshold T2.

30. The computer-implemented method of claim 1, wherein: Evaluating the sensitivity level of the machine learning network includes determining whether a slight change in the input of the machine learning network causes the machine learning network to make an error on the input, while before the slight change in the input occurred, the machine learning network did not make an error on the input.

31. The computer-implemented method of claim 30, wherein: The minor change includes a change in which the L∞ norm of the input is smaller than a threshold.

32. The computer-implemented method of claim 31 , wherein: The one or more modifications to increase sensitivity include: structural modifications to the machine learning network upon determining that a small change in an input to the machine learning network causes the machine learning network to make an error on the input, while the machine learning network did not make an error before the small change in the input.

33. The computer-implemented method of claim 31 , wherein: The one or more modifications to increase sensitivity include changing an activation function of a node in the machine learning network upon determining that a small change in an input to the machine learning network causes the machine learning network to make an error on the input, while the machine learning network did not make an error before the small change in the input.

34. The computer-implemented method of claim 1, wherein: The sensitivity level of the machine learning network is evaluated based on the dimensions of a plurality of variables of the machine learning network and a derivative of an output function of the machine learning network with respect to an input.

35. The computer-implemented method of claim 1 , wherein: The sensitivity level evaluation of the machine learning network includes testing a decision boundary determined by the machine learning network; and Performing one or more modifications to increase sensitivity includes moving, by the programmed computer system, a position of the decision boundary.

36. The computer-implemented method of claim 1, wherein: Performing one or more sensitivity-enhancing modifications includes creating, by the programmed computer system, a local normed space with the autoencoder such that the local normed space limits the effective dimensionality of an input to a detector element or a discriminator element of the machine learning network.

37. The computer-implemented method of claim 1, wherein: Performing a sensitivity level evaluation of the machine learning network includes performing, by at least the programmed computer system, a first sensitivity level evaluation and a second sensitivity level evaluation, wherein the first sensitivity level evaluation has a different sensitivity criterion than the second sensitivity level evaluation.

38. The computer-implemented method of claim 37, wherein: The first sensitivity level assessment includes determining whether a small change in the input of the machine learning network causes the machine learning network to make an error on the input, while before the small change in the input, the machine learning network did not make an error.

39. The computer-implemented method of claim 38, wherein: The second sensitivity level assessment includes guidance from a hybrid network learning management system (HNLMS), wherein the HNLMS includes a collaborative association of one or more human expert teams and one or more AI systems.

40. The computer-implemented method of claim 39, wherein: The guidance includes hyperparameters of a sensitivity criterion of the machine learning network.

41. The computer-implemented method of claim 1 , further comprising as part of training the machine learning network and after evaluating the sensitivity level of the machine learning network: classifying, by the programmed computer system, an input data item to be classified using the machine learning network; and Additional modifications are made to the machine learning network by the programmed computer system based on the classification of the input data item to be classified.

42. The computer-implemented method of claim 41 , wherein: Performing the classification includes calculating, by the programmed computer system, an activation value for each node in the machine learning network.

43. The computer-implemented method of claim 1, wherein: After performing the one or more sensitivity-enhancing modifications, the machine learning network includes one or more units and zero or more nodes, such that a sum of the units and the nodes is greater than 2, wherein: Each of the one or more units produces a plurality of outputs, each output resulting from a separate activation function, wherein each separate activation function is applied to an output of a common affine transformation of the unit; and Each of the zero or more nodes produces a single output having a single activation function applied to the output of a single affine transformation of the node.

44. The computer-implemented method of claim 43, wherein: At least one of the units comprises a robust template model.

45. The computer-implemented method of claim 44, wherein: The robust template model includes at least two input variable norm units and a template summation cell connected to the two input variable norm units.

46. ​​The computer-implemented method of claim 45, wherein: Each of the at least two input variable norm units calculates a univariate norm.

47. The computer-implemented method of claim 46, wherein: Each univariate norm is calculated using hyperparameters specified by a system that includes one or more human teams collaborating with one or more AI systems.

48. The computer-implemented method of claim 1 , wherein: Backpropagating the first portion of the machine learning network includes training the first portion of the machine learning network via gradient descent; and Calculating the learning parameters also includes training, by the programmed computer system, a second portion of the machine learning network via a training technique other than gradient descent.

49. The computer-implemented method of claim 48, wherein: Training techniques other than gradient descent include histogram analysis, wherein the histogram analysis includes: calculating a histogram of one or more variables based on the training of the machine learning network; and The one or more sensitivity-enhancing modifications to the machine learning network include performing the one or more sensitivity-enhancing modifications to the machine learning network based on the histogram.

50. The computer-implemented method of claim 48, wherein: A training technique other than gradient descent involves setting implicit local training targets for nodes of the machine learning network.

51. The computer-implemented method of claim 48, wherein: A training technique other than gradient descent involves backpropagating labeled data examples through a second portion of the machine learning network.

52. The computer-implemented method of claim 51 , wherein: The labeled data examples have implicit errors corrected.

53. The computer-implemented method of claim 48, wherein: A training technique other than gradient descent includes using empirically estimated learning parameters for nodes in the second portion of the machine learning network.

54. The computer-implemented method of claim 48, wherein: Training techniques other than gradient descent include using empirically estimated hyperparameters for the second portion of the machine learning network.

55. The computer-implemented method of claim 48, wherein: Training techniques other than gradient descent include error minimization and backpropagation of data examples to a second portion of the machine learning network.

56. The computer-implemented method of claim 55, wherein: Error minimization and backpropagation of data examples to the second part of the machine learning network are complementary to backpropagation of derivatives through the second part of the network.

57. The computer-implemented method of claim 1, wherein: Training the machine learning network includes training the machine learning network to classify presented data items after training.

58. The computer-implemented method of claim 57, further comprising: training a diverse set of canary networks and a diverse set of robust networks by the programmed computer system; as well as The programmed computer system diagnoses potential sensitivity violations of a machine learning network classification data item using a diverse set of canary networks and a diverse set of robust networks.

59. The computer-implemented method of claim 57, further comprising: calculating, by said programmed computer system, an alignment of said presented data items; as well as The alignment is used by the programmed computer system to inform classification of a machine learning network.

60. The computer-implemented method of claim 59, wherein: The alignment is of a type directed to human knowledge.

61. The computer-implemented method of claim 60, wherein: Types of human knowledge include mereology.

62. The computer-implemented method of claim 1, wherein: The machine learning network is trained as a creative work generator.

63. The computer-implemented method of claim 62, wherein: The creative work generator is trained on written creative works.

64. The computer-implemented method of claim 62, wherein: The creative work generator is trained on visual creative works.

65. The computer-implemented method of claim 62, wherein: The creative composition generator is trained as a musical composition generator.

66. The computer-implemented method of claim 62, wherein: The creative work generator includes hyperparameters for controlling the amount of human involvement in creating the creative work generated by the creative work generator.

67. The computer-implemented method of claim 62, wherein: The machine learning network is trained to have an explicit representation of human knowledge.

68. The computer-implemented method of claim 62, wherein: The creative work generator includes style hyperparameters used in generating the creative work.

69. The computer-implemented method of claim 68, wherein: The creative work generator further includes a style adjustment subsystem for generating the style hyperparameters.

70. The computer-implemented method of claim 69, wherein: The style adjustment subsystem includes a parameter autoencoder.

71. A computer system comprising: one or more processor cores; as well as a computer memory in communication with the one or more processor cores, wherein the computer memory stores computer instructions that, when executed by the one or more processor cores, cause the one or more processor cores to dynamically train a machine learning network from a base system, wherein the machine learning network, when constructed, comprises a plurality of layers, wherein the plurality of layers comprises an input layer, an output layer, and one or more hidden layers between the input layer and the output layer, wherein, when executed by the one or more processor cores, cause the one or more processor cores to train the machine learning network by: Iteratively training the machine learning network using a training dataset, wherein the iterative training includes calculating learning parameters of the machine learning network, wherein the learning parameters include weights of weighted connections in the machine learning network, and wherein, for each training data item in the training dataset, calculating the learning parameters includes: a forward propagation through the machine learning network, which involves performing computations using the learned parameters; and for at least a first portion of the machine learning network, backpropagating through the machine learning network, wherein, for the first portion of the machine learning network, the backpropagation comprises computing derivatives of the learning parameters with respect to a loss function; performing a sensitivity level assessment on the machine learning network, wherein the sensitivity level assessment comprises determining whether the machine learning network produces an imperceptible result according to a sensitivity standard; and performing one or more sensitivity-increasing modifications to the machine learning network, wherein each of the one or more sensitivity-increasing modifications is responsive to a determination in an evaluation of a sensitivity level of the machine learning network that the machine learning network produces an imperceptible result, such that the one or more sensitivity-increasing modifications render the machine learning network less susceptible to producing the imperceptible result.

72. The computer system of claim 71, wherein: At least one of the one or more sensitivity-enhancing modifications comprises a structural modification to the machine learning network.

73. The computer system of claim 72, wherein: The structural modification includes replacing nodes of the machine learning network with a plurality of replacement nodes.

74. The computer system of claim 73, wherein: The node has a non-monotonic activation function with N monotonic intervals, where N>1; and The plurality of replacement nodes includes N replacement nodes, wherein each of the N replacement nodes corresponds to a respective one of the N monotonic intervals.

75. The computer system of claim 73, wherein: When the computer instructions are executed by the one or more processor cores, the one or more processor cores are further caused to: Initializing the plurality of replacement nodes to have the same connections and connection weights; and After initialization and subsequent training of the plurality of replacement nodes, connection weights of the plurality of replacement nodes are made different.

76. The computer system of claim 73, wherein: Each of the plurality of replacement nodes has a different activation function.

77. The computer system of claim 76, wherein: The structural modification also includes adding a switch to the machine learning network to select which of the plurality of replacement nodes is to use a particular data item.

78. The computer system of claim 72, wherein: The structural modification includes adding nodes to the machine learning network.

79. The computer system of claim 78, wherein: The nodes include error prediction nodes.

80. The computer system of claim 78, wherein: The nodes include error correction nodes.

81. The computer system of claim 78, wherein: The nodes include a detector simulation node trained to simulate a detector; as well as When the computer instructions are executed by the one or more processor cores, the one or more processor cores are caused to perform one or more sensitivity-enhancing modifications by determining a position of the detector simulation node in the machine learning network.

82. The computer system of claim 71, wherein: When the computer instructions are executed by the one or more processor cores, the one or more processor cores are caused to perform one or more modifications to increase sensitivity by: a first training phase of the machine learning network that selectively trains a sub-portion of the machine learning network; and After the first training phase, a second training phase is performed to train the entire machine learning network.

83. The computer system of claim 72, wherein: The computer instructions, when executed by the one or more processor cores, cause the one or more processor cores to perform one or more sensitivity-enhancing modifications via a first training phase of the machine learning network, which trains selected elements in the machine learning network using a selected sub-portion of training data.

84. The computer system of claim 83, wherein: The selected element comprises a detector element of the machine learning network, and wherein the selected sub-portion of the training data comprises training data within a threshold distance of a decision boundary of the detector element.

85. The computer system of claim 72, wherein: The structural modification includes replacing selected nodes in the machine learning network with a set of replacement nodes, the set of replacement nodes including first, second, and third replacement nodes, wherein: The first replacement node copies the incoming connection with the positive weight to the selected node; The second replacement node copies the incoming connection with the negative weight to the selected node; The third replacement node replicates outgoing connections from the selected node; and The third replacement node has a first incoming connection from the first replacement node and a second incoming connection from the second replacement node.

86. The computer system of claim 71, wherein: Prior to the one or more sensitivity-enhancing modifications, the machine learning network includes a regression-type output; and At least one of the one or more sensitivity-enhancing modifications includes converting the regression-type output to a classification-type output of the machine learning network.

87. The computer system of claim 71, wherein: One or more sensitivity-enhancing modifications to the machine learning network include creating and using alternative derivative functions for nodes of the machine learning network.

88. The computer system of claim 71, wherein: The one or more sensitivity-enhancing modifications to the machine learning network include excluding one or more training data items from selected nodes of the machine learning network.

89. The computer system of claim 71, wherein: The one or more sensitivity-enhancing modifications to the machine learning network include delegating one or more training data items from a training dataset in the machine learning network.

90. The computer system of claim 71, wherein: At least one of the one or more sensitivity-enhancing modifications comprises a modified activation function for a node of the machine learning network.

91. The computer system of claim 90, wherein: The modified activation function includes, for a node of the machine learning network, prior to one or more modifications to increase sensitivity, the node comprising an unbounded activation function, replacing the unbounded activation function with a bounded activation function for the node.

92. The computer system of claim 90, wherein: The modified activation function includes, for a node of the machine learning network, prior to one or more modifications to increase sensitivity, the node comprising a non-monotonic activation function, replacing the monotonic activation function with the non-monotonic activation function of the node.

93. The computer system of claim 90, wherein: The modified activation function comprises a modified activation function whose output value changes less than the activation function of the node prior to at least one of the one or more sensitivity-increasing modifications.

94. The computer system of claim 90, wherein: The modified activation function comprises a piecewise constant activation function.

95. The computer system of claim 90, wherein: The modified activation function includes a plurality of selectively used replacement activation functions, wherein the plurality of selectively used replacement activation functions are selected based on inputs to the machine learning network.

96. The computer system of claim 71, wherein: The one or more modifications to increase sensitivity include training nodes in the machine learning network to: Producing a first output value for an input within a known set; as well as When the input is not within the known set, a second output value different from the first input value is generated.

97. The computer system of claim 90, wherein: The modified activation function includes a randomized activation function such that activation values ​​for particular data items from a node are randomly different.

98. The computer system of claim 90, wherein: The modified activation function includes an activation function f(x) where a constant background score is output for values ​​of x less than a threshold T1.

99. The computer system of claim 90, wherein: The modified activation function comprises an activation function f(x) where a constant background score is output for values ​​of x greater than a threshold T2.

100. The computer system of claim 71, wherein: Evaluating the sensitivity level of the machine learning network includes determining whether a slight change in the input of the machine learning network causes the machine learning network to make an error on the input, while before the slight change in the input occurred, the machine learning network did not make an error on the input.

101. The computer system of claim 100, wherein: The minor change includes a change in which the L∞ norm of the input is smaller than a threshold.

102. The computer system of claim 101, wherein: The one or more modifications to increase sensitivity include: structural modifications to the machine learning network upon determining that a small change in an input to the machine learning network causes the machine learning network to make an error on the input, while the machine learning network did not make an error before the small change in the input.

103. The computer system of claim 101, wherein: The one or more modifications to increase sensitivity include changing an activation function of a node in the machine learning network upon determining that a small change in an input to the machine learning network causes the machine learning network to make an error on the input, while the machine learning network did not make an error before the small change in the input.

104. The computer system of claim 71, wherein: The sensitivity level of the machine learning network is evaluated based on the dimensions of a plurality of variables of the machine learning network and a derivative of an output function of the machine learning network with respect to an input.

105. The computer system of claim 71, wherein: The sensitivity level evaluation of the machine learning network includes testing a decision boundary determined by the machine learning network; and When the computer instructions are executed by the one or more processor cores, the one or more processor cores are caused to perform one or more modifications to increase sensitivity by moving the position of the decision boundary.

106. The computer system of claim 71, wherein: The computer instructions, when executed by the one or more processor cores, cause the one or more processor cores to perform one or more sensitivity-enhancing modifications by creating a local normed space with an autoencoder such that the local normed space limits the effective dimensionality of an input to a detector element or a discriminator element of the machine learning network.

107. The computer system of claim 71, wherein: The computer instructions, when executed by the one or more processor cores, cause the one or more processor cores to perform a sensitivity level assessment of the machine learning network by performing a first sensitivity level assessment and a second sensitivity level assessment, wherein the first sensitivity level assessment has a different sensitivity standard than the second sensitivity level assessment.

108. The computer system of claim 107, wherein: The first sensitivity level assessment includes determining whether a small change in the input of the machine learning network causes the machine learning network to make an error on the input, while before the small change in the input, the machine learning network did not make an error.

109. The computer system of claim 108, wherein: The second sensitivity level assessment includes guidance from a hybrid network learning management system (HNLMS), wherein the HNLMS includes a collaborative association of one or more human expert teams and one or more AI systems.

110. The computer system of claim 109, wherein: The guidance includes hyperparameters of a sensitivity criterion of the machine learning network.

111. The computer system of claim 71, wherein: The computer instructions, when executed by the one or more processor cores, as part of training the machine learning network and after evaluating the sensitivity level of the machine learning network, further cause the one or more processor cores to: classifying input data items to be classified using the machine learning network; and Additional modifications are made to the machine learning network based on the classification of the input data item to be classified.

112. The computer system of claim 111, wherein: When the computer instructions are executed by the one or more processor cores, the one or more processor cores are caused to perform the classification by calculating the activation value of each node in the machine learning network.

113. The computer system of claim 71, wherein: After performing the one or more sensitivity-enhancing modifications, the machine learning network includes one or more units and zero or more nodes, such that a sum of the units and the nodes is greater than 2, wherein: Each of the one or more units produces a plurality of outputs, each output resulting from a separate activation function, wherein each separate activation function is applied to an output of a common affine transformation of the unit; and Each of the zero or more nodes produces a single output having a single activation function applied to the output of a single affine transformation of the node.

114. The computer system of claim 113, wherein: At least one of the units comprises a robust template model.

115. The computer system of claim 114, wherein: The robust template model includes at least two input variable norm units and a template summation cell connected to the two input variable norm units.

116. The computer system of claim 115, wherein: Each of the at least two input variable norm units calculates a univariate norm.

117. The computer system of claim 116, wherein: Each univariate norm is calculated using hyperparameters specified by a system that includes one or more human teams collaborating with one or more AI systems.

118. The computer system of claim 71, wherein: Backpropagating the first portion of the machine learning network includes training the first portion of the machine learning network via gradient descent; and When executed by the one or more processor cores, the computer instructions cause the one or more processor cores to calculate the learning parameters by training the second portion of the machine learning network via a training technique other than gradient descent.

119. The computer system of claim 118, wherein: Training techniques other than gradient descent include histogram analysis, wherein the histogram analysis includes: calculating a histogram of one or more variables based on the training of the machine learning network; and The one or more sensitivity-enhancing modifications to the machine learning network include performing the one or more sensitivity-enhancing modifications to the machine learning network based on the histogram.

120. The computer system of claim 118, wherein: A training technique other than gradient descent involves setting implicit local training targets for nodes of the machine learning network.

121. The computer system of claim 118, wherein: A training technique other than gradient descent involves backpropagating labeled data examples through a second portion of the machine learning network.

122. The computer system of claim 121, wherein: The labeled data examples have implicit errors corrected.

123. The computer system of claim 118, wherein: A training technique other than gradient descent includes using empirically estimated learning parameters for nodes in the second portion of the machine learning network.

124. The computer system of claim 118, wherein: Training techniques other than gradient descent include using empirically estimated hyperparameters for the second portion of the machine learning network.

125. The computer system of claim 118, wherein: Training techniques other than gradient descent include error minimization and backpropagation of data examples to a second portion of the machine learning network.

126. The computer system of claim 125, wherein: Error minimization and backpropagation of data examples to the second part of the machine learning network are complementary to backpropagation of derivatives through the second part of the network.

127. The computer system of claim 71, wherein: The computer instructions, when executed by the one or more processor cores, cause the one or more processor cores to train a machine learning network by training the network to classify presented data items after training.

128. The computer system of claim 127, wherein: When the computer instructions are executed by the one or more processor cores, the one or more processor cores are further caused to: Training a diverse set of canary networks and a diverse set of robust networks; and Diagnose potential sensitivity violations for classification data items in machine learning networks using a diverse set of canary networks and a diverse set of robust networks.

129. The computer system of claim 127, wherein: When the computer instructions are executed by the one or more processor cores, the one or more processor cores are further caused to: calculating an alignment of said presented data items; as well as The alignment is used to inform the classification of a machine learning network.

130. The computer system of claim 129, wherein: The alignment is of a type directed to human knowledge.

131. The computer system of claim 130, wherein: Types of human knowledge include mereology.

132. The computer system of claim 71, wherein: The machine learning network is trained as a creative work generator.

133. The computer system of claim 132, wherein: The creative work generator is trained on written creative works.

134. The computer system of claim 132, wherein: The creative work generator is trained on visual creative works.

135. The computer system of claim 132, wherein: The creative composition generator is trained as a musical composition generator.

136. The computer system of claim 132, wherein: The creative work generator includes hyperparameters for controlling the amount of human involvement in creating the creative work generated by the creative work generator.

137. The computer system of claim 132, wherein: The machine learning network is trained to have an explicit representation of human knowledge.

138. The computer system of claim 132, wherein: The creative work generator includes style hyperparameters used in generating the creative work.

139. The computer system of claim 138, wherein: The creative work generator further includes a style adjustment subsystem for generating the style hyperparameters.

140. The computer system of claim 139, wherein: The style adjustment subsystem includes a parameter autoencoder.

Citation Information

Patent Citations

  • Stochastic categorical autoencoder network

    US10679129B2

  • Soft-tying nodes of a neural network

    US10839294B2

  • Selective training for decorrelation of errors

    US10885470B2

  • Iterative training of a nodal network with data influence weights

    US11010671B2

  • Counter-tying nodes of a nodal network

    US11151455B2