Verbesserung des Markups multimodaler Daten: weniger Assessoren, mehr Ebenen

Hallo! Wir - Wissenschaftler des ITMO-Labors für maschinelles Lernen und das ML-Kernteam von VKontakte - forschen gemeinsam. Eine der wichtigen Aufgaben von VK ist die automatische Klassifizierung von Posts: Es ist nicht nur erforderlich, thematische Feeds zu generieren, sondern auch unerwünschte Inhalte zu identifizieren. Für die Verarbeitung von Aufzeichnungen sind Prüfer beteiligt. Gleichzeitig können die Kosten ihrer Arbeit durch ein solches Paradigma des maschinellen Lernens wie aktives Lernen erheblich gesenkt werden.



Es geht um seine Anwendung zur Klassifizierung multimodaler Daten, die in diesem Artikel behandelt werden. Wir werden Sie über die allgemeinen Prinzipien und Methoden des aktiven Lernens, die Besonderheiten ihrer Anwendung auf die Aufgabe sowie die während der Forschung gewonnenen Erkenntnisse informieren.



Bild



Einführung



— machine learning, . , , , .



, (, Amazon Mechanical Turk, .) . — reCAPTCHA, , , , — Google Street View. — .



. , Voyage — , . , , . , .



Amazon DALC (Deep Active Learning from targeted Crowds). , . Monte Carlo Dropout ( ). — noisy annotation. , « , », .



Amazon . : / . , , . , : , . .



! , . pool-based sampling.



Zahl:  1. Allgemeines Schema eines Pool-basierten Szenarios des aktiven Lernens

. 1. pool-based



. , , ( ). : , .



, — . (. — query). , . ( , ) .



, , .





, — . ( ). ≈250 . . () 50 — — :



  1. , (. embedding), ;
  2. .


, (. . 2).



. 2 —

. 2 —





ML — . , .



. , . , , , . , , early stopping. , .



. residual , highway , (. encoder). , (. fusion): , .

— , . -.



, — , . , .



. , (. 3):



. 3.

. 3.



. , . , , . , ( + ) — .



, . 3, :



. 4.

. 4.



, , . , ó , , .



, : ? :



  1. ;
  2. ;
  3. .


. : maximum likelihood , - . :



L=1σ12L1+1σ22L2+1σ32L3+logσ1+logσ2+logσ3



L1,L2,L3 — ( -), σ1,σ2,σ3 — , .



Pool-based sampling



— , . pool-based sampling :



  1. - .
  2. .
  3. , , .
  4. .
  5. ( ).
  6. 3–5 (, ).


, 3–6 — .



, , :



  1. , . , : . , , , . . , 2 000.



  2. . , . ( ). , , . , . 20 .

    . , . — , . 100 200.





, , , .



№1: batch size



baseline , ( ) (. 5).



. 5.   baseline-  .

. 5. baseline- .



random state. .



. «» , , .



, (. batch size). 512 — - (50). , batch size . . :



  1. upsample, ;
  2. , .


batch size: (1).



current_batch_size=b+nmodbnb[1]



b — batch size, n — .

“” (. 6).



. 6.     batch size (passive  )   (passive + flexible  )

. 6. batch size (passive ) (passive + flexible )



: c . , , batch size . .



.



Uncertainty



— uncertainty sampling. , , .



:



1. (. Least confident sampling)



, :



xLC=argmaxx 1Pθ(y^|x)[2]



y^=argmaxy Pθ(y|x) — , y — , x — , xLC — , .



. , 1y^. , . .



. , : {0,5; 0,49; 0,01}, — {0,49; 0,255; 0,255}. , (0,49) , (0,5). , ó : . , .



2. (. Margin sampling)



, , , :



xM=argminx Pθ(y^1|x)Pθ(y^2|x)[3]



y^1x, y^2 — .



, . , . , , MNIST ( ) — , . .



3. (. Entropy sampling)



:



xH=argmaxx Pθ(yi|x)logPθ(yi|x)[4]



yii- x .



, , . :



  • , , ;
  • , .


, , . , entropy sampling .



(. 7).



. 7.      uncertainty sampling    ( —    ,   —    ,  —    )

. 7. uncertainty sampling ( — , — , — )



, least confident entropy sampling , . margin sampling .



, , : MNIST. , , entropy sampling , . , .



. O(plogq), p — , q — . , .



BALD



, , — BALD sampling (Bayesian Active Learning by Disagreement). .



, query-by-committee (QBC). — . uncertainty sampling. , . QBC Monte Carlo Dropout, .



, , — . dropout . dropout , ( ). , dropout- (. 8). Monte Carlo Dropout (MC Dropout) . , . ( dropout) Mutual Information (MI). MI , , — , . .



. 8.  MC Dropout   BALD

. 8. MC Dropout BALD



, QBC MC Dropout uncertainty sampling. , (. 9).



. 9.      uncertainty sampling   QBC       ( -    ,   -    ,  -    )

. 9. uncertainty sampling ( QBC ) ( — , — , — )



BALD. , Mutual Information :



aBALD=H(y1,...,yn)E[H(y1,...,yn|ω)][5]



E[H(y1,...,yn|w)]=1ki=1nj=1kH(yi|wj)[6]



n — , k — .



(5) , — . , , . BALD . 10.



. 10.    BALD

. 10. BALD



, , .

query-by-committee BALD , . , uncertainty sampling. , — O(kplog(q)), p — , q — , k — , .



BALD tf.keras, . PyTorch, dropout , batch normalization , .



№2: batch normalization



batch normalization. batch normalization — , . , , , , batch normalization. , . , . BALD. (. 11).



. 11.   batch normalization   BALD

. 11. batch normalization BALD



, , .



batch normalization, . , .



Learning loss



. , . , .



, . — . , . learning loss, . , (. 12).



. 12.   Learning loss

. 12. Learning loss



learning loss . .

. , . «» learning loss: , , . ideal learning loss (. 13).



. 13.   ideal learning loss

. 13. ideal learning loss



, learning loss.

, . , , - , . :



  1. (2000 ), ;
  2. 10000 ( );
  3. ;
  4. ;
  5. 100 ;
  6. , , 1;
  7. .


, , . , ( margin sampling).



1.



p-value
loss -0,2518 0,0115
margin 0,2461 0,0136


, margin sampling — , , , . c .



: ?

, , (. 14).



. 14.    ideal learning loss        ideal learning loss

. 14. ideal learning loss ideal learning loss



, MNIST :



2. MNIST



p-value
loss 0,2140 0,0326
0,2040 0,0418


ideal learning loss , (. 15).



Zahl:  15. Trainieren Sie aktiv den Charakterklassifikator aus dem MNIST-Datensatz mit der idealen Lernverluststrategie.  Blaue Grafik - idealer Lernverlust, orange - passives Lernen

. 15. MNIST ideal learning loss. — ideal learning loss, —



, , , , . .



learning loss , uncertainty sampling: O(plogq), p — , q — . , , . , .





, . . , margin sampling — . 16.

Zahl:  16. Vergleich des Trainings mit zufällig ausgewählten Daten (passives Training) und mit Daten, die durch die Margin-Sampling-Strategie ausgewählt wurden

. 16. ( ) , margin sampling



: ( — margin sampling), — , , . ≈25 . . 25% — .



, . , , .



, , . , :



  • batch size;
  • , , — , batch normalization.



All Articles