Here at HubBucket, we conduct Technology Research and Development - R&D in the fields of:

  • Artificial Intelligence - AI - Supervised Learning, Unsupervised Learning and Reinforcement Learning
  • Machine Learning - ML - Supervised Learning, Unsupervised Learning and Reinforcement Learning
  • Cognitive Computing - CC - Supervised Learning, Unsupervised Learning and Reinforcement Learning
  • Artificial Neural Networks - ANN - Supervised Learning, Unsupervised Learning and Reinforcement Learning
  • Deep Learning - Supervised Learning, Unsupervised Learning and Reinforcement Learning
  • Natural Language Processing - NLP
  • Computer Vision and Pattern Recognition
  • Artificial Intelligence - AI Learning Algorithms
  • Computational Intelligence
  • Predictive Modelling
  • Information Retrieval
  • Artificial Intelligent - AI Chatbots
  • Artificial Intelligence and Cognitive Computing Mobile Applications
  • Artificial Intelligence and Cognitive Computing Business Intelligence - BI
  • Artificial Intelligence and Cognitive Computing Business Analytics

  • Data Science
  • Data Mining and Knowledge Discovery in Databases (KDD) process
  • Text Mining
  • Artificial Intelligence - AI for Corporate Data Quality Management - CDQM
  • Artificial Intelligence - AI for Application Lifecycle Management - ALM
  • Artificial Intelligence - AI for Service Oriented Architecture - SOA
  • Artificial Intelligence - AI for Service Oriented Modeling - SOM
  • Artificial Intelligence - AI for Microservices
  • Application and Information Technology (IT) Systems Optimization
  • Artificial Intelligence - AI for Data Visualization
  • Artificial Intelligence - AI for Big Data Analytics
  • Big Data Architecture and Engineering
  • Artificial Intelligence - AI driven Database Management Systems - DBMS
  • Artificial Intelligence - AI for Financial Technology - FinTech
  • Artificial Intelligence - AI for Artificial Intelligence - AI for Banking Technology - BankTech
  • Artificial Intelligence - AI for Insurance Technology - InsurTech
  • Artificial Intelligence - AI for Blockchain and Distributed Ledgers
  • Artificial Intelligence - AI for Cryptocurrency
  • Artificial Intelligence - AI for Internet of Things - IoT
  • Artificial Intelligence - AI for Cloud Computing
  • Artificial Intelligence - AI for Healthcare Information Technology - HealthIT
  • Artificial Intelligence - AI for Educational Technology - EduTech
  • Artificial Intelligence - AI for Virtual Reality - VR
  • Artificial Intelligence - AI for Augmented Reality - AR
  • Robotics
  • Bionics
  • Applied Cybernetics
  • Artificial Intelligence - AI for NoSQL ("non SQL", "non relational" or "not only SQL")
  • Open Source Software and Hardware
  • Related areas, fields and sub-domains of the before mentioned.

Artificial Neural Network - ANN Applications

The utility of Artificial Neural Network - ANN models lies in the fact that they can be used to infer a function from observations. This is particularly useful in applications where the complexity of the data or task makes the design of such a function by hand impractical.

Real-life applications

The tasks Artificial Neural Networks - ANN are applied to tend to fall within the following broad categories:

  • Function approximation, or regression analysis, including time series prediction, fitness approximation and modeling
  • Classification, including pattern and sequence recognition, novelty detection and sequential decision making
  • Data processing, including filtering, clustering, blind source separation and compression
  • Robotics, including directing manipulators, prosthesis.
  • Control, including Computer numerical control

Application areas include the system identification and control (vehicle control, trajectory prediction, process control, natural resources management), quantum chemistry, game-playing and decision making (backgammon, chess, poker), pattern recognition (radar systems, face identification, object recognition and more), sequence recognition (gesture, speech, handwritten text recognition), medical diagnosis, financial applications (e.g. automated trading systems), data mining (or knowledge discovery in databases, "KDD"), visualization and e-mail spam filtering.

Artificial Neural Networks - ANN have also been used to diagnose several cancers. An ANN based hybrid lung cancer detection system named HLND improves the accuracy of diagnosis and the speed of lung cancer radiology. These networks have also been used to diagnose prostate cancer. The diagnoses can be used to make specific models taken from a large group of patients compared to information of one given patient. The models do not depend on assumptions about correlations of different variables. Colorectal cancer has also been predicted using the neural networks. Neural networks could predict the outcome for a patient with colorectal cancer with more accuracy than the current clinical methods. After training, the networks could predict multiple patient outcomes from unrelated institutions.

Neural Networks and Neuroscience

Theoretical and Computational Neuroscience is the field concerned with the theoretical analysis and the computational modeling of biological neural systems. Since neural systems are intimately related to cognitive processes and behavior, the field is closely related to cognitive and behavioral modeling.

The aim of the field is to create models of biological neural systems in order to understand how biological systems work. To gain this understanding, neuroscientists strive to make a link between observed biological processes (data), biologically plausible mechanisms for neural processing and learning (biological neural network models) and theory (statistical learning theory and information theory).

Types of Models

Many models are used in the field, defined at different levels of abstraction and modeling different aspects of neural systems. They range from models of the short-term behavior of individual neurons, i.e., models of how the dynamics of neural circuitry arise from interactions between individual neurons and finally to models of how behavior can arise from abstract neural modules that represent complete subsystems. These include models of the long-term, and short-term plasticity, of neural systems and their relations to learning and memory from the individual neuron to the system level.

Memory Networks

Integrating external memory components with artificial neural networks has a long history dating back to early research in distributed representations and self-organizing maps. E.g. in sparse distributed memory the patterns encoded by neural networks are used as memory addresses for content-addressable memory, with "neurons" essentially serving as address encoders and decoders.

