Skip to content

Latest commit

 

History

History
144 lines (136 loc) · 7.91 KB

File metadata and controls

144 lines (136 loc) · 7.91 KB

Objetivo : Desenvolver um recomendador de vídeos do youtube

Nivel Conhecimento : Intermediário à avançado

[En] [Pt-Br]

CICLO DE VIDA DE UMA SOLUÇÃO EM CIÊNCIA DE DADOS

DEFINIR O PROBLEMA E A SOLUÇÃO

QUAL É O PROBLEMA ?

Antes mesmo de iniciar um projeto de ciência de dados, você deve definir o problema que deverá ser resolvido. O problema deverá estar diretamente relacionado ao objetivo do requisito do negócio.

Definir o problema é uma responsabilidade do cientista de dados com o time de negócios, responsabilidade bilateral.

Em nosso projeto : O problema é ' Muito tempo gasto buscando novos vídeos disponíveis no youtube '.


QUAL A MELHOR SOLUÇÃO ?

O Cientista de dados é o especialista em sua área, é seu trabalho guiar/ajudar a organização a encontrar o que quer e/ou o que precisa.

O Cientista de dados deve ser capaz de traduzir as questões de negócio ao seu "botão-mágico-para-conquistar-o-mundo-da-nuvem" em algo que possa ser resolvido matematicamente e com seus dados.

Definir a melhor solução é responsabilidade do Cientista de dados com o time de negócios, responsabilidade bilateral. É um processo iterativo.

Nota : Como processo iterativo entenda desenhando e apresentando a solução aos parceiros de negócios até chegar ao problema e a solução ideal diretamente relacionada a este problema.

Em nosso projeto : A solução ideal é ' Listar apenas vídeos que eu vou gostar '.

COMO CRIAR A/UMA SOLUÇÃO DATA SCIENCE USANDO MACHINE LEARNING ?

O Cientista de dados analisa o processo da organização e o relaciona ao problema definido versus a melhor solução definida, então desenvolve o algoritmo machine learning sob determinadas amostras. O algoritmo deve ter um resultado igual ou melhor que o esperado.

Nota : O Cientista de dados é uma ferramenta a mais para resolver os problemas do negócio.

Em nosso projeto : Criaremos um Recomendador de vídeos que irá executar um ou mais dos processos a seguir :

  • Exibir apenas os vídeos que eu vou gostar
  • Criar Solução com Hanking dos vídeos que primeiramente eu vou gostar seguido dos que eu menos vou gostar
  • Estabelecer uma abordagem de ponto corte : Retornar apenas 3 que eu vou gostar
  • Abordagem de ranking : ordenar dos vídeos eu mais vou gostar aos que eu menos vou gostar
  • Consultará pelas seguintes palavras chave : machine-learning, kaggle, datascience

COMO A SOLUÇÃO SERÁ USADA PRODUTIVAMENTE ?

O Cientista de dados analisa o resultado retornado, como este resultado será apresentado e define como devem ser tratados os novos dados.

O resultado pode ser apresentado em um Web app, ERP system, Dashboard, Excel, etc...

Em primeiro momento é responsabilidade do Cientista de dados definir como a solução será usada produtivamente. Após ter o modelo definitivo o Cientista de dados com o time de negócios estabelecem como a solução será usada definitivamente em produção.

Em nosso projeto : criaremos um Web App com os vídeos (links) e as previsões ordenadas e com os seguintes dados : Título, Label, Anotações, Descrição

COMO SABER SE A SOLUÇÃO DEU CERTO ?

O Cientista de dados define as métricas de acordo com a área de negócio e dados obtidos, então compara os resultados entre solução machine learning e os resultados atualmente conquistados sem machine learning.

Deve haver uma métrica primária e uma ou mais métricas secundárias.

Em nosso projeto :

  • A métrica primária será : Top N vídeos incluo na lista watch later
  • As métricas secundárias podem ser :
    • Quantidades N de vídeos assistidos até o final
    • Tempo X investido selecionando os vídeos recomendados por Machine Learning
    • Os top N recomendados por Machine Learning são mais assistidos do que os top N da busca google ? : [YES] [NO]

Importante :
Definir um problema ja resolvido diversas vezes e a melhor solução à este problema com etapas rápidas e digamos "imperfeitas" é a melhor forma de sairmos do estado zero.

Cientista de dados deve considerar que :

  1. Passos 01 e 02 : serve para entender todo o processo do negócio, para definir o problema e a melhor solução.
  2. Passos 03 e 04 : serve para desenvolver o modelo machine learning sob os processos e métricas do negócio.
  3. Passo 05 : serve para testar o modelo machine learning desenvolvido sob os processos e métricas do negócio e disponibilizá-lo em produção.

COLETAR E TRABALHAR OS E/OU NOS DADOS

Nesta etapa o Cientista de dados aplicará todas as técnicas para tornar os dados em perfeita conformidade ao modelo de predição que será desenvolvido

COLETAR OS DADOS

Os dados podem ser coletados das seguintes fontes :

  • banco de dados relacional e estruturado
  • banco de dados NoSQL
  • buscando na internet (scraping)
  • de imagens
  • de emails
  • com as pessoas envolvidas no processo
  • planilhas excel
  • redes sociais
  • sensores
  • documentos word/pdf e similares

ANALISAR E EXPLORAR OS DADOS

  • detectar se há os dados que precisa para desenvolver a solução
  • analisar o tipo de cada dado : string, objeto, float, inteiro
  • analisar o conteúdo de cada dado
  • analisar a correlação entre os dados
  • Detectar padrões entre os dados
  • Detectar tendências entre os dados

LIMPAR OS DADOS

  • remover dados redundantes
  • trabalhar nos dados faltantes
  • trabalhar nos dados duplicados
  • trabalhar nos dados desnecessários

CONVERTER OS DADOS

  • de objetos para data
  • de objetos para string
  • de data para string
  • categóricos para numéricos

ANALISAR E EXPLORAR OS DADOS

  • Detectar padrões entre os dados
  • Detectar tendências entre os dados

MODELAR OS DADOS

Nesta fase o Cientista de dados separa seu conjunto de dados nas seguinte proporções :

  • Uma proporção para treinar o modelo, conhecido como conjunto de dados de treino
  • Uma proporção para testar a eficiência do modelo, conhecido com conjunto de dados de teste
Nesta fase o modelo de dados esta sendo contruÍdo pelo conjunto de dados de treino e sendo evoluÍdo pelo conjunto de dados de teste.

OTIMIZAR E IMPLANTAR

Esta fase serve para melhorar a eficiência do modelo de dados, e realizar mais predições acuradas.

O objetivo final é implantar o modelo de dados em ambiente de validação ou em ambiente de produção para aceitação dos usuários

Os usuários deverão testar o desempenho dos modelos de dados e verificar se há qualquer inconsistências com os modelos, que serão corrigidos pelo Cientista de dados.









Fonte