Maison  >  Article  >  Périphériques technologiques  >  Sept questions d'entretien technique Cool GenAI et LLM

Sept questions d'entretien technique Cool GenAI et LLM

PHPz
PHPzoriginal
2024-06-07 10:06:29471parcourir

七个很酷的GenAI & LLM技术性面试问题

Si vous souhaitez en savoir plus sur l'AIGC, veuillez visiter :

51CTO AI Chonglou

est différente des banques de questions traditionnelles que l'on trouve partout sur Internet. -la pensée de la boîte.

Les grands modèles de langage (LLM) sont de plus en plus importants dans les domaines de la science des données, de l'intelligence artificielle générative (GenAI) et de l'intelligence artificielle. Ces algorithmes complexes améliorent les compétences humaines et stimulent l’efficacité et l’innovation dans de nombreux secteurs, devenant ainsi la clé permettant aux entreprises de rester compétitives. LLM a un large éventail d'applications. Il peut être utilisé dans des domaines tels que le traitement du langage naturel, la génération de texte, la reconnaissance vocale et les systèmes de recommandation. En apprenant à partir de grandes quantités de données, LLM est capable de générer du texte et de répondre à des questions, d'engager des conversations avec des humains et de fournir des informations précises et précieuses. GenAI s'appuie sur des algorithmes et des modèles LLM, qui peuvent générer une variété de fonctionnalités créatives. Cependant, bien que GenAI et LLM soient de plus en plus courants, nous manquons toujours de ressources détaillées permettant de comprendre en profondeur leur complexité. Les nouveaux arrivants sur le lieu de travail ont souvent l'impression d'être coincés en territoire inconnu lorsqu'ils mènent des entretiens sur les fonctions et les applications pratiques de GenAI et LLM.

À cette fin, nous avons compilé ce guide pour enregistrer les questions d'entretien technique sur GenAI & LLM. Complet avec des réponses détaillées, ce guide est conçu pour vous aider à vous préparer aux entretiens, à aborder les défis avec confiance et à mieux comprendre l'impact et le potentiel de GenAI et LLM pour façonner l'avenir de l'IA et de la science des données.

1. Comment créer un graphe de connaissances à l'aide d'un dictionnaire intégré en Python ?

Une solution consiste à utiliser un hachage (un dictionnaire en Python, également appelé table clé-valeur), où les clés sont des mots, des jetons, des concepts. ou une catégorie, telle que « mathématiques ». Chaque clé correspond à une valeur, qui est elle-même un hachage : un hachage imbriqué. La clé dans le hachage imbriqué est également un mot lié à la clé parent dans le hachage parent, tel qu'un mot comme « calcul ». La valeur est un poids : « calcul » a une valeur élevée car « calcul » et « mathématiques » sont liés et apparaissent souvent ensemble ; à l'inverse, « restaurants » a une valeur faible car « restaurants » et « mathématiques » apparaissent rarement ensemble.

Dans LLM, le hachage imbriqué peut être l'intégration (une méthode de mappage de données de haute dimension dans un espace de basse dimension, généralement utilisée pour convertir des données discrètes et non continues en représentation vectorielle continue afin de faciliter la gestion du traitement informatique). Étant donné que le hachage imbriqué n'a pas de nombre fixe d'éléments, il gère bien mieux les graphiques discrets que les bases de données vectorielles ou les matrices. Il apporte des algorithmes plus rapides et nécessite moins de mémoire.

2. Comment effectuer un regroupement hiérarchique lorsque les données contiennent 100 millions de mots-clés ?

Si vous souhaitez regrouper des mots-clés, alors pour chaque paire de mots-clés {A, B}, vous pouvez calculer la similarité A et B entre deux mots à apprendre. à quel point ils sont semblables. L’objectif est de générer des clusters de mots-clés similaires.

Les bibliothèques Python standard telles que Sklearn fournissent un clustering agglomératif, également connu sous le nom de clustering hiérarchique. Cependant, dans cet exemple, ils nécessitent généralement une matrice de distance de 100 millions x 100 millions. Cela ne fonctionne évidemment pas. En pratique, les mots aléatoires A et B apparaissent rarement ensemble, la matrice de distance est donc très discrète. Les solutions incluent l'utilisation de méthodes adaptées aux graphes discrets, telles que l'utilisation de hachages imbriqués évoqués à la question 1. Une de ces approches est basée sur la détection du regroupement de composants connectés dans le graphique sous-jacent.

3. Comment explorer un grand référentiel comme Wikipédia pour récupérer la structure sous-jacente, pas seulement les entrées individuelles ?

Ces référentiels intègrent tous des éléments structurés dans des pages Web, rendant le contenu plus intéressant qu'il n'y paraît à première vue. Certains éléments structurels sont invisibles à l’œil nu, comme les métadonnées. Certains sont visibles et également présents dans les données analysées, comme les index, les éléments associés, le fil d'Ariane ou les catégories. Vous pouvez rechercher ces éléments individuellement pour créer un bon graphe de connaissances ou une bonne taxonomie. Mais vous souhaiterez peut-être écrire votre propre robot d'exploration à partir de zéro plutôt que de vous fier à des outils comme Beautiful Soup. Les LLM riches en informations structurelles (comme xLLM) fournissent de meilleurs résultats. De plus, si votre référentiel manque de structure, vous pouvez étendre vos données récupérées avec des structures récupérées à partir de sources externes. Ce processus est appelé « augmentation de structure ».

