データの扱いと留意点
AIの土台となるデータの集め方と扱い方を学びます。基礎層では、正解の目印をつけるアノテーション、言葉を集めたコーパス、公開されたオープンデータセットの役割をつかみます。深掘り層では、気づきにくい落とし穴であるデータリーケージがなぜ起きるのか、そしてどう防ぐのかを説明できるようになります。
ねらい
このレッスンでは、AIの土台となるデータの集め方と扱い方を学びます。
基礎
データに正解の目印をつけるアノテーション、言葉を集めたコーパス、そして公開されたオープンデータセットの役割を身近な例でつかみます。
1. AIの教材となるデータ
多くのAIは、たくさんのデータから学びます。人が教科書で学ぶように、AIはデータを教材にして、判断のしかたを身につけます。だからこそ、どんなデータをどれだけ、どんな質で用意できるかが、AIの出来を大きく左右します。
データを用意するには、いくつかの道があります。自分たちで新しく集める道、正解の目印をつけて教材に仕立てる道、すでに公開されているデータを借りる道です。ここから、それぞれを見ていきます。良い教材をそろえることが、良いAIへの第一歩です。
2. 正解の目印をつける:アノテーション
AIに「これは犬、これは猫」と見分けさせたいとします。そのためには、たくさんの画像に、あらかじめ「これは犬」「これは猫」という正解の目印をつけておく必要があります。この目印を手がかりに、AIは見分け方を学ぶからです。
この、データに正解の目印をつける作業をアノテーションといいます。アノテーション(annotation)とは、注釈をつけるという意味の言葉です。画像に写っているものの名前をつけたり、文章がどんな感情を表しているかを書き添えたりする作業を指します。
アノテーションは、多くの場合、人の手で行います。1枚ずつ画像を見て、正しい目印をつけていきます。地道で、手間のかかる作業です。しかも、目印が間違っていると、AIは間違ったことを学んでしまいます。犬の画像に「猫」と目印をつけてしまえば、AIはそれを正しいと信じて覚えます。ですから、アノテーションは正確さがとても大切です。質の高い目印をそろえることが、質の高いAIにつながります。
ポイント
アノテーションとは、データに正解の目印をつける作業です。この目印が間違っていると、AIは間違ったことを学んでしまうため、正確さがとても大切です。
3. 言葉を集めたコーパスと、公開されたオープンデータセット
言葉を扱うAIには、大量の文章が必要です。この、AIの学習のために集められた大量の文章のまとまりをコーパスといいます。コーパス(corpus)とは、もともと集められた文章の集まり、という意味の言葉です。新聞の記事、本、ウェブ上の文章などを大量に集めて作ります。
言葉を扱うAIは、このコーパスを読んで、言葉の使われ方を学びます。単語の意味を数のならびで表す学び方は、単語の分散表現を学ぶレッスンで扱いましたが、そこでも土台になるのは大量の文章、つまりコーパスです。良いコーパスがあってこそ、言葉をよく理解するAIが育ちます。
一方で、データを一から集めるのは、大変な手間がかかります。そこで役に立つのが、すでに公開されているデータです。研究や開発のために、誰でも使えるように公開されたデータをオープンデータセットといいます。オープンデータセット(open dataset)とは、開かれたデータの集まり、という意味です。
たとえば、正解の目印つきの画像を大量に集めたものや、整えられた文章のまとまりが、公開されています。これを使えば、自分でデータを集めてアノテーションする手間を大きく省けます。多くの研究者が同じオープンデータセットを使うと、AIどうしの性能をおたがいに比べやすくなる、という利点もあります。同じ物差しで測れるからです。
ここまでの要点
- AIはデータを教材にして学ぶため、データの質がAIの出来を大きく左右します。
- アノテーションとは、データに正解の目印をつける作業で、正確さがとても大切です。
- 言葉を集めたコーパスや、公開されたオープンデータセットを使うと、学習の土台となるデータをそろえられます。
まずは全体像をつかめれば十分という人は、ここで区切って大丈夫です。「AIはデータで育つ」「正解の目印をつけるのがアノテーション」「文章のまとまりがコーパス、公開データがオープンデータセット」と押さえられていれば、この先の深掘りに進む土台はできています。
発展
ここからは、データを扱うときに特に気をつけたい落とし穴をくわしく見ます。知らないと引っかかりやすい、大切な注意点です。前提となる知識がなくても読めるように書きます。
4. 気づきにくい落とし穴:データリーケージ
AIを作っていると、試験の成績はとても良いのに、実際に使うと役に立たない、ということが起きることがあります。その原因の1つが、データリーケージです。
データリーケージ(data leakage)とは、リーケージが漏れという意味で、本来は使えないはずの情報が、学習のときにこっそり紛れ込んでしまうことをいいます。実際に使う場面では、まだ分からないはずの答えの手がかりが、学習のデータに混ざっている状態です。
たとえで考えてみましょう。ある病気にかかるかどうかをAIに予測させたいとします。ところが、学習に使ったデータの中に、うっかり「その病気の治療薬を飲んでいるか」という情報が混ざっていたとします。治療薬を飲んでいる人は、すでにその病気にかかっている人です。AIは、この情報を見て、いとも簡単に病気を当ててしまいます。試験の成績は、とても良く見えます。
しかし、本当に予測したいのは、まだ病気になっていない人が、これからかかるかどうかです。その場面では、治療薬の情報などありません。AIは、本番では使えない手がかりに頼って学んでいたので、実際にはまったく当たらなくなります。これがデータリーケージの怖さです。答えを知っている状態で練習していたようなものだからです。
なぜ気づきにくいのでしょうか。それは、試験の成績が良く出てしまうからです。成績が悪ければ、おかしいと気づいて調べます。しかし、成績が良いと、うまくいったと安心してしまいます。落とし穴は、成績が良く見えるところに隠れています。
防ぐには、学習に使う情報の1つずつをよく吟味することが大切です。「この情報は、実際に予測する場面で、本当に手に入るのか」を問い直します。予測したい時点よりも後に分かる情報や、答えと表裏一体の情報が混じっていないかを丁寧に確かめます。また、AIの実力を正しく測るには、学習に使ったデータと、成績を測るためのデータをきちんと分けておくことも欠かせません。この、データを分けて実力を測る考え方は、機械学習の汎化性能と検証を学ぶレッスンでくわしく扱います。
注意
データリーケージが起きると、試験の成績は良いのに実際には当たらないAIになります。成績が良く見えるため気づきにくい落とし穴です。使う情報が本番でも手に入るかを必ず問い直します。
理解の確認
データリーケージとは、実際に使う場面では手に入らないはずの情報が、学習のデータに紛れ込んでしまうことです。答えの手がかりが混ざっているため、試験の成績は良く見えますが、本番では当たりません。成績が良く見えるので気づきにくく、使う情報が本番でも手に入るかを問い直すことで防ぎます。
5. 合成データとデータの権利
ここからは、いま注目されている話題に触れます。データを扱う現場で近年注目されている点です。
必要なデータが十分に集まらないとき、コンピュータで人工的に作り出したデータを使うことがあります。これを合成データと呼びます。たとえば、めったに起きない不良品の画像が少ないとき、それらしい画像を人工的に作って、学習を補います。ただし、人工的に作ったデータが、現実からかけ離れていると、かえって性能を損なうため、扱いには注意が要ります。
もう1つ大切なのが、データを使う権利の問題です。ウェブ上の文章や画像を集めてくるとき、そのデータを学習に使ってよいのか、という点を確かめる必要があります。ほかの人が作ったものには、著作権などの権利がからみます。誰かの権利を侵さずにデータを扱うための決まりごとは、法律を学ぶ章でくわしく扱います。データは、集めれば何でも自由に使えるわけではない、という点をここでは押さえてください。
理解の確認
合成データとは、必要なデータが足りないときに、コンピュータで人工的に作り出したデータです。現実からかけ離れていると性能を損なうため、扱いには注意が要ります。また、集めたデータには権利がからむため、学習に使ってよいかを確かめることが大切です。
理解度の確認
説明できる項目にチェックを入れましょう。すべて確認できたら、完了ボタンで記録します。
分からなかった点・気になった点
読み込み中です。