文系人間のためのAI解説#1 <言語解析ってどうやってるの?>
あなたはどのくらいの頻度で翻訳サービスを使っていますか?
Google翻訳やDeepL、様々な翻訳サービスがWeb上にあふれています。
機械なのに、人間の言葉がわかるなんて本当にすごいですよね。
その精度は、もしかして中に人間がいるのでは?と思われるほど…
これらのサービスの背景にある技術の一つが、自然言語処理です。
英語で言うと、Natural Language Processing、縮めてNLPと呼ばれています。
そもそも自然言語処理とは何でしょうか?
ここでいう「自然言語」とは、
私たちが普段話すときに使っている言葉のことを指します。
対義語として、機械語があります。
これはパソコンのような機械が理解できる言葉で、
私たち人間には全く理解することが出来ないものです。
というのも、0と1を並べただけの、二つの数字の羅列になっているからです。
話を自然言語処理に戻します。
私たちが使う自然言語を機会に理解させるためには、
様々な処理を行う必要があります。
①文章を単語ごとに分ける
例えば、
「私は猫も犬も好きだ」⇒「私/は/猫/も/犬/も/好き/だ」みたいな表現です。
②それらの単語の役割を識別する
「私」は主語で、「好き」は動詞。
「猫」や「犬」は名詞で目的語…
といったように、それぞれの単語の品詞や役割を探していく必要があります。
③それらの意味を学習する
ここから、一気に複雑になっていきます。
ニューラルネットワークという言葉を聞いたことがあるでしょうか。
もしくは、ディープラーニング、という言葉かもしれません。
それらのような、複雑なモデルを用いて、
文章の意味を学習していくことになります。
実は、これらのプロセスの中に、日本語だからこそ、
機械が苦手とするステップがあります。
それはどこでしょうか?
それは、①の単語に分ける部分です。
英語のような単語では、そもそも単語ごとの間にスペースが入っているため、
かなり容易に単語ごとに分けることが出来ます。
一方日本語は、こんな 感じ で 分け て 書く こと は しませんから、
機械にとっては一つのハードルになっているのです。
では、どうやって単語ごとに分けているのでしょうか?
そこで大活躍するのが、日本語の辞書です。
予め「私」「猫」「犬」「好き」といったように、
助詞を含む様々な単語が登録されているのです。
その辞書を使って、機械は文章を単語ごとに分けていきます。
例えばその辞書に工夫をすれば、単に単語に分けるだけではなく、
特定の単語を含む文章の抽出も簡単に出来るようになります。
詳しい説明は次回以降に譲ることにしまして、
弊社ではこの自然言語処理をどのように使っているのかについて、
少しだけ紹介します。
弊社の人事クラウドサービス SMPには、マルチアングルフィードバックという、
社員が相互に評価を送り合うシステムがあります。
そしてその中には、
お互いの成長につながるようなコメントを送り合う機能がついています。
それら、皆さんが付けたコメントと、評価値のデータを合わせて分析することで、
いろんなことがわかります。
例えば…
・社員の中で高い評価を得ている人はどんな言葉を話しているか?
(話している言葉には、
その人のいつもの考え方が反映されていると考えられます。)
・研修によって、どの程度その人の考え方が変わったのか?
正しくデータを扱うことで、評価ツールとしての活用だけではなく、
新しい発見が得られます。
それを業務に活用することが出来たら、
人事はもっと、皆さまのお役に立てること間違いなしです。