4. Comment améliorer les intégrations LLM avec des jetons contextuels

Les intégrations sont composées de jetons ; ce sont les plus petits éléments de texte que vous pouvez trouver dans n'importe quel document ; Vous n'êtes pas nécessairement obligé d'avoir deux jetons, comme « data » et « science », vous pouvez en avoir quatre : « data^science », « data », « science » et « data~science ». La dernière représente la découverte du terme « data science ». La première signifie que les « données » et la « science » sont trouvées, mais à des positions aléatoires dans un paragraphe donné, plutôt qu'à des positions adjacentes. Ces jetons sont appelés jetons multiples ou jetons contextuels. Ils offrent une belle redondance, mais si vous ne faites pas attention, vous pouvez vous retrouver avec d'énormes intégrations. Les solutions incluent la suppression des jetons inutiles (conserver le plus long) et l'utilisation d'intégrations de taille variable. Le contenu contextuel peut aider à réduire les illusions du LLM.

5. Comment mettre en œuvre l'auto-réglage pour éliminer de nombreux problèmes associés à l'évaluation et à la formation des modèles

Cela s'applique aux systèmes basés sur une IA explicable, et non à des boîtes noires de réseaux neuronaux ? Permettez à l'utilisateur de l'application de sélectionner des hyperparamètres et de marquer ceux qu'il aime. Utilisez ces informations pour trouver les hyperparamètres idéaux et définissez-les sur les valeurs par défaut. Il s’agit d’un apprentissage par renforcement automatisé basé sur les entrées de l’utilisateur. Il permet également à l'utilisateur de sélectionner sa combinaison préférée en fonction des résultats souhaités, rendant ainsi votre application personnalisable. Au sein d'un LLM, les performances peuvent être encore améliorées en permettant aux utilisateurs de sélectionner des sous-LLM spécifiques (par exemple en fonction du type ou de la catégorie de recherche). L'ajout d'un score de pertinence à chaque élément de votre sortie peut également vous aider à affiner votre système.

6. Comment augmenter la vitesse de recherche de vecteurs de plusieurs ordres de grandeur ?

En LLM, l'utilisation de plongements de longueur variable réduit considérablement la taille des plongements. Par conséquent, cela accélère la recherche d’intégrations backend similaires à celles capturées dans l’invite frontend. Cependant, cela peut nécessiter un autre type de base de données, tel que des tables clé-valeur. Réduire la taille des jetons et le tableau des intégrations est une autre solution : dans un système comportant des milliards de jetons, 95 % des jetons ne seront jamais extraits pour répondre à une invite. Ce ne sont que du bruit, alors débarrassez-vous-en. L'utilisation de jetons de contexte (voir question 4) est une autre façon de stocker des informations de manière plus compacte. Enfin, la recherche du voisin le plus proche (ANN) est utilisée sur les intégrations compressées. La version probabiliste (pANN) peut s'exécuter beaucoup plus rapidement, voir la figure ci-dessous. Enfin, utilisez un mécanisme de mise en cache pour stocker les intégrations ou requêtes les plus fréquemment consultées afin de meilleures performances en temps réel.

七个很酷的GenAI & LLM技术性面试问题

Recherche probabiliste approximative du voisin le plus proche (pANN)

Selon l'expérience, réduire la taille de l'ensemble d'entraînement de 50 % obtiendra de meilleurs résultats et l'effet de surapprentissage sera considérablement réduit. En LLM, il est préférable de choisir quelques bonnes sources d'entrée plutôt que de rechercher sur tout Internet. Avoir un LLM dédié pour chaque catégorie de niveau supérieur, plutôt qu'une taille unique, réduit encore le nombre d'intégrations : chaque astuce cible un sous-LLM spécifique, plutôt que l'ensemble de la base de données.

7. Quelle est la fonction de perte idéale pour obtenir les meilleurs résultats de votre modèle

La meilleure solution est d'utiliser la métrique d'évaluation du modèle comme fonction de perte ? La raison pour laquelle cela est rarement fait est que vous avez besoin d'une fonction de perte qui peut être mise à jour très rapidement chaque fois qu'un neurone est activé dans le réseau neuronal. Dans le contexte des réseaux de neurones, une autre solution consiste à calculer la métrique d'évaluation après chaque époque et à rester sur la solution générée par l'époque avec le meilleur score d'évaluation, plutôt que sur la solution générée par l'époque avec la plus petite perte.

Je travaille actuellement sur un système où la métrique d'évaluation et la fonction de perte sont les mêmes. Non basé sur des réseaux de neurones. Initialement, ma métrique d'évaluation était la distance multivariée de Kolmogorov-Smirnov (KS). Mais sans beaucoup de calculs, il est extrêmement difficile d’effectuer des mises à jour atomiques du KS sur le Big Data. Cela rend KS inadapté comme fonction de perte puisque vous auriez besoin de milliards de mises à jour atomiques. Mais en changeant la fonction de distribution cumulative en une fonction de densité de probabilité avec des millions de catégories, j'ai pu proposer une bonne métrique d'évaluation qui fonctionne également comme fonction de perte.

Titre original : 7 Cool Technical GenAI & LLM Job Interview Questions, auteur : Vincent Granville

Lien : https://www.datasciencecentral.com/7-cool-technical-genai-llm-job-interview-questions/.

Pour en savoir plus sur l'AIGC, veuillez visiter :

Communauté 51CTO AI.x

https://www.51cto.com/aigc/

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn