Notes d'apprentissage automatique 2 - Test comparatif

essai comparatif

1. Pourquoi devrions-nous introduire des tests comparatifs ?

Si nous voulons comparer les performances d’apprentissage de deux apprenants, nous devons non seulement trouver deux valeurs​​sur les mesures de performance, puis les comparer quantitativement. Car, en machine learning, la comparaison des performances des apprenants implique de nombreux aspects, et ces aspects entretiennent parfois des relations contradictoires.

Les principaux facteurs à prendre en compte pour évaluer les performances d’apprentissage sont les suivants :

  • Capacité de généralisation , c'est-à-dire la capacité d'un algorithme d'apprentissage automatique à s'adapter à de nouveaux échantillons. Par exemple, lors de l'examen d'entrée à l'université, la plupart d'entre nous passeront le test du « 3 mai » et répondront à de nombreuses questions. Cependant, lors de l'examen d'entrée à l'université, certains étudiants peuvent réussir l'examen, mais d'autres ne le font pas. La raison en est que les questions de l'examen d'entrée à l'université ne peuvent pas être les questions originales sur lesquelles nous nous entraînons habituellement. Personne ne l'a fait. Différents étudiants ont des capacités de généralisation différentes, il existe donc une lacune dans leur capacité à tirer des conclusions à partir d'un exemple. Au final, les résultats de chacun sont très différents. . Mettre la capacité des élèves du secondaire à tirer des conclusions à partir d’un exemple à l’apprentissage automatique constitue la capacité de généralisation de l’apprenant.
  • La sélection d'ensembles de tests , de différentes tailles et d'ensembles de tests de différents échantillons peut conduire à des résultats de formation différents.
  • Le caractère aléatoire de l'algorithme , parce que l'apprentissage automatique est une boîte noire, nous ne pouvons pas connaître le processus spécifique en cours. Il est possible que le même ensemble de tests, exécuté avec les mêmes paramètres sur le même apprenant, produise des résultats différents.

Par conséquent, nous devons étudier spécifiquement le problème des tests comparatifs de l’apprentissage automatique.

2. Plusieurs méthodes de tests comparatifs

1. Test d'hypothèse - test binomial

Introduisez d’abord deux concepts :

  • Le premier est appelé taux d’erreur de généralisation eee fait référence à la probabilité que l'apprenant commette une erreur en classant un échantillon dans des circonstances normales. Dans des situations réelles, nous ne pouvons pas connaître sa valeur exacte ;
  • Le second est appelé taux d’erreur de test e ′ e'e , c'est-à-dire que l'apprenant a exactemente ′ m e'me méchantillons ont été mal classés et nous ne pouvons généralement obtenir que cette valeur ;

La différence entre les deux est que le taux d’erreur de généralisation est une valeur théorique qui ne peut être obtenue, tandis que le taux d’erreur de test est une valeur que nous pouvons mesurer. La méthode de test d'hypothèse statistique consiste à utiliser e ′ e'e' estimationeela valeur de e ;

Un taux d'erreur de généralisation est e ′ e'e' apprenant à tester une taillemmL'ensemble d'échantillons de test de m ne peut avoir que deux situations : une classification correcte et une classification incorrecte, oùe ′ m e'me msont mal classés, et les autres sont classés correctement, il s'agit donc d'une distribution binomiale typique, alors nous pouvons obtenir la fonction de distribution du taux d'erreur du test :
P ( e ′ ; e ) = ( me ′ m ) ee ′ m ( 1 − e ) m − e ′ m P(e';e)= \left(\begin{matrix} m\\ e'm \end{matrix}\right) e^{e'm}(1- e )^{moi}P ( e' ;e )=(me m)ee' m(1e )m e m
P ( e ′ ; e ) P(e';e)P ( e' ;e ) à propos deeeLa dérivée première de e , soit δ P ( e ′ ; e ) / δ e = 0 \delta P(e';e)/\delta e=0δ P ( e' ;e ) / d e=0,解得e = e ′ e=e'e=e temps,P ( e ′ ; e ) P(e';e)P ( e' ;e ) maximum ;∣ e − e ′ ∣ |ee'|∣e _e增大,P ( e ′ ; e ) P(e';e)P ( e' ;e ) diminue, tout comme la distribution binomiale ;

Vient ensuite le processus de test. Comme le livre de Xigua est un peu obscur, je vais essayer de décrire le test d'hypothèse binomiale d'une manière plus simple.

Précondition : Pour une fonction de distribution, on sait qu'il s'agit d'une distribution binomiale, mais le paramètre de la distribution binomiale (la distribution binomiale n'a qu'un seul paramètre, qui est la probabilité positive p, dans cet exemple est le taux d'erreur de généralisation) est inconnu .

