見出し画像

機械学習における言語データの活用方法

機械学習(ML)とは、データを使って予測を行い、ビジネス上の洞察を生み出すためにコンピュータを訓練する人工知能(AI)の応用分野です。
自然言語処理(NLP)は、機械学習の中の分野で、そのプロセスの一部として人間の言語を分析、操作、理解することに焦点を当てています。

NLPを用いた機械学習では、一連の統計的技術やアルゴリズムを使用して、音声の一部、実体、感情を識別し、コンセプトやユーザーの意図をよりよく理解することができます。音声、テキスト、ビデオなどの非構造化データは、ビジネスの洞察のために使用可能なデータチャンクに変換することができます。
この記事では、教師ありと教師なしとして知られる機械学習の2つの要素に注目し、言語データをどのようにアプリケーションに活用できるかを紹介します。

教師付き機械学習

教師付き機械学習フレームワークでは、テキストのバッチにタグを付けたり、その言語をどのように解釈する必要があるかと一緒に、機械が何を探す必要があるかの例で注釈を付けたりします。
その後、機械にはタグ付けされていないテキストが与えられ、それを分析して、訓練されたフレームワークに対してマッピングします。
マシンは、認識しなかったものを追加するために継続的に再訓練することができ、その過程で常に賢くなっていきます。

教師なし学習

私たちは、データにラベルがない場合に教師なし学習モデルを使用しました。
教師あり学習では、まず機械が知る必要があることの例でテキストに注釈をつけることになりますが、膨大な量になると、これには非常に時間がかかるか、あるいはコミットすることが不可能になる可能性があることをお話ししました。
スパムメールを日常的な問題として考えてみましょう。
教師付き学習は最初にスパム/非スパムのアノテーションを行うのに対し、教師なしの方法は独自の異常検出を行う。
教師なし手法は、テキストを分類するための独自の方法を効果的に実行します。
非常に複雑なアルゴリズムに依存しているため、機械が言語のニュアンスを把握するのに時間がかかってしまい、非常にエラーが発生しやすくなっています。

教師あり学習と教師なし学習

教師あり学習と教師なし学習を、ツイートを理解するための文脈に当てはめることができる。
例えば、真の緊急事態の投稿を分析したいが、映画のレビューは無視するとしよう。
悪いレビューは「災害」や「ひどい」などの用語を使っている可能性があり、簡単に誤解されてしまう。
教師あり学習では、さまざまなタイプのツイートにラベルを付けるので、アルゴリズムには作業するためのルールが定義されています。
教師なし学習モデルは、単語を抽出して文脈を推測することで、独自にツイートをクラスタリングしようとします。

教師なし学習法は確かに拡張性が高く、最終的には素晴らしいアプリケーションを生み出すことができますが、それを正しく理解するのは難しいです。
下の例は、それぞれの学習方法がアヒルの写真を分類する方法を例として示しています。
データのクリーニング機械学習に関して言えば、出力はデータの質に依存します。
NLPにおいて、データセットがクリーンであるということは、モデルが意味のあるテキストから学習するということであり、それを取り巻くすべての「ノイズ」から学習するということではありません。
データセットをクリーンアップする伝統的な方法のいくつかは以下の通りです。
無関係な文字を削除します。
これは、疑問符、感嘆符、カンマなど、最終的な出力に何かを追加することができない記号の可能性があります。
文章を個々の単語に分けること。これはトークン化として知られています。NLPの多くのアプリケーションでは、文全体ではなく個々の単語を必要とします。無関係な単語を削除する。例えば、"the"、"and"、"a"、"or"などは、あなたの分析に何も追加しません。
単語を同じケースに変換して一致させること。例えば、will shout tweetをする人もいれば、もっと静かな人もいます。 
可能な限りスペルミスを修正する
文章のレムマート化。例えば、"am"、"are"、"is"のような単語は、すべて"be"として結合することができます。

データがきれいになったら、機械学習で処理する方法を見てみましょう。
機械学習モデルは、テキストを変換することで数値を入力とします。
これは、文中の各単語にマークを付け、それが何回出現したかをインデックス化することで行います。
これは「Bag of Words」モデルとして知られています。
以下の作業例では、分析から除外される「ストップワード」も含まれています。

単語の袋は最も一般的な開始戦略ですが、教師なし技術に移行するにつれて、単語の意味的な文脈を理解し、異なる変換を行うより複雑な方法があります。
「TF-IDF」として知られているものは、「Bag of Words」モデルの上に乗っており、データセットの中で単語がどれだけ希少であるかによって重み付けをしています。
これにより、より簡単に分類することができます。
クレンジングの後、いくつかのステップでモデルの検査とテストを行い、どこでエラーが発生するかを理解します。
アルゴリズムは、それに応じて調整され、最も関連性の高い意思決定を行うことができます。
Confusion Matrix"は、予測値とラベルを比較する手法です。
また、ラベル付けの決定を行うためにモデルが使用している単語を分析し、バイアスがかかっていないことを確認することもあります。
データがどのように実行されているかを調べる方法は数多くあり、最良の結果を得るためには、できるだけ多くの方法を利用することが重要です。

機械学習における言語の日常的な利用

デジタル時代には、複雑なNLPや機械学習アルゴリズムが、一見標準的なタスクのように見えるものの背後に鎮座しているという事実に、私たちのほとんどが気づいていないのではないでしょうか。
これらのアプリケーションがとてもシンプルに見えるのは、数年の間に豊富なデータから関連性のある洞察と応答を提供する方法を学んできたからです。ここでは、日常的に使われているものをいくつか紹介します。
検索を入力したり、Googleに話しかけたりすると、エンジンは関連性のある類似した結果を返します。
Gmailはメールからイベントを抽出し、カレンダーにリマインダーを作成することができます。
Google翻訳は自動的に言語を翻訳します。
Grammarlyは文書を分析し、スペルや文法の間違いを見つけることができます。
Hater Newsはテキストからユーザーのセンチメントを提供します。
IBM Watsonはデータを分析して自動的に質問に答えることができるスマートフォンでの自動予測は、自分の好きな話し方を学習する形です。
これらの例はすべて、この記事の冒頭で説明したようなモデルから始まっていますが、今では本格的なニューラルネットワークへと発展しています。

概要

機械学習と組み合わせたNLPは、データセットに関する重要な洞察を解き明かすのに役立ちます。
最適化された結果を得るためには、データのクリーニング、トレーニング、テスト、分類を適切に行う必要性を過小評価しないことが重要です。
多くの機械学習NLPプロジェクトが失敗する理由は、そもそもデータの整理に時間をかけていないことにあります。
音声起動型デバイスと検索の成長は、言語分析が競争力を維持するためのビジネスの基本になりつつあることを意味しています。
NLPを理解することは、成功のために極めて重要になってきています。

いいなと思ったら応援しよう!

この記事が参加している募集