[PYTHON] [Lecture de l'article] Apprentissage auto-supervisé Commentaire de l'article part1 ~ suivi dense Histoire du développement ~

introduction

Je vais vous expliquer les articles d'apprentissage auto-supervisés que j'entends souvent récemment. Cependant, il existe de nombreux articles auto-supervisés, donc cette fois je vais me concentrer sur la tâche appelée __dense tracking __ et suivre le processus de développement jusqu'à présent. Il y a cinq prochains articles à expliquer.

[1] Le suivi émerge en colorant les vidéos ^ 1 __ Abréviation Vid. Couleur __ [2] Correspondance d'apprentissage à partir de la cohérence du cycle du temps ^ 2 __ Abréviation CycleTime__ [3] Apprentissage auto-supervisé pour le flux de correspondance vidéo ^ 3 __ Abréviation CorrFlow__ [4]: Apprentissage auto-supervisé par tâches conjointes pour la correspondance temporelle ^ 4 __ Abréviation UVC__ [5]: MAST: Un traqueur auto-supervisé à mémoire augmentée ^ 5 __ Abréviation MAST__

Le cinquième article est le dernier article adopté dans CVPR2020, qui sera expliqué dans la partie 2 (à venir). Les livres du 1er au 4e sont répertoriés dans le 5e article comme méthode de comparaison d'auto-supervisé. Par conséquent, j'ai l'intention de suivre le déroulement de la tâche de suivi dense en lisant les parties 1 et 2 ensemble. スクリーンショット 2020-04-16 21.40.44.png Fig. 1 Comparaison des performances du suivi dense (système auto-supervisé) [^ 5]

Les chiffres utilisés sont tirés du papier source, sauf indication contraire.

Tracking Emerges by Colorizing Videos[1] Ceci est un papier représentatif de la vidéo auto-supervisée. Veuillez d'abord voir la démo.

L'idée de base de ce que vous faites dans cette démo est la même que celle de Optical Flow. (Explication facile à comprendre du flux optique) Il prédit à quel pixel dans le temps $ T $ frame correspond chaque pixel dans le temps $ T-1 $ frame. Si vous spécifiez le pixel de la cible que vous souhaitez suivre avec le masque dans la première image, vous pouvez suivre la cible en capturant le mouvement du pixel dans les images suivantes.

En plus du masque, le suivi des points clés tels que la position de l'articulation peut être effectué de la même manière. スクリーンショット 2020-04-10 18.51.49.png Figure 2 Données d'étiquette de suivi Ces tâches sont parfois appelées dense tracking dans le sens d'une association étroite de pixels entre les images.

Colorization Alors, comment l'apprendre? Les réseaux traditionnels tels que la prédiction de flux optique donnent le flux optique correct sous forme d'annotation. Cependant, cet article propose un apprentissage qui ne nécessite aucune annotation. C'est la colorisation vidéo. スクリーンショット 2020-04-05 18.51.51.png Figure 3 Restauration des couleurs à l'aide de la vidéo

Les deux trames de __Target et Reference sont converties en échelle de gris une fois, et le mouvement du pixel est prédit en passant chacune par le CNN pour obtenir la correspondance (pointeur) de la position du pixel. Ensuite, la couleur du cadre cible est prédite en la copiant à partir de la couleur du cadre de référence à l'aide du pointeur. __ En faisant cela, vous pouvez calculer la perte de savoir si la prédiction est correcte avec la coloration prédite et la couleur réelle du cadre cible, et l'apprentissage est possible sans l'annotation du flux optique.

Cette section décrit la méthode de calcul spécifique. Le but est de créer un pointeur pour copier la couleur du cadre cible à partir de la couleur du cadre de référence. Il peut être exprimé comme suit en le multipliant par une formule. $y_{j}=\sum_{i} A_{i j} c_{i}$

$ y_ {j} $ est la couleur prédite du jème pixel du cadre cible, et $ c_ {i} $ est la ième couleur de pixel du cadre de référence. Si la formule est difficile à comprendre, veuillez consulter l'article de référence Et $ A_ {i j} $ est la matrice de conversion du i-ème pixel au j-ème pixel. Autrement dit, un pointeur. Cette fois, l'élément de $ A_ {i, j} $ est mis à 0 ~ 1 par sofmax afin que plusieurs pixels puissent être référencés.

スクリーンショット 2020-04-05 18.00.40.png Figure 4 Structure du réseau Tout d'abord, comme le montre la figure ci-dessus, le cadre de référence et le cadre cible sont convertis en échelle de gris, puis chaque vecteur de fonction $ f $ est obtenu via CNN. Maintenant, pour créer un pointeur, il suffit de connaître la similitude entre le i-ème pixel de l'image de référence et le j-ème pixel de l'image cible, nous allons donc prendre le produit interne. $A_{i,j}=f_{i}^Tf_{j}$

Cependant, cette fois, je veux normaliser la similitude en tant que probabilité de 0 à 1, je vais donc utiliser celle multipliée par softmax. $A_{i j}=\frac{\exp \left(f_{i}^{T} f_{j}\right)}{\sum_{k} \exp \left(f_{k}^{T} f_{j}\right)}$

Maintenant que vous avez un pointeur, vous pouvez calculer l'erreur avec la couleur du cadre cible comme indiqué ci-dessous.

\min _{\theta} \sum_{j} \mathcal{L}\left(y_{j}, c_{j}\right)

En complément, dans cet article, au lieu de prédire la valeur RVB pour simplifier le problème, après l'avoir convertie en espace Lab, le clustering par kmeans est effectué dans le jeu de données, divisé en 16 types de clusters et de couleurs classées. Il est formulé par la classification (perte d'entropie croisée) de.

