Showing posts with label problem solving. Show all posts
Showing posts with label problem solving. Show all posts

Tuesday, 26 February 2019

AI Playbook for Startups and SMB

The AI Playbook for SMBs and Startups

Most businesses in the SMB and startup class, still struggle to grasp the broad definition of AI disciplines, what AI really is to their business, where to get started and what successful execution looks like for their businesses. Simplifying a focus area narrowing these concerns specifically to address your business pressures is helpful to keep team in line with long term business goals and strategies.

There are many AI Playbooks written by renown gurus such as Andrew Ng, meant for Fortune 500 organisations and they do contain some very useful guidance and tips for all businesses. Nevertheless, smaller ventures with limited funding, skills and resources may need to rework tactics to suit business.

Here we present steps to formulate a generic AI playbook meant for small and medium sized businesses, which includes stages to:

  • internalise AI definition for the business; 
  • outline and prioritise business problems that can be addressed with AI;  
  • experiment with ready pre-trained model
  • build required skills or internal structures;  
  • prepare training and test data; 
  • choosing a path between pre trained and custom built model for solutions, 
  • and assessing overall impact to businesses performance. 
The generic AI Playbook should ideally incorporate other dimensions unique to your business, industry and commercial eco-system over time, for maximum results.

Define and internalise AI for your business...

AI itself is a broad subfield of computer science. It encompasses many branches of studies including rule based AI and decision trees; machine learning (regression, classification, neural networks/ deep learning, reinforcement learning, supervised and unsupervised learning); robotics; text and speech processing (NLP, NLU, NLG); vision (computer vision, image recognition) and several other applications that still have not left the laboratories. 

AI is a field where one or several of these approaches are used to create machines, agents and models that perceive, learn and adapt to perform various tasks and cognitive function similar to humans.  

The AI domain is practically exploding with hundreds and thousands of new approaches, methods and solution areas in transfer learning (learning from lesser data and smaller models), networks with memory (generalising AI, e.g. DeepMind’s differentiable neural computer), reinforcement learning, training simulations, hardware for training and inference that are rapidly advancing in the research, development and real world application stages. 

Communicate how AI should be perceived in your business....

As such, it's easy for businesses to get lost in an ocean of offerings that comes with vendor specific methods, best practices, strategies, tools and ready use cases. Charting and communicating how AI should be perceived within the business very early on, in your AI journey is crucial to ensure potent utility, informed expectations and performance. 

For instance should AI merely assist workers to perform better at tasks? Should AI considered as an avenue to outsource cognitive functions otherwise performed by human workers ? Or should AI be a form of cognitive technology to help expand ordinary worker's ability to explore meaningful solutions to business problems both creative and logical?

Setting the right internal tone on AI can guide alignment with work culture, strategies, high impact projects, investments, selection of tools and services that can drive AI values across the business.

Define business problems that can be solved with AI

The common misconception in this stage is, data science or business team alone is responsible to outline business problems solvable by AI. 

Every business unit can contribute to this stage including sales, marketing, services and tech departments. Imagine how it will affect your business if tech can reduce 40% of cooling needs in your datacenter or how your customer service or inbound sales department can improve performance by multi-fold with realtime speech to text analysis that prompts them with emotion, sentiment and other useful information during a call with a customer.

Build working team; conduct regular meet-ups; answer business questions around growth hacking, improving or staging customer experience, workforce productivity and innovation; keep a revisable record of issues pressing the business growth (this can be a simple excel sheet with list of items); prioritise problems to solve; assess data availability; experiment, assess skills requirement; select initiatives for executive sponsorship and create projects to execute. 

Assess data availability and prepare training data for the problem

Data sources...

Data can be gathered from within the business, public datasets, procured from external sources (e.g. Image Net, Google Data search) or a mix of these. Identify useful data assets for your business problem, list what data is missing or not available and which data can be excluded from your raw selections. Collect and aggregate sufficiently to fit your model. 

