Python向けに開発されている自然言語処理(NLP)ライブラリにspaCyというものがありますが、つい最近、v3.0.0がリリースされました。
実は、この記事を執筆している私は、このニュースを知るまでは、spaCyという自然言語処理ライブラリがあることを知りませんでしたので、v3.0.0のリリースの詳細に合わせて、spaCyについて少し調べてみました。
spaCyとは
spaCyの基礎的な内容から簡単にまとめます。まず、読み方ですが、スペイシーと読むようです。Explosionという会社が研究開発している自然言語処理ライブラリです。一番初めのリリースは2015年のようで、割と歴史があるようです。MITライセンスのもとオープンソースで公開されていて、Linux、MacOS、Windowsに対応し、PyTorch、Keras、TensorFlowといった代表的な機械学習ライブラリに対応しているようです。
自然言語処理(以下:NLP)といいますと、近年では深層学習のイメージが強いと思いますが、NLP自体は古くから研究されている分野で、字句解析、構文解析、固有表現抽出、依存構造解析、形態素解析といったものが代表的です。spaCyは、こういった元祖NLP分野をサポートし、PyTorchなどで構築した統計的な機械学習モデルと連携できるというものなのかと思います(使ったことがないので憶測ですが。近いうちに実際に使ってみて、正しい記事に書き直します)。
個人的に、自然言語処理のライブラリというと、Janome、MeCab、TorchTextだったので、spaCyを使ってみたいと思っています。また、spaCyは、多くの国の言語に対応しており、もちろん日本語にも対応しています。商用製品でよく使用されているみたいですね。
spaCy v3.0.0
特徴は様々あるらしくて、Transformerベースのパイプライン処理??
近いうちにこの部分を完成させます(__)
参考文献
[1] spaCy. What’s New in v3.0. https://spacy.io/usage/v3, (参照 2021/02/04)