Introduction to Object Detection Artificial Intelligence | Cognitive | Machine Learning | Python

Introduction to object detection

Humans can easily detect and identify objects present in an image. The human visual system is fast and accurate and can perform complex tasks like identifying multiple objects and detect obstacles with little conscious thought. With the availability of large amounts of data, faster GPUs, and better algorithms, we can now easily train computers to detect and classify multiple objects within an image with high accuracy. In this blog, we will explore terms such as object detection, object localization, loss function for object detection and localization, and finally explore an object detection algorithm known as “You only look once” (YOLO).

Object Localization

An image classification or image recognition model simply detect the probability of an object in an image. In contrast to this, object localization refers to identifying the location of an object in the image. An object localization algorithm will output the coordinates of the location of an object with respect to the image. In computer vision, the most popular way to localize an object in an image is to represent its location with the help of bounding boxes. Fig. 1 shows an example of a bounding box.

Introduction to Object Detection 2A bounding box can be initialized using the following parameters:

bx, by :

coordinates of the center of the bounding box

bw :

width of the bounding box w.r.t the image width

bh :

height of the bounding box w.r.t the image height

Object Detection

An approach to building an object detection is to first build a classifier that can classify closely cropped images of an object. Fig 2. shows an example of such a model, where a model is trained on a dataset of closely cropped images of a car and the model predicts the probability of an image being a car.Introduction to Object Detection 7

Now, we can use this model to detect cars using a sliding window mechanism. In a sliding window mechanism, we use a sliding window (similar to the one used in convolutional networks) and crop a part of the image in each slide. The size of the crop is the same as the size of the sliding window. Each cropped image is then passed to a ConvNet model which in turn predicts the probability of the cropped image is a car.

Introduction to Object Detection 4

After running the sliding window through the whole image, we resize the sliding window and run it again over the image again. We repeat this process multiple times. Since we crop through a number of images and pass it through the ConvNet, this approach is both computationally expensive and time-consuming, making the whole process really slow. Convolutional implementation of the sliding window helps resolve this problem.

The YOLO (You Only Look Once) Algorithm

A better algorithm that tackles the issue of predicting accurate bounding boxes while using the convolutional sliding window technique is the YOLO algorithm. YOLO stands for you only look once and was developed in 2015 by Joseph Redmon, Santosh Divvala, Ross Girshick, and Ali Farhadi. It’s popular because it achieves high accuracy while running in real time. This algorithm is called so because it requires only one forward propagation pass through the network to make the predictions.


The algorithm divides the image into grids and runs the image classification and localization algorithm (discussed under object localization) on each of the grid cells. For example, we have an input image of size 256 × 256. We place a 3 × 3 grid on the image (see Fig.).

Next, we apply the image classification and localization algorithm on each grid cell. Do everything once with the convolution sliding window. Since the shape of the target variable for each grid cell is 1 × 9 and there are 9 (3 × 3) grid cells, the final output of the model will be:

Final Output= 3 X 3 X 9 ( Number of grid cells X Output for )

The advantages of the YOLO algorithm is that it is very fast and predicts much more accurate bounding boxes. Also, in practice to get more accurate predictions, we use a much finer grid, say 19 × 19, in which case the target output is of the shape 19 × 19 × 9.


With this, we come to the end of the introduction to object detection. We now have a better understanding of how we can localize objects while classifying them in an image. We also learned to combine the concept of classification and localization with the convolutional implementation of the sliding window to build an object detection system. In the next blog, we will go deeper into the YOLO algorithm, loss function used, and implement some ideas that make the YOLO algorithm better. Also, we will learn to implement the YOLO algorithm in real time.




The rise of artificial intelligence: what does it mean for development?


Typically, there are two arguments against ICTs ( Information and communications technology ) for development. First, to properly reap the benefits of ICTs ( Information and communications technology ) , countries need to be equipped with basic communication and other digital service delivery infrastructure, which remains a challenge for many of our low-income clients. Second, we need to be mindful of the growing divide between digital-ready groups vs. the rest of the population, and how it may exacerbate broader socio-economic inequality.

These concerns certainly apply to artificial intelligence (AI), which has recently re-emerged as an exciting frontier of technological innovation. In a nutshell, artificial intelligence is intelligence exhibited by machines. Unlike the several “AI winters” of the past decades, AI technologies really seem to be taking off this time. This may be promising news, but it challenges us to more clearly validate the vision of ICT ( Information and communications technology ) for development, while incorporating the potential impact of AI.

