GoogleのTransformer特許を解説する:生成AIの基本特許
OpenAIの特許解説シリーズは一休みして、生成AI関連の基本特許中の基本特許、GoogleのTransfomer特許について簡単に解説することにします(先に断わっておきますが結構ややこしいです)。
当該特許は、US10452978B2、発明の名称は"Attention-based sequence transduction neural networks"(アテンションベースのシーケンス変換ニューラルネットワーク)、実効出願日は2017年8月4日、特許登録日は2019年10月22日です。重要性の高い特許にふさわしく世界各国(カナダ、欧州、韓国、中国、オーストラリア等)で出願され、権利化されています。日本でも特許6884871号としてほぼ同等の特許が権利化されています。実効出願日は2017年8月4日、特許登録日は2021年5月14日です。
また、日米共に、様々な構成の分割出願が特許化されており、審査係属中の分割出願も残っていることから、侵害訴訟においていわゆる「嵌め込み」が可能な状態になっています(この点もこの特許がGoogleにとって戦略的であることを表しています)。
Googleの研究者によるTransformerの基本アーキテクチャに関する2017年の画期的論文(“Attention is All You Need”)の内容をそのまま特許化したような内容です。Transformerは、今日の多くのAIプラットフォームが使用しているアーキテクチャであることから、実質的にこの特許権に抵触しているシステムもあるのではないかと思います。Googleがこの特許で権利行使することはおそらくないとは思いますが、万一、他社から何らかの権利行使をされた時には反撃に使用される可能性もあるでしょう。強力なスリーパー特許といえるかと思います。
この特許のポイントとなるのは、先述の論文のタイトルにもある「アテンション」、より正確には「セルフアテンション」です(「自己注意」が定訳だと思いますが、個人的には「注意」よりも「注目」の方がイメージに近いのではないかと思っています)。入力データ中のどの部分に重点を置いて出力を決めるかの重み付けを学習するという手法です。「セルフアテンション」の場合は1つの文章中の単語(トークン)間の結び付きの重み付けを学習することになります。
セルフアテンションによって、たとえば、Michaelというトークンは、Jordanというトークンが隣にあれば「バスケットボールみ」が強くなりJacksonというトークンが隣にあれば「ダンスみ」が強くなるといったように、周辺の文脈を加味したベクトル化が実現されます。
RNNなどの従来型ニューラルネットワークでは、遠い場所にある情報を加味した学習と予測を行うことが困難でした。たとえば、機械翻訳への応用を考えると、文章の先頭にある記載が末尾に近い部分の翻訳結果に影響を与えることがあり得ますが、そのような場合に不利です。また、RNNは基本的に先頭から順番に処理していくというシーケンシャルな処理なので並列処理による性能向上が困難です。トークンごとの「セルフアテンション」を一括処理することで、ハードウェアの並列性を活かして容易に性能を向上できます(ただし、計算量はデータ長の二乗に比例します)。
セルフアテンションの概念自体の理解はなかなか難しいと思いますが、個人的にはこの動画が解像度的にぴったりでわかりやすかったです。
さて、特許の解説に入りますが、わりと有名と思われるタイトル図の左側がエンコーダー、右側がデコーダーに当たります。エンコーダーは入力テキストを「セルフアテンション」により文脈情報を加味した形でベクトル化(特徴量抽出)します。デコーダーは(デコーダーへの)入力テキストとエンコーダーの出力ベクトル列と「セルフアテンション」とを加味した形で、入力テキストの次に続くワード(トークン)の確率を出力します。
元々、Transformerは機械翻訳を想定して作られたアーキテクチャであり、エンコーダー・デコーダー・アーキテクチャであることが特色ですが、今日では、エンコーダー・デコーダー・アーキテクチャとして使われることはむしろ少なく、GPT3などのLLMではデコーダー部分のみを使用しており、GoogleのBERTなどの言語解析システムではエンコーダーのみが使用されています。
この特許のクレームにはエンコーダーとデコーダーの両方が構成要件として含まれているので、デコーダーのみの構成であるGPT3等には権利行使できないのではとの意見を見たことがありますが、Googleは抜かりなく分割出願において、エンコーダーのみの構成やデコーダーのみの構成も特許化しています(これらの分割特許については別記事で解説します)。
本特許(日本語の方)のクレーム1は以下のようになっています。
【請求項1】
1つまたは複数のコンピュータと、命令を格納する1つまたは複数のストレージデバイスとを備えるシステムであって、前記命令は、前記1つまたは複数のコンピュータによって実行されるとき、前記1つまたは複数のコンピュータに、入力順に複数の入力位置の各々においてそれぞれのネットワーク入力を有する入力シーケンスを、出力順に複数の出力位置の各々においてそれぞれのネットワーク出力を有する出力シーケンスに変換するためのシーケンス変換ニューラルネットワークを実施させ、前記シーケンス変換ニューラルネットワークは、
前記入力シーケンスを受信し、前記入力シーケンス内の前記ネットワーク入力の各々のそれぞれエンコードされた表現を生成するように構成され、1つまたは複数のエンコーダサブネットワークのシーケンスを備えるエンコーダニューラルネットワークであって、各エンコーダサブネットワークは、前記複数の入力位置の各々についてそれぞれのエンコーダサブネットワーク入力を受信し、前記複数の入力位置の各々についてそれぞれのサブネットワーク出力を生成するように構成され、各エンコーダサブネットワークは、
前記複数の入力位置の各々についてサブネットワーク入力を受信するように構成されるエンコーダセルフアテンションサブレイヤであって、入力順に各特定の入力位置について前記複数の入力位置において前記エンコーダサブネットワーク入力にわたりセルフアテンションメカニズムを適用して、前記特定の入力位置についてそれぞれの出力を生成するように構成されるエンコーダセルフアテンションサブレイヤを備え、セルフアテンションメカニズムを適用することは、前記特定の入力位置において前記サブネットワーク入力からクエリを決定することと、前記複数の入力位置において前記サブネットワーク入力から導出されたキーを決定することと、前記複数の入力位置において前記サブネットワーク入力から導出された値を決定することと、前記決定されたクエリ、キー、および値を使用して、前記特定の入力位置について前記それぞれの出力を生成することとを含む、エンコーダニューラルネットワークと、前記エンコードされた表現を受信し、前記出力シーケンスを生成するように構成されたデコーダニューラルネットワークとを備えるシステム。
改行が少なく構成要素が分かりにくいので分節して解説します。
この記事は有料です。
栗原潔のIT特許分析レポートのバックナンバーをお申し込みください。
栗原潔のIT特許分析レポートのバックナンバー 2024年11月
税込880円(記事1本)
2024年11月号の有料記事一覧
※すでに購入済みの方はログインしてください。