Monday 23 September 2019

DA Dialogues - "AI will replace humans, but...", says Sagar Ghonge, co-founder, Konverge.ai



Welcome to DA Dialogues. Konverge.ai is an AI services start-up firm that is helping organizations across the globe converge on better, faster and efficient solutions using ML and AI. Three young entrepreneurs - Prateek Chandrayan, Ketan Paithankar and Sagar Ghonge founded this firm in 2018 and it is already making waves in the AI industry. Today, we are in conversation with one of the founders, Sagar,  who is also the COO of the organization.

* Welcome to DA Dialogues, Sagar. Thanks for giving us the time today.

Thanks for inviting me. I am glad to be a part of DA Dialogues.

* You have done a variety of roles in the industry over the years. What made you start Konverge.AI?

The technological landscape has seen a drastic change in a short time span of the last 5-8 years. The advent of deep learning architectures boosted using GPUs has opened new avenues of efficiency improvement and value creation for organizations across different industry domains.

We saw this as a great opportunity to help companies take a leap and infuse artificial intelligence (AI) and machine learning (ML) into their technology road-map. Konverge.AI was conceived with the idea of enabling organizations to unlock the next levels of innovation and growth from their data using AI.

* Tell us more about your products/services.

Konverge.AI is focused on providing end-to-end AI/ML related services. We help our clients tackle high impact problems with innovative and state-of-art AI-based solutions. We work on three main verticals - natural language processing (NLP), computer vision and advanced analytics.

We are industry agnostic and are working with a wide range of customers in the fields of media & entertainment, healthcare, construction, oil & gas, etc.

* What do you think is the future of AI? Do you think it will replace humans going forward?

Ultimately, yes! AI will replace humans in most of the existing tasks in the future. However, with current state-of-art results, I believe that we are still a long way from the so-called artificial general intelligence (AGI). At least for the next few decades, we are going to see solutions penetrating very specialized tasks using applied AI or artificial narrow intelligence (ANI). This would lead to tremendous improvement in overall human efficiency and productivity. 

But, in the long run, as Elon Musk says, “The last job that will remain will be writing the AI software.” As for the artificial super-intelligence (ASI) - an AI overlord overpowering humans, I have my doubts.

* What do you think about the moral aspects of using AI in life and death scenarios? Can such scenarios be tackled based on numbers?

It all depends on what error rate the AI system is able to achieve. If the AI can achieve an error rate better than human level (or in the case of diagnosis, a team of human doctors) and close to the Bayes/irreducible error, I believe, it would be wise to involve AI in such decision making. 

Take the example of self-driving cars. By avoiding diversity and unpredictability in human behavior and skills, we will surely be able to reduce the number of accidents and save lives. However, in scenarios such as saving a human over an animal or saving one human over another, it's still tricky. One thing we can do is take human perspective on such moral decisions and try to program the same in a machine. MIT has been doing a similar study (Moral Machine). The results have been insightful showing certain general preferences as well as some variation in regional preferences. 

On the other hand, a greater challenge in such cases would be the legal implications and how are we going to tackle that. By the way, legal is another industry, I believe, is going to remain AI-proof (at least parts of it) for a long time.

* Delivery models are now focusing more on speed. How does Enterprise architecture fit in such an environment? Do you think it adds value?

We have worked with start-ups & enterprise customers as well. Both types of customers look for speedy iterative product build models. The idea always is to build the first MVP as fast as we can & deploy it in the market. Enterprise customers have their own enterprise architecture. There are two angles to it. EA implementation always helps enterprise customers to have set processes in place. This helps in smooth deliveries. The business use case data can be gathered across hierarchies very easily due to EA. 

On the other hand, EA can slow down the process also. For e.g. if an enterprise customer, due to EA, demands compliance of certain rules, it can add time and cost repercussions. For start-up customers, generally having smaller teams, compliance issues on the use of tools is mostly not a factor. So, it varies from customer to customer & also depends upon how deeply rooted is EA in customer’s organizational entity.  

* Which technology trend, other than AI, do you see as most promising for the future? How are you planning to use it?

With everything going digital today coupled with increasing volume and value of data, cyber-security is one field to look after. There are some interesting use cases where AI can be very effectively used to identify certain types of cyber-attacks. One of my co-founding partners being a networking expert, we have a keen interest in developing solutions in this field. 

IoT (and IoRT) is another promising tech trend which has huge application potential in industries. One interesting aspect of this is the interdisciplinary nature where surprising insights can be extracted using AI/ML systems - another area of interest for Konverge.AI.

