Change Password

Please enter the password.
Please enter the password. Between 8-64 characters. Not identical to your email address. Contain at least 3 of: uppercase, lowercase, numbers, and special characters.
Please enter the password.
Submit

Change Nickname

Current Nickname:
Submit

Apply New License

License Detail

Please complete this required field.

  • Ultipa Graph V4

Standalone

Please complete this required field.

Please complete this required field.

The MAC address of the server you want to deploy.

Please complete this required field.

Please complete this required field.

Cancel
Apply
ID
Product
Status
Cores
Applied Validity Period(days)
Effective Date
Excpired Date
Mac Address
Apply Comment
Review Comment
Close
Profile
  • Full Name:
  • Phone:
  • Company:
  • Company Email:
  • Country:
  • Language:
Change Password
Apply

You have no license application record.

Apply
Certificate Issued at Valid until Serial No. File
Serial No. Valid until File

Not having one? Apply now! >>>

Product Created On ID Amount (USD) Invoice
Product Created On ID Amount (USD) Invoice

No Invoice

v4.5
Search
    Français
    v4.5

      Optimisation du Skip-gram

      Vue d’ensemble

      Le modèle Skip-gram de base est presque impraticable en raison de diverses exigences de calcul.

      Les tailles des matrices W et W dépendent de la taille du vocabulaire (par exemple, V=10000) et de la dimension de l'intégration (par exemple, N=300), où chaque matrice contient souvent des millions de poids (par exemple, VN=3 millions) chacun ! Le réseau neuronal de Skip-gram devient ainsi très grand, nécessitant un nombre immense d'échantillons d'entraînement pour ajuster ces poids.

      De plus, à chaque étape de rétropropagation, des mises à jour sont appliquées à tous les vecteurs de sortie (vw) pour la matrice W, bien que la plupart de ces vecteurs ne soient pas liés au mot cible et aux mots de contexte. Étant donné la taille importante de W, ce processus de descente de gradient sera très lent.

      Un autre coût important provient de la fonction Softmax, qui engage tous les mots dans le vocabulaire pour calculer le dénominateur utilisé pour la normalisation.

      T. Mikoliv et d'autres ont introduit des techniques d'optimisation en conjonction avec le modèle Skip-gram, y compris sous-échantillonnage et échantillonnage négatif. Ces approches accélèrent non seulement le processus d'entraînement mais aussi améliorent la qualité des vecteurs d'intégration.

      Sous-échantillonnage

      Les mots communs dans un corpus comme "the", "and", "is" posent certains problèmes :

      • Ils ont une valeur sémantique limitée. Par exemple, le modèle bénéficie plus de la co-occurrence de "France" et "Paris" que de la co-occurrence fréquente de "France" et "the".
      • Il y aura un excès d'échantillons d'entraînement contenant ces mots par rapport à la quantité nécessaire pour former les vecteurs correspondants.

      L'approche de sous-échantillonnage est utilisée pour y remédier. Pour chaque mot du jeu d'entraînement, il y a une chance de le rejeter, et les mots moins fréquents sont rejetés moins souvent.

      Tout d'abord, calculez la probabilité de conserver un mot par :

      f(wi) est la fréquence du i-ième mot, α est un facteur qui influence la distribution et par défaut est à 0.001.

      Ensuite, une fraction aléatoire entre 0 et 1 est générée. Si P(wi) est plus petite que ce nombre, le mot est rejeté.

      Par exemple, lorsque α=0.001, alors pour f(wi)0.0026, P(wi)1, donc les mots avec une fréquence de 0.0026 ou moins seront gardés à 100 %. Pour une fréquence de mot élevée comme f(wi)=0.03, P(wi)=0.22.

      Dans le cas où α=0.002, alors les mots avec une fréquence de 0.0052 ou moins seront gardés à 100 %. Pour la même fréquence de mot élevée f(wi)=0.03, P(wi)=0.32.

      Ainsi, une valeur plus élevée de α augmente la probabilité que les nodes fréquents soient sous-échantillonnés.

      Par exemple, si le mot "a" est rejeté et n'est pas ajouté à la phrase d'entraînement "Graph is a good way to visualize data", les résultats d'échantillonnage pour cette phrase n'incluront aucun échantillon où "a" sert de mot cible ou de mot de contexte.

      Échantillonnage négatif

      Dans l'approche de l'échantillonnage négatif, lorsqu'un mot de contexte positif est échantillonné pour un mot cible, un total de k mots est simultanément choisi comme échantillons négatifs.

      Par exemple, considérons le corpus simple lors de la discussion du modèle Skip-gram de base. Ce corpus comprend un vocabulaire de 10 mots : graph, is, a, good, way, to, visualize, data, very, at. Lorsque l'échantillon positif (target, content): (is, a) est généré en utilisant une fenêtre glissante, nous sélectionnons k=3 mots négatifs graph, data et at pour l'accompagner :

      Mot Cible Mot de Contexte Sortie Attendue
      is Échantillon Positif a 1
      Échantillons Négatifs graph 0
      data 0
      at 0

      Avec l'échantillonnage négatif, l'objectif d'entraînement du modèle passe de la prédiction des mots de contexte pour le mot cible à une tâche de classification binaire. Dans cette configuration, la sortie pour le mot positif est attendue comme 1, tandis que les sorties pour les mots négatifs sont attendues comme 0; d'autres mots qui ne tombent dans aucune de ces catégories sont ignorés.

      En conséquence, lors du processus de rétropropagation, le modèle met à jour uniquement les vecteurs de sortie vw associés aux mots positifs et négatifs pour améliorer la performance de classification du modèle.

      Considérons le scénario où V=10000 et N=300. Lorsqu'on applique l'échantillonnage négatif avec le paramètre k=9, seuls 300×10=3000 poids individuels dans W nécessiteront des mises à jour, ce qui représente 0.1% des 3 millions de poids à mettre à jour sans échantillonnage négatif !

      Nos expériences indiquent que les valeurs de k dans la gamme 5~20 sont utiles pour les petits ensembles de données d'entraînement, tandis que pour les grands ensembles de données, le k peut être aussi petit que 2~5. (Mikolov et al.)

      Une distribution probabiliste Pn est nécessaire pour sélectionner les mots négatifs. Le principe fondamental est de privilégier les mots fréquents dans le corpus. Cependant, si la sélection est basée uniquement sur la fréquence des mots, elle peut entraîner une surreprésentation des mots à haute fréquence et une négligence des mots à basse fréquence. Pour remédier à ce déséquilibre, une distribution empirique est souvent utilisée impliquant l'élevation de la fréquence des mots à la puissance de 34:

      f(wi) est la fréquence du i-ième mot, le souscript n de P indique le concept de bruit, la distribution Pn est également appelée distribution de bruit.

      Dans les cas extrêmes où le corpus contient seulement deux mots, avec des fréquences de 0.9 et 0.1 respectivement, l'utilisation de la formule ci-dessus donnerait des probabilités ajustées de 0.84 et 0.16. Cet ajustement contribue dans une certaine mesure à atténuer le biais de sélection inhérent découlant des différences de fréquence.

      Travailler avec des grands corpus peut poser des défis en termes d'efficacité computationnelle pour l'échantillonnage négatif. Par conséquent, nous adoptons en outre un paramètre resolution pour redimensionner la distribution de bruit. Une valeur plus élevée de resolution fournira une approximation plus proche de la distribution de bruit originale.

      Entraînement du Modèle Optimisé

      Propagation Avant

      Nous allons démontrer avec le mot cible is, le mot positif a, et les mots négatifs graph, data et at:

      Avec l'échantillonnage négatif, le modèle Skip-gram utilise la variation suivante de la fonction Softmax, qui est en réalité la fonction Sigmoid (σ) de uj. Cette fonction mappe tous les composants de u dans la plage de 0 à 1:

      Rétropropagation

      Comme expliqué, la sortie pour le mot positif, notée y0, est attendue à 1; tandis que les k sorties correspondant aux mots négatifs, notées yi, sont attendues à 0. Par conséquent, l'objectif de l'entraînement du modèle est de maximiser à la fois y0 et 1-yi, ce qui peut être interprété de manière équivalente comme maximisant leur produit:

      La fonction de perte E est ensuite obtenue en transformant le dessus en un problème de minimisation:

      Prenez la dérivée partielle de E par rapport à u0 et ui:

      Eu0 et Eui ont une signification similaire à Euj dans le modèle Skip-gram original, qui peut être compris comme soustrayant le vecteur attendu du vecteur de sortie:

      Le processus de mise à jour des poids dans les matrices W et W est simple. Vous pouvez vous référer à la forme originale de Skip-gram. Cependant, seuls les poids w11, w21, w13, w23, w18, w28, w1,10 et w2,10 dans W et les poids w21 et w21 dans W sont mis à jour.

      Please complete the following information to download this book
      *
      公司名称不能为空
      *
      公司邮箱必须填写
      *
      你的名字必须填写
      *
      你的电话必须填写