Die Praxis kontrastiver Lernalgorithmen in Zhuanzhuan

王林
Freigeben: 2023-04-11 21:25:12
nach vorne
1705 Leute haben es durchsucht


  • 1 Was ist kontrastives Lernen?
  • 1.1 Die Definition von kontrastivem Lernen #
  • 1.2 Prinzip des kontrastiven Lernens
  • 1.3 Klassische Serie von kontrastiven Lernalgorithmen
    2 Anwendung des kontrastiven Lernens
  • # 🎜 🎜#3 Vergleichende Lernpraxis in Zhuanzhuan
  • 3.1 CLs Praxis im Empfehlungsrückruf
  • 3.2 CLs Zukunftsplanung in Zhuanzhuan
  • # 🎜🎜#1 Was ist kontrastives Lernen? Die selbstüberwachte Lernmethode von Forschern und Wissenschaftlern wurde von großen Namen wie Bengio und LeCun auf der ICLR 2020 als die Zukunft der KI bezeichnet. Seitdem wurde sie sukzessive auf großen Konferenzen wie NIPS, ACL, KDD, CIKM, Google und Facebook vorgestellt , DeepMind, Alibaba, Tencent, Byte und andere große Unternehmen haben ebenfalls in CL-bezogene Arbeiten investiert, und auch SOTA zu einigen NLP-Themen steht seit einiger Zeit im Rampenlicht des KI-Kreises .
Die technische Quelle von CL stammt aus dem metrischen Lernen. Die allgemeine Idee ist: Definieren Sie die positiven und negativen Beispiele der Stichprobe sowie die Zuordnungsbeziehung (ordnen Sie die Entität einem neuen Raum zu) und Das Optimierungsziel besteht darin, die Entfernung der positiven Beispiele zur Zielprobe im Raum näher zu lassen, während die negativen Beispiele relativ weit entfernt sind. Aus diesem Grund sieht CL der Idee des vektorisierten Rückrufs sehr ähnlich, tatsächlich gibt es jedoch wesentliche Unterschiede zwischen den beiden. Der vektorisierte Rückruf ist eine Art überwachtes Lernen mit klaren Etikettendaten und einer stärkeren Betonung der Auswahl von Negativen Proben (bekannt als die „Doktrin“, dass negative Proben König sind); und CL ist ein Zweig des selbstüberwachten Lernens (ein Paradigma des unbeaufsichtigten Lernens), das keine manuellen Etiketteninformationen erfordert und die Daten selbst direkt als Überwachungsinformationen zum Lernen verwendet Proben charakteristischer Ausdruck von Daten, auf die dann in nachgelagerten Aufgaben verwiesen wird. Darüber hinaus ist die Kerntechnologie von CL die Datenerweiterung, die sich mehr auf die Erstellung positiver Stichproben konzentriert. Das folgende Bild ist ein abstraktes CL-Gesamtflussdiagramm. Die Datenverbesserungstechnologie im Bildbereich ist relativ intuitiv. Beispielsweise können Vorgänge wie Bilddrehung, Verdeckung, teilweise Extraktion, Einfärbung und Unschärfe ein neues Bild erzeugen, das im Allgemeinen dem Originalbild ähnelt, sich jedoch teilweise unterscheidet (d. h. das verbessertes neues Bild). .

1.2 Prinzip des kontrastiven Lernens

Wenn wir über das Prinzip von CL sprechen, müssen wir selbstüberwachtes Lernen erwähnen, Dies vermeidet die hohen Kosten der manuellen Annotation und die spärliche geringe Beschriftungsabdeckung, was das Erlernen allgemeiner Merkmalsdarstellungen erleichtert. Selbstüberwachtes Lernen kann in zwei Hauptkategorien unterteilt werden: generative Methoden und kontrastive Methoden. Der typische Vertreter der generativen Methode ist der Autoencoder, und der klassische Vertreter des kontrastiven Lernens ist SimCLR von ICLR 2020, das Merkmalsdarstellungen durch den Vergleich von (erweiterten) positiven und negativen Stichproben im Merkmalsraum lernt. Im Vergleich zu generativen Methoden besteht der Vorteil kontrastiver Methoden darin, dass sie keine Proben auf Pixelebene rekonstruieren müssen und nur die Unterscheidbarkeit im Merkmalsraum erlernen müssen, was die entsprechende Optimierung vereinfacht. Der Autor ist der Ansicht, dass sich die Wirksamkeit von CL hauptsächlich in der Differenzierbarkeit des Lernens