Ce qui précède est le cadre de l'auto-supervisé proposé dans cet article. Il est trop intelligent d'utiliser la couleur avant la conversion en tant qu'étiquette en la convertissant en échelle de gris. Nous avons réussi à créer automatiquement une étiquette en faisant bon usage de l'hypothèse que la même partie du même objet dans la vidéo a la même couleur (au moins entre des images courtes). A partir de maintenant, je vais suivre l'histoire du développement auto-supervisé à partir de cet article.

Learning Correspondence from the Cycle-consistency of Time [2] Ensuite, je voudrais vous présenter les articles du CVPR 2019. L'abréviation est Cycle Time. Contrairement à la colorisation, cette méthode génère automatiquement des étiquettes en utilisant l'idée de __Cycle de cohérence __. スクリーンショット 2020-04-06 9.25.37.png Figure 5 Cohérence du cycle

Pour faire simple, __Cycle de cohérence __ est l'idée que __ "Si vous allez et revenez, cela devrait correspondre à l'état d'origine" __. Comme le montre la figure ci-dessus, commencez par lire la vidéo à l'envers, prédisez la position au temps $ T-1 $ à partir de la position de l'objet au temps $ T $, et prédisez la position au temps $ T-2 $ à partir de la prédiction du temps $ T-1 $. Faire. Cette fois, si vous lisez en avant et prédisez l'heure $ T-1 $, $ T $ à partir de la prédiction du temps $ T-2 $, la position de l'objet au premier instant spécifié $ T $ et l'heure renvoyée par la lecture avant Les prédictions de position $ T $ doivent correspondre. C'est la cohérence du cycle pour comparer cela et calculer la perte.

Examinons de plus près le contenu de l'article.

Méthode proposée

スクリーンショット 2020-04-06 21.13.55.png Figure 6 Schéma du réseau

Les prédictions sont faites patch par patch. Autrement dit, pensons à prédire où le patch correctement coupé de $ T-i + 1 $ correspond à l'image de $ T-i + 2 $. Ceci est fait par le réseau $ \ mathcal {T} $, jetons donc un œil au contenu. $ \ mathcal {T} $ est d'abord l'image du temps $ T-i + 2 $, __ $ I_ {T-i + 2} $ __ et le patch __ coupé de l'image du temps $ T-i + 1 $ Passez à la fois $ p_ {T-i + 1} $ __ à travers un encodeur basé sur Resnet pour extraire la carte de caractéristiques respective __ $ x ^ I, x ^ p $ _. Ensuite, de la même manière que précédemment, si vous prenez le produit interne, vous pouvez obtenir la matrice de similitude $ A (i, j) . $A(j, i)=\frac{\exp \left(x^{I}(j)^{\top} x^{p}(i)\right)}{\sum{j} \exp \left(x^{I}(j)^{\top} x^{p}(i)\right)}$$

