Entradas de string no Machine Learning


8

Vários algoritmos populares de aprendizado de máquina, como regressão logística ou redes neurais, exigem que suas entradas sejam numéricas.

O que me interessa é como você faz esses algoritmos funcionarem em entradas não numéricas (como seqüências de caracteres curtas).

Como exemplo, digamos que estamos construindo um sistema de classificação de email (spam / não spam), em que um dos recursos de entrada é o endereço do remetente.

Para poder usar um algoritmo de aprendizado, precisamos representar o endereço do remetente como um número. Uma maneira é simplesmente numerar os remetentes 1..n. Nosso conjunto de treinamento pode ficar assim:

entradas para aprendizado de máquina

Isso não funcionará, no entanto, porque algoritmos como regressão logística ou redes neurais aprendem padrões nos dados de entrada, enquanto no nosso exemplo, a saída parece totalmente aleatória para o algoritmo. De fato, uma vez em uma aula universitária, tentamos treinar uma rede Neural em um conjunto de dados parecido com esse e a rede não conseguiu aprender nada (a curva de aprendizado era plana).

Você usaria regressão logística ou redes neurais neste exemplo? Se sim, de que maneira? Caso contrário, qual seria uma boa maneira de classificar os e-mails com base no endereço do remetente?

Uma resposta perfeita seria discutir o exemplo de classificação de email, bem como lidar com seqüências curtas no ML em geral.

Respostas:


4

Um dos modelos populares é o modelo Bag of Words

Além disso, você pode modelar as palavras como números inteiros. Elas têm 'métricas de distância relativa' para isso e capturam a própria essência do processo de classificação. No entanto, uma desvantagem é que a etapa de pré-processamento é cara e você também precisa ter algum conhecimento de domínio.

Uma métrica de distância bastante famosa é a distância de Levenshtein, baseada no número de edições de caracteres únicos. por exemplo. isso é,d(Wumaeuk,tumaeuk)<d(Wumaeuk,peuod).

As métricas dependem do contexto do processo de classificação. Por exemplo, sua métrica de distância para classificar palavras que rimam será diferente daquelas projetadas para classificar sinônimos / palavras que transmitem significados semelhantes.Para obter uma lista de métricas de string, consulte este artigo da wikipedia. .

Além disso, você pode dar uma olhada neste documento de revisão .

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.