Engine Works

Under the hood of Alteryx: tips, tricks and how-tos.
Aguisande
15 - Aurora
15 - Aurora

A couple weeks ago, I was presented with a solution that was in development, and I volunteered to be a beta tester. I always say YES!  to these opportunities, so I embarked in learning a new (yes, again!) platform to perform ML & AI. Read more about the Alteryx + Veritone partnership and the aiWARE tools.


So, why did I do it? Well, first I’m very curious by nature. Second, the demo I saw explained some ML & AI underworld to a basic guy like me. Finally, because it was fully integrated to Alteryx (so I thought I had that part covered). Very nice starting point to this journey.


The example I saw was a part of an Alteryx webinar where @MarqueeCrew  and @LeahK  (two very well known Alteryx superheroes) were talking, with the video switching faces as they talked. Four or five photos of each were uploaded to train the model (downloaded from Google Images).


Once the model was trained, it ran and voilà! The results show some very curious information:

  • It recognized the time where each identified speaker was talking
  • It recognized a speaker that was not trained (another Alteryx superhero @CharlieS
  • The model made the transcription of who said what at what time
  • What was the expression in the voice when they said it

For those with me so far, let me tell you… if your head is not exploding right now, it will be in a few paragraphs.

 

My First Test

So far, that was my experience with the demo, so I decided to do it myself (thinking I wasn’t capable of pulling this off myself). Big surprise! I received two Alteryx macros in advance: the aiWARE Input tool and the Run aiWARE tool (accessible on the Gallery).

 

As an Alteryx enthusiast, the first thing I did was to drop the Run aiWARE tool on to the canvas. I was pleasantly surprised that I was able to sign up for a free account from within the macro, so I did; yes, you can even do it from within the macro, without leaving Alteryx, and receive a free trial, too!

 

login.png                Signup.png

 

Now that I have my credentials, I was able to log in, and the main interface of the tool was presented:

 

RunAI.png

 

Select Data: Lists options to retrieve your data:

 

SelectData.png

 

Upload Type: If you’re going to be uploading a single file or a folder contents:

 

UploadType.png

 

Project Name: Just a name to keep your projects organized.

Local File: Since I chose to upload a local file.

 

Flow Options:

 

FlowOptions.png

 

Here starts the amazing journey for me. You can use standard workflows, published by Company, or you can use yours, through the Custom Flows Option.

 

For the Standard Flows, here is a partial list of those available to Alteryx right now:

 

SelectFlow.png

 

I decided to try the Facial Recognition first, based on two previous disappointing experiences I had with two other vendors and this kind of model. When I selected Facial Recognition, I was presented with a new drop down, Select Library:

 

SelectLibrary.png

 

And a very suggestive option to Train my First Library. Obviously I clicked the link.

 

In the same panel, I was presented with the Libraries section of the solution, where you can build, edit/update/expand or delete libraries for model training.

 

Library.png

 

I started to look into my work laptop and found some pictures of my kids, so I fed the library with them. The process is simple, easy and straightforward, with instructions at every step. It took me more time to find the pictures than training the model with them.

 

So finally, I selected the library for this test, and ran the workflow (I am a Browse tool guy in development, so I added one first).

 

RunWorkflow.png

 

The workflow throws a job to the server to start performing the Facial Recognitions. A very important thing to notice is there’s no need to wait until the task finishes, so meanwhile you can work on another things… (yes, I know, bummer, but your boss will love this!)

 

The execution results:

RunResults.pngRunDataResults.png

 

If you’ve been reading carefully, I said I received two tools and now is the turn of the second one to appear in a new canvas. The aiWARE Input tool asked me to log in again, and returned the following:

 

QueryResults.png

 

Selection Option: It allows you to choose from where you’ll get results.

 

SelectOption.png

 

List of Assets: In this case, all the jobs I previously ran.

 

ListOfAssets.png

 

Pending AI Jobs: Shows what jobs are still running on the server

 

ModelResults.png

 

I ran the second workflow (a pretty basic one, btw). 2.9 seconds for the results; I went directly to the results. It’s JSON, and I’m in Alteryx, parsing is no problem!

 

ModelOutput.png

 

JSON Parse to the rescue and after a little simple Alteryx magic, I have readable results:

 

JSONParse.png

 

I’m not going to enter in much detail on the results, because I think you need to test this and be amazed yourself, but I will comment on some of them:


Emotion detection (up to seven emotions tested by frame) and Confidence probabilities of each one:

 

FinalResults.png

 

Twenty-nine face landmarks evaluated per subject and their probability score:

 

29landmarks.png

 

Each person in the library recognized, based on a set of four pictures of each (the one that is blank is my goddaughter, whose picture where not included in the training set):

 

PersonsRecognized.png

 

Part of the video where they were recognized:

 

VideosEgmentRecognized.png

 

And a lot of other results, like if the model detected beards, sunglasses, poses, etc.

 

Conclusion? It took me 10 minutes from scratch to get the experiment done, starting with picture gathering, video uploading, model training and face recognition completed.

 

A more complex experiment

Since I was already hooked up with these cool new tools, I decided to get into a real business case. A couple of years ago, a potential customer asked us about feature recognition on shopping mall footage.


What a better way to test it right now!

 

I got a video online (a walk through the Dolphin mall in Miami that somebody posted on the internet), and decided to test the Logo Recognition Engine.

 

 

videoreel.png

 

 

 

videoFinal.png

 

 

I strongly recommend that you give this a test, I’m sure it’ll blow your mind as it did to me. If you have any questions, please reply to this article. Read more about the Alteryx + Veritone partnership and the aiWARE tools.

 

Comments
mbarone
16 - Nebula
16 - Nebula

Really cool stuff AJ!