hazm
Hazm 0.10.0
| モジュール名 | |
|---|---|
| 依存関係者 | 85.6% |
| agger | 98.8% |
| チャンカー | 93.4% |
| lemmatizer | 89.9% |
| メトリック | 価値 | |
|---|---|---|
| spacypostagger | 精度 | 0.99250 |
| 想起 | 0.99249 | |
| F1スコア | 0.99249 | |
| spacypostaggerでのEZ検出 | 精度 | 0.99301 |
| 想起 | 0.99297 | |
| F1スコア | 0.99298 | |
| SpacyChunker | 正確さ | 96.53% |
| f-メジャー | 95.00% | |
| 想起 | 95.17% | |
| 精度 | 94.83% | |
| Spacy -dependencyParser | トークの精度 | 99.06 |
| uas | 92.30 | |
| ラス | 89.15 | |
| 正確に送信されました | 98.84 | |
| リコールを送信しました | 99.38 | |
| f-measureを送信しました | 99.11 |
Hazmは、ペルシャ語のテキストで自然言語処理タスクを実行するためのPythonライブラリです。ペルシャ語のテキストを分析、処理、理解するためのさまざまな機能を提供します。 HAZMを使用して、テキストを正規化し、文章と単語のトークン、単語を整理したり、一部のスピーチの一部を割り当てたり、依存関係を特定したり、単語と文の埋め込みを作成したり、人気のあるペルシャコーパを読んだりできます。
hazmの最新バージョンをインストールするには、端末で次のコマンドを実行します。
pip install hazm
または、GitHubから最新のアップデートをインストールすることもできます(このバージョンは不安定でバギーな場合があります):
pip install git+https://github.com/roshan-research/hazm.git
最後に、当社の事前に守られたモデルを使用する場合は、以下のリンクからダウンロードできます。
| モジュール名 | サイズ |
|---|---|
| wordembedingをダウンロードしてください | 〜5 gb |
| Sentembeddingをダウンロードしてください | 〜1 gb |
| postaggerをダウンロードしてください | 〜18 MB |
| DependencyParserをダウンロードします | 〜15 MB |
| チャンカーをダウンロードしてください | 〜4 MB |
| Spacy_pos_tagher_parsbertpostaggerをダウンロードします | 〜630 MB |
| spacy_pos_tagher_parsbertpostagger_trained_on_95%をダウンロード | 〜630 MB |
| Spacy_chunker_uncased_bertをダウンロードします | 〜650 MB |
| Spacy_chunker_parsbertをダウンロードします | 〜630 MB |
| Spacy_dependency_parserをダウンロードします | 〜630 MB |
> >> from hazm import *
> >> normalizer = Normalizer ()
> >> normalizer . normalize ( 'اصلاح نويسه ها و استفاده از نیمفاصله پردازش را آسان مي كند' )
'اصلاح نویسهها و استفاده از نیمفاصله پردازش را آسان میکند'
> >> sent_tokenize ( 'ما هم برای وصل کردن آمدیم! ولی برای پردازش، جدا بهتر نیست؟' )
[ 'ما هم برای وصل کردن آمدیم!' , 'ولی برای پردازش، جدا بهتر نیست؟' ]
> >> word_tokenize ( 'ولی برای پردازش، جدا بهتر نیست؟' )
[ 'ولی' , 'برای' , 'پردازش' , '،' , 'جدا' , 'بهتر' , 'نیست' , '؟' ]
> >> stemmer = Stemmer ()
> >> stemmer . stem ( 'کتابها' )
'کتاب'
> >> lemmatizer = Lemmatizer ()
> >> lemmatizer . lemmatize ( 'میروم' )
'رفت#رو'
> >> tagger = POSTagger ( model = 'pos_tagger.model' )
> >> tagger . tag ( word_tokenize ( 'ما بسیار کتاب میخوانیم' ))
[( 'ما' , 'PRO' ), ( 'بسیار' , 'ADV' ), ( 'کتاب' , 'N' ), ( 'میخوانیم' , 'V' )]
> >> spacy_posTagger = SpacyPOSTagger ( model_path = 'MODELPATH' )
> >> spacy_posTagger . tag ( tokens = [ 'من' , 'به' , 'مدرسه' , 'ایران' , 'رفته_بودم' , '.' ])
[( 'من' , 'PRON' ), ( 'به' , 'ADP' ), ( 'مدرسه' , 'NOUN,EZ' ), ( 'ایران' , 'NOUN' ), ( 'رفته_بودم' , 'VERB' ), ( '.' , 'PUNCT' )]
> >> posTagger = POSTagger ( model = 'pos_tagger.model' , universal_tag = False )
> >> posTagger . tag ( tokens = [ 'من' , 'به' , 'مدرسه' , 'ایران' , 'رفته_بودم' , '.' ])
[( 'من' , 'PRON' ), ( 'به' , 'ADP' ), ( 'مدرسه' , 'NOUN' ), ( 'ایران' , 'NOUN' ), ( 'رفته_بودم' , 'VERB' ), ( '.' , 'PUNCT' )]
> >> chunker = Chunker ( model = 'chunker.model' )
> >> tagged = tagger . tag ( word_tokenize ( 'کتاب خواندن را دوست داریم' ))
> >> tree2brackets ( chunker . parse ( tagged ))
'[کتاب خواندن NP] [را POSTP] [دوست داریم VP]'
> >> spacy_chunker = SpacyChunker ( model_path = 'model_path' )
> >> tree = spacy_chunker . parse ( sentence = [( 'نامه' , 'NOUN,EZ' ), ( 'ایشان' , 'PRON' ), ( 'را' , 'ADP' ), ( 'دریافت' , 'NOUN' ), ( 'داشتم' , 'VERB' ), ( '.' , 'PUNCT' )])
> >> print ( tree )
( S
( NP نامه / NOUN , EZ ایشان / PRON )
( POSTP را / ADP )
( VP دریافت / NOUN داشتم / VERB )
. / PUNCT )
> >> word_embedding = WordEmbedding ( model_type = 'fasttext' , model_path = 'word2vec.bin' )
> >> word_embedding . doesnt_match ([ 'سلام' , 'درود' , 'خداحافظ' , 'پنجره' ])
'پنجره'
> >> word_embedding . doesnt_match ([ 'ساعت' , 'پلنگ' , 'شیر' ])
'ساعت'
> >> parser = DependencyParser ( tagger = tagger , lemmatizer = lemmatizer )
> >> parser . parse ( word_tokenize ( 'زنگها برای که به صدا درمیآید؟' ))
< DependencyGraph with 8 nodes >
> >> spacy_parser = SpacyDependencyParser ( tagger = tagger , lemmatizer = lemmatizer )
>> > spacy_parser . parse_sents ([ word_tokenize ( 'زنگها برای که به صدا درمیآید؟' )])
>> > ner = HazmNER ( model_path = 'ner/model-best' )
>> > ner . predict_entity ( 'حمله سایبری به سامانه سوخت در دولت سیزدهم برای بار دوم اتفاق افتاد، حادثهای که در سال 1400 هم به وقوع پیوست اما رفع این مشکل بیش از یک هفته زمان برد، در حالی که آذر امسال پس از این حمله همه پمپبنزینها در کمتر از 24 ساعت فعالیت خود را از سر گرفتند.' )
>> > ner . predict (
[
'ریو در ایران توسط شرکت سایپا از سال 1384 تا سال 1391 تولید شد' ,
'به جز ایالات متحده ، این خودرو در اروپا ، آمریکای جنوبی و آسیا هم فروش بالایی داشته است' ,
'این گاه شمار با قدمتی کمتر از دویست سال ، از جدیدترین گاه شمار های رایج به شمار می رود'
]
)https://roshan-ai.ir/hazm/docsにアクセスして、完全なドキュメントを表示してください。
免責事項:これらのポートは、Roshanによって開発または維持されていません。彼らは元のハザムと同じ機能や品質を持っていないかもしれません。
バグレポート、機能リクエスト、コードの改善、ドキュメントの更新など、このリポジトリへの貢献を歓迎し、感謝します。問題を開き、レポをフォークし、コードを書き、プルリクエストを作成し、レビューとフィードバックを待つことができます。このリポジトリでのあなたの興味とサポートに感謝します!