* Is economic slowdown affecting your business? How are you dealing with it?

We haven’t seen a significant impact on business due to the economic slowdown yet. One reason for that is high positive impact potential of AI solutions in an organization.

* How easy/difficult is it to convince potential customers about the use of AI in their organization?

Depends on the industry. But, convincing potential customers about the use of AI is comparatively easy. Customers are usually aware of the general trends and applications of AI. 
An interesting part is that by understanding the customer’s business and analyzing their data in more detail, we find a lot more applications of AI in their organization other than the problem statement the customer has identified. 

One of the challenging things is setting the right expectations about the results and its impacts once an AI system is deployed. We are in the stage of applied AI (or ANI) and the current AI solutions are targeted to address a specific problem. Transfer learning helps but requires a lot of fine-tuning on case to case basis. Take an example of information extraction using NLP. The general pipeline for the extraction could be similar but a lot of fine-tuning is required depending on what needs to be extracted and what the output will be used for.

* What is your idea of a good leader?

Three main characteristics - 
- Helping the team reach its potential and go beyond
- Adaptability
- Unrelenting commitment towards achieving the goal

* What has been your toughest decision as a leader?

Konverge.AI is focused on developing AI/ML or data analytics related solutions for our clients. But being in the software services sector, we do get some opportunities for working on non-AI/ML projects. It’s tough to say no to such projects but in the long run, I believe that this will lead to sustainable growth and better positioning of the company.

* How do you keep employee morale and motivation level high? 

Project milestone parties, annual celebrations, etc. are a few things that we do at Konverge.AI. However, one thing that helps is to keep working on interesting projects. If the work really excites the team, that also acts as a motivating factor.

* Which book are you currently reading?

1. The Hitchhiker's Guide to the Galaxy, 
2. Deep medicine

Monday 2 September 2019

Design Thinking - Ayes and Nays

What is Design Thinking?

A buzzword for the last few years, that has grown in stature and importance steadily is "Design Thinking". Industry and academia alike wax eloquent about how amazing it is and how we should have been doing this forever rather than in the last few years. So, what exactly is "Design Thinking"?

Design Thinking is an iterative process in which we seek to understand the user, challenge assumptions, and redefine problems in an attempt to identify alternative strategies and solutions that might not be instantly apparent with our initial level of understanding. Design thinking is a solutions based approach rather than problem based thinking to solve a problem. It aims to come up with something constructive to effectively tackle a certain problem, whereas problem based thinking tends to fixate on obstacles and limitations.

There are four key principles of design thinking (Ref - CareerFoundry) -


  1. The human rule: No matter what the context, all design activity is social in nature, and any social innovation will bring us back to the “human-centric point of view”.
  2. The ambiguity rule: Ambiguity is inevitable, and it cannot be removed or oversimplified. Experimenting at the limits of your knowledge and ability is crucial in being able to see things differently.
  3. The redesign rule: All design is redesign. While technology and social circumstances may change and evolve, basic human needs remain unchanged. We essentially only redesign the means of fulfilling these needs or reaching desired outcomes.
  4. The tangibility rule: Making ideas tangible in the form of prototypes enables designers to communicate them more effectively.
There are multiple variants of the Design thinking process and they have different phases. However, they all essentially say the same thing. The key phases of the process are -


  1. Empathise – with your users
  2. Define – your users’ needs, their problem, and your insights
  3. Ideate – by challenging assumptions and creating ideas for innovative solutions
  4. Prototype – to start creating solutions
  5. Test – solutions
The way to traverse these phases is iterative, but is it linear? Not really, you don't necessarily have to go through the phases in sequence all the time, but the first iteration definitely needs to be linear in order to ensure that the key aspects of the processes are covered. After that, the phases can be traversed as needed. (Ref - InteractionDesign.org)


How does it stack up against Lean and Agile?

After reading a bit about Design thinking, especially the iterative aspect of it, it is tempting to think of it as a alternative to Lean or Agile way of working. However, we should understand that all these methodologies are essentially for a faster and more efficient way of coming up with a solution and implementing it. As Jonny Schneider, Product Strategy and Design Principal at ThoughtWorks, explains: “Design Thinking is how we explore and solve problems; Lean is our framework for testing our beliefs and learning our way to the right outcomes; Agile is how we adapt to changing conditions with software.” All three methodologies highlight and work towards different aspects of this process and hence they are different but at the same time there are overlaps across them. No single methodology can be the solution for everything and hence it is essential to take the best out of all and fine tune our core way of working. In that sense, these three can and should be made to work together to achieve the best results.

