DIVERSITY BASED DEEP LEARNING SYSTEM

Various examples are provided related to diversity based deep learning. In one example, a learned diversity neural network (LDNN) system includes an input layer; an output layer; and at least one hidden layer including at least one activation function neuronal network. The at least one activation function neuronal network includes an input node, an output node, and a plurality of intermediate nodes coupled between the input and output nodes and isolated from other nodes or other activation function neuronal networks of the at least one hidden layer.

BACKGROUND

Inspired by nature, artificial neural networks are nonlinear systems that can be trained to learn, classify, and predict. Traditionally, artificial neural networks contain identical neurons in each network layer (even if the layers themselves differ).

SUMMARY

Aspects of the present disclosure are related to diversity based deep learning. In one aspect, among others, a learned diversity neural network (LDNN) system, comprises an input layer; an output layer; and at least one hidden layer comprising at least one activation function neuronal network, the at least one activation function neuronal network comprising an input node, an output node, and a plurality of intermediate nodes coupled between the input and output nodes and isolated from other nodes or other activation function neuronal networks of the at least one hidden layer. Training of the LDNN cab concurrently train the at least one activation function neuronal network to establish an activation function simulated by the trained at least one activation function neuronal network.

In one or more aspects, the at least one hidden layer can comprise a plurality of activation function neuronal networks. Training of the LDNN can concurrently train each of the plurality of activation function neural networks to establish an activation function simulated by that trained activation function neural network, wherein the plurality of trained activation function neural networks comprise a combination of different activation functions. The training of the LDNN can comprise updating inner network parameters based upon inner network loss function gradients and updating sub-network parameters based upon sub-network loss function gradients. The LDNN can be trained using input-output training pairs. A number of the input-output training pairs can be of order 104. A number of training epochs can be of order 10.

In various aspects, each of the at least one activation function neuronal network comprises rectified linear unit (ReLU) neurons, linear neurons, sigmoid neurons, or a combination thereof. The at least one hidden layer can comprise a plurality of activation function neuronal networks. The plurality of activation function neuronal networks can comprise different activation function neuronal networks or the same activation function neuronal network.

DETAILED DESCRIPTION

Disclosed herein are various examples of systems and methods related to diversity based deep learning. Novel artificial neural networks constructed with diverse activation functions in each layer are presented. Rather than hand-craft diversity, gradient meta-learning can be used to find sets of arbitrarily complex activations instantiated by feed-forward neural networks-within-networks. Under training, homogeneous neuronal populations quickly diversify and significantly outperform their homogeneous counterparts on image classification tasks. The results provide examples of the emergence of diversity in artificial neural networks and demonstrate how to leverage diversity to enhance learning. Reference will now be made in detail to the description of the embodiments as illustrated in the drawings, wherein like reference numbers indicate like parts throughout the several views.

Diversity is a hallmark of many complex systems in physics and in physics beyond physics, including microscopic cell populations, marine and terrestrial ecosystems,  financial markets, and social networks. In particular, mammalian brains contain billions of neurons with diverse cell types whose complex dynamical patterns are believed responsible for the rich range of cognition, affect, and behavior. But despite the widespread appreciation of diversity in neuroscience, researchers have just begun to explore the role of diversity and adaptability in artificial neural networks.

In this disclosure, neural networks are diversified by varying the neuron types within each layer. The different neurons can be flexibly realized using sub-networks, or networks-within-the-network, which are trained along with the overarching network. This meta-learning generates potent neuron activation function sets, suggestive of orthogonal spanning functions, that increase the expressiveness and accuracy of the network.

How meta-learning diverse activation functions can generate better neural networks, as measured by difficult classification and nonlinear regression tasks, will be described. Neuron participation ratios elucidate the superior potential of heterogeneous neuronal layers over homogeneous layers. Hessian matrix spectra illuminate the geometric nature of optimizing minima. Applications and advantages will be discussed for learned diversity to enhance neural networks, deep learning, and diversity.

Researchers have recently begun to relax the rigid rules that have guided the development and use of artificial neural networks. The computational implications of biophysical diversity and multiple timescales in neurons and synapses for circuit performance have been investigated. Hand-crafted heterogeneous cell types can improve performance of deep neural networks. Diversity in synaptic weights can lead to better generalization in neural networks. Learning combinations of known neuronal activation functions have been considered. Diversity can be constructed by compressing neuronal subspace using determinantal point process. Nesting neural networks inside neural networks have been considered, and the current meta-learning landscape surveyed. The activation function neuronal sub-networks described here can replace units in deep networks to make it closer to how the brain works.

Inspired by natural brains, feed-forward neural networks are nested nonlinear functions of linear combinations of activities:

where the activation σ is typically a saturating or rectifying function and training strengthens or weakens the weights and biases W and b to minimize an error or loss function and optimize outputs.

Motivated by the well-studied mammalian visual cortex, varying neuronal activation functions by layer is common. However, within each layer, the activations are typically identical. Neural networks are universal function approximators and are often used to model hypersurfaces, either in nonlinear regression or classification. FIG. 1 illustrates an example of a progression from a conventional artificial neural network (top) to a diverse neural network (center) to learned diverse neural network (bottom). Line thicknesses represent weights W, circle thicknesses represent biases b, and sketches inside circles represent activation functions σ. Information flows top-to-bottom. Training adjusts the weights and biases to optimize the network outputs (top). Multiple activation functions enable diversity within layers (center) and increase the expressiveness of the neural network.

Varying the activations within a layer, as shown in FIG. 1 (center), can increase the expressiveness of the network by providing diverse spanning basis functions. Furthermore, replacing the activations by neural networks, as shown in FIG. 1 (bottom), and training them for optimal results should increase the expressiveness even further. The separate neural networks (bottom) realize these activation functions when training adjusts their weights and biases, perhaps on a different schedule than the originals, to further optimize the network. The training of the activation neural networks can be on a different schedule than the training of the rest of the network, and the activations so obtained can be extracted from the neuronal subnetworks as interpolated functions and efficiently reused in other networks addressing different problems.

As an example of a learned diversity neural network (LDNN), a feed-forward classifier neural network can be constructed whose neurons are sub-networks that modify base activation functions (e.g., zero, identity, sigmoid, or sine functions). The classifier can be trained with many input-output pairs, and the difference between the expected and correct classifications quantified with an error or loss function. The gradient of the loss function can be computed with respect to the classifier's weights and biases, and the loss lowered by shifting its weights and biases down this gradient (inner loop). The gradient of the loss function can be periodically computed with respect to the sub-networks' weights and biases, and the loss further lowered by shifting their weights and biases down this gradient (outer loop). This process can be repeated to improve accuracy.

The classifier error or loss (θ, θA, i) depends on the network weights and biases θ, the sub-networks weights and biases θA that instantiate the activations of hidden-layer neurons, and the inputs i. The randomly shuffled inputs are the stochastic driver that buffets the weights and biases as they adjust to lower losses (during the meta-learning inner loop). Periodically the activation weights and biases open extra dimensions or degrees of freedom to further lower the losses (during the meta-learning outer loop). FIG. 2A illustrates an example of schematic stochastic gradient descent meta-learning. Under randomly shuffled neural-network inputs i, weights and biases θ adjust to lower loss levels (θ, θA, i) (during the meta-learning inner loop), while periodically the activation weights θA open extra dimensions and themselves adjust to allow even lower loss levels (during the meta-learning outer loop). The color scale codes time t.

The algorithm of FIG. 2B details an example of the meta-learning strategy, where X and Y are batches of inputs and outputs, R are learning rates, N are number of iterations, θ={W, b} are weights and biases, nΣ are number of neuron types, and L are errors or losses. Subscripts I and O indicate inner (or main) and outer (or sub) networks. f(⋅) is the action of the inner network, and ⋅ is a normalized aggregation. Inner network weights and biases update NI|X| times in the (learner) inner loop, while sub-network weights and biases update NO times in the (meta-learner) outer loop.

Here, learned diversity neural networks are implemented with one hidden layer of 100 neurons and a cross-entropy loss function to classify the MNIST-1D data set, a minimalist variation of the classic Modified National Institute of Standard and Technology digits. Each neuron type in the hidden layer is further instantiated by a feed-forward neural network of 50 hidden units with hyperbolic tangent activation functions. Similar results can be obtained for different numbers of layers and different number of neurons per layer.

FIGS. 3A-3D illustrate meta-learning 2 activations for MNIST-1D classification. It summarizes meta-learning the activation functions of neurons in the hidden layer subject to the constraint of having two functions distributed equally among the neuronal population. FIG. 3A illustrates an example of MNIST-1D digit construction, rotated 90° to emphasize the one-dimensionality of the digits. FIGS. 3B and 3C show the evolution of two activation functions σn(α) from a base sinusoid, with time encoded as the color scale. FIG. 3D shows violin plots summarizes distribution (including median, quartiles, and extent) of validation accuracy A for 50 fully connected neural networks of rectified linear unit (ReLU) neurons (303), type-1 neurons (306), type-2 neurons (309), and a mix of type 1 and type 2 neurons (312). The violin plots demonstrate the validation accuracy for the 50 fully connected neural networks composed of entirely N1 type neurons (303), entirely N2 type neurons (306), and mixed type with N1 and N2 distributed equally among hidden layer (309). With the same training, the mixed network outperforms either pure network on average. The mix of 2 neuron types out-performs any single neuron type on average. These results are robust with respect to network size.

Referring to FIG. 8, illustrated is an example of the neural network MNIST-1D classification accuracy as a function of network size. Box and whiskers plots summarize accuracy distribution (including median, quartiles, extent, and outliers) for 100 initializations. The learning rate can be optimized to avoid over-fitting but is the same for all network sizes. Activation functions evolved from zero (the null function) with similar results evolved from sine. Mixed networks of 2 neuron types outperform pure networks on average for all sizes and outperforms both single learned activation and traditional activations.

Similar results can be obtained for other tasks, including nonlinear regression of the van der PoI oscillator, which comprise a linear restoring force and a nonlinear viscosity modeled by the differential equation.

where the overdots indicate time derivatives. The van der PoI oscillator can model vacuum tubes and heartbeats and can be generalized to model spiky neurons. For viscosity parameter μ=2.7, neural networks were trained to forecast the phase space orbit of the oscillator. FIGS. 4A-4D summarizes meta-learning 2 activations for nonlinear regression of the van der PoI oscillator, with FIG. 4A illustrating an example of a typical orbit attracted to a limit cycle, where the shading encodes time t. FIGS. 4B and 4C show that the activation functions σn(a) evolve from a base sinusoid, with a shaded scale encoding time t. FIG. 4D shows violin plots summarize distribution of neural network mean-square error or loss L for 50 fully connected neural networks of sine neurons (503), type-1 neurons (506), type-2 neurons (509), and a mix of type 1 and type 2 neurons (512). On average, the learned diversity neural network outperforms either of its pure components as well as a homogeneous network of neurons with sinusoidal activations. The mix of 2 neuron types outperforms any single neuron type on average.

can model a star moving in a galaxy of other stars according to the Hamiltonian flow:

where q={x, y} and p={px, py}. Bounded motion is possible in a triangular region of position space. As orbital energy increases, circular symmetry degenerates to triangular symmetry, and integrable motion complexifies to chaotic motion.

Consequently, for this example, activation functions were meta-learned for both a conventional and a Hamiltonian neural network. Unlike conventional neural networks, which learn dynamical systems by intaking position and velocity and outputting their derivatives, a Hamiltonian neural network learns a dynamical system by intaking position and momentum and outputting a single energy-like variable, which it differentiates according to Hamilton's recipe. Rather than learning the derivatives, it learns the Hamiltonian function, which is the generator of derivatives. This more powerful and efficient strategy is an excellent example of physics-informed machine learning.

More specifically, during training a conventional neural network (NN) maps positions and velocities {qt, {dot over (q)}t} to approximations of their time derivatives, and adjusts its internal parameters to minimize the mean-square-error or loss:

The trained network can extrapolate a given initial condition via the Euler update {q, {dot over (q)}}←{q, {dot over (q)}}+{{dot over (q)}, {umlaut over (q)}}dt. By contrast, during training a Hamiltonian neural network (HNN) maps position and momenta {qt, pt} to the scalar Hamiltonian function H, uses reverse-mode automatic differentiation to find the Hamiltonian's gradients, uses the gradients to approximate the position and momentum change rates, and adjusts its internal parameters to minimize the loss:

and enforce Hamilton's motion equations. The trained network can extrapolate a given initial condition via the Euler update {q, p}←{q, p}+{{dot over (q)}, {dot over (q)}}dt.

As summarized by FIGS. 5A-5C, illustrate an example of meta-learning 2 activations for nonlinear regressing or forecasting Henon-Heiles orbits. FIG. 5A shows regular and chaotic, low and high-energy Henon-Heiles orbits, where shades code time. FIG. 5B shows conventional and Hamiltonian neural networks learn activation functions from base sinusoids. FIG. 5C shows box plots that summarize distributions of mean-square-error validation losses , starting from 50 random initializations of weights and biases, for fully connected neural networks. Hamiltonian neural networks greatly outperform conventional neural networks and heterogeneous neuron types consistently outperform their homogeneous components on average.

The mix of 2 neuron types outperforms any single neuron type on average for both conventional and Hamiltonian neural networks, but the Hamiltonian neural network is much better, and its mixed version is doubly enhanced. Spread in Hamiltonian validation losses is much smaller than the spread in the conventional validation losses, possibly because enforcing symplectic structure on the loss manifold for the Hamiltonian neural network can be a regularization that facilitates more consistent optimization, while the unbounded loss of the conventional neural network suffers greater variance due to the wide range of stable and chaotic trajectories.)

To understand how mixed activation functions outperform homogeneous neuronal populations, the change in the dimensionality of the network activations can be estimated. Start by constructing a neuronal activity data matrix X with N rows corresponding to N neurons in the hidden layer and M columns representing inputs. Each matrix element Xij represents the activity of the ith neuron at the jth input. Center the activity so X=0. Construct the neural co-variance matrix C=M−1XXT, which indicates how pairs of neurons vary with respect to each other, and compute the participation ratio

where λn are the co-variance matrix eigenvalues. If all the variance is in one dimension, say λn=δn1, then =1; if the variance is evenly distributed across all dimensions, so λn=λ1, then =N. Typically, 1<<N, and  corresponds to the number of dimensions needed to explain most of the variance. The normalized participation ratio r=/N.

FIG. 6 plots the joint probability densitiesρ(A, r) for multiple realizations of the learned diversity neural network of FIGS. 3A-3D and the homogeneous competitors. The probability densities ρ(A, r) are shown versus accuracy A and normalized participation ratio r=R/N for the multiple realizations of the heterogeneous network and three homogeneous networks with popular activation functions hyperbolic tangent, Rectified Linear Unit f(x)=max (0, x), and sine. Increased participation accompanies increased accuracy, with the diverse network maximizing both. The mix of two neurons types has the best mean accuracy A and normalized participation ratio r, suggesting that more of its neurons are participating when the mix achieves the best MNIST-1D classification. In contrast, homogeneous networks of neurons with popular activation functions have lower accuracy and participation ratios reflecting their poorer effectiveness.

To understand the impact of learned diversity on the geometric nature of loss-function minima, the spectrum of the Hessian matrix H=∇2, which captures the curvature of the loss function, can be computed. Since, H is a symmetric matrix, all its eigenvalues are real. A purely convex loss function would have a positive semi-definite Hessian everywhere. However, in practice, the loss function is almost always non-convex (with multiple spurious minima) due to the presence of permutation symmetries of the hidden neurons. Therefore, understanding how diversity helps training find deeper minima is important.

Previous work suggests that flatter minima generalizes better to the unseen data. For the neural network meta-learning two neuronal activation functions of FIG. 1, it was found that once training has converged, the resulting minima from the diverse neurons is flatter than from homogeneous ones, as measured by both the trace TrH of the Hessian and the fraction f of its eigenvalues near zero: TrH1>TrH2>TrH12 and f1<f2<f12. If steep minima are harder for gradient descent to locate, then the flatter minima engineered and discovered by learned diversity neural networks offer enhanced optimization.

Biomimetic engineering or biomimicry is design inspired by nature. Just as monoculture crops can be fragile, while diverse crops can be robust, heterogeneous neural networks can outperform homogeneous ones. Here, advantages of varying activation functions within each layer are highlighted and the best variation by replacing activations by sub-networks can be learned.

Conceptually, learned diversity neural networks can discover novel sets of activation functions, when most artificial neural networks use just one of a small number of conventional activations per layer. Practically, mixes of learned activations can outperform traditional activations-where even a 1% improvement can be significant-and the learned activations can be efficiently reused in diverse neural networks. The learned diversity may be optimized by adjusting hyperparameters, applying learned diversity to a wider range of regression and classification problems, testing diverse neural networks for robustness, investigating clustering of learned activations, and applying learned diversity to different neural network architectures, such as recurrent neural networks and reservoir computers, as well as physics-applied and physics-informed neural networks.

Learned diversity offers neural networks sets of tailored basis functions, which enhance their expressiveness and adaptability and facilitates efficient function approximation. When given the ability to learn their neuronal activation functions, neural networks discover heterogeneous arrangements of nonlinear neuronal activations that can outperform their homogeneous counterparts with the same training. Specific examples of dynamical systems that spontaneously select diversity over uniformity are provided, and thereby furthers the understanding of diversity and its role in strengthening natural and artificial systems.

Multiple Layers. Learned diversity was explored using both multiple hidden layers in the classifying neural network and multiple hidden layers in the neuronal sub-networks with similar results. FIG. 7 illustrates examples of mean validation accuracy versus training number (number of training data) in epochs after meta-learning two activation functions based on a sinusoid using networks of 1, 2, 3 hidden layers. In this example, the heterogeneous network (Mod Sin 12) outperforms both homogeneous networks of either component (Mod Sin 1 and Mod Sin 2) and homogeneous networks using popular activation functions (Base ReLU, Base Sin and Base Tanh) on average.

Hyperparameters are the same in each case, with no attempt to optimize for additional layers. Accuracies are modest due to the small network sizes and the inherent difficulty of classifying MNIST-1D digits, which is challenging even for humans, but the modest accuracies allow us to clearly illustrate the learned diversity improvements.

For 1 hidden layer, the meta-learning inner loop trained a 40:100:10 fully-connected feed-forward neural network with 104 40-pixel classified digit images shuffled 5 times while the meta-learning outer loop updated the weights and biases of the 2-activation-function 1:50:1 sub-networks 103 times, resetting the inner network every time, and similarly for multiple hidden layers.

Neuron Number Details. As previously discussed, learned diversity has been explored by systematically varying the number of hidden-layer neurons in the neural networks. FIG. 8 illustrates an example of neural network MNIST-1D classification accuracy as a function of network size. Box and whiskers plots summarize accuracy distribution (including median, quartiles, extent, and outliers). The same learning rate was used for each network size, optimized to avoid over-fitting. The learned activation functions were manually fitted, and evolved from, for each of the configurations. The activation functions evolved from zero (the null function) with similar results evolved from sine. They were run for 15 epochs for 100 different realizations and computed their classification accuracies. For all sizes, the mixed networks of 2 neuron types outperform the pure networks on average, and also outperform both a learned single activation function and traditional activation functions like ReLU and sine.

Meta-Learning 3 Activations. FIGS. 9A-9D summarize meta-learning 3 activations for classification. The activation functions of neurons are subject to the constraint of having three functions distributed equally among the neuronal population for the MNIST-1D classification task. The meta-learning generates roughly three classes of activations from its sinusoidal (or other) start, typically symmetric or anti-symmetric near the origin, providing a kind of spanning basis, as orthogonal as possible. FIGS. 9A-9C show how the activation functions on (a) evolve from a base sinusoid, with encoding over time t. FIG. 9D shows violin plots summarizing validation accuracy A for 50 fully connected neural networks of type-1 neurons, type-2 neurons, type-3 neurons, and a mix of all 3 neuron types (1,2,3). Again, the mixed network outperforms the three pure networks on average.

Hessian Details. To understand the impact of learned diversity on the geometric nature of the loss function minima, the spectrum of the Hessian matrix H=∇2, which measures the loss function curvature, was computed. FIG. 10 shows spectral plots for meta-learning two activation functions for MNIST-1D classification. Spectral density ρ versus eigenvalues λ of the loss-function second-derivative hessian matrices for classifying MNIST-1D with pure and mixed networks display clear trends in both traces and area bounded near zero. The fraction of bounded area in the shaded region is a measure of the flatness of a minimum, as is the hessian trace, both of which trend similarly.

Universality of Learned Activations. Learned activation functions appear qualitatively independent of the base activation function/FIGS. 11A-11C illustrate learned activation functions for ELU (rectifying), sine (harmonic), tanh (saturating), respectively. As shown, the learned activation functions σ(x) based on rectifying ELU(x), harmonic sin(x), and saturating tanh (x) have qualitatively similar near-zero behavior. In FIG. 11A, a single function is learned that behaves as an odd function near zero. When allowed to learn two activations, as in FIGS. 11B and 11C, odd and even functions are learned starting from many base functions.

Stochastic Processes Insights. Optimizing a neural network by randomly shuffling training data is like a noisy descent to a minimum in a potential landscape. The landscape is the network's error or loss as a function of its weights and biases, and its shape depends on the neuron activation functions. FIG. 12 illustrates an example of noisy descent. The plot codes time t as the state point wanders to different local minima of potential landscape V from same initial conditions under multiple realizations of the same noise. The effective dynamics is that of an overdamped particle buffeted by noise sliding on a complicated potential with many local minima. The Langevin equation:

with noise intensity D=η(θ)H(θ)/B describes the evolution of the weights and biases θ={Wij, bi} in a valley with local minimum θ*, where η is the learning rate and B is the training batch size. The drift term dt includes minus the gradient of the loss function , and the Brownian motion noise term dWt includes the learning rate η. The noise aligns with the Hessian near a minimum, and the equation (8) Hessian dependence ensures that stochastic gradient descent escapes multiple sharp minima via directions corresponding to large eigenvalues of the Hessian and eventually converges to the flatter minimum.

Computer Implementation. The neural networks were implemented in the Python programming language using the PyTorch open source machine learning library. The code for the analysis and the network implementation in PyTorch can be found at the GitHub repository. FIG. 13 illustrates an example of a computing (or processing) device that can be utilized for diversity based deep learning using the described techniques.

Gradient Based Metalearning. The learner-meta-learner structure of the metalearning algorithm brings with it significant computational costs. The implementation of the algorithm was constrained on the number of learner/inner loops within the metalearner/outer loops (iterations) since the inner loop was held in memory for the outer loop computation and optimization. In fact, this is a limitation of the gradient based meta-learning algorithm that limits the horizon of meta-objective function. Number of training pairs is of order 104, and number of training epochs is of order 10. Due to computational constraints, the number of inner iterations is much smaller than the number of outer iterations.

Hessian Computation. PyHessian Library was used to compute hessian based statistics without the cost of generating the full hessian matrix. The trace of the hessian matrix was computed using Hutchinson's method exploiting the symmetric nature of the matrix. The Empirical Spectral Density (ESD) of hessian eigenvalues was computed through Stochastic Lanczos Quadrature (SLQ) within several successive approximation schemes. At an implementation level, a classifier using the learned activation(s) was trained in Pytorch and the model was saved. Using this saved model and test data, PyHessian can use PyTorch's backward graph to compute the gradients needed to build the hessian trace and ESD.

Interpolation and Fitting. The activation function was captured after metalearning as the output of the learned activation networks on the interval [−10, 10] with 100 linearly spaced points. This output was then linearly interpolated between points and used as the activation function for the classifier at validation. Quadratic or cubic splines or symbolic regression can also be used. High order (>10) polynomials need to fit the activation curves accurately so, while possible, polynomials are not recommended as a reliable way to capture the features of the learned activation function.

With reference to FIG. 13, shown is a schematic block diagram of a computing (or processing) device 1300 that can be utilized for diversity based deep learning using the described techniques. In some embodiments, among others, the computing device 1300 may represent a mobile device (e.g., a smartphone, tablet, computer, etc.) or other processing device. Each computing device 1300 includes processing circuitry comprising at least one processor circuit, for example, having a processor 1303 and a memory 1306, both of which are coupled to a local interface 1309. To this end, each computing device 1300 may comprise, for example, at least one server computer or like device. The local interface 1309 may comprise, for example, a data bus with an accompanying address/control bus or other bus structure as can be appreciated.

In some embodiments, the computing device 1300 can include one or more network interfaces 1310. The network interface 1310 may comprise, for example, a wireless transmitter, a wireless transceiver, and a wireless receiver. As discussed above, the network interface 1310 can communicate to a remote computing device using a Bluetooth protocol. As one skilled in the art can appreciate, other wireless protocols may be used in the various embodiments of the present disclosure.

Stored in the memory 1306 are both data and several components that are executable by the processor 1303. In particular, stored in the memory 1306 and executable by the processor 1303 are diversity based deep learning program 1315, application program 1318, and potentially other applications. Also stored in the memory 1306 may be a data store 1312 and other data. In addition, an operating system may be stored in the memory 1306 and executable by the processor 1303.

Also, the processor 1303 may represent multiple processors 1303 and/or multiple processor cores and the memory 1306 may represent multiple memories 1306 that operate in parallel processing circuits, respectively. In such a case, the local interface 1309 may be an appropriate network that facilitates communication between any two of the multiple processors 1303, between any processor 1303 and any of the memories 1306, or between any two of the memories 1306, etc. The local interface 1309 may comprise additional systems designed to coordinate this communication, including, for example, performing load balancing. The processor 1303 may be of electrical or of some other available construction.

Although the diversity based deep learning program 1315 and the application program 1318, and other various systems described herein may be embodied in software or code executed by general purpose hardware as discussed above, as an alternative the same may also be embodied in dedicated hardware or a combination of software/general purpose hardware and dedicated hardware. If embodied in dedicated hardware, each can be implemented as a circuit or state machine that employs any one of or a combination of a number of technologies. These technologies may include, but are not limited to, discrete logic circuits having logic gates for implementing various logic functions upon an application of one or more data signals, application specific integrated circuits (ASICs) having appropriate logic gates, field-programmable gate arrays (FPGAs), or other components, etc. Such technologies are generally well known by those skilled in the art and, consequently, are not described in detail herein.

Also, any logic or application described herein, including the diversity based deep learning program 1315 and the application program 1318, that comprises software or code can be embodied in any non-transitory computer-readable medium for use by or in connection with an instruction execution system such as, for example, a processor 1303 in a computer system or other system. In this sense, the logic may comprise, for example, statements including instructions and declarations that can be fetched from the computer-readable medium and executed by the instruction execution system. In the context of the present disclosure, a “computer-readable medium” can be any medium that can contain, store, or maintain the logic or application described herein for use by or in connection with the instruction execution system.

Further, any logic or application described herein, including the diversity based deep learning program 1315 and the application program 1318, may be implemented and structured in a variety of ways. For example, one or more applications described may be implemented as modules or components of a single application. Further, one or more applications described herein may be executed in shared or separate computing devices or a combination thereof. For example, a plurality of the applications described herein may execute in the same computing device 1300, or in multiple computing devices in the same computing environment. Additionally, it is understood that terms such as “application,” “service,” “system,” “engine,” “module,” and so on may be interchangeable and are not intended to be limiting.

The term “substantially” is meant to permit deviations from the descriptive term that don't negatively impact the intended purpose. Descriptive terms are implicitly understood to be modified by the word substantially, even if the term is not explicitly modified by the word substantially.