Indice
Cientista de dados
Você está preso em um problema?
Todos nós solucionamos problemas. Decidimos reduzir o esforço de fazer tudo e qualquer coisa. Estávamos cansados de fazer as mesmas tarefas repetitivas repetidas vezes. Então, pensamos por que não deixar as máquinas fazerem isso. Veja só, hoje você tem chatbots, carros autônomos e a lista continua.
Mas, todo esse esforço começa a partir de uma única coisa. O problema.
- O que você está tentando resolver?
Esse é o ponto de partida. E assim como na conversa da vida real , a primeira impressão abre o precedente para o sucesso de toda a conversa, ao colocar um problema de aprendizado de máquina, é preciso causar uma boa impressão sobre o problema.
Elementos de um problema
Qualquer problema de aprendizado profundo tem três coisas que precisam ser claramente definidas para obter sucesso.
Tarefa
Simples, certo? NÃO.
Suponha que comecemos com um problema de visão computacional. Quero criar um algoritmo DL que resolva o problema da visão computacional. Mas, se você simplesmente abrir essa porta, existem quase mil subproblemas. Quer uma prova, aqui está:
Todos esses subproblemas existem hoje porque as pessoas optaram por resolver um problema específico em vez de fazer tudo de uma vez (psst, isso é uma má ideia).
Use uma abordagem de cima para baixo para isso.
Nós reiteramos novamente esta descoberta de tarefa. Suponha que você tenha que criar um sistema para armazenar livros automaticamente em uma biblioteca.
- Pergunta 1 : Qual é a tarefa?
- Resposta : Para armazenar livros automaticamente em uma biblioteca.
- Pergunta 2 : Qual seria a composição dessa tarefa?
- Resposta : Para ler o nome do livro e depois classificá-lo em um tópico.
- Pergunta 3 : Como posso resolver isso usando o Deep Learning?
- Resposta : Eu posso usar o Reconhecimento de Texto (Visão Computacional) e Classificação de Tópicos (Processamento de Linguagem Natural).
Tada! Você finalmente chegou às suas tarefas.
Experiência
- “Algumas coisas não podem ser ensinadas; eles devem ser experimentados. Você nunca aprende as lições mais valiosas da vida até que faça sua própria jornada. ”
– Roy T. Bennett
Não é tão diferente para as máquinas. Eles precisam vivenciar o problema, a fim de resolvê-lo.
A questão aqui é:
- Qual é a experiência que meu sistema DL precisa para ter um desempenho ideal?
Continuando com o exemplo acima, agora temos duas tarefas: Reconhecimento de Texto e Classificação de Tópicos.
- Pergunta : Que experiência meu sistema requer para reconhecer facilmente os textos dos livros?
- Resposta : Ler muitas capas de livros.
Normalmente, para sistemas DL, nem sempre conseguimos o que queremos. Então, fazemos outra pergunta.
- Pergunta: Que tipo de experiência ajudaria meu sistema a ter um desempenho ideal se eu não fosse capaz de obter esses dados?
- Resposta : Se eu não conseguir encontrar esses dados específicos, devo encontrar dados que contenham texto em várias cores de fundo, ângulos e condições de luz.
O objetivo é encontrar alguns dados gerais que abranjam seu problema específico. Aqui, você está adotando uma abordagem generalista .
E, então, chega o ponto em que você vai em sua busca por dados. Se você tiver sorte, você o encontrará. Se não, então, você precisa se perguntar o seguinte:
- Pergunta : Que tipo de experiência pode ajudar meu sistema agora que não consigo encontrar nenhum dado?
- Resposta : Se eu não conseguir, terei que fazer. Eu precisaria gerar imagens com texto impresso sobre elas de vários ângulos e os fundos teriam que variar de cores monótonas um pouco simplistas a fundos vívidos.
E é a isso que você mais recorre quando vai aonde nenhum homem jamais foi. A jornada ainda não está completa.
Uma última pergunta:
- Pergunta : Posso usar quaisquer dados existentes para criar experiência para meu próprio sistema?
- Resposta : A resposta será geralmente SIM e isso tornará sua vida muito mais fácil. Obter alguns dados reais e construir seus dados a partir deles é um dos maiores favores que você pode fazer a si mesmo.
Você deve projetar a experiência para que seu sistema funcione de maneira ideal.
- A escolha da experiência certa para o seu sistema decidirá seu fracasso ou sucesso.
Medida de performance
- Todo mundo é um gênio. Mas se você julgar um peixe por sua habilidade de subir em uma árvore, ele viverá a vida inteira acreditando que é estúpido.
-Albert Einstein
Se você acabar medindo o desempenho do seu sistema incorretamente, vai acabar pensando que foi um fracasso, e não um sucesso.
Continuando com o exemplo acima, como medimos se nosso sistema está funcionando de maneira ideal.
A pergunta que você se faz é:
- Qual métrica me ajudaria a julgar adequadamente o desempenho do meu sistema?
No nosso caso, a resposta seria a quantidade de livros corretamente arquivados.
Mas isso nos dá uma visão completa do desempenho do sistema?
Como você tem duas tarefas, o desempenho delas decide o desempenho de todo o sistema. Então, você decide medidas de desempenho para eles também.
- Todas as tarefas da vida real são multifacetadas.
Para reconhecimento de texto, você pode escolher a precisão de reconhecimento em nível de caractere.
Para a classificação do tópico, você pode escolher o número de vezes que os tópicos foram atribuídos corretamente.
Todas as tarefas da vida real são multifacetadas e, portanto, precisam ser avaliadas em várias dimensões. No nosso caso, existe o desempenho dos subsistemas e o desempenho geral do sistema.
Resumo
Nesta postagem, entendemos como nos aprofundar em um problema de aprendizado de máquina e como pensar sobre isso. Entendemos como é importante quebrar o problema de aprendizado profundo nessas barras básicas (Tarefa, Experiência e Medida de Desempenho). Então, entendemos como explorar essas estapas para chegar a soluções que podem nos surpreender. O pensamento correto leva às soluções certas.
Créditos: towardsdatascience