Elementdarstellung

widerspiegelt und das Lernen der Differenzierbarkeit auf den Konstruktionsideen positiver und negativer Stichproben sowie der spezifischen Modellstruktur beruht und Optimierungsziele. Die Praxis kontrastiver Lernalgorithmen in Zhuanzhuan

Kombiniert mit dem Implementierungsprozess von CL,

Dr. Zhang[2] Abstracts drei CL müssen Die Die beantworteten Fragen sind auch die typischen Merkmale, die es vom metrischen Lernen unterscheiden, nämlich (1) wie man positive und negative Beispiele konstruiert, das heißt, wie die Datenverbesserung implementiert wird, (2) wie man die Encoder-Mapping-Funktion erstellt, nicht nur so viel Bewahren Sie die Originalinformationen so weit wie möglich auf und verhindern Sie Kollapsprobleme. (3) So entwerfen Sie die derzeit häufig verwendete NCE-Verlustfunktion: Es ist nicht schwer zu erkennen, dass diese drei Grundfragen den drei Elementen der Modellierung entsprechen: Stichprobe, Modell und Optimierungsalgorithmus.

Die Praxis kontrastiver Lernalgorithmen in Zhuanzhuan

Aus der Verlustformel geht hervor, dass der Zählerteil betont, dass je näher der Abstand zum positiven Beispiel ist, desto besser und das S Die Funktion misst die Ähnlichkeit. Je näher der Abstand, desto größer der entsprechende S-Wert. Der Nenner betont, dass die entsprechende Unterscheidbarkeit umso besser ist, je weiter der Abstand vom negativen Beispiel entfernt ist.

Unter diesen drei Grundproblemen ist die Datenverbesserung die Kerninnovation des CL-Algorithmus. Verschiedene Verbesserungsmethoden sind die grundlegende Garantie für die Wirksamkeit des Algorithmus und die Identität der wichtigsten CL-Algorithmen wird normalerweise mit Hilfe von implementiert neuronale Netze; außer NCE-Verlust. Darüber hinaus gibt es andere Verlustvarianten, wie z. B. Google[3], das einen überwachten Kontrastverlust vorschlägt.

1.3 Classic Contrastive Learning Algorithm Series

CL ist ein Lernalgorithmus des selbstüberwachten Lernens. Wenn es um selbstüberwachtes Lernen geht, ist Bert wahrscheinlich ein unvermeidliches Thema im NLP-Bereich Bei vielen Problemen wurde ein Durchbruch erzielt. Da Selbstüberwachung im NLP erfolgreich sein kann, kann Computer Vision nicht auch erfolgreich sein. Tatsächlich stimulierte Berts Erfolg auf dem Gebiet des NLP auch direkt das Auftreten und die Entwicklung von CL im Bereich der Bilder. Angesichts der Tatsache, dass die Datenverbesserung im Bildbereich intuitiv durchgeführt werden kann, ist CL auch der erste, der Fortschritte im Bereich CV erzielt. Zu den Innovationspunkten des CL-SimCLR-Algorithmus gehören beispielsweise hauptsächlich ( 1) Erkundung der Kombination mehrerer verschiedener Datenverbesserungstechnologien. Die optimale wird ausgewählt. (2) Ein nichtlinearer Mapping-Projektor wird nach dem Encoder hinzugefügt, hauptsächlich weil die vom Encoder gelernte Vektordarstellung erweiterte Informationen enthält, während der Projektor darauf abzielt Entfernen Sie diesen Teil des Einflusses und kehren Sie zum Wesen der Daten zurück. Später implementierten Hintons Studenten SimCLR v2 auf Basis von SimCLR. Die Hauptverbesserung lag in der Netzwerkstruktur des Encoders. Sie griffen auch auf die Idee der Memory Bank zurück, die von MoCo verwendet wurde, um SOTA weiter zu verbessern.