It is probably too early to figure out whether AI will be blessing or a curse for international development… or perhaps this type of binary framing may not be the best approach. Rather than providing a definite answer, I’d like to share some thoughts on what AI means for ICT ( Information and communications technology ) and development.

AI and the Vision of ICT ( Information and communications technology ) for Development

Fundamentally, the vision of ICT ( Information and communications technology ) for development is rooted in the idea that universal access to information is critical to development. That is why ICT ( Information and communications technology ) projects at development finance institutions share the ultimate goal of driving down the cost of information. However, we have observed several notable features of the present information age: 1) there is a gigantic amount of data to analyze, which is growing at an unprecedented rate and 2) in the highly complex challenges of our world, it is almost impossible to discover structures in raw data that can be described as simple equations, for example when finding cures for cancer or predicting natural disasters.

This calls for a new powerful tool to convert unstructured information into actionable knowledge, which is expected to be greatly aided by artificial intelligence. For instance, machine learning, one of the fastest-evolving subfields in AI research, provides feature predictions with greatly enhanced accuracies at much lower costs. As an example, we can train a machine with a lot of pictures, so that it can later tell which photos have dogs in it or not, without a human’s prior algorithmic input.

To summarize, AI promises to achieve the vision of ICT ( Information and communications technology ) for development much more effectively. Then, what are some practical areas of its usage?

AI for development: areas of application

Since AI research is rapidly progressing, it is challenging to get a clear sense of all the different ways AI could be applied to development work in the future; nonetheless, the following are a couple areas where current AI technologies are expected to provide significant added-value.

First, AI allows us to develop innovative new solutions to many complex problems faced by developing countries. As an example, a malaria test traditionally requires a well-trained medical professional who analyzes blood samples under a microscope. In Uganda, an experiment showed that real-time and high-accuracy malaria diagnoses are possible with machines running on low-powered devices such as Android phones.

Secondly, AI could make significant contributions to designing effective development policies by enabling accurate predictions at lower costs. One promising example is the case of the US-based startup called Descartes. The company uses satellite imagery and machine learning to make corn yield forecasts in the US. They use spectral information to measure chlorophyll levels of corn, which is then used to estimate corn production. Their projections have proven to be consistently more accurate than the survey-based estimates used by the US Department of Agriculture. This kind of revolution in prediction has great potential to help developing economies design more effective policies, including for mitigating the impact of natural disasters.


Looking forward – Toward the democratization of AI?

Many assume that it is too early to talk about AI in the developing world, but the mainstreaming of AI may happen sooner than most people would assume. Years ago, some tech visionaries already envisioned that AI would soon become a commodity like electricity. And this year, Google revealed TensorFlow Lite, the first software of its kind that runs machine learning models on individual smartphones. Further, Google is working on the AutoML project, an initiative to leverage machine learning to automate the process of designing machine learning models themselves.

As always, new technology can be liberating and disruptive, and the outcome will largely depend on our own ability to use it wisely. Despite the uncertainty, AI provides another exciting opportunity for the ICT ( Information and communications technology ) sector to leverage technological innovation for the benefit of the world’s marginalized populations.



Artificial Intelligence Trends 2018

AI trends of 2018-1

Artificial intelligence (AI) continued to be a major driver of digital transformation in 2017, with the rapidly advancing technology affecting business strategy and operations, customer interactions and the workforce itself. While these are all general and broad impacts of AI, they will continue to be important for businesses trying to keep up with rapid technological advancements in 2018.

Embedded deep learning will become the focus of software product teams in the coming year, as buyers will begin to inquire about the machine learning as a service capabilities of the tools they are purchasing. Many vendors are already including machine learning in products to enhance and automate certain functionalities, and build marketing campaigns around those AI enhancements. As embedded AI becomes more standard in solutions, there will be less of an emphasis around the glitz and glamour of machine learning and more of a focus on how the embedded AI is contributing to a business’ overall digital transformation.

There will also be a push to open data sources in 2018 for the benefit of machine learning developers. AI is only as good as the data that it has to learn from, so when building embedded AI applications or training machine and deep learning models, one needs as much data as possible. Enterprise companies, like Amazon and Google, among others, do not have a problem accessing mammoth data sets, because their everyday businesses are so large that they create a seemingly endless supply of data. However, small businesses or independent developers do not have that luxury; therefore, they will take advantage of open-source data sets, often made available by those same enterprise companies.

