Musings on ML and AI
Artificial Intelligence (AI), Cyberspace or Neural Networks were already in public interest more than 20 years ago. During my university studies that time however I lost interest pretty fast, as the real application was not mature. Today it is different. Artificial Intelligence and its subdomain Machine Learning (ML) get better every day.
Why? Because computing power has become very powerful (image the supercomputing opportunities of Google or SAP HANA), we have much more data available via smartphones, sensors or internet based collaboration, and new developments have happened in Machine Learning like Deep Learning. For example patterns can be detected via initial training and after training we get a model to predict the patterns. This would have been very hard to develop by developers.
Already today we work with chatbots like Siri or Alexa which detect speech or text via Natural Language Processing. Especially when we have a lot of data and the patterns are unclear, then machine learning can help us and create models via clustering or assignining data.
For the “Future of work” the implication is that tasks can be further automated – and completely new business opportunities arise. There is a lot of discussion around the “end of work”. And also we need to discuss the ethical perspective – not everything what is technical feasible should be done.
It is clear that next to new business machine learning will lead to the automation of knowledge work, especially if it is repetitive. So for example due to research from McKinsey 49% jobs will be impacted from that automation – but just 5% jobs will completely vanish. However there are many other studies and predictions.
As we have no magic ball to look in the future we need to proactively manage that transformation and experiment what makes sense.
There are many Use Cases in Enterprise Software for Machine Learning. SAP recently announced its SAP Leonardo offering which supports customers in their digital transformation. SAP Leonardo Machine Learning is an integral part of that offering with intelligent Apps using Machine Learning, Digital Assistants & Chatbots as well as technology to create and train your own ML Apps.
As I work in Learning & Education since many years I am fascinated around the use cases in my area. Please find here a list of use cases, incl. first examples.
7 Use Cases for Machine Learning in Education & Learning
- Personal Learning Coach: Bot coaches Learner supporting adaptive learning, e.g. analyzing skills, recommending content, helping with setting goals, evaluation of skills. Currently many education scenarios are one size fits all approaches. If there is a trainer, its his or her duty to help learners who have a different speed of learning or different pre-knowledge. In self-paced learning its up to the learner to adapt. So a Bot can help to personalize the learning progress and make it more effective.
- Moderator: Bot moderating a learning community by answering questions, onboarding learners, suggesting content, alerting moderators of certain issues. This reliefs Community Moderators from standard tasks, so they have more time to engage the community, create new content etc. It also gives better guidance and faster response to learners – who often do not fully know how to use learning communities. With my colleague Lars Satow, the SAP Jam product team, our Innovation Center Network and many others we currently prototype such a Bot in the Learning Community of SAP Learning Hub, SAPs digital learning offering. We have more than 150.000 active learners in this communities called “Learning Rooms”. Lars also described the framework in his Blog “Chatbots as Teaching Assistants: Introducing a Model for Learning Facilitation by AI Bots”. Technically SAP Jam is the frontend of the Chat-Bot, the logic of the Bot comes from a App running on the SAP Cloud Plattform, which is integrated via APIs like openSocial.
- Curator: App or Bot suggesting and recommending learning content like videos, Open Educational Resources, TED Talks…. The App uses the users data like job, history and feedback to further personalize. We see similar recommendation in the Google newsfeed or on Amazon – also in Learning they can help either everyone, or people in learning in development to use the recommendations for their internal learning programs. We see that many employees go google if they have a question or problem in their work-context – and not to internal Learning Portals. However without guidance the web-search gets frustrating. In SAP Learning Hub we have a semi-automated recommendation currently as an own widget. As there are plans from SuccessFactors Learning to develop a ML based Recommendation App, we are happy to use this as soon as it is ready.
- Certifyer: Bot delivering skills or performance assessment more personalized. Perhaps even text to speech. Perhaps Bots can also help to assess experiences or more performance based behaviors via the many data-points everyone leaves. We see similar use cases already in the area of Recruiting, where candidates are preselected online. We all know that multiply choice certifications are not the best to validate competencies, however they are the easiest and most scalable way to certify. More automated grading may also be a good approach to use Machine Learning – at least in large data sets of students. Perhaps the blockchain technology might be even more important to transform certification. SAP e.g. just announced TrueRec by SAP: Trusted Digital Credentials Powered by Blockchain for SAPs openSAP MOOC.
- Creator: Bot creating automatic learning content – e.g. via search/ mining / capturing and aggregation after inital spec from an author. Of course this is an IP issue, but if we leverage company internal content management systems or internal sources this might be easier. We have already Apps that generate business content like earning reports with “Natural language generation” – a software process that automatically turns data into human-friendly text. So why not use that also – at least partially for business content which does not need to be very creative or engaging. However, unlike a human, bots can’t produce prose on their own. The whole format has to be templated and needs access to structured data sets.
- Enduser Trainer: Bot giving in-context guidance in Software. Performance Support is very helpful, especially when you need knowledge for a certain task and it can be simply attached electronically – like the Web Assistant in SAP S/4HANA powered by SAP Enable Now. Using a chat-bot like SAPs CoPilot as User Interface might even totally change the need to training for endusers though – as users need to understand processes and rules, but transactions can be triggered via the chat-bot.
- Translator: Bot translating learning content. The more content you have and the broader reach, translation becomes a real adoption issue. If you learn in your local language it is always easier. If you purchase training, you can even expect it. For SAP Education with millions of SAP Professionals worldwide this is an important issue. Not just to save cost, but also to get out learning content fast enough. In the cloud-software world with updates at least on a quarterly basis such speed is critical. Waiting for translation is an issue. There are first projects already with an real-time translation of the openSAP MOOCs – SAPs Enterprise MOOC. Components were already tested at university lectures to support international students, and of course there are other areas where this can be used. Currently we test this in the SAP Learning Hub Handbooks, where we have a many handbooks which are only available in english language.
Learnings so far
It is always important to focus the solution of a pain-point and not use the technology for its own sake. Although somethimes its just fun to experiment and learn.
What we learned so far is that it is better to approach things simple and focused with an MVP (Minimum Viable Product) approach to learn fast with our users, so we needed just 6 months from project start to go-live.
What we did was to leverage SAP Leonardo Technology for intent matching. This is helpful for answering questions automatically, as not exact questions and answer pairs are needed.
If it helps learners, trainers or moderators and improves their experience or learning process – then it is great. Another Learning is that training of a model, like for answering questions, is essentiell. It is not magic. Just a lot of data preparation (describing intents) and then training via corrections & feedback. Lars Satow also created a blog describing in more detail how we created and trained the bot here.
If you are new to machine learning I can recommend the openSAP course on “Enterprise Machine Learning in a Nutshell” as a quick intro. Of course there are many further open educational ressources on the web like on coursera on different aspects.
At the 5th of October we did a webinar on the topic – happy if you join the recording – it also includes a small demo.
The more we learn from machine learning the more use-cases we will get. Happy to share our experiences from the moderator-bot we work on in some months also here. If you have any further inputs or if you see further use cases it would be great if you share this via the comments below.