Table des matières
回复内容:
Maison développement back-end Tutoriel Python 如何用 Python 中的 NLTK 对中文进行分析和处理?

如何用 Python 中的 NLTK 对中文进行分析和处理?

May 18, 2018 pm 03:35 PM
xb xe

用nltk对自己的日记进行分析。得到以下结果(节选)
'\xb8\xb0', '\xe5\xbc\xba\xe8\xba', '\xe5\xbd\xbc\xe5', '\xb8\xb4', '\xb8\x8a', '\xb8\x8b', '\xb8\x88', '\xb8\x89', '\xb8\x8e', '\xb8\x8f', '\xb8\x8d', '\xb8\x82', '\xb8\x83', '\xb8\x80', '\xb8\x81', '\xb8\x87', 'tend', '\xb8\x9a',
请问对于中文的自然语言分析,有哪些方法和工具可以推荐?

回复内容:

最近正在用nltk 对中文网络商品评论进行褒贬情感分类,计算评论的信息熵(entropy)、互信息(point mutual information)和困惑值(perplexity)等(不过这些概念我其实也还理解不深...只是nltk 提供了相应方法)。
我感觉用nltk 处理中文是完全可用的。其重点在于中文分词和文本表达的形式。
中文和英文主要的不同之处是中文需要分词。因为nltk 的处理粒度一般是词,所以必须要先对文本进行分词然后再用nltk 来处理(不需要用nltk 来做分词,直接用分词包就可以了。严重推荐结巴分词,非常好用)。
中文分词之后,文本就是一个由每个词组成的长数组:[word1, word2, word3…… wordn]。之后就可以使用nltk 里面的各种方法来处理这个文本了。比如用FreqDist 统计文本词频,用bigrams 把文本变成双词组的形式:[(word1, word2), (word2, word3), (word3, word4)……(wordn-1, wordn)]。
再之后就可以用这些来计算文本词语的信息熵、互信息等。
再之后可以用这些来选择机器学习的特征,构建分类器,对文本进行分类(商品评论是由多个独立评论组成的多维数组,网上有很多情感分类的实现例子用的就是nltk 中的商品评论语料库,不过是英文的。但整个思想是可以一致的)。
另外还有一个困扰很多人的Python 中文编码问题。多次失败后我总结出一些经验。
Python 解决中文编码问题基本可以用以下逻辑:
utf8(输入) ——> unicode(处理) ——> (输出)utf8
Python 里面处理的字符都是都是unicode 编码,因此解决编码问题的方法是把输入的文本(无论是什么编码)解码为(decode)unicode编码,然后输出时再编码(encode)成所需编码。
由于处理的一般为txt 文档,所以最简单的方法,是把txt 文档另存为utf-8 编码,然后使用Python 处理的时候解码为unicode(sometexts.decode('utf8')),输出结果回txt 的时候再编码成utf8(直接用str() 函数就可以了)。
楼主遇到的只是编码的问题…
有很多好用的中文处理包:
Jieba:可以用来做分词,词性标注,TextRank
HanLP:分词,命名实体识别,依存句法分析,还有FudanNLP,NLPIR
个人觉得都比NLTK好用~ 中文分词用结巴就好了,我做了个小例子 nltk-比较中文文档相似度你说这个跟NLTK无关,换Python3,就没有这些鬼了!中文还得UTF8!
大爱NLTK!其它包,除了固定任务的,java就算了, 使用:text.decode('gbk')
分词:你找相应的中文分词包 github.com/fxsjy/jieba因为nltk不能对中文进行分词的原因吧,最近也在学习这方面的东西,推荐一个工具中文處理工具,可以研究一下 我遇到同样的问题,在看《Python自然语言处理》一书,成功加载自己的文档后,却看到里面的中文如你所示,应该是编码设置的问题,但是不知道该设置哪里。这方面的资料太少了

Déclaration de ce site Web
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

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

Video Face Swap

Video Face Swap

Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Code d'erreur GeForce Now 0x0000012E [CORRIGÉ] Code d'erreur GeForce Now 0x0000012E [CORRIGÉ] Feb 19, 2024 pm 09:12 PM

