問題タブ [spacy-transformers]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
importerror - spaCy 3.0 でパイプラインをロードする際のエラー
spaCy 3.0.6 に更新した後、トレーニング済みのパイプラインのいずれにもロードできませんでしたが、どちらも適切にインストールされているようです。
これは、spacy.load() を使用し、パイプラインをモジュールとしてインポートするときに発生します (エラーは次のすべての行で同じです)。
私が得ているエラーは次のとおりです。
現在の安定版リリース 1.8.1 から torch 1.4.0 に戻すと問題は解決しますが、私はそうしたくありません。
代替ソリューションはありますか?
python - spaCy v3 でカスタム NER のトランスモデルを適切に使用するには?
spaCy バージョン 3 を使用して、カスタム タグの Named Entity Recognition (NER) モデルをトレーニングしようとしています。彼らの Web サイトですべてのドキュメントを確認しましたが、パイプライン モデルを作成する適切な方法を理解できません。を使用しようとするとen_core_web_trf
、最終的な出力スコアがすべてゼロになるため、独自のタグを追加できないようです。しかし、それは正しく機能しen_core_web_sm
ます。
en_core_web_trf
ただし、English の空のモデルを作成してから、Transformer モデルと ner モデルを とは別に手動で追加するという、その場しのぎの方法を試してみると、うまくいきen_core_web_sm
ます。
私の質問は、この間に合わせの方法以外に、モデルとパイプライン メソッドを初期化するためのより良い方法はありますか? LOCATION などの事前トレーニング済みのエンティティは気にしません。データセットで定義したカスタム エンティティに基づいて (トランスフォーマー ベースのアプローチを使用して) モデルをトレーニングしたいだけです。
編集:私が使用した正確なトレーニング方法論は、定義されたクラスの関数のこのpython スクリプトで説明されています。fit()
NerModel
スクリプト (行番号 16) では小さなモデルを使用load_spacy()
していますが、私は変圧器モデルを試していてload_spacy()
、この質問の冒頭で定義した定義を使用しました。
PS: GPU をトランスフォーマーに利用するために、Google Colab (別名ノートブック) で実験を行っていますが、ソース コードと方法論はほとんど同じです。
python - ディスクからスペイシー トランスフォーマーを使用する方法はありますか (オフライン)
インターネット アクセスが制限されている企業環境で spacy-transformers を使用したいので、huggingfaces ハブから手動でトランスフォーマー モデルをダウンロードし、spacy で動作させる必要があります。
この例では、事前トレーニング済みモデル en_core_web_trf のトランス パイプライン コンポーネントを使用しようとしました。
次のエラー メッセージが表示されます。
エラー メッセージに示されているように、要求されたファイルがキャッシュされたパスで見つかりません。どのファイルをキャッシュ パスに配置する必要があるか説明してもらえますか? または、モデルを事前にダウンロードして、それらを空間で使用する別の方法。
バージョン:
スペイシー 3.0.5
スペイシートランスフォーマー 1.0.2
変圧器 4.5.1