Similarly, businesses will begin to share their data with the software they work with instead of trying to hoard their own data in secrecy. As embedded AI becomes the norm, companies will have the option to share data with the vendor to increase the machine learning capabilities, and have the technology learn not just from the business’ data, but also from the data of the vendors’ entire customer base. Businesses using AI-enabled software will begin to realize that the benefits of data sharing outweigh the risks, which primarily center around data security.

Businesses and software vendors will also more frequently open up data to partnership opportunities in the form of data swaps. This will be particularly helpful for AI and general automation. Software vendors will begin to trade valuable data to best improve the embedded AI within its products. This will most likely happen across software categories, because the race to have the smartest and most intelligent application will be fiercely competitive. Any edge a vendor can get will be crucial. This will also benefit businesses outside the software space who begin to implement AI into general businesses processes.

Adoption of AI in businesses will be driven by digital platform providers, the same way that those enterprise service providers drove adoption of the cloud. Amazon Web Services (AWS), Google Cloud Platform and Microsoft Azure have created a number of machine and deep learning API’s and microservices that will make it easy for businesses to deploy AI for business operations and automation purposes. These solutions will have the same advantages as the vendors’ other service offerings; they will be cost effective, easy to setup and quick to deploy, making them attractive options for companies that do not have highly skilled, in-house developers. This machine learning as a service (MLaaS) type of deployment will become much more mainstream in 2018.

Finally, robotics process automation (RPA) will make its emergence in the workplace. This technology is still in its infancy, but it will begin to have an impact on business process management. RPA creates intelligent robots that access the software a business already uses, and creates automation for mundane tasks, like data entry. The benefit of RPA systems is that they are very easy to build, setup and train. These solutions can eliminate human error and help IT teams focus on bigger and more important implementations, instead of wasting time and energy improving and correcting the minor, but necessary aspects of industry. Look out for more updates on RPA throughout 2018.

Look for each of these trends to emerge as a focal point for AI in the coming year and have an impact on business modernization and digital transformation. Small businesses and enterprise companies alike will be adopting and embracing these intelligent trends, because the benefits will be so important that they will be unavoidable.

Open Data and Big Data Sharing

Enterprise companies, such as Amazon, Microsoft, Google and IBM, have been able to make the biggest strides in the AI space because they have access to enormous amounts of data. As businesses continue to accumulate and create massive amounts of data, there will be a need for data sharing unlike anything we have seen before. In the past, companies have kept data very close to the vest, with the exception of enterprise companies, but as the need to develop machine learning tools becomes more critical, companies will actively seek partnerships to share their data.

A number of enterprise companies have open sourced specific data sets to help developers train machine learning applications. For example, Google opened up AudioSet which, “consists of an expanding ontology of 632 audio event classes and a collection of 2,084,320 human-labeled 10-second sound clips drawn from YouTube videos.” An AI developer could potentially use this data set to help train a machine learning application for natural language processing purposes, and to better understand human, animal, musical and everyday sounds.

Uber has opened data from more than 2 billion of its ride sharing trips to improve urban planning. Uber partners with cities to better understand people and transportation in a program it calls Uber Movement. According to Uber, “We’ve gotten consistent feedback from cities we partner with that access to our aggregated data will inform decisions about how to adapt existing infrastructure and invest in future solutions to make our cities more efficient.” All data is anonymous, but one can imagine the potential opportunities a city or business can pull out of that rich data set. As a resident of Chicago, I hope that Uber and the city planners can work together to build an AI tool to optimize street lights, because hitting every red light on the way to the office may be my demise.

Of course, not all businesses are willing to just give away this data. As Uber states, it “partners” with cities, which one could speculate means that the company gets something beneficial in return, while other businesses like Yelp have opened up data for academic purposes. The Yelp data set can be used to, “teach students about databases, to learn NLP, or for sample production data while you learn how to make mobile apps.” If you are a hospitality management student trying to learn about restaurant trends or an aspiring developer, it could be extremely helpful to pull out insights from Yelp’s data set, which spans 12 metropolitan areas and consists of 4.7 million reviews, 156,000 businesses and 200,000 pictures, among other data points.

In 2018 it will not just be these huge companies that are opening up their data, but software vendors and customers alike. More and more companies will begin to opt in to software AI tools, such as Salesforce’s Einstein, to better automate tasks for employees. Businesses will happily share their own private CRM data with Salesforce if it means they now have access to the data from the thousands of other customers utilizing the solution’s AI capabilities. This would create better lead scoring, provide automated prospecting tools based on what others have found successful and, ultimately, save sales employees time.