Cependant, cette fois, je veux voir non seulement la correspondance des couleurs mais aussi la correspondance des coordonnées de position, il est donc nécessaire de convertir les coordonnées.

Par conséquent, en passant la matrice $ A (j, i) $ à travers un réseau peu profond, le paramètre de conversion géométrique $ \ theta $ sera affiché. Après cela, si vous convertissez les coordonnées de $ I_ {T-i + 2} $ selon $ \ theta $, vous pouvez obtenir le patch prédit à $ T-i + 2 $.

De la même manière, prédisez $ T-i + 3 $ à partir de $ T-i + 2 $, et répétez le processus pour prédire la lecture séquentielle d'images $ i $ consécutives ($ ti $ à $ t-1 ). Vous pouvez écrire comme ça. $\mathcal{T}^{(i)}\left(x_{t-i}^{I}, x^{p}\right)=\mathcal{T}\left(x_{t-1}^{I}, \mathcal{T}\left(x_{t-2}^{I}, \ldots \mathcal{T}\left(x_{t-i}^{I}, x^{p}\right)\right)\right)$$

De plus, la lecture inversée est la même $\mathcal{T}^{(-i)}\left(x_{t-1}^{I}, x^{p}\right)=\mathcal{T}\left(x_{t-i}^{I}, \mathcal{T}\left(x_{t-i+1}^{I}, \ldots \mathcal{T}\left(x_{t-1}^{I}, x^{p}\right)\right)\right)$ Donc, si vous combinez ces deux formules, la perte de cohérence du cycle sera la suivante.

\mathcal{L}_{l o n g}^{i}=l_{\theta}\left(x_{t}^{p}, \mathcal{T}^{(i)}\left(x_{t-i+1}^{I}, \mathcal{T}^{(-i)}\left(x_{t-1}^{I}, x_{t}^{p}\right)\right)\right)

$ l_ {\ theta} $ est une fonction qui calcule l'écart des coordonnées du patch avec MSE.

En outre, non seulement la position mais également la différence entre les cartes des caractéristiques des patchs seront calculées.

\mathcal{L}_{s i m}^{i}=-\left\langle x_{t}^{p}, \mathcal{T}\left(x_{t-i}^{I}, x_{t}^{p}\right)\right\rangle

C'est l'idée de base de la cohérence du cycle.

Cependant, si cela est laissé tel quel, il ne sera pas possible de traiter les cas suivants où l'objet est caché une fois puis à nouveau visible. スクリーンショット 2020-04-06 22.04.19.png Fig.7 Lorsque la cohérence du cycle est difficile (à gauche: l'avant du visage ne peut pas être vu. À droite: le cadre est pris en sandwich)

En regardant la figure ci-dessus, il semble que même s'il est difficile d'associer entre des trames adjacentes, il est possible de les associer à des trames distantes. Par conséquent, dans cet article, non seulement les images adjacentes dans l'ordre chronologique, mais aussi la prédiction de sauter $ i $ images est incluse.

\mathcal{L}_{s k i p}^{i}=l_{\theta}\left(x_{t}^{p}, \mathcal{T}\left(x_{t}^{I}, \mathcal{T}\left(x_{t-i}^{I}, x_{t}^{p}\right)\right)\right)

C'était long, mais la perte finale est la somme des trois pertes ci-dessus,

\mathcal{L}=\sum_{i=1}^{k} \mathcal{L}_{s i m}^{i}+\lambda \mathcal{L}_{s k i p}^{i}+\lambda \mathcal{L}_{l o n g}^{i}

