Machine Learning Technologies

What is Machine Learning?

Although machine learning originated from early research in cybernetics and robotics, today it is mostly concentrated on the mathematical algorithms and software devoted to performing certain types of tasks, such as:

  • Decision making and control
  • Sensory information storage and data compression
  • Repeatable pattern detection and classification
  • Regression analysis of noisy pattern sequences to find new, hidden patterns in complex data

Machine learning is not a single technique or technology, but is rather a field of computational science that incorporates numerous technologies to create systems that can learn from the data in their environment and then make predictions and take actions when confronted with a new situation.

Machine learning is strongly grounded in modern mathematics, drawing on expertise in function analysis, probability theory, sets theory, chaos and dynamic systems and calculus of variations among other areas.

Machine Learning Algorithms

Machine learning algorithms cannot be completely preprogrammed and fixed in advance because application contexts can vary greatly.  Instead, a broad family of algorithms is selected for a given situation and their variable parameters are tuned (learned) to fit a specific application’s data.

There are many useful architectures in machine learning.  Some of those that our team has used in various projects include:

  • Artificial neural networks
  • Bayesian networks
  • Support vector machines
  • Radial basis function networks
  • Self-organizing (Kohonen) maps
  • Probabilistic and clustering trees
  • Evolutionary and genetic algorithms
  • Fuzzy logic and neuro-fuzzy machines

Sample Projects

For nearly two decades, the NeurOK Software team has been developing and deploying machine learning-based solutions in the following areas:

  • Modeling
  • Optimization
  • Signal Processing
  • Non-linear Control
  • Time Series Analysis
  • Clustering and Visualization
  • Data/Text Mining and Classification

Some of the projects we have implemented in these areas include:

Industrial chemical process control

This solution predicts the correct chemical process formulation based on past history and current process and environmental properties.  The system was implemented for the beauty care division of one of the world’s largest consumer products companies.

Prediction of financial indices from textual news streams

In this application news streams from 20 high-quality sources are digitized and used as the input to a neural network predictor of a financial time series.  The technology complements traditional forecasts based solely on time series history providing for a more robust overall forecast.

High explosives detector for airport security checkpoints

A microwave signal is used to detect the presence of explosive material, but the signal suffers from numerous variable influences such as body conditions, mass and shape of the explosives, reflections from the surrounding environment, etc.  A neural network was used to find certain non-linear combinations between different frequency readings which are most stable under all of these varying perturbations.  This is a very difficult and highly non-linear task, but with sufficient training a neural network provides an excellent solution.

Oil pipeline defect recognition and quantification

Neural networks and probabilistic trees were used to discover anomalies in magnetic flux leakage and ultrasonic sensor signals.  By carefully “teaching” the system on test samples of defects with known sizes, the virtual sensing technology is now able to predict defect size and depth for industrial measurements in pipelines, allowing the system to quickly characterize defects as critical or non-critical.

Adaptive performance control of iterative linear solver

A neural network engine with local memory optimized by a genetic algorithm is able to track the performance of an iterative linear solver in real time, during computations, and recommend optimal sets of solver parameters for the next iteration providing for fast, accurate convergence.  For more information, click here.