[PYTHON] Dossier d'apprentissage n ° 10 (14e jour)

Dossier d'apprentissage (14e jour)

Début des études: samedi 7 décembre

Matériel pédagogique, etc.: ・ Miyuki Oshige "Détails! Note d'introduction à Python3 »(Sotech, 2017): 19/12 (jeudi) Terminé ・ Cours Progate Python (5 cours au total): se termine le samedi 21 décembre ・ ** Andreas C. Müller, Sarah Guido "(titre japonais) Apprentissage automatique à partir de Python" (O'Reilly Japon, 2017) **: Terminé le samedi 23 décembre

Chapitre 3 Apprentissage et prétraitement non supervisés

Transformation non supervisée: crée une représentation des données plus compréhensible pour les humains et d'autres algorithmes d'apprentissage automatique. Le plus courant est la réduction de dimension. Ou extraction de rubrique à partir d'un ensemble de données de document. Ce dernier est utile pour analyser des sujets sur les médias sociaux. • Algorithmes de clustering: divisez les données en groupes d'éléments similaires. Un mécanisme de séparation des photos sur les sites SNS par personne est applicable. ・ C'est le seul moyen de trouver un sens à partir des données lorsqu'il n'y a pas d'informations sur l'enseignant.

Difficulté à apprendre sans enseignant

-Depuis que l'apprentissage non supervisé reçoit des données qui ne contiennent aucune information d'étiquette, les humains doivent souvent confirmer les résultats afin d'évaluer les résultats. -Par conséquent, il est souvent utilisé exploratoire pour mieux comprendre les données.

Pré-traitement et conversion d'échelle

・ Les réseaux de neurones et les SVM pour l'apprentissage supervisé sont très sensibles à la conversion d'échelle. -Standard Scaler: Convertit de sorte que la moyenne des caractéristiques soit de 0 et la variance de 1. Scaler robuste: utilise la médiane et les quadrants au lieu de la variance moyenne. Ignorez le contour. -MinMax Scaler: convertit les données afin qu'elles soient comprises entre 0 et 1. -Normalizer: projette des points de données sur un cercle avec un rayon de 1. Il est utilisé lorsque seule la direction ou l'angle, et non la longueur du vecteur de fonction, compte. -Convertissez l'ensemble de test et l'ensemble d'entraînement de la même manière. ・ Apprenez et calculez les scores après le prétraitement.

Drame dimensionnel, extraction de fonctionnalités, apprentissage de la variété

・ Motivation: visualisation, compression de données, découverte d'expressions adaptées à un traitement ultérieur, etc.

Analyse en composantes principales (ACP)

L'algorithme le plus couramment utilisé pour tous les motifs ci-dessus ・ Une méthode de rotation des entités afin qu'elles ne soient pas statistiquement liées les unes aux autres. ・ Réglez la distribution sur 1 avec Standard Scaler → Appliquer PCA ・ Explication de l'extraction de caractéristiques à l'aide de visages étiquetés dans la nature

Factorisation matricielle non négative (NMF)

・ Apprentissage non supervisé visant à extraire des fonctionnalités utiles similaires à PCA Cette méthode de décomposition des données en sommes pondérées non négatives est particulièrement efficace pour les données créées en superposant des données obtenues à partir de plusieurs sources indépendantes, telles que des données vocales prononcées par plusieurs personnes.

Algorithme t-SNE

・ Il s'agit d'algorithmes d'apprentissage multiples. -Bien qu'une bonne visualisation puisse être obtenue et qu'une cartographie compliquée puisse être effectuée, les nouvelles données ne peuvent pas être converties et seules les données utilisées pour la formation peuvent être converties. Bien qu'utile pour l'analyse exploratoire des données, il est rarement utilisé lorsque le but ultime est l'apprentissage supervisé.

Clustering

-Split l'ensemble de données en groupes appelés clusters.

k-signifie clustering

L'algorithme de clustering le plus simple et le plus utilisé -Trouvez un centre de gravité de cluster qui représente une zone avec des données et attribuez des points de données. Continuez ensuite à définir le centre de gravité de chaque cluster sur la moyenne des points de données. Ceci est répété et l'algorithme se termine lorsqu'il n'y a pas de changement. -Puisqu'il n'y a pas d'étiquette sur les données divisées comme décrit ci-dessus, la seule chose qui peut être vue à partir de l'algorithme est que des images similaires sont alignées pour le nombre spécifié de clusters. ・ Quantification vectorielle

Regroupement agglomératif

-Démarrez chaque point de données en tant que cluster individuel, fusionnez des clusters similaires et répétez le processus jusqu'à ce que le nombre spécifié de clusters soit atteint. -Scikit-learn a trois implémentations, Ward, Moyenne et Complète, mais Ward est généralement suffisant. -Peut être visualisé avec un dendrogramme. Peut être dessiné avec SciPy.

DBSCAN (clustering spatial avec bruit basé sur la densité)

・ Abréviation de clustering spatial basé sur la densité des applications avec bruit -Trouver des points dans les zones à haute densité dans l'espace des fonctionnalités. -Soyez prudent lors de la manipulation des résultats de clustering obtenus car du bruit est généré dans le processus.

Chapitre 4 Représentation des données et ingénierie des fonctionnalités

-La recherche de la meilleure représentation des données pour une application spécifique s'appelle l'ingénierie de la quantité de caractéristiques. -Quels types de fonctionnalités sont utilisées et si elles sont ajoutées ou combinées selon les besoins sont les facteurs les plus importants qui déterminent le succès des applications d'apprentissage automatique.

Encodage à chaud

-Parfois appelé une variable factice. Remplacez les variables catégorielles par de nouvelles fonctionnalités qui ont une ou plusieurs valeurs 0 et 1. Convertissez en une forme que scikit-learn peut gérer.

Binning, discrétisation

-Rendre le modèle linéaire plus puissant pour les données continues.

Fonction d'interaction et fonction polynomiale

-Efficace pour les modèles linéaires, combinant des caractéristiques d'origine.

Chapitre 5 Évaluation et amélioration du modèle

-Cross-validation: divisez les données pour tout k (environ 5-10) et utilisez-les comme ensemble d'apprentissage et ensemble de test. Il existe des divisions de mélange et des divisions groupées. • Grille de recherche: validez toutes les combinaisons de paramètres. ・ Lorsque nous utilisons réellement l'apprentissage automatique, nous ne sommes pas seulement intéressés par des prévisions précises, et nous utilisons souvent ces prédictions dans le processus de décisions plus importantes. Il est nécessaire de comparer le modèle de la norme avec un autre modèle et d'examiner attentivement l'impact commercial. -Seuil: Une valeur seuil.

Chapitre 6 Chaîne d'algorithmes et pipeline

-Plusieurs étapes de traitement peuvent être collées dans la classe de pipeline dans un estimateur. -Les applications d'apprentissage automatique dans le monde réel utilisent rarement un modèle indépendant seul. En collant avec le modèle de pipeline, vous pouvez réduire les erreurs telles que l'oubli d'appliquer la transformation ou de commettre une erreur dans l'ordre.

Chapitre 7 Traitement des données textuelles