Data preparation is a significant contributor to cost of building AI solutions specifically ML models, aside from high performance computing resources though GPU innovations has brought so much economics since a decade ago.

Clean and transform data for training...

Most ML models requires large amounts of data to train and converge before they can be applied to business. Preparing these data may require domain experts to collect raw data, identify features with strongest prediction power and label them. Though the business problem you are aiming to solve, tools and selected algorithms ultimately influences data preparation approach and mechanisms. 

Data transformation is revisited several times....

It is common for developers to spend 50% or more time preparing and scrutinising data quality and revisit data transformation processes (or feature engineering) several times during the development of the model. 

Split data sets for training, test and validation...

The prepared data is usually split into training set to fit the model, test set to evaluates final model fit on the training dataset and validation set to evaluates model fit on the training dataset while tuning model parameters.

Consider pre-train models

Ready to train models for various use cases...

For common business problems which requires simple recommendations, classifications, regression, clustering, anomaly detection and ranking, look for pre-trained model offerings by public cloud vendors such as Google, AWS, Alibaba and Microsoft. Many large and niche AI vendors now offer pre trained models for other slightly complex solutions to perform predictions, speech processing, computer vision (video, image and object recognition), decision support and planning tasks. 

No need to build algorithm or ML models.....

These offerings saves businesses the hassle of building algorithms and models from scratch. Plus it's a great way to get started with applied AI for business with quicker results and fast ROI times without having to reinvent the entire process (the value is in the model outcome not building it, especially for non-tech businesses). 

No need to replicate work for  ML backend .....

The team need only concentrate on preparing data, select features and train the model for required tasks (e.g predictions, classifications).  Trained models/ functions can then be deployed with other production applications and systems through APIs provided by cloud vendors to apply learnings on new data samples without replicating any work for ML backend.

ML and DL frameworks

In the event that the business problem you aiming to solve is much complex and does not have a ready pre trained model available, it is advisable to custom build the model custom build the model on a machine learning and deep learning frameworknof your choice, offered by cloud vendors through their ML-as-a-service offerings.

Frameworks such as Tensorflow, Pytorch, MXNET, Keras, Caffe, Scikit, Microsoft Cognitive Toolkit and Theano, comes readily packaged with interface, libraries, tools, pre-built and optimised components to facilitates fast development of AI models without getting into the details of underlying algorithms and complex architectures. 

New developers can benefit from starting with frameworks such as Keras and delve deeper into Tensorflow or other suitable frameworks as they get accustomed with the building blocks and programming languages.

However, it is highly recommended for new teams to get experience from simpler projects involving pre trained models first before venturing into challenging custom building models. It is easy to loose ROI when tinkering with ML or DL models without past experience and benchmarks.

Building AI skills 

When it comes to smaller businesses, building AI skills in-house is really a trial and error exercise to find the right blend of subject matter experts (or the minimal quo) to address AI problems and build solutions. This team's skill level is adjusted according to how they plan to address business problems, for instance with ready models or custom build models.

AI requires programming (e.g. R, Python, Lisp, Prolog, Scala, C, C++ and Java) data science (at least fundamental level) and business domain knowledge at the minimum to obtain some high level results. A strong foundation in mathematical fields such as probability, statistics, linear algebra, mathematical optimisation is necessary if your business wish to develop own algorithms or modify existing ones to fit specific goals and constraints.

Training existing workforce, hiring from other organisations and university grads are some of the common methods to build the right team.

Education sites such as Coursera, EDXMachine Learning Mastery and many others provide neutral self learning content suitable for both technical and business audience. Content varies from fundamental to advanced level and comes with certification process that can be committed at one's own pace. 

Vendors such as AWS, GCP and Microsoft too have their own academies but syllabus may be skewed towards respective services. AWS and Microsoft are so far the best corporate academies I encountered and complies to many criteria mentioned in Andrew Ng's Fortune 500 AI Playbook in addition to easy to follow content and no fuss lab use (note that this is paid resources).

Assessing impact to business..

