エンベディング
    
    
      
    
    
      
      コレクションでコンテンツを整理
    
    
      
      必要に応じて、コンテンツの保存と分類を行います。
    
  
    
  
      
    
  
  
  
  
  
  
    
    
    
ユーザーが自分の好きなメニューを入力すると、好みに合いそうな類似メニューを提案してくれる、おすすめ料理アプリを開発しているとします。あなたは、料理の類似性を予測できる機械学習(ML)モデルを開発し、質の高いおすすめができるアプリにしたいと考えています(例: 「パンケーキがお好きでしたら、クレープをおすすめします」)。
モデルをトレーニングするために、ボルシチ、ホットドッグ、サラダ、ピザ、シャワルマなど、人気のあるメニュー 5,000 品目を集めたデータセットを作成します。
  
  
    図 1. 料理のデータセットに含まれるメニュー項目のサンプル。
  
データセット内の各メニュー項目をワンホット エンコーディングで表現する meal の特徴量を作成します。エンコードとは、モデルをトレーニングするために、データの初期の数値表現を選択するプロセスを指します。
  
  
    図 2. ボルシチ、ホットドッグ、シャワルマのワンホット エンコーディング。
    各ワンホット エンコーディングのベクトルは長さ 5,000 で、データセット内の各メニュー項目に対応する 1 つのエントリを含みます。図中の省略記号は、表示されていない 4,995 のエントリを示しています。
  
スパースデータ表現の注意点
これらのワンホット エンコーディングを確認すると、このデータ表現にはいくつかの問題があることがわかります。
- 重みの数。入力ベクトルが大きいと、ニューラル ネットワークにとって膨大な数の重みが必要になります。ワンホット エンコーディングに M 個のエントリがあり、入力後のネットワークの最初のレイヤに N 個のノードがある場合、モデルはそのレイヤに対して MxN 個の重みをトレーニングしなければなりません。
 
- データポイントの数。モデルの重みが多いほど、効果的なトレーニングを行うためには、より多くのデータが必要になります。
 
- 計算量。重みが多いほど、モデルをトレーニングし、使用するために必要な計算量も増加します。ハードウェアの能力を超えてしまう可能性も高くなります。
 
- メモリの量。モデルの重みが多いほど、それをトレーニングして提供するアクセラレータに必要なメモリも増加します。これを効率よくスケーリングするのは非常に困難です。
 
- オンデバイス機械学習(ODML)の対応の難しさ。ML モデルをサーバーなどで提供するのではなく、ローカル デバイス上で実行したいと考えている場合は、モデルを小さくすることに重点を置き、重みの数を減らす必要があります。
 
このモジュールでは、このような問題に対処するために、スパースデータの低次元表現であるエンベディングを作成する方法を学びます。
  
  
  
 
    
  
  
    
      
      
    
    
      
    
    
  
       
         
  
       
    
    
      
    
  
  
  特に記載のない限り、このページのコンテンツはクリエイティブ・コモンズの表示 4.0 ライセンスにより使用許諾されます。コードサンプルは Apache 2.0 ライセンスにより使用許諾されます。詳しくは、Google Developers サイトのポリシーをご覧ください。Java は Oracle および関連会社の登録商標です。
  最終更新日 2025-05-20 UTC。
  
  
    
    
    
      
  
    
  
  
    
      [[["わかりやすい","easyToUnderstand","thumb-up"],["問題の解決に役立った","solvedMyProblem","thumb-up"],["その他","otherUp","thumb-up"]],[["必要な情報がない","missingTheInformationINeed","thumb-down"],["複雑すぎる / 手順が多すぎる","tooComplicatedTooManySteps","thumb-down"],["最新ではない","outOfDate","thumb-down"],["翻訳に関する問題","translationIssue","thumb-down"],["サンプル / コードに問題がある","samplesCodeIssue","thumb-down"],["その他","otherDown","thumb-down"]],["最終更新日 2025-05-20 UTC。"],[],[]]