Tatsächlich schlug Kaiming Ende 2019 einen weiteren klassischen Algorithmus für kontrastives Lernen vorMoCo[4] Die Hauptidee besteht darin, dass der Vergleich zwischen positiven und negativen Proben durchgeführt wird Eine Erhöhung der Anzahl negativer Stichproben kann die Schwierigkeit der Lernaufgabe erhöhen und somit die Modellleistung verbessern. Dies ist eine klassische Idee zur Lösung dieses Problems, kann jedoch das Problem der inkonsistenten Darstellung nicht vermeiden schlägt vor, Impulse zur Aktualisierung der Encoder-Parameter zu verwenden und so das Problem der inkonsistenten Codierung alter und neuer Kandidatenproben zu lösen. Später schlug Kaiming He MoCo v2 auf der Grundlage von MoCo vor (nachdem SimCLR vorgeschlagen wurde). Das Hauptgerüst des Modells wurde nicht geändert und Details wie die Datenverbesserungsmethode, die Encoderstruktur und die Lernrate wurden optimiert.

2 Anwendung des kontrastiven Lernens

Kontrastives Lernen ist nicht nur eine beliebte Forschungsrichtung in der Wissenschaft in vielen Bereichen wie Bildern, Text und Multimodalität, sondern wird auch in der Industrie, vertreten durch Empfehlungssysteme, angewendet.

Google wendet CL auf das Empfehlungssystem an. Google SSL. [5] Seine Datenverbesserungstechnologie verwendet hauptsächlich die Methoden Random Feature Masking (RFM) und Corlated Feature Masking (CFM) (CFM löst das Problem, dass RFM bis zu einem gewissen Grad ungültige Varianten konstruieren kann), und dann wird CL mit den Zwillingstürmen in Form von kombiniert Ein Hilfsturm. Der Gesamtprozess ist in der folgenden Abbildung dargestellt. Während des Trainingsprozesses des Modells stammen die Elemente der Hauptaufgabe hauptsächlich aus dem Belichtungsprotokoll ist auch für die beliebten Elemente im Kopf geeignet. Um den Matthew-Effekt zu beseitigen, muss die Beispielkonstruktion in der Nebenaufgabe eine andere Verteilung als die Hauptaufgabe berücksichtigen von Zhuanzhuan, um eine vollständige Abdeckung der Modelllernergebnisse sicherzustellen.

Die Datenverbesserung ist nicht auf die Artikelseite beschränkt,

Die Praxis kontrastiver Lernalgorithmen in ZhuanzhuanAlibaba-Seq2seq

[6]

wendet die Idee von ​​​​CL auf das Sequenzempfehlungsproblem an, das heißt, die Benutzerverhaltenssequenz eingeben und vorhersagen Nächstes mögliches interaktives Element. Konkret wird die Datenanreicherung hauptsächlich auf die Merkmale der Benutzerverhaltenssequenzen gemäß der Zeitreihe angewendet. Als Darstellung des Benutzers wird diese nach der Datenanreicherung in die Zwillingssequenz eingespeist. Je ähnlicher die endgültigen Ausgabeergebnisse sind, desto besser. Um die vielfältigen Interessen der Benutzer explizit zu modellieren, extrahiert dieser Artikel gleichzeitig mehrere Vektoren im Encoder-Teil, anstatt sie in einen Benutzervektor zu komprimieren. Denn durch die Aufteilung von Teilsequenzen und die Konstruktion positiver und negativer Beispiele verfügen Benutzer natürlich über Vektordarstellungen mehrerer Verhaltenssequenzen. In positiven Beispielen liegt der Vektor des vorherigen Teils des historischen Verhaltens des Benutzers nahe am Vektor des letzten Teils das historische Verhalten, und im Negativbeispiel ist der Abstand zwischen verschiedenen Benutzern relativ groß, und selbst für denselben Benutzer sind die Vektordarstellungen von Produkten in verschiedenen Kategorien relativ weit entfernt. CL kann auch in Kombination mit anderen Lernparadigmen angewendet werden, Diagrammvergleichslernen

[7]

, der Gesamtrahmen ist in der Abbildung unten dargestellt

GCL verbessert Diagrammdaten normalerweise durch zufälliges Löschen von Punkten oder Kanten im Diagramm, während der Autor dieses Artikels es vorzieht, wichtige Strukturen und Attribute unverändert zu lassen, und Störungen an unwichtigen Kanten oder Knoten auftreten.

3 Kontrastives Lernen hat sich in der Praxis von Zhuanzhuan

im Bildbereich als erfolgreich erwiesen, und es ist auch im Textbereich möglich, beispielsweise mit dem Meituan-ConSERT[8]-Algorithmus, in Experimenten an Satzsemantische Matching-Aufgaben wurden verglichen. Es ist 8 % höher als das vorherige SOTA (BERT-Flow) und kann bei einer kleinen Anzahl von Stichproben immer noch eine gute Leistungsverbesserung zeigen. Dieser Algorithmus wendet die Datenverbesserung auf die Einbettungsschicht an und verwendet die Methode der impliziten Generierung erweiterter Stichproben. Insbesondere werden vier Datenverbesserungsmethoden vorgeschlagen: Adversarial Attack, Token Shuffling, Cutoff und Dropout. Diese vier Methoden werden alle durch Anpassen der Einbettungsmatrix erhalten. Dies ist effizienter als die explizite Erweiterungsmethode.

3.1 CLs Praxis bei der Empfehlung von Rückrufen

Die Zhuanzhuan-Plattform setzt sich für die Förderung der besseren Entwicklung einer kohlenstoffarmen Kreislaufwirtschaft ein und kann alle Warenkategorien abdecken. Besonders gut hat sie in den letzten Jahren im Bereich Mobiltelefone abgeschnitten 3C. CLs Praxis im Zhuanzhuan-Empfehlungssystem wählt auch eine textbasierte Anwendungsidee. In Anbetracht der einzigartigen Eigenschaften von Gebrauchtwaren gehören zu den Problemen, die gelöst werden müssen, (1) die verwaisten Eigenschaften von Gebrauchtwaren, die den Vektor ausmachen der ID-Klasse nicht anwendbar; (2) Wie die Datenverbesserung implementiert wird; (3) Wie positive und negative Beispiele aufgebaut sind (4) Wie ist die Modellstruktur des Encoders (einschließlich Verlustdesigns)? Um diese vier Probleme anzugehen, werden wir sie in Verbindung mit dem allgemeinen Flussdiagramm unten ausführlich erläutern.

Angesichts des Problems der verwaisten Attribute von Gebrauchtprodukten verwenden wir textbasierte Vektoren als Darstellung des Produkts. Wir verwenden die Textbeschreibung der Produktsammlung (einschließlich Titel und Inhalt), trainieren das word2vec-Modell und erhalten die Vektordarstellung des Produkts durch Pooling basierend auf dem Wortvektor.

Der Auto-Encoder-Algorithmus ist eine der am häufigsten verwendeten Methoden zur Datenverbesserung im Bereich des Textvergleichslernens (darüber hinaus gibt es verschiedene Ideen wie maschinelle Übersetzung und CBERT. Wir verwenden auch den AE-Algorithmus, um das Modell zu trainieren und zu lernen). Produktvektoren und verwenden Sie den Zwischenvektor des Algorithmus als erweiterte Vektordarstellung des Produkts, und es gibt ein positives Beispiel.

