We, at Patterns, started building Machine Learning Models in 2017. These models were CNNs & RNNs, trained with data for a specific purpose, such as recognizing handwritten English characters, recognizing logo objects, taking decisions, etc. Building these models involved collection of data samples, manually label each sample and break down the samples into training sets & testing sets. The quality of the model would depend on the quality & no of data samples. We met with some degree of success and after huge efforts, our success rates were between 70% to 80% in recognition of objects with wide variations (like handwritten text) and the success rates were > 95% for recognition with limited variations (like printed text).
We had two big challenges to solve : getting high quality of recognition of handwritten text and getting good recognition for objects with very sparse training samples.
During our research, we found that most of the recognition and decisioning is skill based. If the models were taught to perform using the skill provided by training, then we can overcome the requirement of getting data samples and also solve the problem of sparse data samples. Our Signature verification bots, created in 2017 were completely skill-based bots, trained to match strokes in signatures. And this fact strengthened our thought process and we started to do some research in the area of skill-based bots.
After a year of work, we developed several skill-based bots and we either supplemented and strengthened already available ML bots with collaborating skill-based models or in some cases replaced ML based models completely with skill-based models.
Skill based models work on Pattern Matching. An object / circumstance (data context) has patterns. In images these patterns are various image features that can be extracted. If the patterns from an object matches a known pattern, then recognition / decision can happen using the object / decision in the known matching pattern. We will need a language / mechanism to describe patterns in an image object or in a data context. We developed a pattern language to describe patterns in known objects. These pattern definitions make allowance for variations in strokes of handwritten character objects. We supplied pattern matching bots with a dictionary of labelled known patterns and the pattern matching bot extracts patterns from a candidate object and recognizes by matching patterns. This jump from ML based to Skill Based Bots is a very big jump for Patterns in the development of Digital workers for Banking and Finance industry.
Skill based models are able to increase recognition success rates significantly and are now becoming the backbone of all Patterns Bot Worker Products.