Once trained, tested and deployed, weigh the model's impact to your business performance. I use a no fuss method where I categorise what was increased, reduced, created and eliminated over a set period of time.

For instance:

  • Did the model INCREASE overall customers value, revenue or profitability ? 
  • Did the model REDUCE fraud risk, customer churn or cost ?
  • Did the model CREATE new growth engines, data products or differentiators ? 
  • Did the model ELIMINATE manual task, blind spots or redundancies ?

These answers are then scored and quantified for best alignment with overall strategic goals and objectives. The data is then collated for all AI projects to visualise and quantify the total impact to business financially (profit, revenue, growth rates, etc) and other areas such as competitiveness, reputation, and customer satisfaction. 

This exercise is helpful in two or three ways :

  • to identify successful AI projects and approaches
  • to build AI projects that can increase the value or performance of existing models
  • find optimal opportunities to apply AI learnings to other functional areas 

There are many ways to measure impact, choose one that you are most comfortable with and put it to work. Use the discoveries to increase effectiveness of AI projects for your business while filling gaps in skill sets and access to useful data assets.

Conclusion - Ethics, Explainability and Human-Machine Interaction

In the end, AI systems are nothing but stacks of infrastructure and programs in various architectures that learns and executes continuously, depending on its utility. The machines aid human workers to predict outcomes, navigate a situation and decide on best action path with less mental drudgery while spanning solution options that was never possible before.

But that doesn't mean AI systems and models are perfect or free from self vested exploitation. Since the 2010s public concerns about racial and other biases in the use of AI for criminal sentencing decisions, creditworthiness and other forms of social credit systems (e.g. China) is driving demand for transparent AI systems and agents.

Explaining decisions of AI algorithms or models, especially those powered by deep learning or other complex neural networks is still a difficult task and is also known as the 'interpretability' problem.  Unlike decision trees and Bayesian networks that are more transparent to inspection, complex neural networks stack on one another and may involve millions of neurones processing towards the outcome.

As such, deploying sufficient governance protocols for data privacy and security; an architecture which facilitates transparency and tools to detect bias in algorithms is as critical as creating successful models or functions. Though in many cases engineering for more explainability and transparency may lead to significant accuracy trade offs. 

Sunday, 25 February 2018

Wrong Data is still a better start than No Data

When the repertoire of enterprise data fails to generate any meaningful information to answer business questions, returning to the drawing board is the wise decision.

Observed carefully, more than often, the root cause points to methodology flaws rather than a direct breakdown in IT systems or integrations.

Problem is, we still treat data as departmental assets and take a territorial approach to fixing problems.   While this is necessary for quick turn around, a holistic approach needs to be in place for addressing data issues impacting across the organisation (involving both IT and business teams), or we’ll end up storing a huge amount of data unusable nor used by the workforce.

Some key areas that should be coehersed to ensure continuous value generation;


  1. A focus group with representatives from every unit of the business.
  2. Specifying organisational goals that are aligned with data capturing, collecting, analysis and representation accross the organisation (outlining the big picture for your data projects).
  3. A common mechanism/process to capture data challenges faced by every unit.
  4. A clearly outlined Data policy for internal users ( sharing, redundancies, security...etc)
  5. Periodic measuring/ reporting of data assets and its returns ( e.g Data ROI, YoY return, ratio of active and unused data, amount of Intel lead to new growth engine, productivity increase and etc.)
  6. Strategic mining of the unused or less used data for new insights on business questions
  7. An active initiative to resolve the top three to five data issues affecting the business (e.g. Incomplete customer data, redundancy, bias data, sluggish data delivery to users and etc)

Achieving data utopia might still be a far fetched dream, especially when data is collected through almost every imaginable device/equipment possible. As such, there is no shame in starting with huge amount of wrong data rather than no data. Understand the big picture and take a phased approach, solve one issue at a time. Measure outcome as you move along and the value your data generates will only increase.

Tuesday, 6 February 2018

When Customers Think you are Sneaky