Benefits

There are a variety of benefits of using Design Thinking process. Here are a few - 
  1. Promotes out of the box thinking and fosters innovation
  2. Reduces Time to market
  3. Increases ROI
  4. Improves customer retention and loyalty
  5. Can be applied company-wide

Pitfalls

Design thinking certainly works and it is touted as THE way to solve problems. However, we need to be very careful not to over-promise its utility. There are certain things to keep in mind when thinking about or using Design thinking
  1. It hides the complexity and completeness of solution - It is quite easy to come up with beautiful solutions that ignore the constraints and seem to solve all the customer problems (Since we have kept the customer at the center), however, the proof is in the pudding. When you bring in the burden of constraints and limitations (which you ignored earlier) the complexities of the final product start coming into view. These things cannot be ignored for "later iterations" always and could well be the key problem to tackle at the start of the solutioning rather than at the end of it. It is not enough to be customer focused first and think about all the harder stuff later.
  2. It is good for solving 'wicked problems', not necessarily the normal ones - Design theorist Horst Rittel defined 'wicked problem' as a particularly tricky problem that is highly ambiguous in nature. For such problems, there are many unknowns and variables. They don't have a single right solution. In such cases, Design thinking may help come up with a possible solution. However, even then the possibility of unearthing more problems in unknown areas while solving for one area, needs to be taken into account. At the same time, for the normal problems we may not need this methodology at all.
  3. It sometimes kills innovation rather than fostering it - This is a controversial one. Design thinking is supposed to foster innovation, however, because of the focus on customer solution, the other aspects of the problem are ignored and more often than not, possible chance of innovation actually is in those areas that are getting ignored. Innovation in those areas could be the differentiating factor between our products and those of the competitors and hence, focus on them is very important - that Design thinking tends to ignore
  4. Out of box is not always good - Design thinking is also called out of the box thinking. We have heard this term so many times in various contexts, that it has now got an aura of being the rebellious, innovative way of thinking that HAS to be right. Just because a solution is out of the box or rebellious doesn't make it the right solution. Sometimes it is. Sometimes it isn't. While using Design thinking, we need to keep in mind this possibility instead of going into it blind.

Conclusion

Is Design thinking useful? Yes. Does it work? Yes. Have people come up with good solutions by using this methodology? Yes. Is it the panacea we are looking for? No. It can't be. No single methodology can be. We have to use the best of multiple processes together as per the organizations need and maturity in order to provide efficient, quality solutions to our end customers, instead of putting all our energy into one.

Tuesday 20 August 2019

AI vs ML vs DL vs....

We hear so many terms associated with data science nowadays that it's becoming confusing. Also, there are many companies who claim that they have an AI based solution or product to solve your problems. Are they telling the truth? How do you understand what they are talking about? What exactly is the difference between all these terms? Here's an attempt to explain that.

First, let's look at some of the most commonly used terms (reference - Sonix.ai)-


  • Artificial Intelligence (AI) -the broad discipline of creating intelligent machines
  • Machine Learning (ML) -refers to systems that can learn from experience
  • Deep Learning (DL) -refers to systems that learn from experience on large data sets
  • Artificial Neural Networks (ANN) -refers to models of human neural networks that are designed to help computers learn
  • Natural Language Processing (NLP) -refers to systems that can understand language
  • Automated Speech Recognition (ASR) -refers to the use of computer hardware and software-based techniques to identify and process human voice
A good way to understand how they are all interconnected is by looking at this picture below -

The intertwined buzzwords
What is AI?

AI is a broader concept of machines being able to behave like humans would. Human are able to intelligently analyze a lot of variables around them and act accordingly. But, human mind is not just about analysis. It is also about learning based on that analysis and getting better at it. It is about using wisdom to make judgments and act accordingly. AI is about that science. It is that concept.

AI has been around for a while. When we first built computers, we were able to replicate some aspects of human brain based on the understanding at that time. However, as we learnt more and more about our brains, the concept of AI has changed. We have moved on from just replicating increasingly complex calculations to mimicking a human decision making process and intelligent actions based on that. So now, AI is not about just identifying the best driving route based on traffic conditions - it is about building a system that will drive the car like a human would and take decisions along the way, especially in an emergency situation.

What is ML?

ML is a subset of AI. It refers to a system that is able to learn by itself without any human intervention. As you can already see, every AI based solution may need this. However, it is not mandatory (though highly desirable). The more a system learns, the better it is at providing an output.

It is used at many places. When Netflix suggests some movies for you to watch, it is doing so based on what it has learnt from the user experiences and ratings of all of Netflix's users and your personal movie watching history. It can do so based on an insane amount of data available to it and using specific ML algorithms to come up with suggestions. These algorithms are first created by humans and fine-tuned. But once they put into production, they can be auto-fine-tuned based on the newer data that keeps getting generated every minute.

What is DL?

DL is a subset of ML. It refers to ML applied to a very large data set (usually labeled data set). The concepts used in DL are same as ML and everything associated with ML applies to DL as well - the difference being the amount of data being processed. Because of this, DL requires huge amount of processing power.

What is ASR?

ASR refers to the ability of a system to understand the speech and convert it into text. It is a tough ask since every person speaks in a different way, has a different accent, pitch, bass, timbre associated with his/her voice. Because of this very specific nature of ASR, it is more a technological solution than ML or intelligent solution. Having said that, ASR can and usually also uses ML to improve the accuracy of speech to text translation.


What is NLP?

NLP refers to processing of the text (quite often the output of an ASR system) and deriving meaning out of it. Humans tend to use a lot of slang while speaking and hence deriving meaning out of the text that is very contextual is not an easy task for the machine. This is one of the fastest growing (and complex) data science field and all big guns are trying to build the smartest NLP solutions that can then be used for various scenarios.


What is ANN?

ANN is one of the ways ML can be implemented. It refers to a computer system that is designed to work by classifying information like humans brain does. Various machines (often virtual) act as neural network nodes. They are placed in a certain way to start classifying the data and taking decisions based on it. There is also a feedback loop provided so that the outputs of each node can be fine-tuned to improve accuracy automatically. Essentially, the nodes and pathways between the nodes mimic the neural network in human brain - and that's why the name.

Conclusion

The next time you hear someone talking about these terms in relation to their solution/product, think of what exactly the product is and try to understand more about which of these things are being used there. Since AI is the overarching concept, they may not be technically wrong when they use the term in relation with their product. However, it becomes important to know if they are trying to mislead you into thinking that they are providing a truly AI based product or if they are providing a subset of it.

Saturday 3 August 2019

To NoOps from DevOps - Dream vs Reality

We have come a long way in SDLC methodologies - from waterfall to iterative to agile to DevOps. In this evolutionary process, the main focus was on faster deployment of solutions and quicker feedback mechanisms, thus ensuring a quality product faster. The main aim of DevOps especially is to increase the rapidity and efficiency of software deployment process through collaboration between development and operations teams. But what if the deployment, monitoring and management of deployment software is completely automated? Will we need ops team anymore?

(Courtesy - C3DNA)
Mike Gaultieri of Forrester Research coined the term NoOps, where he surmised that developers will never need to talk to the operations team. This definition was further expanded by Netflix's Adriam Cockcroft. He explained that at Netflix there was no ops organization involved in running their cloud, no need for developers to interact with ops team to get things done, and less time spent in actually doing ops tasks than developers would spend explaining what needed to be done to someone else. Basically his definition of NoOps was - Automation of deployment, monitoring and management of applications. (Ref - Is NoOps the end of DevOps? Think again)

What is the difference between DevOps and NoOps? It's pretty straightforward. While DevOps talks of better collaboration between Development and Operations team by putting them together in order to speed up the creation and deployment of quality product, NoOps is about the same but without the need of having an operations team at all! It's role is taken over by automated software deployment products. So, while DevOps is more of a collaboration philosophy with or without specific software, NoOps is more about automated deployment software than collaboration.

Several PaaS (PaaS) solutions to automate deployment process are available on the market and give to developers with no skills about operations the chance to launch applications autonomously, without the need of request system admins help. Indeed, the operations team would simply prepare the infrastructure, with the aim of providing to developers an environment ready to deploy applications quickly and easily. PaaS solutions described above provide a set of services to orchestrate and manage the execution, scaling the infrastructure according to each application need. In addition, PaaS solutions include a significant number of features, including the administration of resources, servers and operative systems maintenance.According to NoOps model, thanks to these platforms developers can work autonomously and, especially, they can do without the support of system administrators. (Ref - DevOps vs NoOps)

However, everything is not as rosy at it sounds. While it is quite tempting to think that deployment and related operations support can be completely automated, it is not necessarily the case always. There are some practical issues that need to be considered -

  1. Many organizations still have a lot of legacy software and that cannot be easily transformed to work with the NoOps model.
  2. Smarter edge devices mean more data being produced and even though this data can be interpreted by machines, decisions would still need to be made in many cases by humans - including oversight. The role of ops team may change in such cases, but the team still remains.
  3. Regulatory compliance and security related issues cannot be left completely to the systems. There will have to be Ops team oversight on this.
  4. No system is foolproof and manual interventions will be needed at some point - especially when a disaster strikes and disaster recovery is needed.
While NoOps might a good way to go in certain cases, in vast majority of cases it might not be a viable option. However, It certainly can be considered as the next step in evolution of SDLC after DevOps. Even if we can't reach the completely NoOps model, improving DevOps and moving more towards automation of repetitive processes in testing or deployment will take us one step closer. So, while NoOps replacing DevOps might be a dream, a more automated DevOps is certainly becoming a reality.


Monday 15 July 2019

Society 5.0

Tech industry is notorious for bringing up newer technical terms and the "next big disruptor" all the time. You stop reading for a few weeks and you'd have missed the introduction of a new trend. That's how fast things evolve. Blockchain, AI, Microservices etc. are some such examples. Allof them have at least one good practical use, but many a times, they are treated as Panacea of all problems in that domain - that is not the case.
Evolution of society (Image courtesy - www8.cao.go.jp)

One term that is NOT just another fad, is Industry 4.0. Industry 4.0 is not about a technology or a tool. It's about automation of shop floor (especially in manufacturing industry) with multiple relevant technologies in  such a way that the speed and productivity of the plant is improved by a big margin. It includes hardware/robotic automation plus software automation and intelligence brought in with various technologies including ML, augmented reality devices, etc.

A new concept that is emerging is Society 5.0. While industry 4.0 is about automation and monitoring of a manufacturing plant, Society 5.0 is about automation and proactive monitoring of the whole society in general. There's no specific set of checkboxes to be checked for building such a society. But there are many areas which contribute towards society 5.0. Some examples are -


  1. Digital Multipurpose ID - This is a single ID that every person will have (embedded in the body/permanent bracelet, Fingerprint, etc.) that will be linked to the individuals user identity manager, bank accounts, travel accounts, etc. There will be no need to maintain any other id or credit card or travel card or medical card or any other form of identity. Every organization will get details from a central database (or blockchain can be used for this) and accordingly process the transaction. No need to pay at a supermarket - money gets deducted directly from the bank account. Similarly all other transactions are handled automatically with this ID. There are of course problems of identity theft - that needs to be managed with this single ID.
  2. Access/Authorization control - This is an extension of the multipurpose ID. All access/authorization across the city/country/airports etc. is managed through this ID. All violations are also automatically tracked and hence always available for checking when needed.
  3. Health Monitoring - This is probably the most important aspect of society 5.0. Health monitoring devices are connected to the body (through small devices connected to the wrist or chest, or embedded in the clothing). They continuously monitor the health of the individual and also any events like an accident, fall etc. and relay the information directly to the nearest hospital and emergency services automatically. This way, crucial time in the golden hour is saved resulting in better situation management.
  4. Emergency situation management - Just like health monitoring, other emergency situation management can also be made more intelligent. Based on sensors across various areas or based on multiple health devices' signals from a particular area, emergency services personnel can be sent over for management of the event, bringing rescue quickly to the affected people.
  5. Automated infrastructure management - There are many ways in which this can happen. Eg. based on the number of vehicles traveling on a road, rerouting can be automatically triggered to avoid traffic jams. Traffic signal timings can also be adjusted automatically based on traffic. Train traffic can be up-scaled or down-scaled based on the number of people traveling. There are many such possibilities.
There could be many more examples, and not all of these things are in distant future. We have already moving towards society 5.0 in bits and pieces. Example, health monitoring of ageing population is already being done automatically in Singapore and Japan. Other countries are also trying implement it. Single ID is becoming a reality slowly in many countries. It's only when many of these things come together that we can truly say that we are in society 5.0. There will be a newer set of problems with this over-dependence on technology (e.g. malicious use of health data by insurance companies), but is more likely that the positives far outweigh negatives with effective management. That will be a crucial aspect to be considered on our way towards reaching society 5.0.