More recently deep learning was shown to be useful in semantic hashing where a deep graphical model of the word-count vectors is obtained from a large set of documents. Documents are mapped to memory addresses in such a way that semantically similar documents are located at nearby addresses. Documents similar to a query document can then be found by simply accessing all the addresses that differ by only a few bits from the address of the query document.

Neural Turing Machines developed by Google DeepMind extend the capabilities of deep neural networks by coupling them to external memory resources, which they can interact with by attentional processes. The combined system is analogous to a Turing Machine but is differentiable end-to-end, allowing it to be efficiently trained with gradient descent. Preliminary results demonstrate that Neural Turing Machines can infer simple algorithms such as copying, sorting, and associative recall from input and output examples.

Memory Networks is another extension to neural networks incorporating long-term memory which was developed by Facebook research. The long-term memory can be read and written to, with the goal of using it for prediction. These models have been applied in the context of question answering (QA) where the long-term memory effectively acts as a (dynamic) knowledge base, and the output is a textual response.


Furthermore, integrate our research into other areas, such as Big Data, Big Data Architecture, Big Data Engineering, Data Visualization, Business Analytics, etc. The algorithms, software applications, and systems we build are capable of learning for themselves directly from raw experience or data, and are general in that they can perform well across a wide variety of tasks and can be applied in a wide array of industries and across sectors and domains.

Our Goals:

  • to produce intelligent applications and systems that corporations can use within their given sectors and industries
  • to produce intelligent applications and systems that can enhance education within academic institutions
  • to produce intelligent applications and systems to assist U.S. Law Enforcement and International Law Enforcement agencies, such as INTERPOL
  • to produce intelligent applications and systems to assist U.S. Government and European Government agencies
  • to produce intelligent applications and systems that aid organizations such as the United Nations (UN) that provide Humanitarian aid to hundreds of millions of people every year
  • to produce intelligent software applications and systems that enable people to become more efficient and effective at their work
  • to produce intelligent software applications and systems that will enable people to raise their quality of life

Research Strategy

Research at HubBucket is organized differently from mainstream Artificial Intelligence - AI, Cognitive Computing - CC, Machine Learning - ML and Artificial Neural Network - ANN research. Mainstream Artificial Intelligence - AI, Cognitive Computing - CC, Machine Learning - ML and Artificial Neural Network - ANN research is directed around a set of standard benchmarks, which allow for researchers to steadily improve their techniques and compare results. However, using standard datasets as the primary benchmark of progress is a controversial issue, and many researchers have noted the downsides of it, the main objection being that to beat a benchmark the best strategy is to take the winning model from one year and to make incremental modifications on top of that. This creates a significant barrier to entry for novel methods, and makes it difficult to understand why a particular model does well. In addition, many different modes of errors are mixed up in these large datasets, which means that fundamental improvements in some aspects of the model bring only marginal improvements in overall performance of the system. Finally, the benchmark-beating techniques tend to over-fit to the idiosyncrasies of the data.

In contrast, our research is organized around a set of questions and themes, and we use datasets that are appropriately designed to probe those questions. When we test on standard benchmarks, we try to carefully identify and characterize the sources of errors instead of trying to beat the current state of the art algorithm. While this approach has the downside that it might not beat many standard benchmarks in the short term, we believe proper execution of our approach will lead to significantly better understanding and significantly better performing systems in the long term.

The following themes and constraints are emphasized in the work we do:

Generalizing from a limited number of training examples:Artificial Intelligence - AI, Cognitive Computing - CC, Machine Learning - ML and Artificial Neural Network - ANN algorithms are known to require an enormous amount of training, whereas humans are able to generalize from as little as one example. We believe that generalizing from a few examples lies at the core of intelligence. So far our models have required only a handful of examples to train.

Unsupervised learning: Although Artificial Intelligence - AI, Cognitive Computing - CC, Machine Learning - ML and Artificial Neural Network - ANN research have made advances in unsupervised learning techniques, recent successes are attributed to supervised learning with large amounts of data. We believe that unsupervised learning will be important for a large class of problems, and most of our efforts are focused on unsupervised learning techniques.

Using the neo-cortex as a source of inductive biases and constraints: It is a widely held view that the learning efficiency and generalization of the brain comes from its inductive biases [5]. The organization of circuits in the neocortex provides rich clues regarding the inductive biases and inference algorithms, and the investigation of these clues in the context of the deficiencies of existing models would enable the discovery of new network architectures, learning algorithms, and inference mechanisms.

Emphasis on network structure: Like many other researchers, we believe that network architecture plays a significant role in generalization[6]. Many of our experiments are designed towards the question of uncovering insights related to network micro-architecture. Although research on convolutional neural networks has given us better gradient descent and regularization mechanisms, the fundamental architecture of those models has remained the same as that of the Neocognitron and Hubel and Wiesel model. Rather than adhering to this architecture, we research whether some of the drawbacks of these models in the areas of training complexity and poor invariance-selectivity tradeoffs originate from deficiencies in the micro-architecture. We emphasize parts-based representations and compositionality, similar to several other researchers building grammar-based models. In addition, the organization of cortical micro-circuitry provides rich clues about the nature of potential modifications to cortical architecture. Our efforts in this direction have already been very fruitful in discovering a new network architecture that provides tight control for invariance-selectivity tradeoffs.

Generative models: We use richly structured probabilistic generative models. Generative models have the advantage of handling many inference tasks in the same framework, for example, detection, recognition, and segmentation. This decision is also consistent with our goal to have a visual system that can imagine different configurations, and produce explanations for what it is seeing. Structured probabilistic models provide interpretability that is extremely helpful for development and debugging, and these models have the ability to incorporate causal semantics.