Das Produktionsprinzip von Negativbeispielen besteht darin, unterschiedliche Produkte innerhalb der Charge zufällig auszuwählen. Die Grundlage für die Beurteilung ähnlicher Produkte wird basierend auf dem hinteren Klickverhalten des Benutzers berechnet. In den Recall-Ergebnissen von Empfehlungssystemen, die durch CF (Collaborative Filtering) repräsentiert werden, gelten Produktkombinationen, die durch gemeinsames Klickverhalten erinnert werden können, als ähnlich, andernfalls als unähnlich. Der Grund, warum die Verhaltensbasis zur Bestimmung der Ähnlichkeit verwendet wird, besteht einerseits darin, das Verhalten des Benutzers vorzustellen und eine organische Kombination von Text und Verhalten zu erreichen, andererseits auch darin, den Geschäftszielen so weit wie möglich zu entsprechen.

Speziell für den Encoder-Teil verwenden wir eine Doppelturmstruktur ähnlich dem Zwillingsnetzwerk. Wir speisen die Textvektoren der Proben (positiv oder positiv oder negativ), um das Klassifizierungsmodell zu trainieren. Die Türme teilen diese Netzwerkparameter und optimieren die Modellparameter durch Optimierung des Kreuzentropieverlusts. In der tatsächlichen Branche ist das Trainingsziel des Twin-Tower-Modells in den meisten Empfehlungssystemen das hintere Verhalten des Benutzers (Klicks, Sammlungen, Bestellungen usw.), und unser Trainingsziel besteht darin, ob die Proben ähnlich sind oder nicht Wir übernehmen die Form eines Zwillingsnetzwerks. Dies liegt auch daran, dass dadurch die Abdeckung der Lernergebnisse sichergestellt werden kann.

Nach den herkömmlichen Vorstellungen von CL wird der Eingabevektor des endgültigen Encoder-Teils als Vektordarstellung des Produkts extrahiert, die beim Rückruf, der groben Rangfolge und sogar der feinen Rangfolge des Empfehlungssystems weiter angewendet werden kann. Derzeit wurde das Rückrufmodul des Zhuanzhuan-Empfehlungssystems implementiert, das die Online-Bestell- und Taschenrate um mehr als 10 % erhöht hat.

3.2 CLs Zukunftsplanung in Zhuanzhuan

Durch manuelle Auswertung und Online-AB-Experimente wurde die Wirksamkeit der erlernten Vektordarstellung von CL vollständig bestätigt. Nachdem das Rückrufmodul implementiert wurde, kann es in anderen Modulen des Empfehlungssystems verwendet werden andere Algorithmusszenarien Durch Erweiterung. Das Erlernen der Produktvektordarstellung im Vorfeld des Trainings (natürlich können Sie auch die Vektordarstellung des Benutzers erlernen) ist nur ein Anwendungspfad. CL bietet durch Datenverbesserung und -vergleich eher einen Lernrahmen Diese Idee kann natürlich in das Ranking-Modul des Empfehlungssystems eingeführt werden, da das Ranking-Problem auch als Differenzierbarkeitsproblem von Elementen verstanden werden kann.

Über den Autor

Li Guangming, leitender Algorithmusingenieur. Beteiligte sich an der Konstruktion von Algorithmussystemen für Zhuanzhuan-Suchalgorithmen, Empfehlungsalgorithmen, Benutzerporträts und andere Systeme und verfügt über praktische Anwendungen in GNN, Lernen kleiner Stichproben, vergleichendem Lernen und anderen verwandten Bereichen.

Referenzen

[1]SimCLR: A_Simple_Framework_for_Contrastive_Learning_of_Visual_Representations

[2]Zhang Junlin: ​​https://www.php.cn/link/be7ecaca 534f98c4ca134e527b12d4c8​

[ 3]Google: Supervised_Contrastive_Learning

[4]MoCo: Momentum_Contrast_for_Unsupervised_Visual_Representation_Learning

[5]SSL: Self-supervised_Learning_for_Large-scale_Item_Recommendations

[6]Ali-Seq2seq: Disentangled_Self-Supervision_in_Sequential_Recommenders

[7] GCL: Graph_contrastive_learning_with_adaptive_augmentation

[8]ConSERT: ConSERT:_A_Contrastive_Framework_for_Self-Supervised_Sentence_Representation_Transfer

Das obige ist der detaillierte Inhalt vonDie Praxis kontrastiver Lernalgorithmen in Zhuanzhuan. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:51cto.com
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage