Microsoftは、Bingで使用している超高速有限ステートマシンと正規表現操作ライブラリ「Bling Fire」をGitHubで公開した。従来のライブラリよりも高速で、例えばPythonから容易に利用できる。
この記事は会員限定です。会員登録(無料)すると全てご覧いただけます。
Microsoftの検索エンジン「Bing」の改良を担当する「Bling(Beyond Language Understanding)」チームは、Bingで使われている「超高速有限ステートマシン」と正規表現操作ライブラリ「Bling Fire」をGitHubで公開した。「Fire」は、FInite state machine and REgular expression manipulation libraryの略語。
Bling Fireは、Bing内のさまざまな言語操作に使われている。その一部を挙げると、トークナイゼーション(トークン化)や複数語表現マッチング、未知語の推測、ステミング/レンマ化などがある。
ステミングは、テキスト内の語の語幹を取り出す作業。レンマ化は、テキスト内の語を、見出し語(レンマ)を決めるために分類整理することを指す。
Bling Fireトークナイザは、自然言語テキストの高速で高品質なトークン化を行うように設計されている。主に、Pythonの自然言語処理(NLP)ライブラリ「NLTK」のトークン化ロジックに従うが、例外もある。ハイフン付きの語が分割されることと、幾つかのエラーが修正されていることだ。
NLTKとBling Fireのトークン化がどの程度異なるのかを次に示す。
Copyright © ITmedia, Inc. All Rights Reserved.