approche hypothétique

  • Nous pouvons utiliser des hypothèses pour spécifier artificiellement une "plage de seuil" pour les valeurs des paramètres. Dans cet exemple, nous supposons que e ≤ e 0 e\leq e_0ee0

  • Ensuite, nous fixons artificiellement un niveau de confiance α \alpha pour les tests en fonction de besoins objectifs ou de certaines formules de calcul (sans les répéter ici, des problèmes spécifiques sont analysés en détail).α , cette variable représente la norme pour les erreurs évidentes. Par exemple, la probabilité d'être supérieure à 6 dans cette distribution binomiale estα \alphaα , j'ai fixé le seuil àα \alphaα signifie queje pense que si le nombre d'erreurs de classification de l'apprenant est supérieur à 6, alors c'est une erreur évidente. Cette hypothèse n'est pas vraie;

  • Au contraire, 1 − α 1-\alpha1α représente la norme qui ne provoquera pas d’erreurs évidentes, c’est-à-dire la norme à laquelle on peut faire confiance ;

Nous allons maintenant utiliser ce 1 − α 1-\alpha1α , pour en déduire que sous ce niveau de confiance, on supposee 0 e_0e0Est-ce raisonnable ?

Déterminer la plausibilité des hypothèses

Il existe deux méthodes pour juger de la rationalité : je présenterai principalement celle du livre de Xigua ;

L’idée générale est la suivante : utilisez le 1 − α 1-\alpha que nous avons défini1La valeur de α est utilisée comme contrainte pour trouver l'aire intégrale de la courbe de distribution qui n'est pas supérieure à cette valeur. Dans l'exemple du livre, le graphique statistique à barre 1 est utilisé, puis multipliez les coordonnées horizontales et verticales de chaque barre puis effectuez une opération de sommation pour trouver une valeur non supérieure à 1 − α 1-\alpha1La valeur maximale de α , et enfin trouver le ei e_ià ce momenteje

La formule de calcul s'écrit comme suit :
∑ i = e 0 m + 1 m ( mi ) ei ( 1 − e ) m − i < 1 − α \sum_{i=e_0m+1}^{m} \left(\ début {matrice} m\\ i \end{matrice}\right) e^i(1-e)^{mi} <1-\alphaje = e0m + 1m(mje)eje (1e )m je<1α
signifie accumuler la "zone des abscisses et des ordonnées" à partir de celle la plus à gauche du graphique à barres, puis l'ajouter jusqu'à ce qu'elle ne soit plus que1 − α 1-\alpha1Jusqu'à α .

On sort le ii à ce momenti , l'abscisse correspondante est la norme de seuil acceptable, puis prenons notre préréglagee 0 e_0e0Comparez avec lui, si e 0 e_0e0S’il est inférieur à ce seuil, cela signifie que l’hypothèse est acceptable et raisonnable ; sinon, elle est déraisonnable et doit être reprise.

En fait, en fin de compte, il s'agit d'un processus « auto-écrit et autodirigé ». Pour résumer, obtenez d'abord un seuil approximatif à travers les caractéristiques de la distribution binomiale, puis trouvez un point plus précis dans ce seuil. Pour différents apprenants, nous pouvons utiliser cette méthode pour définir manuellement des paramètres et comparer la qualité des deux apprenants.

2. Test d'hypothèse - test t

Plusieurs fois, afin de garantir l'universalité et l'exactitude des résultats, nous effectuerons de nombreux tests d'estimation. Supposons que nous obtenions k taux d'erreur e 1 ′ , . . . , ek ′ e_1',....,e_k 'e1,. . . . ,ek, alors nous pouvons facilement obtenir le taux d'erreur moyen μ \muμ et varianceδ 2 \delta^2d2的:
μ = 1 k ∑ i = 1 kei ′ , δ 2 = 1 k − 1 ∑ i = 1 k ( ei ′ − μ ) 2 . \mu=\frac{1}{k} \sum_{i=1}^{k}e_i' ,\\ \delta^2=\frac{1}{k-1} \sum_{i=1}^ {k}(e_i'-\mu)^2.m=k1je = 1keje,d2=k11je = 1k( ejem )2.
Puisque chaque détection estimée est indépendante, cette fonction de distribution de probabilité peut s'écrire :T t = k ( μ − e 0 ) δ T_t=\frac{\sqrt{k}(\mu-e_0)}{ \
Tt=dk ( me0)
Parmi eux, ce e 0 e_0e0est le taux d'erreur de généralisation, qui est une fonction qui satisfait la distribution normale ;

Ensuite, nous fixons un niveau de confiance α \alpha tout comme le test binomial.α , α 2 \frac{\alpha}{2}des deux côtés de la courbe de distribution normale2unPrenez un intervalle d'erreur évident à chaque emplacement, comme indiqué dans la figure :

Supposons alors un intervalle seuil μ = e ′ \mu=e'm=e , calculer l'intégrale définie sous la courbe de l'image blanche (se référer au test binomial pour la méthode de calcul du histogramme), comparer les deux hypothèses, sie ′ e'e Au niveau de confianceα \alphaSi α se situe dans la plage calculée, cela est acceptable.

Tableaux de valeurs critiques couramment utilisés pour les tests t bilatéraux :

Le processus global de cette partie est très similaire au test binomial. Sauf que la formule et la courbe de distribution sont différentes, le reste des étapes peut être copié du test binomial, je n'entrerai donc pas dans les détails ici.

3. Test t de validation croisée

Les deux méthodes ci-dessus visent principalement à mesurer les performances d'un seul apprenant. Pour plusieurs apprenants, cela peut être fait avec un test t de validation croisée k fois.

Par exemple, les taux d'erreur de deux apprenants A et B après k tests sont e 1 A , . . . , ek A {e_1^A,...,e_k^A}e1Un,. . . ,ekUne 1 B , . . . , ek B e_1^B,...,e_k^Be1B,. . . ,ekB, dans lequel ei A , ei B e_i^A,e_i^BejeUn,ejeBest le i-ième résultat obtenu après un entraînement multiplié par k. Trouvez la différence entre chaque ensemble de résultats d'entraînement et de test : Δ i = ei A − ei B \Delta_i=e_i^A-e_i^BDje=ejeUnejeB

Supposons que chaque test soit indépendant les uns des autres, on peut donc mettre Δ 1 . . . Δ k \Delta_1...\Delta_kD1. . . DkTraité comme un processus d'échantillonnage indépendant de k fois les différences de performances, la moyenne μ \mu de cet ensemble de données est calculéeμ et varianceδ 2 \delta^2d2,因此我们有:
α est acceptable s . t. T t = abs ( k μ δ ) < t α 2 \alpha~is~acceptable~~~~ st T_t=abs(\frac{\sqrt{k}\mu}{\delta})<t_{\frac{ \alpha}{2}}α est acceptable . _ _ _ _ _ _ _ _ _ _ _ t . T      t=un b s (dk m)<t2un
L'idée de ce processus est également de fixer un niveau de confiance α \alphaα , puis déterminez si le seuil se situe dans la plage de confiance acceptable.

En fait, nos ensembles de formation et de tests peuvent facilement se chevaucher, de sorte que chaque test n'est pas nécessairement indépendant les uns des autres .

