機械学習の概要

機械学習(ML)は、翻訳アプリから自律走行車まで、Google が使用する最も重要なテクノロジーの一部を支えています。このコースでは、ML の基盤となるコアコンセプトについて説明します。

ML は、問題の解決、複雑な質問への回答、新しいコンテンツの作成のための新しい方法を提供します。ML は、天気を予測したり、所要時間を推定したり、曲をおすすめしたり、文章を自動入力したり、記事を要約したり、これまでにない画像を生成したりできます。

基本的な意味で、ML は、モデルと呼ばれるソフトウェアをトレーニングして、有用な予測を行うか、データからコンテンツを生成するプロセスです。

たとえば、降雨を予測するアプリを作成するとします。従来のアプローチまたは ML アプローチのいずれかを使用できます。従来のアプローチでは、地球の大気と地表を物理ベースで表現し、膨大な量の流体力学方程式を計算します。これは非常に困難です。

ML アプローチでは、ML モデルに膨大な量の気象データを提供して、最終的に ML モデルが、異なる量の雨をもたらす気象パターン間の数学的関係を学習します。現在の天気データをモデルに渡すと、降水量が予測されます。

理解度を確認する

機械学習における「モデル」とは
モデルは、ML システムが予測に使用するデータから導出された数学的な関係です。
モデルはコンピュータ ハードウェアの一部です
モデルは、研究対象のものを小さく表現したものです。

ML システムの種類

ML システムは、予測やコンテンツの生成を学習する方法に基づいて、次のカテゴリの 1 つ以上に分類されます。

  • 教師あり学習
  • 教師なし学習
  • 強化学習
  • 生成 AI

教師あり学習

教師あり学習モデルは、正解を含む大量のデータを見て、正解を生成するデータ内の要素間の関連性を発見した後に予測を行うことができます。これは、生徒が質問と回答の両方を含む過去の試験を勉強して新しい教材を学ぶようなものです。生徒が過去の試験で十分にトレーニングを積んだら、新しい試験を受ける準備が整います。これらの ML システムは、人間が既知の正しい結果を含むデータを ML システムに提供するという意味で「教師あり」です。

教師あり学習の最も一般的なユースケースの 2 つは、回帰と分類です。

回帰

回帰モデルは数値を予測します。たとえば、雨量(インチまたはミリメートル)を予測する天気モデルは回帰モデルです。

回帰モデルのその他の例については、次の表をご覧ください。

シナリオ 使用可能な入力データ 数値予測
将来の住宅価格 面積、郵便番号、寝室数、浴室数、区画面積、住宅ローンの利率、固定資産税率、建築費、地域の売り出し中の住宅の数。 住宅の価格。
今後の乗車時間 過去の交通状況(スマートフォン、交通センサー、配車サービス、その他のナビゲーション アプリから収集)、目的地までの距離、天候。 目的地に到着するまでの時間(分と秒)。

分類

分類モデルは、あるものがカテゴリに属する可能性を予測します。出力が数値である回帰モデルとは異なり、分類モデルは、あるものが特定のカテゴリに属するかどうかを示す値を出力します。たとえば、分類モデルは、メールがスパムかどうか、写真に猫が写っているかどうかを予測するために使用されます。

分類モデルは、バイナリ分類とマルチクラス分類の 2 つのグループに分けられます。二値分類モデルは、2 つの値のみを含むクラスから値を出力します。たとえば、rain または no rain のいずれかを出力するモデルなどです。マルチクラス分類モデルは、2 つ以上の値を含むクラスから値を出力します。たとえば、rainhailsnowsleet のいずれかを出力できるモデルです。

理解度を確認する

ML モデルを使用して商業ビルのエネルギー使用量を予測する場合、どのようなタイプのモデルを使用しますか。
回帰
エネルギー使用量はキロワット時(kWh)で測定されます。これは数値であるため、回帰モデルを使用する必要があります。
分類
分類モデルは、あるものがカテゴリに属するかどうかを予測しますが、回帰モデルは数値を予測します。エネルギー使用量は数値であるキロワット時(kWh)で測定されるため、回帰モデルを使用する必要があります。

教師なし学習

教師なし学習モデルは、正しい回答が含まれていないデータを与えることで予測を行います。教師なし学習モデルの目標は、データ内の有意なパターンを特定することです。つまり、モデルには各データの分類方法に関するヒントはなく、独自のルールを推論する必要があります。

よく使用される教師なし学習モデルでは、クラスタリングという手法が使用されます。モデルは、自然なグループを区切るデータポイントを見つけます。

クラスタ内の色付きのドットを示す画像。

図 1. 類似したデータポイントをクラスタ化する ML モデル。

色付きのドットがクラスタで囲まれ、互いに境界線で区切られている画像。

図 2. 自然な境界を持つクラスタのグループ。

クラスタリングは、カテゴリがユーザーによって定義されないという点で分類とは異なります。たとえば、教師なしモデルは気温に基づいて気象データセットをクラスタ化し、季節を定義するセグメンテーションを明らかにします。次に、データセットの理解に基づいて、これらのクラスタに名前を付けます。