The examples are not limited to the CRM space at all, instead they are seemingly endless. The boom of data from the internet of things (IoT) will open up even more data sharing opportunities for manufacturing and field service companies. Companies will be able to conceivably benchmark their machines’ performance and uptime against competitors within their industries by comparing IoT data. For these data-sharing opportunities to expand, there will be a greater emphasis on data security as well. All of these points will be critical to a company’s digital transformation.

In the coming year, other software companies will follow suit and allow their users to opt in to data sharing that will enhance business processes and offer growth opportunities that never before existed. It will also help pave the way for all software utilizing machine learning as the cornerstone of its solution.

Embedded AI

As more software companies discover ways to take advantage of their existing data sets, they will be able to strengthen their tools with embedded AI and make it the core of their products. Embedded AI is a blanket term for the use of machine and deep learning inside a software platform that improves aspects of an employee’s day-to-day. These machine learning advancements within the software may go unnoticed by most users, but they will be helpful for business strategy and operations, and relieve employees from mundane tasks with automation.

Over the past few years, many vendors have made large announcements notifying their customers, and their prospects, that they have added deep and machine learning to their current product offerings. Salesforce made Einstein the true focus of its major user conference, Dreamforce, back in 2016. That same year, when Microsoft transformed its products into the Dynamics 365 cloud suites, the company sure to highlight the fact that AI was going to be a major part of the tool.

I’m not currently a user of either solution, but I do use Expensify for expense management, and when it added machine learning to its tool, all users were sent an email explaining how the updates would benefit them. While I know the AI capabilities are in the tool, I’ve never actually seen it. That’s the point. For nearly all tools, users will not be aware that they are utilizing AI. But for those decision-makers in charge of purchasing tools, it will become a mandatory question when researching a software product and speaking with vendors. How does this product take advantage of AI to benefit my employees?

Vendors are aware of this, and most have been preparing for some time now, which is why Salesforce and Microsoft drove it home so heavily in their press releases. They have been looking towards the future and understand that as businesses continue their digital transformations, AI will need to be embedded into all of their tools. For the software vendors that have not started engraining AI into their products, they will certainly fall behind, and quickly. There is simply too much potential to improve their own products and too many opportunities to help customers to not make the conscience effort to make machine and deep learning the focal point of their products’ functionality.

Machine Learning as a Service (MLaaS)

In recent years, businesses have begun taking advantage of digital platforms and microservices to build their tech stacks (the holistic view of technology and software a company uses), utilizing the “as-a-service” model for everything from software to infrastructure. Businesses will lean into this strategy for AI, using the microservices from major enterprise vendors for “machine learning as a service.” Amazon Web Services, Google Cloud Platform and Microsoft Azure are a few of the digital platforms already providing this service to businesses.

Developers who understand how to build machine and deep learning applications are few and far between, and on top of that, expensive. Instead of trying to train algorithms with in-house resources, businesses can now purchase pre-built algorithms from said enterprise vendors and run their own company data through them, teaching these applications to do what is needed to better the business. Because of the data these companies have access to, their machine learning tools are likely more advanced than anything that could be built in-house anyways, so why not save time, effort and budget by taking advantage of the available services? That’s the question more and more companies will find themselves asking in 2018.

In the coming year, the algorithms and services provided by these large companies will only continue to expand and advance to the point where your business will be able to quickly and efficiently implement a natural language processing solution into your application or website. The major players will perfect these systems, so their AI offerings will rapidly consume data to be as effective as possible. As companies work through their digital transformations, these microservices will become the easiest and fastest way to progress rapidly with AI.


Artificial intelligence is possibly the most well-known aspect of digital transformation due to constant media coverage and the fear factor that it will make humans obsolete, but in reality, it is becoming a necessity for businesses. Whether companies are investing in software that uses embedded AI, or they are deploying their own MLaaS offering internally to automate processes, they should be taking of advantage of AI to modernize. In 2018, CIO’s and IT departments that have not yet adopted AI in some fashion will begin to feel the pressure, both externally and internally, to use the technology that is out there to better traditional business aspects.

Developers will continue to build important and useful machine learning tools with the help of open data. As companies begin to let go of the tight grip they have historically maintained around their proprietary data, more and more opportunities will present themselves — from data swap partnerships to AI enhancements — simply by sharing data. Each of these opportunities will help to modernize a business.


Exploring Data Science with Microsoft Tools and Frameworks

