aisingapore / TagUI

Free RPA tool by AI Singapore
Apache License 2.0
5.65k stars 585 forks source link

Integrate machine learning (Yandex CatBoost) #66

Closed kensoh closed 6 years ago

kensoh commented 7 years ago

TagUI allows decision making using conditions (either in natural language or JavaScript syntax). With easy-to-use and advanced API calls, it can also connect to AI/ML-as-a-service providers for advanced cognitive abilities. Examples include Wit, Dialogflow, to offerings from Microsoft, Google, Amazon.

Other than these options, I would want to have a native integration that runs an AI / ML tool locally. Be it for reasons such as extensibility, control, price, performance. That is the logical next step.

After looking at open-source tools such as Google deeplearn.js, Andrej's ConvNetJS, Yandex CatBoost, I decided to go with CatBoost for a start. Although the first two are more popular, they are designed to run within the web-browser using JavaScript. Besides performance considerations, there is probably lesser isolation from the actual web automation that is happening.

CatBoost, on the other hand, can run as an executable from command line, across the different major OSes. Other plus points I like about it is it uses gradient boosting which is less computationally intensive, and is the result of production grade MatrixNet used for decision-making at Yandex.

rough ideas what needs to be done (scope reduced, see bottom)

kensoh commented 6 years ago

Some links on CatBoost tutorials

kensoh commented 6 years ago

Reduce scope the for the issue, implement command line integration for calling command line executions and fetching execution output. Main work using CatBoost is defining parameters which are very specific to different use scenarios. Making a defined implementation is not generalized enough.

With command line integration abilities using run step and advanced API integration abilities, should be good for integration with AI / ML example services in issue description, or local implementations such as CatBoost / Caffe.

kensoh commented 6 years ago

Exciting new developments ahead, in integration of TagUI automation with AI / ML capabilities.

Hint - AI Singapore (https://www.aisingapore.org) - a government programme to build up AI capabilities in Singapore, including research, industry collaboration, apprenticeship and launching MVPs.