IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 株式会社コロプラの特許一覧

<>
  • 特許-プログラム 図1
  • 特許-プログラム 図2
  • 特許-プログラム 図3
  • 特許-プログラム 図4
  • 特許-プログラム 図5
  • 特許-プログラム 図6
  • 特許-プログラム 図7
  • 特許-プログラム 図8
  • 特許-プログラム 図9
  • 特許-プログラム 図10
  • 特許-プログラム 図11
  • 特許-プログラム 図12
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B1)
(11)【特許番号】
(24)【登録日】2024-09-05
(45)【発行日】2024-09-13
(54)【発明の名称】プログラム
(51)【国際特許分類】
   A63F 13/86 20140101AFI20240906BHJP
   A63F 13/53 20140101ALI20240906BHJP
   A63F 13/533 20140101ALI20240906BHJP
   G06N 20/00 20190101ALI20240906BHJP
   G06Q 50/10 20120101ALI20240906BHJP
【FI】
A63F13/86
A63F13/53
A63F13/533
G06N20/00
G06Q50/10
【請求項の数】 3
(21)【出願番号】P 2023187262
(22)【出願日】2023-10-31
【審査請求日】2024-03-06
【早期審査対象出願】
(73)【特許権者】
【識別番号】509070463
【氏名又は名称】株式会社コロプラ
(74)【代理人】
【識別番号】110000442
【氏名又は名称】弁理士法人武和国際特許事務所
(72)【発明者】
【氏名】池田 洋一
【審査官】鈴木 崇雅
(56)【参考文献】
【文献】特開2024-011105(JP,A)
【文献】特開2021-194229(JP,A)
【文献】特開2023-146391(JP,A)
【文献】米国特許出願公開第2023/0271086(US,A1)
【文献】米国特許出願公開第2023/0018621(US,A1)
【文献】中国特許出願公開第116943247(CN,A)
【文献】[2018年度未踏/No.3]深層学習によるAI実況プレイ動画生成,Youtube[online][video],2019年03月27日,[2024年4月26日 検索]、インターネット:<URL:https://www.youtube.com/watch?v=-BXea33PIGQ>
(58)【調査した分野】(Int.Cl.,DB名)
A63F 9/24、13/00-13/98
G06N 20/00
G06Q 50/10
(57)【特許請求の範囲】
【請求項1】
コンピュータを、
ユーザによる行動に対する正解が未知である未知画像データを含む未知データを入力する未知データ入力手段と、
前記行動を示す画像データと前記行動に対する実況者による実況に係る実況データとを含む学習データを用いて学習した学習済みモデルを用いて、前記未知データに基づき、前記行動に対する実況に係る出力データを生成する生成手段と、
前記出力データに基づく出力を行う出力手段として機能させ
前記行動は、
ゲームをプレイすることであり、
前記画像データは、
前記ゲームにおける出力画面を示す動画であり、
前記学習済みモデルは、
前記画像データを入力データとし、前記実況データを出力データとして、両者を関連付けて事前に学習させたモデルである
プログラム。
【請求項2】
コンピュータを、
ユーザによる行動に対する正解が未知である未知画像データを含む未知データを入力する未知データ入力手段と、
前記行動を示す画像データと前記行動に対する実況者による実況に係る実況データとを含む学習データを用いて学習した学習済みモデルを用いて、前記未知データに基づき、前記行動に対する実況に係る出力データを生成する生成手段と、
前記出力データに基づく出力を行う出力手段として機能させ
前記画像データ、及び、前記実況データは、
実際の競技を対象にし、
前記未知画像データは、
前記競技と同じゲームのプレイを対象とし、
前記学習済みモデルは、
前記画像データを入力データとし、前記実況データを出力データとして、両者を関連付けて事前に学習させたモデルである
プログラム。
【請求項3】
コンピュータを、
ユーザによる行動に対する正解が未知である未知画像データを含む未知データを入力する未知データ入力手段と、
前記行動を示す画像データと前記行動に対する実況者による実況に係る実況データとを含む学習データを用いて学習した学習済みモデルを用いて、前記未知データに基づき、前記行動に対する実況に係る出力データを生成する生成手段と、
前記出力データに基づく出力を行う出力手段として機能させ
前記学習済みモデルは、
前記実況の性質が異なる複数種類が生成され、
前記生成手段は、
前記実況を視聴する視聴者が前記学習済みモデルを選択する選択操作を入力すると、前記選択操作で選択された前記学習済みモデルである選択モデルを用いて、前記出力データを生成し、
前記学習済みモデルは、
前記画像データを入力データとし、前記実況データを出力データとして、両者を関連付けて事前に学習させたモデルである
プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、プログラムに関する。

