機械学習の概要

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

ML は、問題の解決、複雑な質問への回答、新しいコンテンツの作成を行うための新しい方法を提供します。ML は、天気の予測、移動時間の推定、曲のおすすめ、文章のオートコンプリート、記事の要約、未知の画像の生成を行えます。

簡単に言うと、ML とは、有用な予測を行ったり、データからコンテンツを生成したりするために、modelと呼ばれるソフトウェアをトレーニングするプロセスです。

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

ML アプローチでは、ML モデルが最終的に雨量の異なる気象パターン間の数学的関係を学習するまで、ML モデルに膨大な量の気象データを与えてしまいます。次に、モデルに現在の気象データを与え、雨量を予測します。

理解度をチェックする

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

ML システムの種類

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

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

教師ありの学習

教師あり学習モデルは、正しい答えを持つ大量のデータを確認してから、正しい答えを生成するデータ内の要素間のつながりを発見した後に予測を行うことができます。これは、生徒が問題と解答の両方がある古い試験を勉強し、新しい教材を学習するようなものです。過去の試験で十分な数のトレーニングを終えると、新しい試験を受ける準備が整います。これらの ML システムは、人間が ML システムデータに既知の正しい結果を与えるという意味で「教師あり」です。

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

回帰

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

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

シナリオ 考えられる入力データ 数値予測
今後の住宅価格 面積、郵便番号、寝室とバスルームの数、敷地面積、住宅ローン金利、固定資産税率、建設費用、その地域の販売住宅数。 住宅の価格。
今後の乗車時刻 過去の交通状況(スマートフォン、交通センサー、配車サービス、その他のナビゲーション アプリケーションから収集)、目的地までの距離、天候状態。 目的地に到着するまでの時間(分と秒)。

分類

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

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

理解度をチェックする

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

教師なし学習

教師なし学習モデルでは、正解を含まないデータが与えられることで予測が行われます。教師なし学習モデルの目標はデータの中から 意味のあるパターンを特定することですつまり、モデルには各データの分類方法に関するヒントはありませんが、独自のルールを推測する必要があります。

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

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

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

図形と境界線で囲まれ、クラスタ内に色付きのドットが表示されている画像。

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

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

雪、雨、ひょう、雨なしとラベル付けされたクラスターに色付きのドットの画像。

図 3. 類似した気象パターンをクラスタリングする ML モデル。

雪、雨、ひょう、雨なしとラベル付けされ、互いに境界線を囲む色付きのドットの画像。

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

理解度をチェックする

教師ありアプローチと教師なしアプローチの違いは何ですか。
教師ありアプローチでは、正解を含むデータが与えられます。
教師ありアプローチでは、正解を含むデータが与えられます。このモデルの役割は、正しい答えを生成するデータ内のつながりを見つけることです。教師なしアプローチでは、正解のないデータが与えられます。その役割は、データ内のグループを見つけることです。
教師ありアプローチでは通常、クラスタリングを使用します。
教師なしアプローチではクラスタリングを使用します。
教師なしアプローチでは、データのクラスタにラベルを付ける方法がわかります。
教師なしアプローチでは、データのクラスタの意味がわかりません。データに対する理解に基づいて、データを定義するかどうかはユーザー次第です。

強化学習

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

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

生成 AI

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

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

生成モデルは入力と出力で説明できます。通常は「入力のタイプ」から「出力のタイプ」として記述されます。たとえば、生成モデルの一部の入力と出力の一部を以下に示します。

  • Text-to-text(テキストからテキスト)
  • Text-to-image(テキストから画像)
  • Text-to-video(テキストから動画)
  • Text-to-code(テキストからコード)
  • Text-to-Speech
  • 画像とテキストから画像

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

モデル 入力 出力例
Text-to-text(テキストからテキスト) ルマン レースを考案したのは誰? ルマン 24 時間レースは、1906 年に設立された自動車団体であるオートモバイル クラブ ド ロウエスト(ACO)によって設立されました。最初のレースは 1923 年 5 月 26 日と 27 日に、フランスのルマンの近くにある全長 13.426 km(8.345 マイル)の道路サーキット、サルトサーキットで開催されました。このレースはもともと、ACO とサルテ地域を推進する手段として考えられていました。
出典: Bard
Text-to-image(テキストから画像) ポータルの窓から新聞を読むエイリアンのタコ。 漫画のタコの画像。
出典: Imagen
Text-to-video(テキストから動画) フォトリアリスティックなテディベアがサンフランシスコの海で泳いでいます。 水に浸かるテディベア。テディベアはカラフルな魚と一緒に水中を泳いでいます。パンダが水中を泳いでいる。 水中を泳いでいるテディベアの動画。
出典: 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 コマースの商品画像を改良するのに役立ちます。