Pythonは中国語の4つの車輪を処理します

これは、毎週金曜日にリリースされる、共有する価値のあるPython関連のコンテンツの記録です。 WeChatは外部リンクを許可しないため、クリックして元のテキストを読み、記事内のリンクにアクセスしてください。

タイトル写真:中国の「死海」-新江塩湖、2019年

大学のキャンパスでは、まだまだ時間があり、ゆっくり学ぶことができ、将来も全く気にしないので、しばらく遊ぶことができるといつも思っています。仕事をしてみると、自分の時間がほとんどないことに気づきました。知らないことは学べますが、時間がかかります。仕事を終えると、とても貴重な時間になります。したがって、トレードオフを比較検討する必要があります。どれを学ぶ必要があり、どれを学ぶ必要がないのでしょうか。

あなたが職場にいるとき、どのように選びましたか?学んだことを利用しますか、それとも選択肢がありますか?

個人的には後者の方が好きです。将来的には専門家が少なくなり、足場を築くためのスキルが必要になると思います。強い者は常に強いので、あなたが学ぶことに時間を費やすものはあなた自身の利点に役立つはずです。もちろん、ジェネラリストが将来もっと価値があると思うなら、バランスの取れた方法で開発し、必要なものを学ぶことができます。

ソフトウェア設計では、時間を節約する最善の方法は、車輪を作り直さず、できるだけ自分でプログラムを作成し、クラスでカプセル化することです。次に同様の状況が発生した場合は、直接使用することも、少し使用することもできます。継承により使用できます。まだ行っていない場合は、最初にgithubにアクセスして検索し、誰かがすでにホイールを作成していないかどうかを確認してください。使用するのを待ってください。

私たちの中国語は広範で深遠ですが、プログラム処理、同義語の判断方法、単語のセグメント化方法、感情分析の方法、漢字のピンインの取得方法、コードの記述を急がない、他の人が作ったホイールを使用する、命を救うなどの問題に遭遇することがよくあります貴重な時間はとても賢明です。この記事では、Python中国語に関連するいくつかのホイールを共有しています。必要に応じて、それらを使用してください。

**1、 シノニム、シノニムのツールキット。 **

最高の中国の同義語ツールキットhttps://github.com/huyingxi/Synonyms。これは、テキストの配置、推奨アルゴリズム、類似性の計算、セマンティックシフト、キーワードの抽出、概念の抽出など、自然な言語を理解する多くのタスクに使用できます。自動要約、検索エンジンなど。

インストール方法:

pip install -U synonyms

現在の安定バージョンv3.xであるpy2およびpy3と互換性があります。

効果は次のとおりです。

さらに、** Node.jsユーザーはnode-synonyms **を使用できます。

**2、 中国語の単語セグメンテーションツールjieba。 **

最高の中国語の単語セグメンテーションツールキット:https://github.com/fxsjy/jieba
インストール方法:

pip install jieba

3つの単語セグメンテーションモードをサポートします。

コード例

# encoding=utf-8import jieba

seg_list = jieba.cut("北京清華大学に来ました", cut_all=True)print("Full Mode: "+"/ ".join(seg_list))  #フルモード

seg_list = jieba.cut("北京清華大学に来ました", cut_all=False)print("Default Mode: "+"/ ".join(seg_list))  #精密モード

seg_list = jieba.cut("彼はNetEaseHangyanBuildingに来ました")  #デフォルトは正確モードです
print(", ".join(seg_list))

seg_list = jieba.cut_for_search("Xiao Mingは、中国科学アカデミーのコンピューティングテクノロジー研究所を卒業した後、日本の京都大学で学びました。")  #検索エンジンモード
print(", ".join(seg_list))

出力:

【フルモード】:私/来る/北京/清華大学/清華大学大学/華田/大学

【正確モード】:私/来る/北京/清華大学