data science

1. Data Science and its growing importance

An interdisciplinary field, data science deals with processes and systems, that are used to extract knowledge or insights from large amounts of data.  It uses a lot of theories and techniques that are a part of other fields like information science, mathematics, statistics, chemometric and computer science.

Over the last decade there’s been a massive explosion in both the data generated and retained by companies, as well as you and me.  Ninety percent of the data in the world today has been created in the last two years alone. Our current output of data is roughly 2.5 quintillion bytes a day.(Infographic 2017). Entirely different ecosystem is on the way to process, analyze such a huge data.  The Bigdata is a ultimate result of parallel processing of such a huge data in less time.

The Data Science is not restricted to big data, as big data solutions are more focused on organizing and pre-processing the data rather than analyzing the data.

Few of the analyzing methods which are core part of the data science are probability models, machine learning, signal processing, data mining, statistical learning, database, data engineering, visualization, pattern recognition and learning, uncertainty modeling, computer programming among others.  Each of them is gaining an importance at the enterprise level.

2. How data science may add a value to the business?

blog data science

3. Few trending Data Science platforms

The fastest growing importance of the subject in almost every business is leading to availability of wide spectrum of competitive tools in the market.  Different cloud technologies like Azure, AWS, Google, TERADATA are leading the bandwagon and providing highly user friendly services.

The Microsoft Azure provides ultimate range of products and tools to facilitate End to End unified development of analytical solutions. I am limiting this blog to discuss the range of solutions in Azure and their significances on the canvas of analytical technologies.

4. Data Science support in Azure

Having said that, lots of elegant special tools and solutions of workload of Data Science/Machine Learning have been introduced in the form of Libraries, Frameworks, Language API for development and production level deployment to meet the need.

(A) Analytical Language interfaces and tools:

The prominent languages data scientist and analyst use are Python and R (Java and Scala are also being used). In the interactive environment, this code runs interactively, with the data scientists using it to query and explore the data, generating visualizations and statistics to help determine the relationships with it. The commonly used tools include…

  1. The Jupyter Notebook and ‘Azure Jupyter Notebook’ as an online Jupyter service for data scientist to create, run, and share Jupyter Notebook script in cloud-based libraries.
  2. Spyder: An IDE provided by Anaconda Python Distribution.
  3. R Studio: An IDE for R Programming Language
  4. Visual Studio Code: A lightweight, cross-platform coding environment that supports Python as well as commonly used frameworks for machine learning and AI development.

(B) Data Science virtual machine (DSVM)

It is an Azure virtual machine image that includes the tools and frameworks commonly used by data scientists, including R, Python, Jupyter Notebooks, Visual Studio Code, and libraries for machine learning modeling such as the Microsoft Cognitive Toolkit, PySpark, MatPlotLib etc.  It can be used to create an environment ready container without needing to deal with complexities of installation, managing inter-dependencies of other tools w.r.t versions of different libraries and tools related to Analytics, Data Science, Machine Learning, Deep Learning, cognitive services and Neural networks.  Just few of the advantages are…

  1. The latest versions of all commonly used tools and frameworks are included.
  2. Virtual machine options include highly scalable images with GPU capabilities for intensive data modeling.

(C) Azure Machine Learning Services:

It is a cloud-based service for managing machine learning experiments and models. It includes an experimentation service that tracks data preparation and modeling training scripts, maintaining a history of all executions so you can compare model performance across iterations to choose one among best performing models.  The Azure Machine Learning Model Management service then enables you to track and manage model deployments in the cloud, on edge devices, or across the enterprise.

  1. The Azure Machine Learning WorkBench: A cross-platform client tool provides a central interface for script management and history, while still enabling data scientists to create scripts in their tool of choice, such as Jupyter Notebooks or Visual Studio Code. The workbench follows discipline of Team Data Science Process and provides solutions to follow life cycle from the point of Data Transformation up to deploying most performing Analytical or Machine Learning model for production.  It provides variety of ways of script execution environment like: run model training scripts locally, in a scalable Docker container, or in Spark.  When you are ready to deploy your model, use the Workbench environment to package the model and deploy it as a web service to a Docker container, Spark on Azure HDinsight, Microsoft Machine Learning Server, or SQL Server. The Azure Machine Learning Model Management service then enables you to track and manage model deployments in the cloud, on edge devices, or across the enterprise.
  2. The Azure Machine Learning Studio: It is a cloud-based, visual development environment for creating data experiments, training machine learning models, and publishing them as web services in Azure. Its visual drag-and-drop interface lets data scientists and power users create machine learning solutions quickly. It is enriched with a wide range of established statistical algorithms and techniques for machine learning modeling tasks and a built-in support for Jupyter Notebooks. It can do direct deployment of the trained models to the Azure Web Services. It’s a boon for data scientist who wants a quick solution without engaging themselves into to cycle of code development.
  3. Azure Batch AI: It enables you to run your machine learning experiments in parallel and perform model training at scale across a cluster of virtual machines with GPUs. Batch AI enables you to scale out deep learning jobs across clustered GPUs, using frameworks such as Cognitive Toolkit, Caffe, Chainer and TensorFlow. Azure Machine Learning Model Management can be used to take models from Batch AI training to deploy, manage, and monitor them.

