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 ?
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 ?
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.
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.
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.
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.
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!