【新語認識】:彼,来る,アップ,NetEase,ハンヤン,建物(ここでは、「Hangyan」は辞書にありませんが、Viterbiアルゴリズムによっても認識されます)

[検索エンジンモード]:シャオミン,修士号,卒業,に,中国,理科,カレッジ,理科院,中国科学院,計算,計算所,リア,に,日本,京都,大学,日

**3、 中国の処理ツールSnowNLP。 **

githubリンク:https://github.com/isnowfy/snownlp

SnowNLPはpythonで書かれたクラスライブラリで、中国語のテキストコンテンツを便利に処理できます。TextBlobに触発されました。ほとんどの自然言語処理ライブラリは基本的に英語用であるため、便利な処理中国語を作成しました。 TextBlobとは異なり、ここではNLTKは使用されません。すべてのアルゴリズムはそれ自体で実装され、十分にトレーニングされた辞書がいくつか含まれています。このプログラムはユニコードエンコーディングを処理するため、使用する場合はユニコードにデコードしてください。

特性

from snownlp import SnowNLP

s =SnowNLP(u'このことは本当に素晴らしいです')

s.words         # [u'これです', u'事', u'誠実',
    # u'非常に', u'驚くばかり']

s.tags          # [(u'これです', u'r'),(u'事', u'n'),
    # ( u'誠実', u'd'),(u'非常に', u'd'),
    # ( u'驚くばかり', u'Vg')]

s.sentiments    # 0.9769663402895832正の確率

s.pinyin        # [u'zhe', u'ge', u'dong', u'xi',
    # u'zhen', u'xin', u'hen', u'zan']

s =SnowNLP(u'「伝統的な中国人」と「伝統的な中国人」も台湾で非常に一般的です。')

s.han           # u'「トラディショナルチャイニーズ」と「トラディショナルチャイニーズ」
    # 台湾でも非常に一般的です。'

text = u'''
自然言語処理は、コンピューターサイエンスと人工知能の分野における重要な方向性です。
自然な言語で人間とコンピューターの間の効果的なコミュニケーションを可能にするさまざまな理論と方法を研究します。
自然言語処理は、言語学、コンピューターサイエンス、および数学を統合する科学です。
したがって、この分野の研究には、自然言語、つまり人々が日常的に使用する言語が含まれます。
したがって、言語学の研究と密接に関連していますが、重要な違いがあります。
自然言語処理は、自然言語の一般的な研究ではありません。
自然な言語コミュニケーションを効果的に実現できるコンピュータシステムを開発することです。
特にソフトウェアシステム。つまり、それはコンピューターサイエンスの一部です。
'''

s =SnowNLP(text)

s.keywords(3)    # [u'言語', u'ナチュラル', u'コンピューター']

s.summary(3)    # [u'だからそれはコンピュータサイエンスの一部です',
    # u'自然言語処理は、言語学、コンピューターサイエンス、
    # 1つの科学における数学',
    # u'自然言語処理は、コンピュータサイエンスと人工知能の分野です
    # 現場での重要な方向性']
s.sentences

s =SnowNLP([[u'この', u'論文'],[u'その記事', u'論文'],[u'これです']])
s.tf
s.idf
s.sim([u'論文'])# [0.3756070762985226,0,0]

**4、 中国のピンイン変換ツール。 **

インストール

pip install pypinyin

特性

>>> from pypinyin import pinyin, lazy_pinyin, Style
>>> pinyin('センター')[['zhōng'],['xīn']]>>>pinyin('センター', heteronym=True)  #ポリフォンモードを有効にする
[[' zhōng','zhòng'],['xīn']]>>>pinyin('センター', style=Style.FIRST_LETTER)  #Pinyinスタイルを設定する
[[' z'],['x']]>>>pinyin('センター', style=Style.TONE2, heteronym=True)[['zho1ng','zho4ng'],['xi1n']]>>>pinyin('センター', style=Style.BOPOMOFO)  #フォネティックスタイル
[[' ㄓㄨㄥ'],['ㄒㄧㄣ']]>>>pinyin('センター', style=Style.CYRILLIC)  #ロシアのアルファベットスタイル
[[' чжун1'],['синь1']]>>>lazy_pinyin('センター')  #ポリフォニック文字を考慮しないでください
[' zhong','xin']