Nous pouvons grossièrement spéculer que si nos ensembles de formation et de test se chevauchent, alors les résultats des tests k fois que nous obtenons ont un certain degré de corrélation et de similarité, et si nous supposons toujours que ces résultats de tests sont indépendants les uns des autres, c'est-à- dire À l'origine "un tas de résultats collés ensemble", nous les considérons comme "non collés ensemble" , cela signifie alors que la plage acceptable de notre hypothèse est en fait trop large et nous surestimerons la probabilité que l'hypothèse soit vraie.

Nous pouvons donc utiliser la « validation croisée 5×2 » pour atténuer ce problème. Ce qu'on appelle 5 × 2 signifie effectuer 5 fois une validation croisée 2. Les données doivent être perturbées avant chaque validation croisée 2 fois pour garantir que les divisions ne sont pas répétées. L'idée basique est la suivante:

  • Pour deux apprenants A et B, chaque double validation croisée générera deux ensembles de taux d'erreur de test, nous calculons la différence entre eux et obtenons la différence Δ i 1 \Delta_i^1 sur le premier pliDje1et la différence sur le deuxième pli Δ i 2 \Delta_i^2Dje2

  • Faire la moyenne des deux résultats de la première vérification double μ ′ \mu'm , faites une variance δ ′ 2 \delta'^{2}pour chaque résultat expérimental 2 foisd2 , la valeur moyenne adopte la valeur moyenne du premier pli précédentμ ′ \mu'm' ;

  • Sa fonction de distribution de probabilité est :
    T t ′ = μ ′ 0,2 ∑ i = 1 5 δ i 2 T_t'=\frac{\mu'}{\sqrt{0.2\sum_{i=1}^{5}\delta_i^ 2}}Tt=0 . 2je = 15dje2 m

Pourquoi cela atténue-t-il le problème d’indépendance entre les résultats des tests ? C'est en fait très simple, car notre moyenne n'est qu'un ensemble de taux d'erreur pour un résultat de test. Tous les résultats de tests ultérieurs utilisent l'ensemble précédent de taux d'erreur lors du calcul de la variance, de sorte que la taille de la variance est uniquement la même que celle des données d'origine. et le premier lié au taux d’erreur du test. Mais je pense que cette méthode sera plus convaincante si les résultats du premier test sont plus réalistes (mes réflexions personnelles sont les bienvenues pour me corriger).

4. Test de McNemar

L'idée principale de cette méthode de test est de répertorier un tableau de contingence pour les résultats de classification des deux apprenants à deux catégories, puis de dériver la fonction de distribution du chi carré de la différence de performance entre les deux apprenants, puis de formuler une hypothèse. test. Ensuite, cette méthode sera décrite grossièrement. Une étape de :

  • Tout d’abord, listons le tableau de contingence des résultats de classification binaire des deux apprenants A et B :

  • Après ça∣ e 01 − e 10 ∣ |e_{01}-e_{10}|∣e _0 1e1 0 , cette variable obéit à une loi normale ; cette méthode de test considère la variable
    T x 2 = ( ∣ e 01 − e 10 ∣ − 1 ) 2 e 01 + e 10 T_{x^2}=\frac{(|e_{ 01 }-e_{10}|-1)^2}{e_{01}+e_{10}}TX2=e0 1+e1 0( e0 1e1 01 )2

  • Il s'agit d'une distribution du Chi carré avec un degré de liberté de 1, et le reste des étapes de test d'hypothèse sont les mêmes que ci-dessus : formuler une hypothèse pour définir le degré de fiabilité, en déduire la plage acceptable, tester si le seuil d'hypothèse est dans la fourchette acceptable et tirer une conclusion.

5. Test de Friedman et test de suivi de Nemenyi

Le test t de validation croisée et le test McNemar ne conviennent que pour les comparaisons par paires. Lorsque l'on compare des apprenants de plusieurs algorithmes, il est évidemment trop difficile de comparer les algorithmes par paires, c'est pourquoi nous introduisons une méthode qui peut être utilisée sur le même ensemble d'ensembles de données. méthode de comparaison de plusieurs algorithmes.

