Visual Machine Learning

Being some one to whom being able to visualize a concept is the key to learning and doing, i have always been a fan of tools and techniques that help visualize and do stuff visually and in the process establish abstraction that help talk about the domain. Example – Think of data extraction, cleaning, transformation using SQL, Excel, “R” and then imagine  these steps using Lego Blocks that could be dragged-dropped and joined on the pallet to design a data solution or experiment.

My first experience with this Visual solution design ( and the thought process ) were shaped by SCE ( Service Creation Environment) that helped building real world telecommunication services is a visual and interactive way. SCE provided abstraction for complicated communication component for Call Control, Processing and Call charging as Service Independent Blocks (SIBs) and mechanism to join these blocks to create real world industrial grade telecommunication services.  These were my earliest  introductions to the value of visual simplicity , the explosive business value this create and the concept of platform as a service concepts. Too bad that theses were locked under telecommunication walled garden and the world had not yet seen the value that 3rd party developer and solution designers could create and the innovation this simplicity this could unleash.

Trying to wrangler with data for past few months and using tools like SQL, Excel, “R” to get, clean, transform and visualize data, draw insights and dwell into the world predictive analysis, i was looking for visual pallet for data solution and experiment design. Azure machine learning studio seems very promising and i decided to give some time to learning and understanding what it has to offer. The write up follows my journey, the experience and learning with Visual Data Analysis and Machine Learning.

Before i begin ,  lets clarify for what i looking for, beyond the high level stuff we just talked about. So some expectations. Surprise with more stuff!!

– Serve as a pallet for creation of Data Service and Experiments  – A Data Solution Creation Environment.

– Provide Blocks for key data processing steps  – extraction, cleaning, selection, processing and visualizing data.

– Unleash creativity by providing ways to connect input and outputs of these building blocks in multiple ways. Think  ‘unix pipes’ and how they connect various commands. Be a pallet for creativity,  don’t be a static template with static connections to tool  that can just do a few things.

– Allow to plugin to raw power of a programming language ( R, Python) when i need to. Understand that every thing cannot be easily abstracted.

– Have a basic presentation layer to provide exploratory analysis in the service. Be better at presenting results than “R”.

– Allow to get inputs from diverse source and output to diverse sources. Be the data processing engine, a good enough too.

Time to get started. Good start example may be predict price of a car based on given set of data. Looks introductory and still real world.

Disclaimer : I work for Microsoft, don’t work for Azure and definitely don’t speak for Microsoft