Muito tem se falado sobre inteligência artificial (AI), automação e machine learning. Mas, de fato, o que é AI?
Alexandre Dietrich, responsável por Watson Data AI na IBM Brasil, explica detalhadamente a origem deste conceito e porque ele tem ganhado tanto destaque nos últimos.
Segundo Dietrich, são três principais motivos: o aumento exponencial do volume de informações por conta da transformação digital, a redução dos custos da capacidade computacional, bem como a evolução de algoritmos.
Fonte: <https://computerworld.com.br/inovacao/o-que-e-inteligencia-artificial/>
Entender a relação entre deep learning vs machine learning é crucial para a evolução em Data Science.
Você provavelmente já conhece esses conceitos e sabe como eles são extremamente confundidos na área de Data Science. Para o público geral, trata-se apenas de duas formas de se referir à mesma coisa. Contudo, eles carregam algumas diferenças bem interessantes que vale a pena conhecer.
Primeiramente, vamos tratar da pergunta principal.
Não, os dois conceitos não representam a mesma coisa. Deep learning pode ser compreendido como uma técnica dentro da noção de machine learning, como uma evolução do ML para projetos mais robustos - que veremos em detalhes mais à frente.
Afinal, DL é um conceito recente e está no auge agora. Vemos muitas pessoas procurando aprender os conceitos, estudando e tentando assimilar como funcionam os algoritmos principais. A tendência é que ele continue evoluindo, visto que já tem gerado resultados incríveis para empresas e pesquisadores.
Nos próximos tópicos, vamos especificar as diferenças entre cada um deles a partir da definição de cada um em específico.
Comecemos com o Machine Learning. Trata-se de uma definição geral da noção de aprendizado de máquina. Consiste basicamente em tornar os computadores inteligentes e autônomos a partir do treinamento deles com dados em grande quantidade — o que pode ser o famoso Big Data.
É um raciocínio semelhante a processos que humanos realizam em muitas situações. Quando precisamos dominar um assunto, pesquisamos o máximo possível, lemos livros e assistimos a vídeos. Ou seja, preenchemos nossa memória com dados e mais dados acerca daquele tema para que sejamos capazes de aprender.
O machine learning é basicamente a máquina processando os dados e buscando padrões, correlações e tendências neles para poder de fato aprender sobre eles. Então, a máquina fornece uma resposta para os humanos acerca do que aprendeu. Informamos ao computador um conjunto de dados de entrada e esperamos uma saída correspondente que demonstra o que ele aprendeu.
Podemos dividir o ML em pelo menos dois tipos: aprendizado supervisionado e não supervisionado.
No aprendizado supervisionado, a pessoa cientista de dados ajuda o computador a entender quais são as saídas possíveis associadas às possíveis entradas em uma base de treinamento, como é chamado. Ou seja, é informado o conjunto de entradas com suas saídas. Então, depois do processo de treinamento, testamos o algoritmo com dados novos de entrada para verificar o que ele aprendeu.
Por exemplo, passamos um conjunto de dados que descrevem as características de um cachorro em uma foto e também mostramos ao computador se aquelas características são de um cachorro ou não em cada linha da tabela dos dados. Então, o computador deverá entender como aquelas variáveis se relacionam para gerar aquelas saídas a partir de cálculos persistentes e repetitivos.
Posteriormente, enviamos uma imagem nova de um cachorro e pedimos ao computador para dizer se é ou não, com base no que ele já tinha aprendido.
O outro tipo é o aprendizado não supervisionado. Dessa vez, a pessoa programadora não supervisiona o algoritmo, mas somente envia os dados para que ele tente entender seus padrões e correlações sozinho. Nesse sentido, o algoritmo vai tentar processar os dados em busca de insights que serão informados como saída.
Um exemplo é uma base de dados com os clientes de uma empresa. Ao enviar para o algoritmo de ML para agrupamento, o sistema consegue identificar grupos distintos de clientes com características similares. Assim, é possível realizar ações de marketing específicas para cada grupo.
Na categoria dos modelos supervisionados, temos problemas de classificação (predição se algo se encaixa em uma categoria ou em outra, como no caso do cachorro) e regressão (prediz um determinado valor). Na categoria dos não supervisionados, temos agrupamento, detecção de desvios, associação e outros.
O processamento de linguagem natural está em todo lugar, permitindo um mundo mais tecnológico e prático. Entenda mais sobre como funciona e onde é aplicado.
O processamento de linguagem natural (Natural Processing Language - NLP) é uma área da ciência da computação que combina computação, linguística e até filosofia da linguagem para estudar como fazer computadores entenderem a linguagem natural humana. Assim, trata-se de um conjunto de técnicas que ajudam as máquinas a processarem textos e falas, a fim de decodificar o seu significado e seu contexto.
Isso é, digamos, uma tarefa bastante desafiadora. Até mesmo humanos sofrem com interpretações errôneas de coisas que leram ou ouviram de outros humanos, sendo que nós utilizamos o mesmo código. Então, traduzir esse código para um sistema que opera majoritariamente com números é uma dificuldade que tem mantido cientistas da computação acordados à noite há décadas.
Felizmente, com o avanço das estratégias de aprendizado de máquina e de deep learning, tivemos um avanço significativo na área de NLP. Hoje, tornou-se relativamente fácil desenvolver soluções práticas na área, visto que existem muitas ferramentas prontas que abstraem todo o trabalho pesado.
Para fins de organização, podemos dividir a área de Natural Language Processing em três principais subáreas: a análise de sentimentos, a análise de intenção e a categorização da informação.
A análise de sentimentos consiste no uso das ferramentas de NLP a fim de extrair o sentimento de uma frase ou sentença. Geralmente, utilizam-se classificações binárias, como positivo ou negativo.
Visão do processo de Análise de Sentimentos proposta pelo pesquisador Marcello Bax. Fonte: ResearchGate]
A análise de intenção (que concentra a maioria das aplicações) busca identificar a intenção e o significado por trás de um determinado texto ou fala.
Já a categorização intenciona apenas separar o conteúdo em classes principais.
Exemplo de categorização. Fonte: Impacting Digital
Para isso, as soluções de processamento fazem análises morfológicas, lexicais, fonológicas, sintáticas, semânticas e discursivas.
Lidam com a forma como as palavras são compostas (morfológica), com interpretação de cada palavra em específico (léxica), com a pronúncia e o som das palavras (fonológica), com a estrutura das palavras em uma frase e seu relacionamento com outras (sintática), com o significado geral de uma sentença (semântico) e com o significado geral de várias sentenças (discursiva).
Dentro dessas etapas, aplicam-se algumas estratégias de processamento. Podemos mencionar:
que reduzem as palavras ao seu aspecto mais importante, o seu radical ou forma-raiz (remove sufixo e transforma a palavra na forma masculina singular ou infinitiva correspondente, por exemplo);
que remove as palavras que não importam muito para o objetivo da análise (como “a”, “de”);
que adapta as palavras a um padrão para análise;
que é a transformação das palavras em pequenas variáveis.
No contexto do machine learning, o processamento de linguagem natural se torna poderoso, pois permite que a máquina seja treinada com milhares/milhões de dados e consiga entender os padrões dela. Por exemplo, em uma análise de sentimento de textos de redes sociais, conseguimos realizar um treinamento prévio para que o modelo aprenda como as características levam a determinadas saídas.
Já o reconhecimento de voz, por exemplo, pode usar o conceito de deep learning, com as redes neurais profundas.
Nesta seção, vamos conhecer um pouco do universo prático do natural language processing. Vamos entender quais são essas aplicações tão empolgantes hoje em dia.
Podemos começar com o exemplo que demos no início deste texto. As assistentes virtuais são construídas com os princípios da NLP para que consigam entender as requisições das pessoas e sejam capazes, até, de desenvolver uma conversa.
Elas analisam os textos enviados, quebram em tokens, transformam palavras em números e realizam todo o processamento que citamos para captar e entender a intenção.
Outro grande uso, que inclusive impulsionou a tecnologia nos últimos anos, foi no mercado de buscadores da internet. A gigante Google adota algoritmos de NLP para entender a intenção de busca das pessoas usuárias e conseguir direcionar as páginas que melhor atendem ao objetivo pesquisado.
É mais um caso de análise de intenção que se vale muito de técnicas como stemização e lematização.
Hoje, temos também aplicações que traduzem textos de uma língua para outra. O próprio Google Tradutor é um exemplo de um algoritmo de machine learning com processamento de linguagem natural por trás. Esse sistema analisa uma frase e o seu significado geral para então transpor para outro código, que é outro idioma.
A área de análise de sentimentos é muito usada para diversas aplicações. Uma empresa pode adotá-la para entender se as menções à empresa na rede são positivas ou não e, então, mobilizar o departamento de relações públicas para melhorar os resultados.
Da mesma forma, pessoas que se candidatam na política ou governantes podem utilizar NLP para identificar se a comunidade aprova ou não seus projetos e ideias.
Outro uso comum que nos afeta no dia a dia: o filtro de spam. Parece trivial, mas na verdade ele utiliza o natural language processing para identificar características de spam nos corpos e títulos de mensagens mandadas por e-mail. Além disso, o sistema gerenciador também utiliza esses sistemas inteligentes para dividir e-mails em categorias, como acontece no Gmail, por exemplo.
O processamento de linguagem natural é uma tecnologia extremamente rica e cheia de possibilidades incríveis para quem deseja aprender sobre ela. Trata-se de uma grande opção para quem se interesse por Data Science e por machine learning, visto que continuará muito importante na medida em que chatbots e assistentes, principalmente, permanecerem como parte do nosso dia a dia.
<Fonte://blog.somostera.com/data-science/processamento-linguagem-natural-nlp>