Si vous rencontrez le code d'erreur 0x0000012E sur NVIDIA GeForceNOW, nous partagerons la solution. Nous avons rencontré le même problème et voici comment nous l'avons résolu afin que vous puissiez profiter des jeux sur GeForce en toute fluidité. Corrigez le code d'erreur GeForce Now 0x0000012E maintenant Pour corriger le code d'erreur GeForceNow 0x0000012E sur un ordinateur Windows, suivez ces solutions : Vérifiez les exigences de connexion Internet Vérifiez la configuration matérielle requise Exécutez en tant qu'administrateur Suggestions supplémentaires. Avant de commencer, nous vous recommandons d'attendre patiemment, car de nombreux utilisateurs n'ont pris aucune mesure pour résoudre le problème. Parfois, un dysfonctionnement peut en être la cause

Que signifie l'erreur 0x0000004e ? Que signifie l'erreur 0x0000004e ? Feb 18, 2024 pm 01:54 PM

Qu’est-ce que l’échec 0x0000004e ? L’échec est un problème courant dans les systèmes informatiques. Lorsqu'un ordinateur rencontre une panne, le système s'arrête généralement, plante ou affiche des messages d'erreur car il ne peut pas fonctionner correctement. Dans les systèmes Windows, il existe un code d'erreur spécifique 0x0000004e, qui est un code d'erreur sur écran bleu indiquant que le système a rencontré une erreur grave. L'erreur d'écran bleu 0x0000004e est causée par des problèmes de noyau ou de pilote du système. Cette erreur provoque généralement le système informatique

Comment gérer le code d'écran bleu 0x000003b dans Win7 Ultimate Edition Comment gérer le code d'écran bleu 0x000003b dans Win7 Ultimate Edition Jul 23, 2023 pm 09:21 PM

Le problème de l'écran bleu survient lorsque le système d'exploitation est incapable de se remettre de l'erreur et force l'apparition d'une image d'écran afin de protéger les fichiers de données de l'ordinateur. Et fournissez à l’utilisateur le code d’erreur pour une enquête plus facile. Quelle est la raison du code d'écran bleu Win7 0x万万3b ? Comment y remédier ? Sur ce sujet, la petite série suivante présente la méthode de réparation du code écran bleu 0x million million 3b dans la version win7 Ultimate. Voir les détails ci-dessous. Que faire avec le code d'écran bleu 0x000003b dans Win7 Ultimate Edition ? 1. Lorsque le système Win7 arrête l'invite d'erreur avec 0x000003B, vous devez généralement obtenir manuellement un correctif pour résoudre le problème. À en juger par le seul code de l'écran bleu, le code 0x000003B est provoqué par une erreur réseau inattendue. 2. Par conséquent, il est nécessaire de vider le cache du navigateur système à temps

Apprenez à résoudre le code d'écran bleu 0x00008e Apprenez à résoudre le code d'écran bleu 0x00008e Jul 10, 2023 pm 02:37 PM

Les internautes qui jouent souvent à des jeux informatiques rencontrent parfois des écrans bleus d'ordinateur, mais ils ne savent pas quelle en est la cause car les circonstances sont différentes et les raisons ne sont pas claires. Alors, quel est le code d'écran bleu 0xWanwan8e ? Comment le résoudre ? Afin de mieux utiliser ces utilisateurs, Xiaobian vous indiquera les raisons et les solutions du code écran bleu 0x1008e. Je crois que de nombreux internautes sont déroutés par le mauvais code lorsque leur ordinateur tombe en panne. Afin de résoudre rapidement la confusion et les problèmes causés par le code et d'éliminer les défauts, que signifie le code d'écran bleu 0x1008e ? Laissez-nous vous expliquer comment résoudre le problème du code d'écran bleu 0x万万8e. Image et texte pour résoudre le code d'écran bleu 0x00008e. Trouvé le code d'écran bleu au point de défaut (Figure 1) Code : 0x000008e Raison : Le système est actuellement incapable d'exécuter JOI

Comment résoudre l'erreur 0x0000007b Comment résoudre l'erreur 0x0000007b Dec 25, 2023 pm 03:35 PM

