自然言語処理

DistilBERTの推論速度がCPUとGPUでどれくらい変わるのか比較してみた

Google社が開発した自然言語処理モデルBERTですが、使い方次第では様々なタスクで高い精度を得られるものの、そのパラメータの多さゆえに推論にかなり時間がかかります。 そのためBERTを実運用しようとすると、処理時間がボトルネックになって頓挫する場合もあるのではと思います。 BERTを蒸留したDistilBERT(軽量版BERT)をさらに量子化することで、CPUでも高いパフォーマンスを得られると […]

BPEでサブワード分割することでDistilBERTに未知語が入力されるのを防ぐ方法

最近案件でBERTを使う機会がありました。 Hugging Face社が公開している英語版のBERTや東北大の乾・鈴木研究室が公開している日本語版BERTであれば自前のtokenizerで学習あるいは推論対象のテキストを単語分割しても問題ありません。 一方、京大の黒橋・褚・村脇研究室が公開しているBERTだったり、バンダイナムコ社が公開しているDistilBERTを使用する場合、自前のtokeni […]

自然言語処理ライブラリspaCyが日本語対応したので試してみた

spaCyという自然言語処理のためのライブラリがバージョン2.3にアップデートされ、日本語に対応しました。 このアップデートによって、ベクトルを内包するモデルのサイズやロードにかかる時間が減少し、さらに単語ベクトルの精度が向上したとのことです。 公式ドキュメントを見ると、単語のセグメンテーションと品詞タグ付けにはSudachiPyを利用しているようです。 今回は早速、spaCyを使って日本語の分か […]