L'idée de base de la méthode F-test est de trier les performances de l'apprenant en fonction des résultats du test sur le même ensemble d'ensembles de données, et d'attribuer des valeurs ordinales 1, 2, 3..., et de diviser également les valeurs ordinales si elles sont identiques, comme le montre la figure ci-dessous :

Plus les performances sont bonnes, plus la valeur attribuée est petite, puis calculez la valeur de commande moyenne r r_i de chaque algorithme sur chaque ensemble de donnéesrje

Il convient de noter ici que les données du tableau ne constituent qu'un cas particulier. Avoir cette valeur de séquence moyenne n'explique pas entièrement que l'algorithme avec une petite valeur de séquence doit être meilleur , car pour différents ensembles de données, l'algorithme A peut ne pas être aussi bon comme l'algorithme B, et les deux apprentissages L'algorithme peut également avoir des résultats similaires sur le même ensemble de données, nous devons donc utiliser un seuil d'estimation pour déterminer quel algorithme est le meilleur.

Supposons que k algorithmes soient comparés sur N ensembles de données, ri r_irjeLa moyenne et la variance de sont respectivement (k + 1) / 2 (k+1)/2( k+1 ) / 2 et( k 2 − 1 ) / 12 N (k^2-1)/12N( k21 ) / 1 2 N , la fonction de distribution est obtenue (le processus de dérivation est omis) :
TX 2 = 12 N k ( k + 1 ) ( ∑ i = 1 kri 2 − k ( k + 1 ) 2 4 ) TF = ( N − 1 ) TX 2 N ( k − 1 ) − TX 2 T_{X^2}=\frac{12N}{k(k+1)}(\sum_{i=1}^{k}r_i^ 2-\frac {k(k+1)^2}{4}) \\ \\ T_F=\frac{(N-1)T_{X^2}}{N(k-1)-T_{X ^2}}TX2=k ( k+1 )1 2N _(je = 1krje24k ( k+1 )2)TF=N ( k1 )TX2( N1 ) TX2
TX2T_{X^2}TX2est la fonction de distribution de test de Friedman originale, TF T_FTFest la fonction de distribution du test F ; dans cet algorithme, Xiguashu fournit clairement un tableau de valeurs critiques :

Le test d’acceptabilité reste le même que ci-dessus.

Si l’hypothèse selon laquelle tous les algorithmes ont les mêmes performances est rejetée, des tests ultérieurs sont nécessaires pour effectuer une comparaison plus approfondie des algorithmes. Parce que dans les étapes précédentes, nous avons seulement compris que tous les k algorithmes n'avaient pas les mêmes performances, nous devons maintenant « trouver » les apprenants avec des performances différentes et comparer lequel est le meilleur .

Ce qui suit présente le processus spécifique de l'algorithme de test Nemenyi :

Le principe de base est de comparer la différence entre les valeurs de séquence moyennes des deux algorithmes avec la valeur CD. Si la différence moyenne dépasse la valeur CD, cela signifie que les performances des deux apprenants sont différentes.

La formule de calcul de la valeur CD est la suivante :
CD = q α k ( k + 1 ) 6 N CD=q_\alpha \sqrt{\frac{k(k+1)}{6N}}CD _=qun6N _k ( k+1 )
q α q_\alphaqunLe tableau des valeurs est le suivant :

image-20220121121425644

Si la différence entre deux valeurs ordinales est supérieure à la valeur CD, alors l'algorithme avec une valeur ordinale moyenne plus petite est meilleur que l'algorithme avec une valeur ordinale moyenne élevée dans une certaine mesure.

Donc, avec le recul, la valeur ordinale moyenne n'est qu'un aspect de référence.Nous devons également utiliser le test de Friedman et le test de suivi de Nemenyi avant de pouvoir utiliser plus rigoureusement la valeur ordinale moyenne pour mesurer la qualité de l'algorithme.

Section suivante : Notes d'apprentissage automatique 3 - Régression linéaire

Je suppose que tu aimes

Origine blog.csdn.net/qq_45882682/article/details/122618793
conseillé
Classement