Titulo Estágio
Adding a Machine Learning Module to a Virtual Assistant that Analyses Big Data
Áreas de especialidade
Engenharia de Software
Sistemas Inteligentes
Local do Estágio
Coimbra
Enquadramento
Today’s way to interact between a human and a computer system is changing. Computer systems are becoming more intelligent in the way they communicate with humans, with the latest developments in Natural Language Processing helping a lot the improvement of speech recognition and bot interaction. The days of having computer personal assistants has come, with Siri, Cortana and others. But the problem is that there are still areas more complex to be addressed, namely having a Chatbot to be more proactive than what he was programmed for. Chatbots need the capacity to be able to learn the user behaviour (and/or a group of users) and to use it to be more intelligent. Critical Software is developing the next generation of Natural Language Interfaces (NLI), which is the next step in the evolution of chatbots.
Most companies have information about the user behaviour and services/products that s/he consumes. This can be used to create proactive alerts and insights, that are useful to the user. Imagine a virtual assistant from the electricity company sending you a warning saying that your consumption behaviour is out of the normal during the nights. Maybe you forgot some equipment working at night …
With the amount and velocity of information that is gathered by companies nowadays, learning from this data (or Big Data) makes it a Big challenge for a chatbot be able to learn effectively in real time, so that it is able to monitor and learn the behaviour of all the company’s customers. This makes the challenge of this internship proposal a combination of three main areas: how to effectively integrate a Machine Learning module that is able to learn from a Big Data infrastructure and turn this knowledge into relevant alerts and insights for the customer, using NLI technology?
Objetivo
The main goal of this internship is to integrate a Machine Learning module over a Big Data infrastructure in a NLI platform. So that, the NLI is able to learn the user behaviour and use it to send alerts and insights to the user, helping her/him be more efficient. The NLI has to deal with the English language and has to deal with business information like a personal assistant would do, communicating with the user only when it is pertinent. This goal can be subdivided in:
- Defining the Scope and NLI Learning Main Characteristics and the Big Data Infrastructure Requirements
- Create a State of the Art in Learning in NLI and also Big Data development stacks
- Creating the Technical Specification
- Development of the Solution
- Testing and Benchmarking the Solution
The idea is to use an internal NLI platform to do the development, allowing the student to focus on the Machine Learning and Big Data infrastructure parts.
Plano de Trabalhos - Semestre 1
The internship has the following stages:
- Defining the Scope and NLI Main Learning Characteristics, and Big Data Infrastructure Requirements [result: requirement list, September and October]
- Reading and Writing the State of the Art [result: state of the art, September to December]
- Study the NLI development platform used internally [result: platform description and comparison, September to December]
- Creating the Technical Specification [result: technical specification, January and February]
- Writing the internship proposal [result: internship proposal, January and February]
Plano de Trabalhos - Semestre 2
The second semester comprises the following stages:
- Setting up the Big Data and NLI Development Environment [result: Development Environment, February]
- Development of the Machine Learning Module for the User Learning and Integration with the Big Data Infrastructure [result: first prototype, March to May]
- Testing and Benchmarking [result: second prototype, June]
- Writing the internship report [result: internship report, June and July]
Condições
É fornecido portátil e local de trabalho.
Orientador
Paulo Gomes
paulo.gomes@criticalsoftware.com 📩