Peut être écrit comme. La formule est devenue plus longue, mais j'espère que vous pourrez avoir une idée de la cohérence du cycle.

Self-supervised Learning for Video Correspondence Flow[3] Dans les deux articles précédents, nous avons vu deux méthodes auto-supervisées, la colorisation et la cohérence du cycle. Ensuite, je présenterai un article qui combine les deux. L'abréviation est Color Flow.

スクリーンショット 2020-04-07 23.38.27.png Figure 8 Image de reconnaissance d'algorithme

Cet article est structuré pour lister les problèmes de l'article sur la colorisation vidéo introduit au début et proposer des méthodes pour les résoudre. En ce qui concerne les problèmes énumérés, il y a les deux points suivants.

__ Exercice 1 __: Étant donné que la correspondance est effectuée après que les informations de couleur ont été mises en échelle de gris, les informations de couleur spéciales sont manquantes. __ Exercice 2 __: À mesure que le cadre à prédire s'allonge, de fausses prédictions s'accumulent et les prédictions dérivent.

Regardons la méthode proposée basée sur cela.

Méthode proposée

Défi 1

Faire tomber une image couleur à une échelle de gris, puis la placer dans un CNN pour la prédiction est un gaspillage car les informations de couleur RVB ne peuvent pas être utilisées pour la prédiction correspondante. Cependant, il est nécessaire de mettre un certain goulot d'étranglement afin de se former comme auto-supervisé.

Par conséquent, dans cette méthode, au lieu de simplement passer à l'échelle de gris, le goulot d'étranglement est défini en définissant de manière aléatoire le canal RVB sur 0. (Reportez-vous à la figure ci-dessous) De plus, nous ajouterons des perturbations telles que la luminosité et le contraste.

スクリーンショット 2020-04-08 21.33.03.png Figure 9 Amélioration du goulot d'étranglement

En faisant cela, l'apprentissage devient possible tout en conservant certaines informations de couleur. Non seulement cela, vous pouvez vous attendre à l'effet d'abandon en réglant aléatoirement le canal sur 0, et vous pouvez automatiquement effectuer une augmentation des données en ajoutant un changement de luminosité. Vous pouvez vous attendre à une amélioration considérable de la robustesse par rapport à la simple réduction de celle-ci à l'échelle de gris. Au moment du test, c'est facile car il suffit de saisir RVB tel quel

Défi 2

Evidemment, il est difficile de prévoir si les images à comparer sont séparées dans le temps. Surtout lorsqu'il y a des occlusions et des changements de forme, il devient plus difficile de trouver un point correspondant. De plus, une fois que la prédiction est incorrecte, la trame suivante est prédite sur la base de cette prédiction, de sorte que les erreurs s'accumulent et la prédiction dérive régulièrement. Cet article propose de résoudre un tel problème en Long terme que la couleur de la prédiction __modèle est parfois utilisée comme couleur de la vérité terrain __.

\hat{I}_{n}=\left\{\begin{array}{ll}\psi\left(A_{(n-1, n)}, I_{n-1}\right) & (1) \\ \psi\left(A_{(n-1, n)}, \hat{I}_{n-1}\right) & (2)\end{array}\right.

L'équation (1) ci-dessus prédit la couleur $ \ hat {I} _ {n} $ au temps $ n $ en utilisant l'image $ I_ {n-1} $ au temps $ n-1 $.

Parfois, au lieu de $ I_ {n-1} $ comme dans (2), la prédiction précédente, $ \ hat {I} _ {n-1} $, est utilisée pour la prédiction. En faisant cela, la piste tente de se remettre de l'état imprévisible. Le pourcentage de couleurs prédictives utilisées augmentera à mesure que le modèle apprendra. Cette idée est appelée échantillonnage programmé et est une méthode largement utilisée dans Seq2Seq.

Enfin, la prévision à long terme est également limitée par la cohérence du cycle pour améliorer encore la robustesse. La perte finale ressemble à ceci:

L=\alpha_{1} \cdot \sum_{i=1}^{n} \mathcal{L}_{1}\left(I_{i}, \hat{l}_{i}\right)+\alpha_{2} \cdot \sum_{j=n}^{1} \mathcal{L}_{2}\left(I_{j}, \hat{l}_{j}\right)

$ L_ {1} et L_ {2} $ sont les erreurs de prédiction des couleurs dans le sens avant et arrière de la cohérence du cycle, respectivement. Notez que le papier n'utilise pas la perte de cohérence du cycle lui-même comme le deuxième papier. La colorisation est principale et la cohérence du cycle est utilisée comme régularisateur pour soutenir à long terme.

Joint-task Self-supervised Learning for Temporal Correspondence [4] Le prochain article est de NeuroIPS 2019. L'abréviation est UVC. (Je ne connaissais pas l'origine du nom, alors faites-le moi savoir si vous le savez) Maintenant, la caractéristique de cet article est que la prédiction de la boîte englobante est insérée avant que la correspondance de niveau de pixel ne soit effectuée. Voir la figure ci-dessous. スクリーンショット 2020-04-12 1.31.00.png Figure 10 Comparaison de la correspondance au niveau des pixels (figure du bas) et de la correspondance au niveau de la boîte (figure du haut)

La figure (b) correspond uniquement au niveau des pixels comme dans les articles précédents. Par exemple, en prenant la ligne jaune comme exemple, il y a deux personnes vêtues de vêtements rouges, donc la réponse est fausse. Comme vous pouvez le voir, la correspondance au niveau des pixels est efficace pour voir de petits changements dans les objets, mais elle ne convient pas pour la correspondance avec des éléments sémantiques de __object (invariant à la rotation et au point de vue). __ En revanche, la détection par la boîte englobante est à l'opposé et est considérée comme complémentaire l'une de l'autre. Par conséquent, devrions-nous d'abord détecter la zone de boîte comme le montre la figure (A), puis effectuer une prédiction de correspondance au niveau des pixels dans cette zone? Tel est le but du document.

Méthode proposée

スクリーンショット 2020-04-12 1.51.25.png Figure 11 Schéma du réseau

La zone de boîte est détectée dans la première moitié de la figure (localisation au niveau de la région), et la correspondance de pixels est effectuée dans la zone trouvée dans la seconde moitié (correspondance à grain fin).

Region level localization Le but est de trouver une bbox où le patch coupé dans le cadre de référence correspond au cadre cible. Comme dans l'exemple, les deux sont réduits à l'échelle de gris puis passés par CNN pour calculer la matrice de similitude familière. $A_{i j}=\frac{\exp \left(f_{1 i}^{\top} f_{2 j}\right)}{\sum_{k} \exp \left(f_{1 k}^{\top} f_{2 j}\right)}, \quad \forall i \in\left[1, N_{1}\right], j \in\left[1, N_{2}\right]$

Jusqu'à ce point, la procédure est similaire à la procédure décrite dans le deuxième article (Cycle Time). CycleTime a transmis un réseau supplémentaire à partir de cette matrice pour mapper les coordonnées de position. Cependant, dans cet article, $ A_ {ij} $ devrait être presque clairsemé (les éléments de la matrice sont 1 pour un seul pixel correspondant et 0 pour les autres éléments), et les coordonnées de position sont converties par la formule suivante. .. $l_{j}^{12}=\sum_{k=1}^{N_{1}} l_{k}^{11} A_{k j}, \quad \forall j \in\left[1, N_{2}\right]$

Où $ l_ {j} ^ {mn} $ sont les coordonnées de l'image $ m $ qui se déplace vers le $ j $ e pixel de l'image $ n $. Voir l'article supplémentaire 2

Vous pouvez utiliser cette formule pour savoir quelles coordonnées de pixel de $ p_ {1} $ se déplacent vers chaque pixel de $ f_ {2} $. D'un autre côté, si vous demandez $ l_ {j} ^ {21} $, vous pouvez trouver où se trouve $ p_ {1} $ dans $ f_ {2} $. Si vous faites la moyenne de $ l_ {j} ^ {21} $ ici, vous pouvez calculer le centre de la boîte englobante $ C ^ {21} $. C^{21}=\frac{1}{N_{1}} \sum_{i=1}^{N_{1}} l_{i}^{21} Puisque le centre de la boîte englobante a été estimé, définissons également la taille de la boîte. $ w $, $ h $ est simplement défini comme la valeur moyenne de l'écart entre chaque coordonnée de $ l_ {j} ^ {21} $ et le centre $ C . $\hat{w}=\frac{2}{N_{1}} \sum_{i=1}^{N_{1}}\left|x_{i}-C^{21}(x)\right|_{1}$$

Avec ce qui précède, nous avons réussi à estimer la bbox en $ f_ {2} $. La carte de caractéristiques $ p_ {2} $, qui est obtenue en coupant $ f_ {2} $ dans cette bbox, est utilisée pour la prochaine correspondance fine.

Fine-grained matching スクリーンショット 2020-04-12 10.40.32.png Figure 12 Réseau (section de correspondance fine)

Après cela, comme dans le premier article, vous pouvez calculer la matrice de similarité $ A_ {pp} $ avec $ p_ {1} $, $ p_ {2} $ et restaurer la couleur. Cependant, dans cet article, au lieu de copier la couleur directement avec le pointeur, la couleur est prédite par la méthode Encoder-Decoder (voir la figure). Dans cet article, je soutiens que des informations contextuelles plus globales peuvent être utilisées car l'avantage de ceci est l'incorporation par CNN plutôt que l'utilisation directe de $ A_ {pp} $. Loss Il existe trois principaux types de pertes à utiliser. Le premier est Loss__ si la restauration de la couleur est effectuée correctement (la formule n'est pas décrite dans l'article, mais elle a été comparée à la perte L1 si elle a été mise en œuvre) La seconde est une contrainte sur la prédiction bbox appelée concentration regularization. Cela essaiera de rapprocher les pixels autant que possible, en supposant que les pixels de la bbox seront plus rapprochés lorsqu'ils se déplacent. (Voir le côté gauche de la figure ci-dessous)

スクリーンショット 2020-04-12 10.53.24.png Figure 13 Image de deux régularisations utilisées pour la perte