予防

コマンドラインツール:

$ピピニン音楽
yīn yuè
$ pypinyin -h

詳細なドキュメントについては、http://pypinyin.rtfd.io/にアクセスしてください。

**5、 Pythonで一般的に使用されるその他のライブラリ。 **

ここには非常に多くの強力なライブラリがあり、あなたの人生を疑うほどです。お金をまったく使わずにオンデマンドで割り当てることができるホイールがたくさんあります。

githubリンク:https://github.com/jobbole/awesome-python-cn

このプロジェクトは、githubでの最初のプルリクエストプロジェクトでもあるので、それを記念して共有します。

(終了)

Pythonテクノロジーの共有に焦点を当てる

購読、視聴、転送へようこそ

Recommended Posts

Pythonは中国語の4つの車輪を処理します
Pythonの基盤を統合する(4)
Python(7)の基盤を統合する
Python(6)の基盤を統合する
Python(5)の基盤を統合する
Pythonの基盤を統合する(3)
pythonでのwheelの使用法
地主取引のPythonシミュレーション
Pythonの用途は何ですか
Python文字列プーリングの前提
Python3.8の新機能の秘密
Pythonの父がMicrosoftに加わる
python accesshdfsの操作
pythonでのタプルの使用法
pythonを実行するメソッドを終了します
pythonでのrbの意味を理解する
pythonインタラクティブモードの基本を学ぶ
pythonの必須パラメーターは何ですか
pythonの下部にあるロジスティック回帰
Python3クローラーでのAjaxの使用
PythonはTowerofHanoiゲームを解決します
pythonの複数のバージョンの競合を解決します
python変数の範囲は何ですか
Pythonは分数シーケンスの合計を実装します
Pythonの基礎を学ぶ2日間
pythonのid関数は何ですか
python3のピップパスはどこにありますか
Python言語の本質:Itertoolsライブラリ
python言語の利点は何ですか
pythonインスタンス化オブジェクトの特定のメソッド
python3はマスク描画の機能を実現します
python開発の見通しは何ですか
pythonの関数本体は何ですか
pythonインポートライブラリの特定の方法
pythonの複数のバージョンの競合を解決します
Python3.9の7つの機能
2.1 Pythonインタープリター(pythonインタープリター)
pythonでのadbの機能は何ですか
Python super()メソッドの原理の詳細な説明
javaとpythonの構文の違い
Pythonは学生管理システムの開発を実現します
PythonはDoudizhuでカードのシャッフルを実装します
pythonでのリストの意味と使用法
起動エラーを実行しているpythonの問題を解決します
python辞書の値を変更できますか?
Pythonはスネークゲームのソースコードを実装しています
Pythondecimalモジュールの使用法の詳細な説明
27歳でパイソンを学ぶのはどうですか?
ubuntuでpythonをアンインストールした結果、非常に
Pythonは釣りマスターのゲーム実装を書きます
[898] pythonは2つのリストの共通部分を取得します|ユニオン|違い
Python関数パラメータ分類の原理の詳細な説明
エンタープライズ言語に対するpythonの利点は何ですか
Python2とPython3の違いの簡単な要約
Pythonタイマースレッドプールの原理の詳細な説明
Ubuntuの言語を中国語に変換する方法は? ?
pythonのコンパイルとsslのインストールの問題を解決します
Pythonインターフェース開発の実装手順の詳細な説明
pythonはどのように辞書のキーを呼び出しますか
Pythonはスキンのフルセットをクロールします
Pythonでのパッケージの導入を理解する方法