(D) Tools for deploying Machine Learning Models:

After a data scientist has created a machine learning model, you will typically need to deploy and consume it from applications or in other data flows. There are numerous potential deployment targets for machine learning models.

  1. The Apache Spark on HDInsight: Apache Spark is a distributed platform that offers high scalability for high-volume machine learning processes. It allows Batch as well as Real time processing in the distributed manner. Well equipped with different kinds of analytical and ML libraries it includes Spark MLlib, a framework and library for machine learning models. Also its Microsoft Machine Learning library for Spark (MMLSpark) provides deep learning algorithm support for predictive models in Spark. You can deploy models directly to Spark in HDinsight from Azure Machine Learning Workbench, and manage them using the Azure Machine Learning Model Management service. The HDInsight instance of Spark can consume data from variety of Data Sources like Hadoop HBase, Hive, Azure Storage, Azure Data Lake, Azure Even Hub and last but not least Apache Kafka.
  2. Web Services in Container: Containers are a lightweight and generally cost effective way to package and deploy services. The Machine Learning Models are deployable on variety of platforms other than Azure Model Management. Deploy them as Python web service in a Docker container or to an edge device, where it can be used locally with the data on which it operates.  The ability to deploy to an edge device enables you to move your predictive logic closer to the data.
  3. Microsoft R Servers/Microsoft Machine Learning Server: It is a highly scalable platform for R and Python code, specifically designed for machine learning scenarios. The models designed in Azure Work Bench also are deployable to these servers.  The server instances can be created on-premise so is the good solution in case to abide by the business or company policies.
  4. Microsoft SQL Server: It supports R and Python natively, enabling you to encapsulate machine learning models built in these languages as Transact-SQL functions in a database. Thus it facilitates encapsulating predictive logic in a database function, making it easy to include in data-tier logic.
  5. Azure Machine Learning Web Services: The machine learning model created using Azure Machine Learning Studio, can be deployed as a web service which thus can be presented to consume through a REST interface from any client applications capable of communicating by HTTP. It also has a Built-in support for calling Azure Machine Learning web services from Azure Data Lake Analytics, Azure Data Factory, and Azure Stream Analytics.

(E) Visualization services:

Microsoft’s Power BI content pack for Microsoft Azure Enterprise Users is providing solutions at par with Tablue(BI and Data visualization tool) or Spotfire(Enterprise grade analytical platform). It is a suite of business analytics tools that allows you to explore to deliver insight and create visually compelling reports. It can connect to hundreds of data sources, simplify data prep, and drive ad hoc analysis. Produce beautiful reports, publish them for your organization to consume on the web and across mobile devices. Everyone can create personalized dashboards with a unique, 360-degree view of their business. And scale across the enterprise, with governance and security built-in.

5. Conclusion

The analytics and ML is one of the topmost trends today and certainly in coming years. Microsoft is striving to provide end to end efficient, highly scalable, reliable solutions for complete Data Science cycle from the phase of procuring, cleansing, wrangling, transforming data, applying different kinds of analytics and machine learning effects to the data, publishing the data model for the production up to visualizing static or real time analytical reports.  Their solutions are enriched with latest trends like Deep Learning, Neural analytics and Cognitive services for Predictive and prescriptive analytics.  All these solutions are not only cost effective but also are available as PaaS and SaaS services on their Azure Cloud making additional advantages.  Will take an opportunity to discuss more on Spark with Kafka and Azure Workbench in my next coming blogs.


How to choose the best channel for your chatbot


The chatbot is becoming a common fixture for companies online. The big question for them is which channel should they install it on?

