2. Replace
with icon
100x100
4 anos em Dublin
>12 anos de experiência em web dev
~6 anos Liferay
Filipe Afonso
Lead Consultant, Liferay International
@FilipeAfonso | in/filipeafonso
5. Replace
with icon
100x100
Machine Learning - Casos de uso Liferay
Categorizar, Etiquetar, Agrupar utilizadores, Alertas em resposta a eventos, ...
K-nearest neighbors, Naive bayes, Logistic regression
Agrupar utilizadores (clustering) em segmentos e aplicar conteúdo personalizado,
criar novos grupos de utilizadores (desconhecidos), ...
K-means, Hidden Markov Model
Reconhecimento de imagens, organizar documentos e imagens automaticamente,
categorização automática, ...
Redes Neuronais
6. Replace
with icon
100x100
Machine Learning - Casos de uso Liferay
Categorizar e criar alertas
Classificação
Perceber os nossos dados
Agrupar/Cluster de dados
Recomendação
Adivinhar o melhor para o utilizador
Classificação por língua
Processamento de Linguagem Natural
12. Replace
with icon
100x100
Recomendador - Do que precisamos?
Uma função de avaliação de semelhança F()
Um algoritmo para comparação de utilizadores utilizando F()
O universo de dados em análise
22. Replace
with icon
100x100
Recomendador - Onde começar?
Será necessário:
● Um serviço para obter os dados
● O recomendador (~15 linhas de código em Scala)
● Um widget para apresentar as recomendações
https://github.com/roclas/simple_liferay_recommender
23. Replace
with icon
100x100
● Introdução
● 1º Caso de Uso - Recomendador
● 2º Caso de Uso - Reconhecimento de Imagem
● Conclusão
Liferay e Machine Learning
Agenda
25. Replace
with icon
100x100
Contexto: Liferay com milhares de imagens diferentes
Problema: Categorizar manualmente cada imagem!
Problema a resolver
Será que não temos uma abordagem mais interessante?
26.
27. Replace
with icon
100x100
● Liferay é uma óptima framework para integrações
● Liferay é fácilmente customizável (GO OSGi!)
● IA pode reconhecer imagens automaticamente
Abordagem Técnica
O que sabemos?
28. Replace
with icon
100x100
1. Utilizar um sistema IA próprio
○ Requer uma rede neuronal treinada
○ Mais esforço envolvido
2. Utilizar um serviço externo
○ Mais fácil e rápido de implementar mas…
○ Dependência de um serviço externo
○ Opções gratuitas são limitadas
Abordagem Técnica
Opções
29. Replace
with icon
100x100
3. Onde customizar o Liferay
○ Process batch para todas as imagens
○ Antes/Depois de carregar uma imagem (Documents&Media)
○ Custom application/widget
○ Mobile App (E.g. Liferay Screens)
Abordagem Técnica
Opções
30. Replace
with icon
100x100
Serviço externo para reconhecimento de imagem: Clarifai
● Menos esforço e resultados mais rápido
● https://www.clarifai.com
Customização no Liferay: Model Listeners
● Fácil implementação
● Aplicado a todas as imagens carregadas
● Bonus: Funciona com o Liferay Sync
Abordagem Técnica
Escolha
31. Replace
with icon
100x100
● Utiliza uma Deep Neural Network
● Oferece vários modelos, cada um treinado com dados específicos
● Modelo recebe uma imagem (input) e produz uma previsão (output)
Machine Learning
Clarifai
32. Replace
with icon
100x100
● Observa eventos de persistência em modelos de dados
○ Criar, Remover, Actualizar
● Executa uma acção como resposta
○ Antes ou depois
● Documentação
○ https://github.com/liferay/liferay-blade-samples
○ https://dev.liferay.com/
Liferay CE / DXP
Model Listener
34. Replace
with icon
100x100
● Outras APIs no mercado
○ Google Vision (https://cloud.google.com/vision/)
○ Amazon Rekognition (https://aws.amazon.com/rekognition/)
● Criar um módulo próprio para reconhecimento de imagens
○ Tensorflow (https://github.com/tensorflow)
● Organizar imagens em pastas automáticamente
Outras abordagens e melhorias
35. Replace
with icon
100x100
● Introdução
● 1º Caso de Uso - Recomendador
● 2º Caso de Uso - Reconhecimento de Imagem
● Conclusão
Liferay e Machine Learning
Agenda
36. Replace
with icon
100x100
● A Aprendizagem Automática pode ser fácil de utilizar
○ Está cá, é o presente e está pronta a ser usada
● Utilizar ML pode ajudar a resolver problemas reais e complexos
● Liferay DXP/CE oferece um contexto fantástico para ML
● Melhor UX + Personalização = Engagement
O que foi alcançado?
37. Replace
with icon
100x100
● Liferay DXP/CE é uma excelente ferramenta de integração
● Customizar Liferay é algo facilmente alcançável
● Não precisamos de ser experts em IA para a utilizar
● Criem e Partilhem os vossos próprios módulos de AI para Liferay
Conclusões e Take Aways
43. Uma nova ferramenta de aprendizagem, ao
teu ritmo, de suporte a todos os
utilizadores de Liferay DXP/CE, no teu
desktop ou on-the-go.
Com o Liferay University Passport, tens
acesso a todos os cursos. Sabe mais em
https://getpassport.liferay.com/
Liferay University
Select and copy / paste this object