De nombreux amis ont rencontré le code d'erreur 0x0000007b lors de l'utilisation d'ordinateurs, alors comment résoudre ce genre de situation ? Nous pouvons résoudre ce problème en modifiant le mode du disque dur ou en réinitialisant les paramètres. Jetons un coup d'œil aux solutions ci-dessous. Que faire si 0x0000007b apparaît : Méthode 1 : 1. Il est probable que le mauvais pilote de la carte graphique ait été mis à jour. Redémarrez l'ordinateur après l'apparition du code d'erreur. 2. Appuyez ensuite sur « F8 » pour accéder à l'interface de sélection du mode sans échec, sélectionnez « Dernière bonne configuration connue » pour accéder au système. 3. Cela peut résoudre le problème de conflit d'applications. S'il ne peut pas être résolu, vous pouvez essayer de modifier le mode de démarrage du disque dur. Méthode 2 : 1. Redémarrez d’abord l’ordinateur, puis utilisez le raccourci clavier pour entrer b.

Que dois-je faire si l'imprimante partagée ne peut pas être connectée à l'ordinateur Win7 0x0000011b ? Que dois-je faire si l'imprimante partagée ne peut pas être connectée à l'ordinateur Win7 0x0000011b ? Jul 12, 2023 pm 07:01 PM

Je pense que de nombreux utilisateurs utilisent souvent des photocopieurs lorsqu'ils utilisent des ordinateurs. Cependant, récemment, de nombreux consommateurs ont reçu des invites 0x0000011b lorsqu'ils utilisaient les ordinateurs Win7 de leur entreprise pour se connecter à des imprimantes partagées. Comment résoudre ce problème ? L'éditeur invitera tout le monde à jeter un œil ci-dessous ! Conception originale par System Home www.xitongzhijia.net, la source doit être indiquée lors de la republication. Méthode 1 : Connaissez déjà le numéro du correctif, utilisez un outil tiers pour désinstaller le correctif. Cet outil est un outil de désinstallation de correctif officiellement produit par Lenovo. Il convient à n'importe quel ordinateur. Les utilisateurs n'ont besoin de saisir les données qu'après avoir mis à jour la base de données. du patch. Désinstallez-le simplement. Lien de téléchargement : http://www.xito

Comment résoudre l'erreur d'écran bleu 0x0000004e Comment résoudre l'erreur d'écran bleu 0x0000004e Feb 18, 2024 pm 07:59 PM

0x0000004e Solution d'écran bleu Lorsque nous utilisons l'ordinateur, nous pouvons parfois rencontrer un écran bleu. Un écran bleu signifie que le système d'exploitation Windows rencontre une erreur irrécupérable, empêchant l'ordinateur de fonctionner normalement et affichant un message d'erreur sous la forme d'un écran bleu. L'un des codes d'erreur courants sur l'écran bleu est 0x0000004e. Cet article présentera quelques méthodes pour résoudre ce problème. Tout d’abord, nous devons comprendre la cause de l’écran bleu 0x0000004e. Cette erreur est généralement causée par un problème avec le pilote système.

Xbox.com/ErrorHelp 0x87e50007 [CORRIGÉ] Xbox.com/ErrorHelp 0x87e50007 [CORRIGÉ] Feb 19, 2024 am 11:57 AM

Cet article vous guidera pour résoudre le code d'erreur Xbox 0x87e50007, qui peut être causé par des problèmes de serveur, une instabilité du réseau ou des mises à jour manquantes. Avant de procéder à un dépannage supplémentaire, assurez-vous de vérifier l'état du service XboxLive. S'il y a un problème de service Xbox, cela peut être dû à une panne de serveur. Dans ce cas, veuillez attendre patiemment que le problème soit résolu et consultez régulièrement la page d'état Xbox pour obtenir les dernières informations. Comment réparer le code d'erreur Xbox 0x87e50007 Utilisez les correctifs suivants pour résoudre Xbox.com/ErrorHelp0x87e50007 : Vérifiez votre connexion Internet Mettre à jour les jeux Désinstaller des jeux ou des applications Réinitialiser votre console Commençons. 1] Vérifiez votre connexion Internet

See all articles