propostas com aluno

DEI - FCTUC
Gerado a 2024-03-29 14:55:27 (Europe/Lisbon).
Voltar

Titulo Estágio

Machine Learning for pattern detection in Conversational Interfaces

Áreas de especialidade

Engenharia de Software

Sistemas Inteligentes

Local do Estágio

Coimbra (Taveiro)

Enquadramento

A WIT desenvolve software para Operadores de Telecomunicações, tais como o Grupo Vodafone, Deutsche Telekom (Alemanha), Reliance Jio (Índia), Singtel (Singapura), Telstra (Australia), Unitel (África do Sul), Eir (Irlanda), Telecom Italia (Itália), Orange (França), Telefónica (Espanha), TeliaSonera (Suécia), Belgacom (Bélgica), Post Luxembourg (Luxemburgo), Bell (Canadá) e Everything Everywhere (UK). O software desenvolvido pela WIT está presente em 42 países. Tem escritórios em Portugal e UK. Os centros de desenvolvimentos estão localizados em Coimbra, Porto e Leiria.
Nos últimos anos, temos assistido a uma nova tendência no aumento da comunicação através de chat. As aplicações como WhatsApp, iMessage ou Facebook Messenger, conquistaram a preferências dos utilizadores. Ultimamente alguns destes serviços de messaging começaram a investir em Bots de comunicação para fornecer serviços informativos.

Para criar uma excelente experiência de utilizador em interfaces de conversação, seria importante se pudéssemos entender quais serviços comuns são solicitados pelo utilizador. Compreendendo os padrões e comportamentos do utilizador, o sistema pode ser mais inteligente e eficiente, prever a questão, oferecer a resposta ou o serviço, nos primeiros momentos de conversa, sem sequer ser solicitado, antecipando a necessidade do utilizador, oferecendo serviços preditivos avançados.

Esse modelo cognitivo poderia ser reutilizado e conectado à Plataforma de Bots da WIT como uma solução preditiva genérica.

Este estágio consiste na prototipagem de um modelo cognitivo capaz de detectar padrões de conversação, através da analise de conversas anteriores, e fornecer esse padrão como serviço à plataforma de Bots.

Objetivo

O objectivo do estágio consiste no desenvolvimento de um protótipo de um modelo cognitivo capaz de compreender padrões de utilização, dentro de um sistema de chat.

Nesse sentido pretende-se investigar soluções para criação deste modelo, utilizando tecnologias de Natural Language Processing.

O objectivo do estágio será a implementação das seguintes componentes:
1. Treino de um modelo, com base em processamento de linguagem natural, a partir de texto livre vindo do utilizador.
2. Incremento do modelo com informação vinda de quick-buttons (carousel items & quick-replies), que não carecem de utilização de NLP.
3. Implementação de uma API para consumo deste modelo.

Espera-se que o aluno tenha a autonomia e capacidade crítica necessárias para recolher, analisar e estruturar toda a informação acerca de soluções existentes no mercado. Esta informação deverá ser depois aplicada no desenvolvimento do protótipo.

Segue-se a análise de requisitos do projeto, a criação de um plano de desenvolvimento e a definição de um project backlog com as funcionalidades desejadas. O desenvolvimento do software deverá ser feito de forma iterativa usando um processo ágil, baseado em SCRUM.

No final do estágio, deverá existir um protótipo funcional, que seja facilmente demonstrável e que mostre bem os conceitos explorados durante o estágio.

Plano de Trabalhos - Semestre 1


Para o 1º semestre estão planeadas as seguintes tarefas:
- Estudo dos sistemas e bibliotecas para processamento de linguagem natural (NLP);
- Estudo de trabalho já realizado nesta área, através de papers;
- Inicio da preparação de um dataset para treino do modelo;
- Levantamento do estado da arte;
- Análise de requisitos;
- Elaboração do plano de desenvolvimento;
- Definição de modelo de dados, que permita pesquisa com base em primitivas extraídas a partir de NLP, nomeadamente Intents;
- Preparação dos protótipos para demonstrações internas;
- Documentação intermédia do estágio.

Plano de Trabalhos - Semestre 2

Para o 2º semestre estão planeadas as seguintes tarefas:
- Implementação e treino do modelo cognitivo;
- Avaliação e testes ao modelo;
- Implementação de uma interface gráfica de gestão dos parâmetros de sensibilidade do modelo;
- Testes com utilizadores reais, internos à WIT.
- Estruturação dos dados durante o processo de importação;
- Integração com um dos bots internos da WIT para testes reais.
- Preparação do protótipo para demonstrações;
- Testes funcionais;
- Avaliação de requisitos não funcionais;
- Documentação final de estágio.

Condições

O local de trabalho será no escritório da WIT Software em Taveiro. O aluno terá ao seu dispor os equipamentos necessários para desempenhar as suas tarefas. O estágio é remunerado. Se o desempenho do aluno ao longo do mês for positivo, terá direito a receber uma bolsa mensal.

Além da bolsa, o aluno terá acesso às formações da WIT Academy (que incluir tópicos como: iOS Programming, Android Programming, Arquitecturas de Software, Software Quality, Metodologias de Desenvolvimento de Software).

O aluno será acompanhado não só pelo orientador como por um tutor técnico que lhe dará todo o apoio necessário.

No final do estágio, o aluno terá conhecimento detalhado sobre tecnologias de Machine Learning e Natural Language Processing bem como de conceitos de escalabilidade no contexto de serviços telco.

No final do estágio, será feita uma avaliação do estagiário e dos conhecimentos adquiridos. Se o resultado for positivo o estagiário será convidado para fazer parte da equipa de desenvolvimento.

Observações

- Toda a documentação de projecto será em Inglês.
- Será usado SCRUM, como metodologia de desenvolvimento.
- Existe um Tutor e um Orientador. O Orientador define os requisitos do estágio, define as prioridades do Backlog e acompanha os resultados parciais do projecto. O Tutor garante o cumprimento das tarefas, promove as meetings e acompanha o aluno com mais regularidade

Orientador

Pedro Andrade
pedro.andrade@wit-software.com 📩