【背景技術】
【0002】
従来、ゲーム等のプレイに実況を加えて、動画等にして配信する技術が知られている。
【0003】
例えば、配信用のサーバが、まずゲームの実況を配信する。次に、システムが、ゲームに関する情報を管理する。更に、システムは、ゲームの実況を視聴する視聴者の視聴状況を検出する。続いて、視聴状況とゲームプレイ情報に応じて、視聴者に対し、視聴者特典を付与する。このようにして、ゲームの実況を視聴する動機付けとし、かつ、視聴者にゲームをプレイさせることに興味を持たせる技術が知られている(例えば、特許文献1等である)。
【0004】
また、多人数が参加するオンラインゲームでは、複数のプレイヤにより、同時多発的にゲーム状況が発生する。そして、ゲーム状況に対応する音声によるゲーム実況解説も同時に発生する。このため、複数のゲーム実況解説の連続再生が生じ、プレイヤのゲーム進行を妨げる。そこで、実況の再生数が上限数を越える場合に、所定時間内に再生する音声データを制御する。このようにして、プレイヤに対して好適なゲーム実況解説を提供する技術が知られている(例えば、特許文献2等である)。
【先行技術文献】
【特許文献】
【0005】
【文献】特開2023-048505号公報
【文献】特開2009-125108号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
従来の技術は、ゲーム等のプレイに対して実況を人間である実況者が行う。例えば、実況は、プレイを撮影した動画に対し、音声、又は、テキスト(キャラクタ等を使う場合もある。)で解説を追加する編集によって加えられる。このように、従来の技術は、実況を配信するのに、実況を加える編集を行うため、ユーザの作業負担が重くなるという課題がある。
【0007】
本発明は、ゲームのプレイ内容等に対する実況を配信する場合におけるユーザの作業負担を軽減させることを目的とする。
【課題を解決するための手段】
【0008】
本発明は、前記課題を解決するため、プログラムは、コンピュータを、ユーザによる行動に対する正解が未知である未知画像データを含む未知データを入力する未知データ入力手段と、前記行動を示す画像データと前記行動に対する実況者による実況に係る実況データとを含む学習データを用いて学習した学習済みモデルを用いて、前記未知データに基づき、前記行動に対する実況に係る出力データを生成する生成手段と、前記出力データに基づく出力を行う出力手段として機能させる。
【発明の効果】
【0009】
本発明によれば、ゲームのプレイ内容等に対する実況を配信する場合におけるユーザの作業負担を軽減できる。
【図面の簡単な説明】
【0010】
図1】本実施形態に係るシステム構成例を示す図である。
図2】事前処理例を示す図である。
図3】実行処理例を示す図である。
図4】AIの学習、及び、実行の全体処理例を示す図である。
図5】情報処理装置のハードウェア構成例を示す図である。
図6】AIの構成例を示すネットワーク図である。
図7】ゲームを対象とする学習処理の例を示す図である。
図8】ゲームを対象とする実行処理の例を示す図である。
図9】全体処理例を示す図である。
図10】機能構成例を示す図である。
図11】選択操作を行う画面の例を示す図である。
図12】補助装置を用いる構成例を示す図である。
【発明を実施するための形態】
【0011】
以下、実施形態を図面に基づいて説明する。
【0012】
[システム構成例]
図1は、本実施形態に係るシステム構成例を示す図である。例えば、図1に示すように、システム1は、ユーザ端末20A、20B、20C(以下、これらを総称して、「ユーザ端末20」と表記することがある。)と、サーバ11とを主に備える。
【0013】
以下、サーバ11を管理する者を「管理者5」という。また、ユーザ端末20A、20B、及び、20Cを操作するそれぞれの者を「ユーザ4A」、「ユーザ4B」、「ユーザ4C」(以下、これらを総称して、「ユーザ4」と表記することがある。)という。
【0014】
管理者5は、システム1による情報処理サービスを運営する役割の者である。一方で、ユーザ4は、システム1による情報処理サービスを利用する者である。また、管理者5、及び、ユーザ4は、管理装置の例であるサーバ11、又は、ユーザ端末20のどちらの情報処理装置を操作するかが異なる。以下、ユーザ4がゲームのプレイヤとなり、管理者5がゲーム、及び、サーバ11を管理する。
【0015】
なお、図1に示す例は、ユーザ端末20が3つ、かつ、サーバ11が1つの例であるが、サーバ11の台数、ユーザ端末20の台数、管理者5の人数、及び、ユーザ4の人数は問わない。
【0016】
サーバ11、及び、ユーザ端末20は、通信ネットワーク2を介して相互通信可能に接続する。例えば、通信ネットワーク2は、インターネット、移動体通信システム(例えば、4G(4th Generation、第4世代移動通信規格)、又は、5G(5th Generation、第5世代移動通信規格)等による公衆回線である。)、Wi-Fi(登録商標)(Wireless Fidelity)等の無線ネットワーク、又は、これらの組み合わせである。
【0017】
ユーザ端末20は、サーバ11からゲームをプレイするためのプログラム(以下、「ゲームプログラム」という。)をダウンロード、又は、サーバ11にアクセスしてゲームサービスを提供する。なお、ゲームをプレイする上でサーバ11と通信がなくともよい。すなわち、ユーザ端末20は、プログラムをダウンロード、又は、メディアからインストールしてゲームをプレイする環境を構築してもよい。
【0018】
[AI(人工知能、Artificial Intelligence)の学習、及び、実行の例]
以下、AIは、「事前処理」によって学習する。学習段階、すなわち、「事前処理」におけるAIを「学習モデルA1」という。そして、学習モデルA1は、ある程度、学習が進むと、「学習済みモデルA2」となる。以下、学習済みモデルA2を用いて出力処理を実行する実行段階を「実行処理」とする。
【0019】
「事前処理」は、「実行処理」より前に行われる。ただし、「実行処理」をする上で引き続き「事前処理」、すなわち、学習済みモデルA2が学習を行ってもよい。
【0020】
[事前処理例]
図2は、事前処理例を示す図である。例えば、事前処理は、サーバ11で行われる。
【0021】
学習モデルA1は、学習データD1を入力して学習を行う。すなわち、学習モデルA1は、所謂「教師あり」の学習を行う。
【0022】
事前処理では、画像データD10が入力される。例えば、画像データD10は、ユーザ端末20でユーザ4がゲームをプレイすると、出力画面をキャプチャして生成される。以下、ゲームをプレイすることが「行動」である例で説明する。
【0023】
ただし、画像データD10は、出力画面をキャプチャして生成するに限られず、他の情報処理装置で生成される、又は、ユーザ端末20をプレイ中の出力画面をカメラ等の撮影装置が撮影して生成される等でもよい。そして、学習データD1では、画像データD10に対して正解データD11が対応付けされる。以下、「正解」が既知の画像データを単に「画像データD10」という。
【0024】
学習モデルA1は、学習データD1の入力に基づき、画像データD10の入力に対し、正解データD11を出力とする対応関係を学習する。
【0025】
なお、学習データD1、画像データD10、及び、正解データD11の詳細は、後述する。
【0026】
更に、学習モデルA1は、ビッグデータD4で学習するのが望ましい。例えば、ビッグデータD4は、インターネット上のデータ等である。ただし、ビッグデータD4は、管理者5等が入力するデータでもよい。
【0027】
[実行処理例]
図3は、実行処理例を示す図である。例えば、実行処理は、ユーザ端末20、又は、ユーザ端末20とサーバ11が協働して行う。
【0028】
学習済みモデルA2は、事前処理による学習によって学習モデルA1が学習した状態である。すなわち、図2に示す事前処理が実行されると、学習済みモデルA2が生成される。
【0029】
学習済みモデルA2は、未知データD2が入力されると、未知データD2に対して、出力データD3を生成する。
【0030】
未知データD2は、未知の画像データ(以下「未知画像データD20」という。)、すなわち、画像データに対する「正解」が入力の時点では不明なデータである。
【0031】
出力データD3は、実況D30で構成されるデータである。なお、学習済みモデルA2は、出力データD3を複数の実況D30で構成するように生成してもよい。
【0032】
出力データD3、及び、実況D30の詳細は後述する。
【0033】
図4は、AIの学習、及び、実行の全体処理例を示す図である。図2に示す事前処理、及び、図3に示す実行処理の関係は、図4に示すような関係となる。
【0034】
なお、事前処理、及び、実行処理を図に例示するような連続する順序で実行しなくともよい。したがって、事前処理によって準備を行う期間と、その後、実行処理を行う期間を連続させることは必須ではない。ゆえに、実行処理は、学習済みモデルA2を一旦作成した後であれば、事前処理から時間が経過した後に実行処理を行うようにしてもよい。また、学習済みモデルA2が一度生成された後であれば、学習済みモデルA2を転用して実行処理が行われてもよい。
【0035】
学習処理と実行処理では、学習データD1と未知データD2が異なる。また、AIは、学習段階では、学習モデルA1であったのが、ある程度学習が進むと、学習済みモデルA2となる。このように、ビッグデータD4を学習データとして学習した学習済みモデルA2は、所謂「生成AI」である。
【0036】
学習データD1に含まれる画像データD10と、未知データD2に含まれる未知画像データD20は、同じデータ種類である。すなわち、画像データD10と未知画像データD20は、ユーザ4がプレイするゲームの出力画面をキャプチャする等によって生成される動画である。なお、キャプチャは、専用装置があってもよい。
【0037】
学習データD1は、「正解」が既知であるのに対し、未知データD2は、「正解」が未知となる。具体的には、学習データD1は、正解データD11を含むのに対し、未知データD2は、正解データD11を含まない。したがって、学習データD1は、画像データD10と正解データD11の関係が既知である。
【0038】
一方で、未知データD2には、正解データD11が含まれず、未知データD2に対する「正解」が未知である。そして、学習済みモデルA2は、事前処理で学習した学習データD1と正解データD11の相関関係に基づき、未知データD2に対して出力データD3を生成する。
【0039】
実行処理は、一部をテーブル等を用いる処理でもよい。このように、テーブルを用いる構成、所謂ルールベースでは、事前処理は、テーブル(ルックアップテーブル(Look Up Table、LUT)等ともいう。)、又は、数式等を入力する準備を行う処理である。
【0040】
[情報処理装置のハードウェア構成例]
図5は、情報処理装置のハードウェア構成図である。情報処理装置は、サーバ11、及び、ユーザ端末20等である。以下、情報処理装置は、サーバ11と同じハードウェア構成であるとする。例えば、情報処理装置は、ワークステーション、又は、パーソナルコンピュータ等の汎用コンピュータである。ただし、それぞれの情報処理装置は、ハードウェア構成が異なってもよい。
【0041】
サーバ11は、プロセッサ111と、メモリ112と、ストレージ113と、入出力インタフェース114と、通信インタフェース115とを主に備える。また、サーバ11の各構成要素は、通信バス116に接続する。
【0042】
プロセッサ111は、メモリ112又はストレージ113に格納されているサーバプログラム11Pに含まれる一連の命令を実行することによって、処理、及び、制御を実現する。
【0043】
プロセッサ111は、例えば、CPU(Central Processing Unit)、GPU(Graphics Processing Unit)、MPU(Micro Processing Unit)、FPGA(Field-Programmable Gate Array)、ASIC(Application Specific Integrated Circuit)、又は、これらの組み合わせ等の演算装置、及び、制御装置である。
【0044】
メモリ112は、サーバプログラム11P、及び、データ等を記憶する主記憶装置である。例えば、サーバプログラム11Pは、ストレージ113からロードされる。また、データは、サーバ11に入力されたデータと、プロセッサ111によって生成されたデータとを含む。例えば、メモリ112は、RAM(Random Access Memory)、又は、その他の揮発メモリである。
【0045】
ストレージ113は、サーバプログラム11P、及び、データ等を記憶する補助記憶装置である。ストレージ113は、例えば、ROM(Read-Only Memory)、ハードディスク装置、フラッシュメモリ、又は、その他の不揮発記憶装置である。また、ストレージ113は、メモリカードのように着脱可能な記憶装置でもよい。更に、他の例として、ストレージ113は、外部記憶装置であってもよい。このような構成によれば、例えば、アミューズメント施設のように複数のユーザ端末20が使用される場面において、サーバプログラム11P、又は、データの更新等を一括して行うことが可能になる。
【0046】
入出力インタフェース114は、モニタ、入力装置(例えば、キーボード、又は、ポインティングデバイス等である。)、外部記憶装置、スピーカ、カメラ、マイク、及び、センサ等の外部装置をサーバ11に接続するインタフェースである。
【0047】
また、プロセッサ111は、入出力インタフェース114を通じて外部装置と通信する。入出力インタフェース114は、例えば、USB(Universal Serial Bus)、DVI(Digital Visual Interface)、HDMI(登録商標)(High-Definition Multimedia Interface)、無線、及び、その他の端子である。
【0048】
通信インタフェース115は、通信ネットワーク2に接続する他の装置(例えば、ユーザ端末20等である。)と通信する。例えば、通信インタフェース115は、LAN(Local Area Network)等の有線通信インタフェース、Wi-Fi(登録商標)(Wireless Fidelity)、Bluetooth(登録商標)、又は、NFC(Near Field Communication)等の無線通信インタフェースである。
【0049】
ただし、情報処理装置は、上記のハードウェア構成に限られない。例えば、ユーザ端末20は、カメラ等のセンサを更に備えてもよい。そして、ユーザ端末20がセンサで取得する様々なデータがサーバ11に送信されてもよい。
【0050】
[学習モデル、及び、学習済みモデルの構成例]
図6は、AIの構成例を示すネットワーク図である。学習モデルA1、及び、学習済みモデルA2は、例えば、以下のようなネットワークで示す構成のAIである。
【0051】
以下、学習モデルA1、及び、学習済みモデルA2は、サーバ11上、すなわち、クラウド上に実装される例で説明する。ただし、学習モデルA1、及び、学習済みモデルA2の一部、又は、全部は、ユーザ端末20等に実装されてもよい。例えば、AIは、入力層L1、隠れ層L2、及び、出力層L3を有するネットワーク構造を有してもよい。
【0052】
具体的には、AIは、図示するようなCNN(畳み込みニューラルネットワーク、Convolution Neural Network)等を有するネットワーク構造である。
【0053】
入力層L1は、入力画像DINを入力する層である。
【0054】
隠れ層L2は、入力層L1から入力される入力画像DINに対して、畳み込み、プーリング、正規化、又は、これらの組み合わせ等の処理を行う層である。
【0055】
出力層L3は、隠れ層L2で処理された結果を出力画像DOUTで出力する層である。例えば、出力層L3は、全結合層等で構成される。
【0056】
畳み込みは、例えば、フィルタ、マスク、又は、カーネル(以下単に「フィルタ」という。)等に基づいて、画像、又は、画像に対して所定の処理を行って生成される特徴マップ等に対して、フィルタ処理を行って、特徴マップを生成する処理である。
【0057】
具体的には、フィルタは、フィルタ係数(「重み」又は「パラメータ」等という場合もある。)を画像又は特徴マップの画素値に乗じる計算をするのに用いるデータである。なお、フィルタ係数は、学習又は設定等により定まる値である。
【0058】
そして、畳み込みの処理は、画像又は特徴マップを構成する画素のそれぞれの画素値に、フィルタ係数を乗じる計算を行い、計算結果を構成要素とする特徴マップを生成する処理である。
【0059】
このように、畳み込みの処理が行われると、画像又は特徴マップの特徴が抽出できる。特徴は、例えば、エッジ成分、又は、対象とする画素の周辺を統計処理した結果等である。
【0060】
また、畳み込みの処理が行われると、対象とする画像又は特徴マップが示す被写体等が、上下にずれる、左右にずれる、斜めにずれる、回転、又は、これらの組み合わせとなる画像又は特徴マップであっても同様の特徴が抽出できる。
【0061】
プーリング(Pooling)は、対象とする範囲に対して、平均の計算、最小値の抽出、又は、最大値の抽出等の処理を行って、特徴を抽出して特徴マップを生成する処理である。すなわち、プーリングは、maxプーリング、又は、avgプーリング等である。
【0062】
なお、畳み込み、及び、プーリングは、ゼロパディング(Zero Padding)等の前処理があってもよい。
【0063】
以上のような、畳み込み、プーリング、又は、これらの組み合わせによって、いわゆるデータ量削減効果、合成性、又は、移動不変性等が獲得できる。
【0064】
正規化(Normalization)は、例えば、分散、及び、平均値を揃える処理等である。なお、正規化は、局所的に行う場合を含む。そして、正規化が行われるとは、データは、所定の範囲内の値等になる。ゆえに、以降の処理においてデータの扱いが容易にできる。
【0065】
全結合(Fully connected)は、特徴マップ等のデータを出力に落とし込む処理である。
【0066】
例えば、出力は、「YES」又は「NO」等のように、出力が2値の形式である。このような出力形式では、全結合は、2種類のうち、いずれかの結論となるように、隠れ層L2で抽出される特徴に基づいてノードを結合する処理である。
【0067】
一方で、出力が3種類以上ある場合等には、全結合は、いわゆるソフトマックス関数等を行う処理である。このようにして、全結合により、最尤推定法等によって分類(確率を示す出力を行う場合を含む。)を行うことができる。なお、AIのネットワーク構成は、上記に説明するものに限られない。つまり、AIは、他の機械学習によって実現されてもよい。
【0068】
例えば、AIは、「教師なし」の機械学習等により、次元削減(例えば、3次元以上の関係を3次元以下程度の簡略な計算で求まる関係に変える処理である。)等の前処理を行う構成等でもよい。入力と出力の関係は、1次式等の単純な計算で処理されるのが望ましい。このような計算であると、計算コストを少なくできる。
【0069】
また、AIは、ドロップアウト等といった過学習(「過剰適合」又は「過適合」等ともいう。)(overfitting)を軽減化させる処理が行われてもよい。他にも、次元削減、及び、正規化等の前処理が行われてもよい。
【0070】
AIは、CNNのネットワーク構造等があってもよい。他にも、例えば、ネットワーク構造は、LLM(Large Language Model 大規模言語モデル)、RNN(再帰型ニューラルネットワーク、Recurrent Neural Network)又はLSTM(Long Short-Term Memory)等の構成を有してもよい。すなわち、AIは、ディープラーニング以外のネットワーク構造等であってもよい。
【0071】
また、AIは、ハイパパラメータを有する構成であってもよい。すなわち、AIは、一部の設定をユーザ等が行う構成でもよい。更に、AIは、学習対象とする特徴量を特定してもよいし、ユーザが学習対象とする一部又は全部の特徴量を設定してもよい。
【0072】
更に、学習モデルA1、及び、学習済みモデルA2は、他の機械学習を利用してもよい。例えば、学習モデルA1、及び、学習済みモデルA2は、教師なしのモデルにより、正規化等を前処理で行ってもよい。また、学習は、強化学習(Reinforcement Learning、AIに選択をさせ、選択に対する評価(報酬)を与えて、評価が大きくなるような学習方法をいう。)等であってもよい。
【0073】
学習では、データの拡張等が行われてもよい。すなわち、学習モデルA1の学習に用いる学習データを増やすため、1つの実験データ等を拡張させて、複数の学習データにする前処理が行われてもよい。このようにして、学習データを増やせると、より学習モデルA1の学習を進めることができる。
【0074】
また、学習モデルA1、及び、学習済みモデルA2は、転移学習(Transfer Learning)、又は、ファインチューニング(Fine tuning)等を行う構成でもよい。すなわち、ユーザ端末20は、装置ごとに異なる実行環境となる場合が多いため、実行環境に合わせて装置ごとに設定が異なってもよい。例えば、AIの基本構成は、別の情報処理装置で学習する。その後、各々の情報処理装置は、更に各々の実行環境に最適化するため、更に学習、又は、設定等がされてもよい。
【0075】
なお、学習データD1、及び、未知データD2に、テキスト、センサ検出結果、又は、音声等のような画像以外のデータが含まれる場合には、ネットワーク構成は、上記以外の構成でもよい。
【0076】
[画像データの例、正解データの例、実況の例、及び、学習データの例]
図7は、ゲームを対象とする学習処理の例を示す図である。例えば、ユーザ4がユーザ端末20でゲームを行っている間に、ユーザ端末20上でゲームをプレイする画面(以下単に「出力画面6」という。)がキャプチャされて、画像データD10が生成される。すなわち、画像データD10は、出力画面6を複数のフレームで示す動画等である。
【0077】
画像データD10に対し、例えば、実況者8が画像データD10のプレイを見て、プレイを解説する音声(以下「実況音声9」という。)を入力する。なお、実況音声9は、音声に限られず、テキスト等の形式でもよい。そして、実況音声9がマイク等を介して入力され音声データとなり、この音声データが正解データD11となる。ただし、実況音声9が音声認識処理によってテキストの形式となって正解データD11となってもよい。
【0078】
正解データD11は、実況音声9の形式、すなわち、音声データを含むのが望ましい。同じ文言であっても、音声データであると、高低(周波数)、音量、音声スピード、抑揚、又は、雰囲気等が、テキストの形式よりも表現される場合がある。つまり、実況者8が興奮していると、音量が大きくなる、又は、音声スピードが速くなる、すなわち、早口になる場合が多い。したがって、音声データがあると、音声により状況等がより推測でき、プレイの盛り上がり等が判定しやすくできる。
【0079】
なお、実況者8は、ゲームをプレイしたユーザ4と同一人物でもよいし、異なる人物でもよい。また、実況者8は、複数人でもよい。
【0080】
他にも、ビッグデータD4等が学習されてもよい。例えば、インターネット上には、評判、ゲームの攻略情報、又は、見どころ等が情報提供されている場合がある。これらの情報がビッグデータD4等にあると、より参考となる情報が学習されるため、学習モデルA1がゲームの内容等をより学習できる。
【0081】
なお、学習データD1、及び、未知データD2には、補助データが含まれてもよい。例えば、補助データは、ゲーム等の仕様、ルール、ログデータ、又は、統計データ等である。
【0082】
ログデータは、ユーザ端末20においてゲームがプレイされると、ゲームの進行に合わせて生成される。なお、ログデータは、ユーザ4による操作(例えば、ログデータを生成する指示を出す操作等である。)に基づいて生成されてもよいし、ユーザ端末20がゲームの進行に合わせてバックグランドで自動的に生成してもよい。
【0083】
ログデータは、例えば、状況、ユーザ4によるコントローラ操作、ユーザ4の自己申告情報、プレイの経過情報、ユーザ4には表示されないパラメータ(所謂「隠しパラメータ」等が含まれてもよい。)、及び、プレイにおいて操作されるキャラクタのパラメータ等といった周辺情報を示すデータである。このようなログデータが入力されると、周辺情報まで学習、及び、実況D30に考慮され、より多くの情報が考慮された出力ができる。
【0084】
統計データは、例えば、ゲーム全体における平均値、中央値、又は、分散等を算出した結果である。例えば、レースゲーム等では、様々なプレイヤのプレイによるタイム等が統計処理の対象となる。このような統計データがあると、ユーザ4のプレイが他者と比較して、タイム等が優れた成績か否かの判断ができる。
【0085】
[未知データの例、未知画像データの例、及び、出力データの例]
図8は、ゲームを対象とする実行処理の例を示す図である。実行処理は、学習済みモデルA2に未知データD2が入力されると実行される。
【0086】
未知データD2は、学習処理における画像データD10と同様に、ユーザ4がユーザ端末20でゲームを行っている間に、出力画面6がキャプチャされて、未知画像データD20が生成される。なお、未知データD2は、補助データを含んでもよい。
【0087】
出力データD3は、未知画像データD20に対する実況D30を示すように生成される。具体的には、実況D30は、未知画像データD20が示す動画に、解説の音声を入力する形式(以下、解説の音声を入れた動画を「解説動画D31」という。)で生成される。
【0088】
解説動画D31は、未知画像データD20が示すプレイを表示する画像に合わせたタイミングでプレイの内容等を解説した音声が流れるように生成される。
【0089】
なお、解説動画D31は、未知画像データD20と画像が同じでもよいし、異なってもよい。例えば、解説動画D31には、解説用に新たな画像(以下「解説画像」という。)があってもよい。
【0090】
解説画像は、画面内に注目する箇所にマークを付与、又は、他の場面を再生する再生スピードより、毎秒あたりのフレーム数を増加(所謂「スローモーション化」である。)等である。なお、解説画像は、解説動画D31に含まれてもよいし、別のデータにしてもよい。
【0091】
また、実況D30は、学習データD1で入力した音声以外で生成されてもよい。例えば、実況D30は、実況音声9の音声(すなわち、実況者8の声である。)でなく、他の音声に吹き替えられてもよい。更に、実況D30は、音声を入れるに限られず、キャラクタを入れる等の演出を加える、又は、字幕を入れる等でもよい。
【0092】
出力データD3は、要約D32等を含んでもよい。例えば、要約D32は、未知データD2が示すプレイの中で注目する場面等をまとめたデータである。具体的には、要約D32は、見出し、注目する場面の時間、抜粋画像、及び、要約文等で構成する。
【0093】
見出しは、短い文、又は、単語でプレイ全体のまとめ等を示すテキストである。
【0094】
注目する場面の時間は、プレイの中で重要と考えられる行動があった時間帯を示すテキストである。
【0095】
抜粋画像は、静止画、又は、数秒程度の動画でプレイの中で重要と考えられる行動を抜き出した画像である。
【0096】
要約文は、抜粋画像が示す行動を短い文で説明するテキストである。
【0097】
実況D30とは別に、要約D32が生成されると、ユーザ4は、要約D32を見て短時間で内容を把握できる。また、要約D32は、所謂「見どころ」等を示すため、ユーザ4は、どの点を注目して見ればよいかが素早く判断できる。ただし、要約D32は、所謂「ネタバレ」等になる場合もあるので、要約D32の要否は視聴者が選択できるのが望ましい。
【0098】
要約D32となる時点は、例えば、視聴者が多くなった時点、又は、ゲームの内容において点数等に大きく変動があった時点等を中心に判定される。
【0099】
[全体処理例]
図9は、全体処理例を示す図である。以下の例では、全体処理は、事前処理と実行処理を連続して行う。具体的には、事前処理は、ステップS01及びステップS02である。また、実行処理は、ステップS03及びステップS04である。ただし、全体処理には、これら以外の処理が含まれてもよい。
【0100】
ステップS01では、サーバ11は、学習モデルA1に学習データD1を入力する。例えば、ステップS01では、ユーザ端末20でユーザ4がゲームをプレイし、プレイを行っている出力画面6をキャプチャすると、画像データD10が生成される。
【0101】
次に、画像データD10、すなわち、ユーザ4によるプレイに対し、実況者8が実況を行う。例えば、実況者8が音声のみで実況をする場合には、音声データが正解データD11となる。
【0102】
このようにして、画像データD10と正解データD11が生成された後、画像データD10と正解データD11を対応付けして、学習データD1とする。このように学習データD1を生成して、サーバ11は、画像データD10と正解データD11を含む学習データD1を学習モデルA1に入力する。
【0103】
ステップS02では、サーバ11は、学習モデルA1を学習させる。具体的には、図7が示すように、ステップS01で生成される、画像データD10と正解データD11を対応付けさせた学習データD1を用いて、サーバ11は、学習モデルA1を学習させて、学習済みモデルA2を生成する。
【0104】
以上のようなステップS01、及び、ステップS02によって、ある程度の学習がされ、学習済みモデルA2が生成されると、以下のステップS03、及び、ステップS04の実行処理が実行される。
【0105】
ステップS03では、サーバ11は、未知データD2を入力する。例えば、図8に示すように、ユーザ端末20でユーザ4がゲームをプレイし、プレイしている出力画面6をキャプチャすると、未知画像データD20が生成される。その後、未知データD2は、学習済みモデルA2に入力される。
【0106】
ステップS04では、サーバ11は、未知データD2が入力されると、例えば、図8に示すように、サーバ11は、学習済みモデルA2を用いて、未知データD2が示すプレイに対する実況D30を含む出力データD3を生成する。
【0107】
続いて、ステップS04では、サーバ11は、出力データD3に基づく出力を行う。例えば、サーバ11は、図8に示すような実況D30が加えられた動画をユーザ端末20等で表示されるように、出力データD3をユーザ端末20等に送信する。
【0108】
ただし、出力データD3に基づく出力は、動画サイトにアップロードさせる、又は、パブリックビュー等の出力装置に表示させる等のように、ユーザ端末20以外でもよい。また、出力は、ほぼリアルタイム(処理による一定の遅れがある場合があってもよい。)でもよいし、出力データD3が保存されてユーザ4が後で再生する操作をしたタイミングで出力が開始されてもよい。
【0109】
なお、上記に説明する全体処理は、サーバ11が学習処理、及び、実行処理をすべて実行するが、処理の一部、又は、全部をユーザ端末20が実行してもよい。すなわち、学習モデルA1、及び、学習済みモデルA2は、サーバ11以外の情報処理装置に実装されてもよい。
【0110】
[機能構成例]
図10は、機能構成例を示す図である。例えば、システム1は、学習装置31、及び、実行装置32を備えるAI評価システムの例である。なお、学習装置31、及び、実行装置32は、同じ情報処理装置でもよいし、異なる情報処理装置でもよい。
【0111】
学習装置31は、画像データ生成手段1F11、実況データ入力手段1F12、学習データ入力手段1F13、及び、学習手段1F14を備える。
【0112】
実行装置32は、未知データ入力手段1F21、出力データ生成手段1F22、及び、出力手段1F23を備える。
【0113】
画像データ生成手段1F11は、ユーザ4による行動を示す画像データD10を生成する画像データ生成手順を行う。例えば、画像データ生成手段1F11は、通信インタフェース115等で実現する。
【0114】
実況データ入力手段1F12は、実況音声9等の実況データを入力する実況データ入力手順を行う。例えば、実況データ入力手段1F12は、入出力インタフェース114等で実現する。
【0115】
学習データ入力手段1F13は、画像データD10と実況データを含む学習データD1を入力する学習データ入力手順を行う。例えば、学習データ入力手段1F13は、入出力インタフェース114等で実現する。
【0116】
学習手段1F14は、学習データD1を用いて学習モデルA1を学習させる学習手順を行う。そして、学習モデルA1がある程度学習すると、学習済みモデルA2が生成される。例えば、学習手段1F14は、プロセッサ111等で実現する。
【0117】
未知データ入力手段1F21は、未知データD2を入力する未知データ入力手順を行う。例えば、未知データ入力手段1F21は、通信インタフェース115等で実現する。
【0118】
出力データ生成手段1F22は、未知データD2が入力されると、未知データD2に基づき、学習済みモデルA2を用いて、未知データD2が示す行動に対する実況D30を示す出力データD3を生成する出力データ生成手順を行う。例えば、出力データ生成手段1F22は、プロセッサ111等で実現する。
【0119】
出力手段1F23は、出力データD3をユーザ端末20等に出力する出力手順を行う。例えば、出力手段1F23は、通信インタフェース115等で実現する。
【0120】
例えば、動画サイトでは、ゲームをプレイした動画に、実況D30を加えた動画等がアップロードされる。このように、実況D30を加えるには、音声が入るタイミングを調整する等の編集作業が多く、ユーザ4の作業負担が重い。
【0121】
一方で、上記のような構成であると、動画等が入力されると、AIによって実況D30が出力される。このように、AIを用いると、スポーツ、格闘技、又は、ゲーム等の実況を配信するのに、ユーザ4の作業負担を軽減させることができる。
【0122】
また、ユーザ4が行動を行う者、かつ、実況者8を兼ねる場合であっても、AIでユーザ4による編集がなくても実況動画等が出力されるため、実況動画等が行動に対してリアルタイムに近いスピードで配信できる。
【0123】
また、実況者8は、所謂プロの解説者、又は、アナウンサー等であると、AIがプロの解説者による実際の解説を学習して実況D30を再現できる。このようにすると、例えば、ゲームのプレイをプロの解説者にさせた場合等を楽しむことができる。
【0124】
実況配信の対象、及び、撮影される対象は、ゲームに限られない。例えば、行動は、スポーツ等でもよい。また、ゲームは、テレビゲームに限られず、実際の将棋、実際のチェス、又は、実際のビリヤード等といったテーブルゲーム、又は、ボードゲーム等でもよい。
【0125】
例えば、行動がスポーツの場合には、ユーザ4は、実際の競技者となり、カメラ等の撮影装置によって実際の競技におけるプレイが撮影されて、動画等となる。そして、ユーザ端末20は、実際の競技を撮影した動画を取得し、AIの学習処理を行う。一方で、実行処理は、未知データD2をゲームのプレイを撮影した未知画像データD20とする。このようにすると、ゲームのプレイに対し、実際の競技に行われるような実況D30を再現して出力できる。
【0126】
他にも、行動は、スポーツ、格闘技、又は、ゲーム等に限られない。例えば、展示会、又は、小売店等において、構内を定点カメラ等で撮影し、実況D30が構内アナウンス、又は、構内に設置されるディスプレイに出力されてもよい。
【0127】
具体的には、構内において、セミナー、又は、タイムセールス等のイベントが開始された行動が定点カメラで撮影されると、イベントの案内(例えば、イベントが行われている場所等である。)が実況D30となって音声で構内に流されてもよい。他にも、「100人目の来場者です。」のように、展示会等において、記念事項がある場合には、実況D30として出力されてもよい。
【0128】
[前処理を行う変形例]
未知データD2は、前処理されて学習済みモデルA2に入力されるのが望ましい。例えば、前処理は、AI、又は、ユーザ4による操作に基づく編集処理等で実現する。なお、前処理は、ユーザ端末20が行ってもよいし、サーバ11等のゲームが行われた以外の情報処理装置で実行されてもよい。
【0129】
以下、未知データD2における未知画像データD20である前処理される前の動画を「第1動画データ」という。一方で、第1動画データが前処理された後、学習済みモデルA2に入力されて、実況D30付きとなった動画を「第2動画データ」という。
【0130】
前処理は、第1動画データの一部を削除、又は、取り出す処理である。すなわち、前伊処理は、第1動画データの全データから、注目箇所となる場面を抽出して、抽出データを生成する処理である。
【0131】
具体的には、第1動画データには、所謂「無駄」な画像も含まれる場合が多い。例えば、冒頭部分に被写体が全くない画像等が含まれている場合には、視聴者の関心が低い場面であるので削除されるのが望ましい。
【0132】
又は、前処理は、第1動画データから、注目箇所となる場面を抽出する処理、所謂「ハイライト」形式にする処理でもよい。
【0133】
例えば、第1動画データが全データで「15分」であったとすると、第2動画データは、「3分」程度に短くなるように生成されるのが望ましい。どの程度短くするかは、ユーザ4が第2動画データの長さを指定できてもよいし、事前に動画の長さを指定せず、可能な限り短くする等でもよい。
【0134】
このように前処理で動画が短くされると、学習済みモデルA2が処理する対象が少なくでき、処理負荷を少なくできる。
【0135】
他にも、前処理は、例えば、画質を向上させる処理等があってもよい。例えば、前処理は、第1動画データの画像全体を明るくする、又は、エッジを強調する等の処理を行ってもよい。
【0136】
[実況の性質を変える変形例]
学習済みモデルA2は、実況D30の性質が異なように複数種類生成されるのが望ましい。例えば、実況D30は、同じプレイであっても、実況者8が異なると、性質が異なる。性質は、実況者8のパーソナリティ(個性)等である。
【0137】
実況者8によっては、「熱心」に実況する、「冷静」に実況する、・・・といったように様々な性質があり得る。したがって、このような性質を学習済みモデルA2につけるため、学習モデルA1に学習させる、すなわち、正解データD11となる実況音声9は、実況者8が異なるのが望ましい。
【0138】
そして、視聴者となるユーザ4は、実行処理において、学習済みモデルA2を選択できるのが望ましい。以下、視聴者が学習済みモデルA2を選択する操作を「選択操作」という。また、選択操作で選択された学習済みモデルA2を「選択モデル」という。
【0139】
図11は、選択操作を行う画面の例を示す図である。例えば、選択操作は、複数の学習済みモデルA2を選択する選択画面61等で行う。そして、選択画面61には、各々の学習済みモデルA2の性質が表示されるのが望ましい。したがって、視聴者は、性質等を見て選択モデルを選ぶ。このように、選択モデルが選べると、同じプレイであっても、異なる実況D30がされるため、視聴者は、色々な実況D30を楽しむことができる。
【0140】
例えば、選択画面61は、実行処理の開始時点等に出力される。そして、ユーザ4は、押しボタンのGUI(Graphical User Interface)等を操作すると、選択モデルを選択できる。
【0141】
[その他の変形例]
ビッグデータD4は、実況配信する対象、及び、撮影される対象の種類に応じて、選別されて学習データD1となるのが望ましい。具体的には、ゲームを実況の対象とする場合には、学習データD1として用いるビッグデータD4は、ゲーム実況動画等に選別する、又は、ゲーム実況動画の重みを重くして学習する等が望ましい。
【0142】
ゲームの会話(会話は、インターネット上の書き込み等である。)と、ゲーム以外の会話(以下「一般会話」という。すなわち、ビッグデータD4のデータを特に選別しないと、一般会話のデータが多くなる。)では、多く使われる単語が異なる。
【0143】
例えば、サッカーゲームの場合において、「サッカー」という単語が多く使われるとする。一方で、一般会話では、「サッカー」という音声に近い「坂」又は「ハッカー」といった単語も多く使われるとする。そのため、一般会話を学習データD1にすると、「サッカー」等といった単語が、「坂」又は「ハッカー」等の近しい音の単語と音声認識では認識されやすい場合がある。そこで、特定の分野(この場合では、サッカーゲームの分野である。)に選別する、又は、特定の分野では、業界用語等の単語の重みを重くすると、誤認識を少なくできる。
【0144】
なお、ゲームを実況の対象とする場合であっても、ゲームの会話に選別せず、参考にする会話があってもよい。例えば、サッカーゲームを実況の対象とする場合には、サッカーゲームの会話だけでなく、実際のサッカー競技(例えば、テレビ中継されるプロサッカーの試合等である。)についての会話が参考に加わってもよい。
【0145】
また、ユーザ4は、学習済みモデルA2をダウンロードした後、更に学習処理を行い、学習済みモデルA2がユーザ4の好む育成方法をするように追加学習ができてもよい。
【0146】
[その他の実施形態]
上記の例では、情報処理装置は、学習モデルに対する事前処理、及び、学習済みモデルを用いて実行処理の両方を行う。ただし、事前処理、及び、実行処理は、同じの情報処理装置が行わなくともよい。また、事前処理、及び、実行処理も、1つの情報処理装置で一貫して実行しなくともよい。すなわち、各処理、及び、データの記憶等は、複数の情報処理装置で構成する情報システム等で行ってもよい。
【0147】
なお、学習処理は、実行処理の後、又は、実行処理の前に追加して更に行われてもよい。
【0148】
上記のような処理は、サーバ11、及び、ユーザ端末20以外の情報処理装置が補助的に行ってもよい。
【0149】
図12は、補助装置を用いる構成例を示す図である。図1に示す例と比較すると、図12に示す構成は、補助装置60が加わる点が異なる。なお、補助装置60は、一時的に用いる構成でもよい。
【0150】
補助装置60は、ユーザ端末20(この例では、ユーザ端末20A付近に設置しているが、他の装置近くにあってもよい。)等の近くに設置される情報処理装置である。そして、補助装置60は、特定の処理をユーザ端末20、又は、サーバ11に代わって一部又は全部を実行する。
【0151】
例えば、補助装置60は、グラフィック処理に特化したデバイスを備えて、グラフィック処理を高速で行う。このように、補助装置60等を設置して、所謂エッジコンピューティング(Edge Computing)等が行われてもよい。このように、前述する処理は、様々な情報処理装置のハードウェアリソースを活用して実行されてもよい。したがって、前述する処理は、前述したのとは異なる情報処理装置が実行してもよい。
【0152】
前述の処理、及び、本実施形態で実行される処理に用いるデータは、情報処理システムによって実行、及び、記憶されてもよい。例えば、情報処理システムは、処理又は記憶を冗長、分散、並列、又は、これらの組み合わせを実現するため、複数の情報処理装置で実行又は記憶してもよい。したがって、本発明は、前述に示すハードウェア構成以外の装置、及び、前述に示す装置以外のシステムで実現されてもよい。
【0153】
また、本発明に係るプログラムは、単一のプログラムに限定されず、複数のプログラムの集合体でもよい。また、本発明に係るプログラムは、単一の装置で実行されるものに限定されず、複数の情報処理装置で分担して実行されてもよい。更に、各情報処理装置の役割分担は、前述の例に限定されない。すなわち、前述した処理の一部、又は、全部が前述した情報処理装置とは異なる情報処理装置で実行してもよい。
【0154】
更に、プログラムによって実現される各手段の一部、又は、全部は、集積回路等のハードウェアで実現することもできる。更に、プログラムは、コンピュータによって読み出し可能な非一過性の記録媒体に記録されて提供されてもよい。記録媒体とは、例えば、ハードディスク、SDカード(登録商標)、DVD等の光学ディスク、又は、インターネット上のサーバ等を指す。したがって、プログラムは、インターネット等の電気通信回線を介して配信されでもよい。
【0155】
また、情報処理システムを構成する情報処理装置等は、海外にあってもよい。すなわち、情報処理システムが実行する処理のうち、一部の処理を実行する情報処理装置が海外にあってもよい。
【0156】
なお、本発明は、前述に例示する各実施形態に限定されない。したがって、本発明は、技術的な要旨を逸脱しない範囲で、構成要素の追加、又は、変形が可能である。ゆえに、特許請求の範囲に記載された技術思想に含まれる技術的事項のすべてが本発明の対象となる。なお、前述に例示する実施形態は、実施において好適な具体例である。そして、当業者であれば、開示した内容から様々な変形例を実現で可能であって、このような変形例は、特許請求の範囲に記載された技術的範囲に含まれる。
【符号の説明】
【0157】
1 :システム
1F11 :画像データ生成手段
1F12 :実況データ入力手段
1F13 :学習データ入力手段
1F14 :学習手段
1F21 :未知データ入力手段
1F22 :出力データ生成手段
1F23 :出力手段
2 :通信ネットワーク
4 :ユーザ
5 :管理者
6 :出力画面
8 :実況者
9 :実況音声
11 :サーバ
20 :ユーザ端末
31 :学習装置
32 :実行装置
60 :補助装置
61 :選択画面
D1 :学習データ
D10 :画像データ
D11 :正解データ
D2 :未知データ
D20 :未知画像データ
D3 :出力データ
D30 :実況
D31 :解説動画
D32 :要約
D4 :ビッグデータ
A1 :学習モデル
A2 :学習済みモデル
【要約】
【課題】ゲームをプレイ等の行動に対する実況を配信するのに、ユーザの作業負担を軽減させる。
【解決手段】プログラムは、コンピュータを、ユーザによる行動に対する正解が未知である未知画像データを含む未知データを入力する未知データ入力手段と、前記行動を示す画像データと前記行動に対する実況者による実況に係る実況データとを含む学習データを用いて学習した学習済みモデルを用いて、前記未知データに基づき、前記行動に対する実況に係る出力データを生成する生成手段と、前記出力データに基づく出力を行う出力手段として機能させる。
【選択図】図10
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12