L_{c}=\left\{\begin{array}{ll}0, & \left\|l_{j}^{21}(x)-C^{21}(x)\right\|_{1} \leq w \text { and }\left\|l_{j}^{21}(y)-C^{21}(y)\right\|_{1} \leq h \\ \frac{1}{N_{1}} \sum_{j=1}^{N_{1}}\left\|l_{j}^{21}-C^{21}\right\|_{2}, & \text { otherwise }\end{array}\right.

En pénalisant les points correspondants qui s'étendent au-delà de la bbox, il est possible d'empêcher qu'un seul lieu soit associé à un lieu complètement différent.

La troisième est une contrainte appelée Orthogonal regularization. C'est essentiellement la même chose que la cohérence du cycle entre deux cadres. L'idée était que la cohérence du cycle serait restaurée après la conversion de l'image 1 à l'image 2, puis de l'image 2 à l'image 1. Ici, la correspondance entre les coordonnées image à image $ l $ et la carte des caractéristiques $ f $ avait les relations suivantes, comme expliqué dans le chapitre bbox.

l^{\hat{1} 2}=l^{11} A_{1 \rightarrow 2}, \quad l^{\hat{1} 1}=l^{\hat{1} 2} A_{2 \rightarrow 1}
\hat{f}_{2}=f_{1} A_{1 \rightarrow 2}, \quad \hat{f}_{1}=\hat{f}_{2} A_{2 \rightarrow 1}

Ici, nous pouvons voir que $ A_ {1 \ rightarrow 2} ^ {-1} = A_ {2 \ rightarrow 1} $ doit être établi pour que la cohérence du cycle soit établie.

Maintenant, s'il y a une correspondance de pixel un à un ici, elle est indiquée par $ f_ {1} f_ {1} ^ {\ top} = f_ {2} f_ {2} ^ {\ top} $. Nous pouvons donc supposer que la quantité absolue de couleur (énergie de couleur) n'a pas changé. Voir l'article supplémentaire 3

En utilisant ce qui précède, $ A $ ira directement l'un à l'autre comme $ A_ {2 \ rightarrow 1} = A_ {1 \ rightarrow 2} ^ {-1} = A_ {1 \ rightarrow 2} ^ {\ top} $ Si c'est __, il peut être déduit que la cohérence du cycle est établie. <détails>

Dérivation </ summary>

\hat{f}_{2}=f_{1} A_{1 \rightarrow 2}

Inverser les deux côtés $f_{2}^{\top}=(f_{1} A_{1 \rightarrow 2})^{\top}=A_{1 \rightarrow 2}^{\top}f_{1}^{\top}$ Donc $f_{2}f_{2}^{\top}=f_{1} A_{1 \rightarrow 2}A_{1 \rightarrow 2}^{\top}f_{1}^{\top}$ Parce que cela satisfait $ f_ {1} f_ {1} ^ {\ top} = f_ {2} f_ {2} ^ {\ top} $ $ A_ {1 \ rightarrow 2} ^ {-1} = A_ {1 \ rightarrow 2} ^ {\ top} $ détient

Par conséquent, la perte de cohérence du cycle peut être facilement calculée en prenant la perte MSE de $ f_ {1} $ et $ A_ {1 \ rightarrow 2} ^ {\ top} A_ {1 \ rightarrow 2} f_ {1} $. C'est la régularisation orthogonale. Bien entendu, le même calcul est effectué pour la coordonnée $ l $.

parkour.gif lab-coat.gif

Exemple de reconnaissance (de l'auteur github)

Résumé

Jusqu'à présent, j'ai présenté quatre articles sur l'auto-supervisé pour un suivi dense.

Ces quatre livres ont beaucoup en commun dans des études similaires, mais je pense que vous pouvez ressentir la tendance à l'amélioration de la méthode de suivi dense petit à petit.

En tant que réflexion personnelle, je crains que l'explication avec beaucoup de formules mathématiques en ait fait l'article le plus difficile de mon histoire. (Veuillez commenter si vous avez des suggestions)

Cependant, il est vraiment intéressant et attrayant de permettre un apprentissage sans étiquette avec des idées intéressantes telles que la coloration de l'échelle de gris et la répétition de la lecture avant et arrière, j'espère donc que les lecteurs seront également en mesure de le comprendre.

Voir aussi la partie 2 à venir


  1. Vondrick, C., Shrivastava, A., Fathi, A., Guadarrama, S., & Murphy, K. (2018). Tracking emerges by colorizing videos. Lecture Notes in Computer Science (Including Subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics), 11217 LNCS, 402–419. https://doi.org/10.1007/978-3-030-01261-8_24 ↩︎

  2. Wang, X., Jabri, A., & Efros, A. A. (2019). Learning Correspondence from the Cycle-consistency of Time. Retrieved from https://arxiv.org/abs/1903.07593 ↩︎

  3. Lai, Z. (2019). Self-supervised Learning for Video Correspondence Flow. Retrieved from https://arxiv.org/abs/1905.00875 ↩︎

  4. Li, X., Liu, S., De Mello, S., Wang, X., Kautz, J., & Yang, M.-H. (2019). Joint-task Self-supervised Learning for Temporal Correspondence. Retrieved from https://arxiv.org/abs/1909.11895 ↩︎

Recommended Posts

[Lecture de l'article] Apprentissage auto-supervisé Commentaire de l'article part1 ~ suivi dense Histoire du développement ~
Bases de l'apprentissage avec un enseignant Partie 1-Régression simple- (Remarque)
Bases de l'apprentissage avec un enseignant Partie 3-Régression multiple (mise en œuvre) - (Notes) -
Python: Apprentissage supervisé: Hyper Paramètres Partie 1
Apprendre avec l'enseignant 1 Principes de base de l'apprentissage avec l'enseignant (classification)
Python: apprentissage supervisé: Hyper Paramètre partie 2