Cet article sera divisé en 3 parties ( Théorie / Méthodes et algorithmes pour la résolution de problèmes / Développement et implémentation en Java ) pour décrire l'image complète. Le premier article n'inclura que la théorie pour préparer l'esprit des lecteurs.
Objet de l'article:
- Automatisation partielle ou totale de la tâche de clustering et de classification du big data, à savoir les données textuelles.
- Application d'algorithmes d'apprentissage automatique "non supervisé" (clustering) et "supervisé" (classification).
- Analyse des solutions actuelles aux problèmes.
Tâches à considérer en général:
- Développement et application d'algorithmes et de méthodes de traitement du langage naturel.
- Développement et application de méthodes de clustering pour déterminer les groupes de cluster de documents d'entrée.
- Application de méthodes de classification pour définir le sujet de chaque groupe de grappes.
- Développement d'interfaces Web basées sur Java Vaadin
Les hypothèses que j'ai déduites du problème et lors de l'enseignement de la théorie:
- La classification des groupes de cluster définit des connaissances cachées abstraites et plus précieuses, ignorant le bruit, que la classification d'objets individuels.
- La précision du clustering est directement proportionnelle au nombre de groupes de cluster et inversement proportionnelle au nombre d'objets dans un groupe de cluster.
Pour toute personne intéressée par l'algorithme lui-même, voici un aperçu.
L'algorithme du logiciel d'apprentissage automatique se compose de 3 parties principales:
- Traitement du langage naturel.
- tokenisation;
- lemmatisation;
- arrĂŞter la liste;
- fréquence des mots;
- MĂ©thodes de clustering.
TF-IDF;
SVD;
trouver des groupes de grappes;
- MĂ©thodes de classification - API Aylien.
Alors commençons la théorie.
1. Le concept d'apprentissage automatique
‒ , , . – , , - . “ , , , . , ?”. ‒ , “”. – , , — , .
. , , , , , . - () . , , , .. , ? — , , . ? — , . .
, , , , . , , , , . , . , , . , .
, . ‒ . , . , , . . , " ", . , , .
()? , : “ , E T P, T, P, E”. , E , T , P , . – E, , 100 . “” .
, , . . , , , .
, .
2.
‒ , :
- ‒ . , .
- ‒ . , , , .
- – , , . . , . , ‒ , .
- ‒ , . , .
. , , , . , . , , , . ‒ , , , , .
, , , , , .
, . . , . . , . , . , , , . , .
, , . , . , Google, Yahoo, Microsoft, Amazon , . , , Facebook, YouTube Twitter, . , , , , .
, . , . . , . , , , , , .
, . , , . , , .
, . , , , , , , , , , , , / .. , / . , .
En conclusion, nous pouvons dire que le Big Data et le Machine Learning sont étroitement liés l'un à l'autre, car le Big Data est inutile sans son analyse et son extraction d'informations, et le Machine Learning ne pourrait pas coexister sans Big Data, ce qui donne à l'algorithme expérience et apprentissage.
3. Types d'apprentissage automatique
L'apprentissage automatique, en tant que science, peut être classé en 3 catégories principales selon la nature de l'apprentissage:
- l'enseignement avec un enseignant;
- l'enseignement sans enseignant;
- apprentissage par renforcement.
Dans certains travaux scientifiques, par nature, l'apprentissage est divisé en 4 catégories, qui incluent l'apprentissage partiel, mais il ne s'agit que d'une symbiose d'apprentissage avec un enseignant et sans enseignant.
3.1. Apprendre avec un enseignant
, , , , . , , . , . . , . , , , , . , .
Afin de résoudre le problème afin d'appliquer l'apprentissage supervisé, les étapes suivantes doivent être suivies:
- Déterminez le type d'exemples de formation. Tout d'abord, vous devez décider quelles données doivent être utilisées comme ensemble d'apprentissage.
- Collecte de données. L'ensemble de données doit être représentatif de l'utilisation réelle de la fonction. Ainsi, un ensemble de caractéristiques d'entrée et de sorties associées est collecté.
- Détermination de la représentation d'entrée de l'objet de la fonction étudiée. La précision de la fonction étudiée dépend fortement de la façon dont l'objet d'entrée est représenté. En règle générale, un objet d'entrée est converti en un vecteur d'objets contenant une série d'objets décrivant l'objet. Le nombre de fonctions ne doit pas être trop grand, en raison de la "malédiction de la dimension", mais doit contenir suffisamment d'informations pour prédire avec précision le résultat.
- .
- . . . ( ) .
- . , , .
Les algorithmes sont entraînés à l'aide d'exemples prétraités et, à ce stade, les performances des algorithmes sont évaluées à l'aide de données de test. Parfois, les modèles identifiés dans un sous-ensemble de données ne peuvent pas être trouvés dans une plus grande population de données. Si le modèle ne convient que pour représenter des modèles qui existent dans un sous-ensemble de la formation, un problème est créé appelé «Surajustement».
Le surajustement signifie que le modèle est affiné pour l'ensemble de données d'entraînement, mais ne peut pas être appliqué à de grands ensembles de données de données inconnues. Pour se protéger contre le surajustement, des tests doivent être effectués sur des données inattendues ou inconnues. L'utilisation de données inattendues pour une suite de tests peut vous aider à évaluer la précision du modèle lors de la prédiction des résultats. Les modèles d'apprentissage supervisé ont une large applicabilité à une variété de problèmes commerciaux, y compris la détection de fraude, la recommandation, la reconnaissance vocale ou l'analyse des risques.
Les algorithmes d'apprentissage supervisé les plus utilisés et les plus populaires sont:
- support vecteur machine;
- régression linéaire;
- régression logistique;
- classificateur bayésien naïf;
- formation sur l'arbre de décision;
- méthode des k-plus proches voisins;
- réseau neuronal artificiel;
- Ă©tude des similitudes.
Chacun des algorithmes ci-dessus a des approches différentes des méthodes et des formules mathématiques et statistiques mathématiques. Mais le modèle général de l'algorithme peut être souligné, puisque tous ces algorithmes sont un apprentissage supervisé:
n (x_1,y_1),(x_2,y_2),...,(x_n,y_n), x_i ‒ , y_i ‒ . , x_i , , , , . y_i «” „“.
‒ m : (xn+1, xn+2,..., xn+m) * (x_(n+1),x_(n+2),...,x_(n+m) ). , , (, “” “ ”), , .
3.3.
‒ . , . , () . . , “” .
, , (), . , , . ‒ ‒ .
, , . , , , . , , , . , , , , .
Le dilemme est que ni l'apprentissage ni la maîtrise ne peuvent être accomplis exclusivement sans échec dans la tâche. L'algorithme doit essayer différentes actions et favoriser progressivement celles qui semblent les meilleures. Dans un problème stochastique, chaque action doit être tentée à plusieurs reprises pour obtenir une estimation fiable. Le dilemme de l'apprentissage-maîtrise a été étudié de manière intensive par les mathématiciens pendant de nombreuses décennies, mais reste sans solution.
Les erreurs vous aident à apprendre car elles ajoutent une mesure de discipline (coût, temps perdu, regret, douleur, etc., vous apprenant qu'un certain plan d'action est moins probable que d'autres.) Un exemple intéressant d'apprentissage par renforcement se produit lorsque les ordinateurs apprennent à jouer à des jeux vidéo. par eux-mêmes sans intervention humaine.
L'apprentissage automatique peut également être classé en fonction des résultats souhaités:
- classification;
- regroupement;
- régression.
Les algorithmes de régression sont couramment utilisés pour l'analyse statistique. La régression vous aide à analyser les relations de modèle entre les points de données. Les algorithmes de régression peuvent quantifier la force de la corrélation entre les variables d'un ensemble de données. En outre, l'analyse de régression peut être utile pour prédire les valeurs de données futures basées sur des valeurs historiques. Il est important de se rappeler, cependant, que l'analyse de régression suppose que la corrélation concerne la cause et l'effet. Sans comprendre le contexte autour des données, l'analyse de régression peut conduire à des prédictions inexactes. Types de régression:
- régression linéaire;
- régression non linéaire;
- régression vectorielle;
- régression logistique.
Le clustering est une technique assez simple à comprendre. Les objets avec des paramètres similaires sont regroupés (dans un cluster). Tous les objets d'un cluster sont plus similaires les uns aux autres qu'aux objets d'autres clusters. Le clustering est un type d'apprentissage non supervisé car l'algorithme lui-même détermine les caractéristiques générales des éléments dans les données. L'algorithme interprète les paramètres qui composent chaque élément, puis les regroupe en conséquence.
Catégories de clustering:
- méthode k-means;
- clustering spatial basé sur la densité pour les applications bruyantes - DBSCAN;
- algorithme de clustering OPTICS;
- méthode des principaux composants.
Mais il est important de noter que dans le clustering, en particulier dans l'apprentissage non supervisé, l'algorithme recherche les connexions entre les données d'entrée. La beauté de l'apprentissage automatique est de trouver des connexions cachées entre les données, mieux connues sous le nom de connexions latentes. Pour le regroupement dans la recherche de relations latentes, un modèle de variables cachées est utilisé, qui est appliqué pour étudier les relations entre les valeurs des variables. Le modèle de variable cachée comprend:
- Algorithme EM;
- méthode des moments;
- séparation aveugle du signal;
- méthode des principaux composants;
- analyse des composants indépendants;
- décomposition matricielle non négative;
- décomposition en valeur singulière.
La classification est le processus de prédiction d'une classe de points de données donnés. Les classes sont parfois appelées étiquettes ou catégories. La modélisation prédictive de classification est le problème de l'approximation d'une fonction de mappage (f) des variables d'entrée (X) aux variables de sortie discrètes (y) . La classification appartient à la catégorie de l'apprentissage supervisé. Types de schémas de classification:
- thésaurus;
- taxonomie;
- modèle de données;
- RĂ©seau de transport;
- ontologie.
Mais dans l'apprentissage automatique, les types de classification sont effectués en fonction des types d'algorithmes qui font en quelque sorte référence à des schémas de classification. Les algorithmes d'apprentissage les plus utilisés sont:
- support vecteur machine;
- régression logistique;
- classificateur bayésien naïf;
- méthode des k-plus proches voisins;
- réseau neuronal artificiel;
- .
4.
, . . , . – . ‒ , , – . , . , .
(NLP) ‒ . ‒ , , ( ) . , , , . , .
, , .
, , . , . ( ) (), . / . . , , . : () .
, . , -, , ‒ . (NLP). NLP ‒ (-) . NLP , , . NLP, , : . , , ( ). NLP , . NLP, , . , :
- ‒ () , . – . , . .
- ‒ , . ? , () , . . . , , . .
- – , . , . , :
- , , , , .
- ,
, . , .
- - ‒ - , , , , - , . .
- – . , . , , ( ).
, , . , . . . . . , , . .
Dans l'apprentissage automatique, un document texte peut chevaucher de nombreuses catégories dans une classification ou de nombreux clusters dans le clustering. Les algorithmes d'échantillonnage de caractéristiques les plus couramment utilisés sont:
- Fréquence des termes - La fréquence inverse des documents (TF-IDF) est couramment utilisée pour pondérer chaque mot d'un document texte en fonction de son caractère unique. Le poids des mots (jetons) est souvent utilisé pour la recherche d'informations et l'analyse sémantique du texte. Ce poids est une mesure statistique utilisée pour évaluer l'importance d'un mot pour un document d'une collection ou d'un corpus. En d'autres termes, l'approche TF-IDF reflète la pertinence des mots, des documents texte et des catégories spécifiques.
- Word2Vec est un outil (ensemble d'algorithmes) pour le calcul des représentations vectorielles des mots, qui implémente deux architectures principales - lot continu de mots (CBOW) et Skip-gram. Un document texte ou un mot est passé en entrée et les données de sortie seront représentées sous forme de variables vectorielles (coordonnées dans l'espace vectoriel).
Épilogue
En fait, la théorie de l'apprentissage automatique est très vaste et vaste. Ici, j'ai écrit avec des mots plus abstraits et plus simples. S'il y a des amendements au texte ou à la théorie, veuillez écrire. Le but de cet article, encore une fois, est de préparer les lecteurs au problème et à la solution les plus pratiques.
Laissez un commentaire si vous en attendez plus.