The oft-repeated mantra you might hear from a real estate agent if you are buying a house. Forget the number of bedrooms, the size of the garden or if the windows are double glazed; it is all about which plot of land the house is situated on. What is true for your home is also true for the best chatbots.

The quality of your knowledge base is crucial. But a close second in importance is the channel you choose for your chatbot. Pick the wrong one and you risk alienating customers who are expecting certain functions from their virtual assistant based on the social media account or website they are using.

Within the last couple of years, chatbots have entered the mainstream and are employed in numerous channels – each with their own advantages.

Facebook Messenger chatbot:

Facebook boasts arguably the most populated social media channel for chatbots with more than 100,000 available to talk to its 1.2 billion users.

After it emerged that its bots were hitting a failure rate of around 70%, a recent update suggests a move towards concentrating on transactions and performing services rather than sparkling conversation.

Facebook bots will be a part of group chats to perform functions such as providing statistics around a sports match or creating a music playlist. Given it will be part of a group chat, the expectation around its conversational features will be low as it is simply performing an almost secretarial service.

In addition, functions such as Smart Replies will allow you to perform actions like viewing business hours or booking a restaurant table without leaving the chat window. These features all point toward Facebook bots designed to serve rather than interact with the customer.


Twitter appears to be trying a different approach with their bots, aiming to provide a medium for companies to interact with their customers to offer an experience which is fun, rather than transactional.

For example, the company’s Direct Message Card aims to draw consumers into testing out their chatbots by playing games or taking part in trivia. One example is the Bot-Tender which asks you a series of questions to help select your favorite cocktail, giving you the option to post the results later.


On the same path as Facebook, Skype’s bots are generally utilized in group chats for functional purposes. One example can be found with the Skyscanner bot which can be called into a conversation if one member wants to book some flights.

One new addition will be the introduction of voice chat to provide users with an alternative to typing by accessing the Skype calling API. With this in mind, it is possible that their chatbots could become more interactive rather than strictly functional.


While other channels are targeting themselves at the general public, chatbots on Slack are used internally by businesses to increase productivity, improve communications or manage tasks.

These bots can be divided into two categories: push and pull chatbots. Push bots aim to send you notifications or provide you with the information you need – be it reminders or important news of the day. These will generally be intelligent bots which rely on a foundation of natural language processing (NLP), artificial intelligence (AI) and machine learning.

Pull bots are far simpler and perform specific transactions which you initiate yourself. An example of this is the Uber bot for ordering transport.


Of course, one potential concern with the other channels is that you are not in control of your platform.

Within your website, you are able to dictate exactly how your chatbot functions, including its purpose, the user interface, and experience.

Implementing your chatbot on your own website, of course, means that the customer can engage in conversation without leaving the page. This is valuable for those looking to boost conversion rates and provide an easy way for customers to ask questions.

The chatbot window of opportunity is wide open for companies that want to transform their business. To get through this window, the onus is on businesses to recognize what channel will best serve their needs.

Inbenta utilizes its patented natural language processing and +11 years of research & development to create interactive chatbots with an industry leading +90% self-service rate.

Companies around the world including Ticketmaster UK utilize the InbentaBot to maintain a personal service for their customers while reducing support tickets.


How AI Makes Our Life Easy Through Chatbots


Why chatbots at virtual service desk?

In today’s fast-paced life, no one has the patience to hold on to a customer service call for several minutes. No one likes hearing, “Your call is important; please stay on the line” or “all our executives are busy at the moment; please wait”.

Convenience is a key component of customer experience (CX) and even a single case of negative customer service experience drives away a potential and valuable customer from a company. To overcome this, one of the fastest growing companies in the world is coming up with chatbots to serve at their service desk.

According to Mark Zuckerberg, CEO of Facebook, “Messaging business has to be like messaging a friend.” It is also said that the best CX chatbot is one in which that the customer cannot identify as a human or a computer. This can be achieved by passing the Turing Test.

What is AI’s role in a chatbot?

The AI aspect in a chatbot is based on machine learning. It is known as Natural Language Processing; it has the proficiency to understand a conversation and mimic human speech. An artificial intelligence (AI) agent in a chatbot achieves the goal through the ‘sense-think-act’ cycle. In this cycle, the information we type/speak is sent to the agent and the information is then converted to machine language. It further continues to mine relevant data from stored information of the knowledge base and updates the newly gained knowledge to make a decision.

The final step is decision-making and during this process, the more intelligent chatbot prepares a few steps ahead for an expected series of questions and then modifies its decision per need. Later, the decision is turned into an action in form of text or voice chat.

How to measure the intelligence of a chatbot?

The intelligence of a chatbot is evaluated on the basis of NLP and its understanding of information even when you construct it in an incorrect way. The other important intelligent factor of a chatbot is the memory; it should be able to remember who you are and respond accordingly. Just remembering is not enough; it should learn the pattern of your choices, issues, likes, and routine. For example, in online retail portals, chatbots must remember and recall your preferences of color, size, brand, etc.

However, AI and conversational skills should go hand in hand for a successful chatbot. The conversation has to be more interpersonal. Language crafting and conversation scripting skills are considered the heart of a chatbot’s UX design.

What are the current challenges with chatbots?

Chatbots can help in solving various customer problems, but sometimes, the problem itself arises from a chatbot. One of the major problems in a chatbot is that it cannot think contextually.


Chatbot being unable to understand the context when asked for the menu

AI has made life so easy that it also has its disadvantages; it memorizes all your personal and bank details when you place an order online with the help of a chatbot.

Imagine telling Google assistant, “Ok Google, order me a backpack” and it proceeds to order with your existing bank information. But this can be done even by a friend or a stranger who has your mobile phone. An authentication (like voice/fingerprint/signature) process has to be factored in before proceeding with any of the bank transactions to avoid cases of fraudulence. These problems will be addressed very soon with further development of AI.

What is the future of chatbots?

Eventually, the goal of a futuristic chatbot is to be able to interact with users as a human does. As the saying goes, “the best interface is no interface.” Voice chat is trending with the introduction of smart speakers like Amazon Echo, Google Home, Apple Homepod, etc.

The shift is happening from NLP to NLU, and so the focus is on allowing machines to have a better understanding of the user messages. The advantages of using a CI is to increase the user attention by providing the information progressively based on the user’s previous inputs as an option.


How Chatbots Can Pair with Email to Achieve Your Marketing Goals

In today’s fast-growing technology world, you must be up to date with latest emerging technologies. You must be ready to survive in the market with your uniqueness. It’s very important how you can attract the customer? The answer is “BOT”. To attract the customer using BOT technology is a very great way.

Let’s see, What Exactly BOTs are?

Basically, BOT is an Artificial Intelligence. It is a computer program which is able to talk or chat with customers. BOTs operate as a virtual assistant for customers or other programs and its behavior is like human beings. They also are known as Chatbots, Spiders, and Crawlers. They are having the ability to understand questions, order etc. and for that, they give appropriate response and answers. They access Web sites and gather their content for search engine indexes.

Advances in artificial intelligence are changing the ways businesses are able to communicate with their audiences and it is proving to be very effective. As a result, chatbots are becoming one of the best ways to engage customers.


Recently, we have seen a lot of articles that discuss chatbot marketing vs. email marketing. Since chatbots are receiving high engagement rates while the open and click-through rates of email are declining, it is not a surprising conclusion that chatbots are more effective than email marketing.

Many companies are lucky to get a 5-10% open rate through email marketing, while Messenger chatbot marketing through Facebook Messenger boasts an average 70-80% open rate in the first hour. Not a lot to argue with there in terms of chatbot marketing vs. email marketing, but you also need to consider that email marketing still delivers great conversions.

Why Email Marketing and Chatbots Complement Each Other

You would never use just one marketing channel, so there is no reason to abandon your email marketing tactics just because Messenger chatbot marketing is performing better. By creating a strategy that joins email marketing and chatbots, you can get the results you crave.

These two channels can very often have different functions. An email drip campaign can be great for telling the story of your brand, while a chatbot can be used best for answering customer service questions in a timely fashion. It is important to understand which platform – chatbot marketing vs. email marketing – is best for certain use-cases and act accordingly.

It is also possible to promote one channel on the other and get even higher engagement on both. For example, use your email marketing to inform your customers of your customer service chatbot.

You can also use your Messenger chatbot marketing to gather email addresses. Then, offer subscribers content through your bot and ask if they would like to receive similar media via your newsletter. This kind of cross-promotion is a great strategy for integrating email marketing and chatbots and in turn gain more users on both channels.

Furthermore, statistics show that 33% of 18 – 24-year-olds prefer to buy products directly from Facebook. Since you are able to allow customers to purchase your products directly from your bot, the use of Facebook Messenger chatbot marketing may be the ideal situation. If you’re also running Facebook ads, you will see even more reach and success. Support this with an email marketing strategy, and the sky’s the limit!