Traduction du livre d'Andrew Un, Passion for Machine Learning, chapitres 44 - 46

chapitres précédents


Algorithmes de débogage final


44. Test de vérification d'optimisation (Le test de vérification d'optimisation)


Supposons que vous développez un système de reconnaissance vocale. Le système reçoit la voix d'entrée d' enregistrement A et calcule une certaine valeur A (S) , l' estimation de la vraisemblance que ce clip audio correspond proposition S . Par exemple, vous pouvez essayer d'estimer la valeur de A (S) = P (S | A) , la probabilité que la transcription de sortie correcte offrira S, à condition que le son d'entrée était un .


Quelle que soit la méthode d'estimation de la quantité A (S) que vous choisissez, la tâche consiste à trouver la phrase anglaise S à laquelle cette quantité sera maximale:
image


Comment aborder le calcul de "arg max" dans cette formule? Disons 50 000 mots en anglais, dont vous pouvez faire


50000N


N — , , .


, , S, () A(S). « », K . ( , « »). , S, A(S).


, A -, « ». : « ».
:


  1. . ( ) S, A(S).
  2. ( ). A(S) = P(S|A) . , A(S) « » .

, - . . , A(S).


, ; A(S). , , .
?


(« »), Sout. (« »), S*. , , (The Optimization Verification test): ScoreA(S*) ScoreA(Sout), ScoreA(S*) ScoreA(Sout).


1: ScoreA(S*) > ScoreA(Sout)


S*, , Sout. , Sout, S*. , S, A(S) . (The Optimization Verification test) , , . , « » (beam search).


2: ScoreA(S*)ScoreA(Sout).


ScoreA(.): S* Sout. (The Optimization Verification test) . , , ScoreA(S) S.


. (The Optimization Verification test) , . , ScoreA(S*) > ScoreA(Sout). , , , . , ScoreA(S*)ScoreA(Sout) ScoreA(.).


, , 95% ScoreA(.), 5% - . , , ~ 5% . , ScoreA(.).


45. (The Optimization Verification test).


(the Optimization Verification test) , , x , , x(y), , y x , arg maxyScorex(y), , . x=A, y=S.


, y* — «» , yout. Scorex(y*) > Scorex(yout). , . , . , Scorex(y).


. , . C ScoreC(E) E. , ScoreC(E) = P(E|C), E, , C.


image


, , .


, Eout E*. , ScoreC(E*) > ScoreC(Eout). , ScoreC(.) E* Eout; , . , ScoreC(.).


« » : (approximate scoring function) Scorex(.), (approximate maximization algorithm). , (The Optimization Verification test) .


46.



, , . , , .


«». , . -. , , .


« » R(.), T. , T , R(T) = -1000 — «» . T, , R(T) , , . R(.), , T. , , , . — .


, R(T) , , , maxTR(T). .
, R(.) , . , , - — .


— , , , , maxTR(T) , , ?
(Optimization Verification test), Thuman, , -, Tout . , Thuman Tout. : , R(Thuman) > R(Tout)?


1: , R(.) , Thuman Tout. , , Tout, . , .


2: : R(Thuman)R(Tout). , R(.) Thuman , Tout, , Thuman . R(.), .


«» Scorex(.) . x, Score(.). Score(T)=R(T), (optimization algorithm) , , T.


L'une des différences entre cet exemple et les exemples précédents est que la qualité de l'algorithme n'est pas comparée au résultat «optimal», mais à la trajectoire humaine T humaine . Nous avons supposé que T humain est assez bon, même s'il n'est pas optimal. En général, tant que vous obtenez un résultat y * (dans cet exemple, T humain ) qui dépasse la qualité du système - même s'il n'est pas «optimal», le test de vérification d'optimisation indiquera que plus prometteur: améliorer l'algorithme d'optimisation ou la fonction d'évaluation.


continuation


All Articles