雪、雨、あられ、雨なしとラベル付けされたクラスタ内の色付きのドットを示す画像。

図 3. 類似する天気パターンをクラスタ化する ML モデル。

雪、雨、あられ、雨なしとラベル付けされた、色付きのドットが集まって形状を形成し、互いに境界を接している画像。

図 4. 雪、みぞれ、雨、雨なしとラベル付けされた気象パターンのクラスタ。

理解度を確認する

教師ありアプローチと教師なしアプローチの違いは何ですか?
教師ありアプローチでは、正解を含むデータが提供されます。
教師ありアプローチでは、正解を含むデータが提供されます。モデルの役割は、正しい回答を生成するデータ内の接続を見つけることです。教師なし学習では、正解のないデータが提供されます。その役割は、データ内のグループ化を見つけることです。
教師ありアプローチでは通常、クラスタリングが使用されます。
教師なしアプローチではクラスタリングが使用されます。
教師なしアプローチは、データクラスタにラベルを付ける方法を認識しています。
教師なしアプローチでは、データクラスタの意味を把握できません。データの理解に基づいて、これらの値を定義します。

強化学習

強化学習モデルは、環境内で実行されたアクションに基づいて報酬またはペナルティを取得することで予測を行います。強化学習システムは、報酬を最大限に得るための最適な戦略を定義するポリシーを生成します。

強化学習は、部屋の中を歩くなどのタスクを実行するようにロボットをトレーニングしたり、AlphaGo などのソフトウェア プログラムに囲碁をプレイさせたりするために使用されます。

生成 AI

生成 AI は、ユーザー入力からコンテンツを作成するモデルの一種です。たとえば、生成 AI は独自の画像、楽曲、ジョークを作成できます。また、記事の要約、タスクの実行方法の説明、写真の編集も可能です。

生成 AI は、さまざまな入力を受け取り、テキスト、画像、音声、動画などのさまざまな出力を生成できます。また、これらの組み合わせを取得して作成することもできます。たとえば、モデルは画像を入力として受け取り、画像とテキストを出力として作成できます。また、画像とテキストを入力として受け取り、動画を出力として作成することもできます。

生成モデルは、入力と出力で説明できます。通常は「入力の種類」から「出力の種類」と記述されます。たとえば、次のリストは、生成モデルの入力と出力の一部を示しています。

  • Text-to-text(テキストからテキスト)
  • Text-to-image(テキストから画像)
  • テキストからの動画生成
  • Text-to-code
  • テキスト読み上げ
  • 画像と Text-to-image

次の表に、生成モデルの例、入力、出力の例を示します。

モデル 入力 出力例
Text-to-text(テキストからテキスト) ルマン レースを発明したのは誰ですか? ルマン 24 時間レースは、1906 年に設立された自動車クラブ ドゥ ロウエスト(ACO)によって創設されました。最初のレースは 1923 年 5 月 26 日と 27 日に、フランスのルマン市の近くにある 13.426 km の公道サーキット、サルト サーキットで開催されました。このレースは、もともと ACO と Sarthe 地域を宣伝する手段として考えられていました。
ソース: Bard
Text-to-image(テキストから画像) エイリアンのタコが新聞を読みながらポータルを浮遊しています。 漫画のタコの画像。
出典: Imagen
テキストからの動画生成 サンフランシスコの海で泳いでいるフォトリアルなテディベア。 テディベアが水中に沈みます。テディベアがカラフルな魚と一緒に水中を泳いでいます。水中で泳いでいるパンダ。 水中で泳いでいるテディベアの動画。
ソース: Phenaki
Text-to-code 数値のリストをループして素数を出力する Python ループを作成します。
for number in numbers:
  # Check if the number is prime.
  is_prime = True
  for i in range(2, number):
    if number % i == 0:
        is_prime = False
        break
  # If the number is prime, print it.
  if is_prime:
    print(number)

出典: Bard
画像からテキストへの変換 フラミンゴの画像。 これはフラミンゴです。カリブ海に生息しています。
出典: Google DeepMind

生成 AI の仕組み生成モデルは、新しいが類似したデータを生成することを目的として、データのパターンを学習します。生成モデルは次のとおりです。

  • 人々の行動や話し方を観察して他人の真似を学ぶコメディアン
  • 特定のスタイルの絵画をたくさん研究して、そのスタイルで絵を描く方法を学ぶアーティスト
  • 特定の音楽グループの楽曲をたくさん聴いて、そのグループの音楽に似たサウンドを学ぶカバーバンド

独自で創造的な出力を生成するために、生成モデルは最初に教師なしアプローチを使用してトレーニングされます。このアプローチでは、モデルはトレーニングに使用したデータを模倣することを学習します。モデルは、記事の要約や写真の編集など、モデルに実行を依頼される可能性のあるタスクに関連する特定のデータに対して、教師あり学習または強化学習を使用してさらにトレーニングされることがあります。

生成 AI は急速に進化しているテクノロジーで、新しいユースケースが絶えず発見されています。たとえば、生成モデルは、気を散らす背景を自動的に削除したり、低解像度の画像の品質を改善したりすることで、企業が e コマース商品画像を精緻化できるよう支援しています。