・ Traitement du langage naturel (NLP), récupération d'informations (IR) -L'ensemble de données dans l'analyse de texte est appelé un corpus, et les points de données individuels exprimés en un seul texte sont appelés un document. -Comme les données textuelles ne peuvent pas être appliquées à l'apprentissage automatique en l'état, il est nécessaire de les convertir en une expression numérique capable de gérer l'algorithme. L'expression la plus simple, la plus efficace et la plus largement utilisée est l'expression BoW (bag-of-words). Supprimez la structure et ne comptez que le nombre de mots qui apparaissent. ・ 3 étapes pour calculer la représentation BoW (1) Tokenisation: divisez chaque phrase en mots en utilisant des espaces et des signes de ponctuation comme guide. (2) Construction du vocabulaire: les mots qui apparaissent dans toutes les phrases sont rassemblés sous forme de vocabulaire et numérotés. (Par exemple, par ordre alphabétique) (3) encoder: comptez le nombre de mots de vocabulaire qui apparaissent. -Peut être utilisé avec une matrice clairsemée, des s.m compressées: CSR (matrice clairsemée compressée) et SciPy. -Tf-idf (terme fréquence-fréquence de document inverse): méthode de mise à l'échelle en fonction du poids des informations de quantité de caractéristiques, au lieu de laisser tomber la quantité de caractéristiques qui semble insignifiante comme une liste d'arrêt. ・ Problème BoW → Parce que l'ordre est perdu, certaines phrases avec des significations opposées ont exactement la même signification. (C'est mauvais, pas bon du tout et c'est bon, pas mal du tout, etc.) Cependant, cela peut être évité en traitant le jeton comme deux ou trois jetons consécutifs au lieu d'un seul jeton. Ils sont appelés respectivement bigramme et trigramme. La difficulté est que la quantité de fonctionnalités augmente considérablement. Dans la plupart des cas, il est préférable de fixer la longueur minimale à 1, car même un mot a souvent une signification considérable. -Le traitement de la racine des mots (dérivation) et la mise en mots (lemmatisation) font partie de la normalisation.


"(Titre japonais) Apprentissage automatique à partir de Python" lire

Recommended Posts

Dossier d'apprentissage n ° 21 (25e jour)
Dossier d'apprentissage n ° 10 (14e jour)
Dossier d'apprentissage n ° 24 (28e jour)
Dossier d'apprentissage n ° 23 (27e jour)
Dossier d'apprentissage n ° 25 (29e jour)
Dossier d'apprentissage n ° 26 (30e jour)
Dossier d'apprentissage n ° 20 (24e jour)
Dossier d'apprentissage n ° 14 (18e jour) Kaggle4
Dossier d'apprentissage n ° 15 (19e jour) Kaggle5
Fiche d'apprentissage 4 (8e jour)
Fiche d'apprentissage 9 (13e jour)
Fiche d'apprentissage 3 (7e jour)
Fiche d'apprentissage 5 (9e jour)
Fiche d'apprentissage 6 (10e jour)
Fiche d'apprentissage 8 (12e jour)
Fiche d'apprentissage 1 (4e jour)
Fiche d'apprentissage 7 (11e jour)
Fiche d'apprentissage 2 (6e jour)
Fiche d'apprentissage 16 (20e jour)
Dossier d'apprentissage 22 (26e jour)
Fiche d'apprentissage 13 (17e jour) Kaggle3
Dossier d'apprentissage n ° 17 (21e jour)
Fiche d'apprentissage 12 (16e jour) Kaggle2
Dossier d'apprentissage n ° 18 (22e jour)
Dossier d'apprentissage n ° 19 (23e jour)
Dossier d'apprentissage n ° 29 (33e jour)
Dossier d'apprentissage n ° 28 (32e jour)
Dossier d'apprentissage n ° 27 (31e jour)
Fiche d'apprentissage 11 (15e jour) Participation de Kaggle
Enregistrement d'apprentissage de la programmation 2ème jour
Dossier d'apprentissage
Dossier d'apprentissage n ° 3
Dossier d'apprentissage n ° 1
Dossier d'apprentissage n ° 2
Apprentissage Python jour 4
Fiche d'apprentissage (2ème jour) Scraping par #BeautifulSoup
Fiche d'apprentissage (4e jour) #Comment obtenir le chemin absolu à partir du chemin relatif
Dossier d'apprentissage jusqu'à présent
Fiche d'apprentissage Linux ① Planifier
Fiche d'apprentissage (3e jour) Méthode de description du sélecteur #CSS #Scraping avec BeautifulSoup
<Cours> Apprentissage en profondeur: Jour 1 NN
Enregistrement d'apprentissage (6ème jour) #Set type #Dictionary type #Conversion automatique de l'ensemble de taples de liste #ndarray type #Pandas (type DataFrame)
Sujets> Deep Learning: Day3 RNN
Étudiez en profondeur le Deep Learning [DW Day 0]