One Wednesday morning in Jan 2018 and I am sitting with a public sector client to discuss how he and his team could optimise IT operations and add new organisational capabilities faster in 2018/2019. The client is looking at various options such as; moving workloads to public cloud platform; consolidating communication services; reducing data centres; migrating to opensource technologies; adopting agile practices for new development and etc. 


The cloud migration menace 

The current IT operation is spread out among units and departments under the agency, creating disparate IT system operations with its own set of integration works and technology vendors. The client is planning to create a common cloud platform  (a hybrid of private and public) to gradually move all or at least most IT operation onto it, but is unsure which operation should be targeted first and how that will impact the rest of the systems in place. They also realised that moving hundreds and eventually thousands of workloads onto a central cloud platform would require them to change work procedure, policies and restructure the information technology department. 

In addition, each system migration will also have to consider impact to users and the domestic technology vendors currently supporting it. Without involvement of these two parties, the cloud migration can hit costly roadblocks, as most systems are legacy (non cloud native) and full of workarounds.

The eager salesman who killed his chance at a good deal before it even begun.....

As such some external experts were invited today to share ideas on the best methods to approach the problem. I sat quietly among the customer executives, listened and took some notes from each presentation. At the end, the team convened without the presenters and came to the consensus that none of the presenters actually understood what the client is looking for. Everyone (including reputable MNC reps) presented a solution anchored around a product/service or in worst cases a product,  failing miserably to discuss the actual problem, impact, coverage and risks associated with it. 

Some vendors even try to assure the client, that they can undertake the migration work with their own set of trained partners who have no history with the client. Ignoring the fact, that moving a critical application without involving the current support vendors (and training them) could only lead to catastrophic failure and cause additional complication for procurement.

In their pursuit to pin down a deal, most vendor reps did not take the opportunity to ask all the right questions such as why it’s important for the customer to achieve this goal now, or what efforts were already in place. In fact, the customer felt some presenters were just gearing to make a quick sale for meeting quarterly numbers. 

Route to problem solving as opposed to shortsighted solutions


In MNCs, most reps are designed towards selling a service subscription or a product as quickly as possible. This is why almost every rep starts conversation around deal description, timeline and budget allocation, without spending too much time diagnosing the business problem. Opportunities are filtered based on a certain technical and business criteria that can be met directly by the vendor.  These questions are usually provided to sales folks by their companies in the form of cheat sheets.

In their defence,  this is crucial as their work and resources are recorded in sales automation system which tracks sales and is used to formulate management guidance moving forward to teams. As such, their performance and ability to secure resources for their deals is somewhat tagged with opportunity information that is submitted via the system. 

Having said that a complex problem such as the one described here, has many routes to resolution. Often executed concurrently to reach maximum results. E.g. Training and up-skilling selected ISVs and SIs based on their existing support footprint for cloud migration; migrating several non-critical workload for a pilot case; training user groups on how to harness cloud values for their work; restructuring internal technical functions and resources.

Show them where you fit into the big picture

What a client of this multitude is expecting here is just a fit in the big picture. A rep losses ground by unnecessarily minimising the complexities, deviating  or withholding useful information that can help build a better route to resolving the business problem. This makes the client second guess and continuously seek alternative advice, even when dealing with vendors that they are familiar with. Past experience on how they were left in the lurch discovering issues pertaining to product compatibility to their environment, or other licensing matters, haunts them.

The takeaway is, great deals are embedded in complex customer situations. You may not have an answer to everything, but it is any reps/consultant’s responsibility to look at things realistically for clients to take them seriously. Collaborate with the client to map the business problem, improve designs of the resolution routes where relevant, add useful insights, be willing to work with others in the process (including your competitors) and highlight areas where your company can design differentiated values and solutions. 

This won't get you a deal tomorrow but will certainly result in a working relationship that is mutually rewarding year after year. Plus you still meet your firms reporting and sales guidelines sufficiently, if not much effectively. As they say a good rep does not waste time calling customers (not that you shouldn't), instead customers call them on their first instinct when they need help.