Comme le titre, une fonction plus simple consiste à savoir comment compter la fréquence des mots d'un document de développement d'API en anglais ? (Le document peut être constitué de plusieurs fichiers html, ou il peut s'agir d'un fichier chm, pas d'un simple texte txt) ; Une exigence plus compliquée est que, comme le document de développement implique de nombreux noms de classes, noms de fonctions ou de méthodes, etc., les mots peuvent être connectés entre eux, et il est préférable de les séparer lors des statistiques
(Cela peut être séparé selon les règles de dénomination ); Une exigence plus compliquée est que, parce que le simple fait de compter la fréquence des mots d'un document n'a pas beaucoup de signification pratique, comment retraiter les mots comptés :
) ;
Bienvenue pour proposer vos idées...
Eh bien, en fait, mon problème est que lorsque je lis un document en anglais, il y a trop de mots que je ne comprends pas, je dois souvent rechercher les mots, ce qui est trop inefficace s'il existe un outil qui peut statistiquement le faire. analyser le vocabulaire d'un document, vous pouvez vous familiariser grossièrement avec la signification du vocabulaire avant de lire le document pour améliorer l'efficacité et la dénomination est également utile lors du développement...; Remarques de modification :
, j'ai juste cette idée et je la propose à tout le monde pour en discuter
En préparation du concours d'entrée au troisième cycle, je n'ai pas écrit de code depuis longtemps, mais l'idée générale devrait être :
Nettoyage et filtrage : pour le HTML, filtrez d'abord le contenu. Vous pouvez rédiger vos propres règles habituelles ou en trouver écrites par d'autres
Segmentation des mots : filtrez d'abord les mots à l'aide de délimiteurs communs tels que des espaces, puis recherchez les mots un par un selon les différentes conventions de dénomination linguistique
Filtrer les mots courants : vous devriez pouvoir trouver des fichiers de mots anglais courants sur Internet et les faire correspondre
WordCount : vous pouvez simplement utiliser Python pour implémenter vous-même le filtrage MapReduce, ou vous pouvez également utiliser Hadoop, Spark, etc.
Cela complète les statistiques de mots pour filtrer les mots simples. Concernant le comptage des mots liés à l'ordinateur, vous devez télécharger le fichier de données des mots liés à l'ordinateur en ligne et les faire correspondre directement. Si vous avez besoin de donner une explication, appelez Youdao ou Baidu Translate. Les API sont suffisantes, mais ces API peuvent avoir des limites supérieures et je ne les ai pas utilisées.
En ce qui concerne l'apprentissage automatique que vous avez mentionné, les exigences ici ne sont actuellement pas nécessaires et il n'est pas nécessaire de l'utiliser.Les étapes ci-dessus ne prennent pas en compte les problèmes d'efficacité. Si vous devez prendre en compte des problèmes d'efficacité, vous devez utiliser certains algorithmes ou utiliser directement des bibliothèques de classes écrites par d'autres.
Enfin : je tiens toujours à dire que le moyen le plus rapide de comprendre un document est de lire plus de documents. Si vous continuez à lire, vous constaterez que la vitesse de lecture des documents deviendra de plus en plus rapide. Cependant, traiter cela comme un projet de formation peut être considéré comme une réalisation intéressante.
Le machine learning que vous avez mentionné est actuellement généralement supervisé et non supervisé, mais selon votre mention :
Si vous utilisez l'apprentissage supervisé, vous aurez certainement besoin du support des données de corpus, pourquoi ne pas utiliser directement la correspondance de chaînes pour l'implémenter ?
Lorsque j'utilise l'apprentissage non supervisé, je suis encore un débutant. D'après ma compréhension, il semble que cela ne puisse obtenir que l'effet de clustering. Si vous souhaitez identifier automatiquement les termes informatiques, vous avez toujours besoin d'une annotation manuelle ou d'un support de données Si vous allez plus loin, vous devez étudier attentivement la PNL-
Je pense que vous êtes intéressé par l'apprentissage automatique, mais je pense que ce n'est pas un bon projet pour pratiquer l'apprentissage automatique.
.
Cela ne devrait pas être appelé segmentation de mots anglais. La segmentation de mots doit faire référence à la division par composants de phrase. Les noms de variables connectés entre eux peuvent être identifiés par des méthodes de dénomination courantes, telles que Camel-Case en majuscules et minuscules, les traits de soulignement séparés par des traits de soulignement, etc.
Vous pouvez trouver diverses bibliothèques de fractionnement de mots pour la segmentation des mots, et il devrait y en avoir beaucoup en Python. Téléchargez le lexique des noms professionnels informatiques, extrayez le mot et associez-le au lexique pour en comprendre le sens.
Mais en fait, même s'il est fait, cela ne facilitera pas nécessairement la lecture. Le simple fait de regarder les mots a un peu de courbure pour sauver le pays, et il est très probable que vous ne puissiez pas lire. ça du tout. Le vocabulaire des articles informatiques n'est pas très vaste. Une fois familier, il sera familier deux fois. Il est préférable d'optimiser l'expérience de recherche de mots en combinant la solution Collins avec le dictionnaire Macmillan, MDict ou Oulu. . Chrome peut également installer Saladic pour rechercher des mots.