And-Or Neural Network Architecture for Efficient Pooling
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Neural networks face inefficiencies in processing resources and time due to limitations in pooling operations, such as max pooling, which result in loss of gradient information and limited invariance learning capabilities.
Innovation Solution
The introduction of an and-or neural network architecture with alternating AND-layers and OR-layers that process input vectors using unique linear functions and logarithmic transformations, enabling generalized pooling operations without the constraints of traditional max pooling.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Speed
If traditional max pooling operations are used in neural networks, then processing speed is improved, but gradient information is lost and learning capabilities are limited
Solution Approach 1:
The patent segments the pooling operation into multiple types (max pooling, average pooling, min pooling, sum pooling) that can be selectively applied to different regions or features. This segmentation allows the network to preserve gradient information by choosing appropriate pooling types for different scenarios, rather than uniformly applying max pooling which causes information loss.
Solution Approach 2:
The patent introduces learnable pooling operations where the pooling type and parameters are dynamically determined during training through gradient-based optimization. This dynamic approach allows the network to adaptively select pooling strategies that preserve necessary gradient information while maintaining processing efficiency, resolving the contradiction between speed and information preservation.
2Device complexity
If traditional max pooling with fixed operations is used, then device complexity is reduced, but invariance learning capabilities are limited
Solution Approach 1:
The patent creates a universal pooling module that can perform multiple pooling operations (max, average, min, sum) within a single computational unit. This multi-functional design allows the network to learn diverse invariance patterns without requiring separate fixed operations for each type, thereby enhancing adaptability while maintaining reasonable device complexity.
Solution Approach 2:
The patent makes pooling operations learnable by introducing parameters that can be optimized during training. These parameters control the specific pooling behavior and can adapt to different feature types and hierarchical levels, enabling the network to learn appropriate invariances dynamically rather than being constrained by fixed operations.
3Speed
If standard neural network training is used, then convergence speed is improved, but risk of getting stuck in local minima increases
Solution Approach 1:
The patent introduces dynamic and learnable pooling operations that adapt during training, creating a more flexible optimization landscape. This dynamism helps the network escape local minima by allowing the pooling strategy to evolve alongside weight updates, improving training reliability while maintaining convergence speed through efficient gradient-based learning.
Solution Approach 2:
The learnable pooling operations provide feedback mechanisms where gradient information flows back to adjust pooling parameters during training. This feedback loop allows the network to learn from its performance and adapt pooling strategies to avoid poor local minima, thereby improving training reliability without sacrificing convergence speed.
Data Source
AI summary
A computer architecture for an and-or neural network is disclosed. A computing machine accesses an input vector. The input vector comprises a numeric representation of an input to a neural network. The computing machine provides the input vector to the neural network comprising a plurality of ordered layers. The plurality of ordered layers are alternating AND-layers and OR-layers. Each of the plurality of ordered layers receives input from a preceding layer and/or provides output to a next layer. The computing machine generates an output of the neural network based on an output of a last one of the plurality of ordered layers in the neural network.


