(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023053155
(43)【公開日】2023-04-12
(54)【発明の名称】情報処理装置、情報処理方法及び情報処理プログラム
(51)【国際特許分類】
G06V 10/70 20220101AFI20230404BHJP
G06T 7/00 20170101ALI20230404BHJP
【FI】
G06V10/70
G06T7/00 350B
【審査請求】有
【請求項の数】9
【出願形態】OL
(21)【出願番号】P 2023019088
(22)【出願日】2023-02-10
(62)【分割の表示】P 2022557885の分割
【原出願日】2021-09-30
(71)【出願人】
【識別番号】399037405
【氏名又は名称】楽天グループ株式会社
(74)【代理人】
【識別番号】110000154
【氏名又は名称】弁理士法人はるか国際特許事務所
(72)【発明者】
【氏名】ロイ ヒヤ
(72)【発明者】
【氏名】中澤 満
(72)【発明者】
【氏名】シュテンガー ビヨン
(57)【要約】
【課題】画像の目的に応じて適切にイメージクロッピングを行うこと。
【解決手段】入力画像と、属性とを入力とし、前記入力画像における少なくとも1つの領域と、当該少なくとも1つの領域のそれぞれについての評価値とを出力とする、機械学習モデルを少なくとも含む画像評価部を有する情報処理装置であって、ある前記入力画像に対して、同一の前記領域と前記評価値を出力する互いに異なる前記属性を入力とした場合に、互いに異なる前記領域と前記評価値を出力する少なくとも一の別の前記入力画像が存在する、情報処理装置。
【選択図】
図1
【特許請求の範囲】
【請求項1】
入力画像と、属性とを入力とし、前記入力画像における少なくとも1つの領域と、当該少なくとも1つの領域のそれぞれについての評価値とを出力とする、機械学習モデルを少なくとも含む画像評価部を有する情報処理装置であって、
ある前記入力画像に対して、同一の前記領域と前記評価値を出力する互いに異なる前記属性を入力とした場合に、互いに異なる前記領域と前記評価値を出力する少なくとも一の別の前記入力画像が存在する、
情報処理装置。
【請求項2】
前記画像評価部は、
前記入力画像と、前記属性とを入力とし、前記属性に応じたヒートマップを出力とするヒートマップ出力モデルを前記機械学習モデルとして少なくとも含み、さらに、
前記ヒートマップを入力とし、前記ヒートマップにおける少なくとも1つの領域を抽出する領域抽出器と、
前記領域に対応する前記入力画像の部分画像を入力とし、前記部分画像についての評価値を推定する評価値推定器と、
を含む、
請求項1に記載の情報処理装置。
【請求項3】
前記ヒートマップ出力モデルは、前記入力画像と、前記属性を設問とし、前記入力画像の入力に対して中間ヒートマップを生成する複数の互いに異なる学習済み機械学習モデルから得られる複数の中間ヒートマップを、前記属性に応じて合成して得られるヒートマップを解答とする教師データを用いて学習させることにより得られたものである、
請求項2に記載の情報処理装置。
【請求項4】
前記画像評価部は、
前記入力画像と、前記属性とを入力とし、前記属性に応じたヒートマップを出力とするヒートマップ出力モデルと、
前記入力画像と前記ヒートマップとを入力とし、前記入力画像における少なくとも1つの領域と、当該少なくとも1つの領域のそれぞれについての評価値とを出力とする領域評価値出力モデルと、
を前記機械学習モデルとして少なくとも含む、
請求項1に記載の情報処理装置。
【請求項5】
前記ヒートマップ出力モデルは、前記入力画像と、前記属性を設問とし、前記入力画像の入力に対して中間ヒートマップを生成する複数の互いに異なる学習済み機械学習モデルから得られる複数の中間ヒートマップを、前記属性に応じて合成して得られるヒートマップを解答とする教師データを用いて学習させることにより得られたものであり、
前記領域評価値出力モデルは、前記ヒートマップを設問とし、前記ヒートマップの入力に対して領域を出力する学習済み機械学習モデル又はアルゴリズムから得られる領域と、入力画像の前記領域に対応する部分に対して評価値を出力する学習済み機械学習モデルから得られる評価値とを解答とする教師データを用いて学習することにより得られたものである、
請求項4に記載の情報処理装置。
【請求項6】
前記画像評価部は、単一の機械学習モデルを前記機械学習モデルとして含む、
請求項1に記載の情報処理装置。
【請求項7】
前記単一の機械学習モデルは、前記入力画像と、前記属性を設問とし、前記入力画像の入力に対して中間ヒートマップを生成する複数の互いに異なる学習済み機械学習モデルから得られる複数の中間ヒートマップを、前記属性に応じて合成して得られるヒートマップを、ヒートマップの入力に対して領域を出力する学習済み機械学習モデル又はアルゴリズムに入力して得られる領域と、入力画像の前記領域に対応する部分に対して評価値を出力する学習済み機械学習モデルから得られる評価値とを解答とする教師データを用いて学習することにより得られたものである、
請求項6に記載の情報処理装置。
【請求項8】
入力画像と、属性とを機械学習モデルに入力することで、前記入力画像における少なくとも1つの領域と、当該少なくとも1つの領域のそれぞれについての評価値とを出力する、画像評価ステップをコンピュータに実行させる情報処理方法であって、
ある前記入力画像に対して、同一の前記領域と前記評価値を出力する互いに異なる前記属性を入力とした場合に、互いに異なる前記領域と前記評価値を出力する少なくとも一の別の前記入力画像が存在する、
情報処理方法。
【請求項9】
コンピュータを、入力画像と、属性とを機械学習モデルに入力することで、前記入力画像における少なくとも1つの領域と、当該少なくとも1つの領域のそれぞれについての評価値とを出力する、画像評価部として機能させる情報処理プログラムであって、
ある前記入力画像に対して、同一の前記領域と前記評価値を出力する互いに異なる前記属性を入力とした場合に、互いに異なる前記領域と前記評価値を出力する少なくとも一の別の前記入力画像が存在する、
情報処理プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理装置、情報処理方法及び情報処理プログラムに関する。
【背景技術】
【0002】
非特許文献1には、いわゆるイメージクロッピング、すなわち、画像中の要部を抜き出す画像処理技術であって、畳み込みニューラルネットワークにおけるアテンションマップを活用して美的評価値(aesthetic value)を求め、かかる美的評価値に基づいて抜き出すべき要部の枠を求めるものが記載されている。
【先行技術文献】
【非特許文献】
【0003】
【非特許文献1】Wenguan Wang、Jianbing Shen、”Deep Cropping via Attention Box Prediction and Aesthetics Assessment”、[online]、ICCV-2017、[令和3年8月13日検索]、インターネット<URL: https://openaccess.thecvf.com/content_ICCV_2017/papers/Wang_Deep_Cropping_via_ICCV_2017_paper.pdf>
【発明の概要】
【発明が解決しようとする課題】
【0004】
非特許文献1に示されているものを含め、これまで知られているイメージクロッピングの技術では、単一の評価基準(非特許文献1では美的評価値)により画像中の要部の位置を決定している。
【0005】
しかしながら、画像の要部は、本来、その画像が用いられる目的に応じて異なるものである。例えば、同じ情景を写した写真画像であっても、かかる写真画像が風景画として用いられるならば、画像中の背景に映る事物に要部が存在するであろうし、かかる写真画像が人物画として用いられるならば、画像中の手前に映りこむ人物像に要部が存在することになる。同様に、同じ人物を映した写真画像であっても、かかる写真画像が人物の特定に用いられるならば、人物の顔部分に要部が存在するであろうし、かかる写真画像がファッションの紹介に用いられるならば、画像中の人物の服飾に要部が存在することになるはずである。
【0006】
しかしながら、画像の目的に応じて適切にイメージクロッピングを行う技術は、これまで知られていない。
【0007】
本発明は、かかる事情に鑑みてなされたものであり、その目的は、画像の目的に応じて適切にイメージクロッピングを行うことである。
【課題を解決するための手段】
【0008】
上記課題を解決すべく本出願において開示される発明は種々の側面を有しており、それら側面の代表的なものの概要は以下のとおりである。
【0009】
(1)入力画像と、属性とを入力とし、前記入力画像における少なくとも1つの領域と、当該少なくとも1つの領域のそれぞれについての評価値とを出力とする、機械学習モデルを少なくとも含む画像評価部を有する情報処理装置であって、ある前記入力画像に対して、同一の前記領域と前記評価値を出力する互いに異なる前記属性を入力とした場合に、互いに異なる前記領域と前記評価値を出力する少なくとも一の別の前記入力画像が存在する、情報処理装置。
【0010】
(2)前記画像評価部は、前記入力画像と、前記属性とを入力とし、前記属性に応じたヒートマップを出力とするヒートマップ出力モデルを前記機械学習モデルとして少なくとも含み、さらに、前記ヒートマップを入力とし、前記ヒートマップにおける少なくとも1つの領域を抽出する領域抽出器と、前記領域に対応する前記入力画像の部分画像を入力とし、前記部分画像についての評価値を推定する評価値推定器と、を含む、(1)の情報処理装置。
【0011】
(3)前記ヒートマップ出力モデルは、前記入力画像と、前記属性を設問とし、前記入力画像の入力に対して中間ヒートマップを生成する複数の互いに異なる学習済み機械学習モデルから得られる複数の中間ヒートマップを、前記属性に応じて合成して得られるヒートマップを解答とする教師データを用いて学習させることにより得られたものである、(2)の情報処理装置。
【0012】
(4)前記画像評価部は、前記入力画像と、前記属性とを入力とし、前記属性に応じたヒートマップを出力とするヒートマップ出力モデルと、前記入力画像と、前記ヒートマップとを入力とし、前記入力画像における少なくとも1つの領域と、当該少なくとも1つの領域のそれぞれについての評価値とを出力とする領域評価値出力モデルと、を前記機械学習モデルとして少なくとも含む、(1)の情報処理装置。
【0013】
(5)前記ヒートマップ出力モデルは、前記入力画像と、前記属性を設問とし、前記入力画像の入力に対して中間ヒートマップを生成する複数の互いに異なる学習済み機械学習モデルから得られる複数の中間ヒートマップを、前記属性に応じて合成して得られるヒートマップを解答とする教師データを用いて学習させることにより得られたものであり、前記領域評価値出力モデルは、前記ヒートマップを設問とし、前記ヒートマップの入力に対して領域を出力する学習済み機械学習モデル又はアルゴリズムから得られる領域と、入力画像の前記領域に対応する部分に対して評価値を出力する学習済み機械学習モデルから得られる評価値とを解答とする教師データを用いて学習することにより得られたものである、(4)の情報処理装置。
【0014】
(6)前記画像評価部は、単一の機械学習モデルを前記機械学習モデルとして含む、(1)の情報処理装置。
【0015】
(7)前記単一の機械学習モデルは、前記入力画像と、前記属性を設問とし、前記入力画像の入力に対して中間ヒートマップを生成する複数の互いに異なる学習済み機械学習モデルから得られる複数の中間ヒートマップを、前記属性に応じて合成して得られるヒートマップを、ヒートマップの入力に対して領域を出力する学習済み機械学習モデル又はアルゴリズムに入力して得られる領域と、入力画像の前記領域に対応する部分に対して評価値を出力する学習済み機械学習モデルから得られる評価値とを解答とする教師データを用いて学習することにより得られたものである、(6)の情報処理装置。
【0016】
(8)入力画像と、属性とを機械学習モデルに入力することで、前記入力画像における少なくとも1つの領域と、当該少なくとも1つの領域のそれぞれについての評価値とを出力する、画像評価ステップをコンピュータに実行させる情報処理方法であって、ある前記入力画像に対して、同一の前記領域と前記評価値を出力する互いに異なる前記属性を入力とした場合に、互いに異なる前記領域と前記評価値を出力する少なくとも一の別の前記入力画像が存在する、情報処理方法。
【0017】
(9)コンピュータを、入力画像と、属性とを機械学習モデルに入力することで、前記入力画像における少なくとも1つの領域と、当該少なくとも1つの領域のそれぞれについての評価値とを出力する、画像評価部として機能させる情報処理プログラムであって、ある前記入力画像に対して、同一の前記領域と前記評価値を出力する互いに異なる前記属性を入力とした場合に、互いに異なる前記領域と前記評価値を出力する少なくとも一の別の前記入力画像が存在する、情報処理プログラム。
【図面の簡単な説明】
【0018】
【
図1】本発明の好適な種々の実施形態において共通に観念される、情報処理装置の機能的な観念図である。
【
図3】入力画像における、種々の「要部」の例である。
【
図4】情報処理装置の画像評価部に含まれる機械学習モデルを学習させる方法を示す模式図である。
【
図5】CTR予測を示す中間ヒートマップの例である。
【
図6】美的評価値を示す中間ヒートマップの例である。
【
図11】領域抽出器で実行される処理の一例を説明する図である。
【
図13】領域抽出器で実行される処理フローを示す図である。
【
図14】評価値推定器の構成の一例を示す図である。
【
図15】第1の実施形態に係る情報処理装置の構成を、機械学習モデルの学習時の動作と合わせて示す図である。
【
図16】第2の実施形態に係る情報処理装置の構成を、機械学習モデルの学習時の動作と合わせて示す図である。
【
図17】第3の実施形態に係る情報処理装置の構成を、機械学習モデルの学習時の動作と合わせて示す図である。
【
図18】
図1に示した機械学習モデルを実装するアーキテクチャの一例として、Faster R-CNNに基づく機械学習モデルパイプラインの構成を示す図である。
【
図19】一般的なコンピュータの代表的な物理構成を示す構成図である。
【発明を実施するための形態】
【0019】
図1は、本発明の好適な種々の実施形態において共通に観念される、情報処理装置100の機能的な観念図である。情報処理装置100は、同図に示された機能を適切な物理的手段、例えば、適切なコンピュータプログラムを実行するコンピュータ、によって実現することによって実現される。
【0020】
情報処理装置100は、端的には、用意した入力画像を画像評価部110に入力すると、同図右側に示すように、入力画像における少なくとも1つの領域Wと、かかる領域Wについての評価値Eを出力するというものである。ここで、領域Wと評価値Eは、通常は複数組出力されるため、
図1では添え字を付してそれらを区別している。また、
図1では図示の都合上、領域Wと評価値Eを3組のみ示しているが、この数はもっと多くともよく、また、画像評価部110の設計によっては、出力される領域Wと評価値Eは単独のものであってもよい。
【0021】
ここで、領域Wは、入力画像の「要部」の候補となる領域を指す。以降、本実施形態においては、領域Wの形状として矩形のものを例示して説明するが、領域Wの外形形状は任意の形状であってよく、また、複数の異なる形状の領域Wを同時に出力するように画像評価部110を設計してもよい。ここで、入力画像の「要部」とは、入力画像のうち、観者の注目をひく重要な部分を指している。どのように入力画像の「要部」を定めるべきかの詳細な説明はこの後説明する。
【0022】
また、画像評価部110には、入力画像と合わせて、属性が入力される。この属性は、その入力画像をどのように用いるかに関連する情報であるが、この属性が意味する具体的な説明は、上の「要部」と合わせて、この後説明する。
【0023】
ここで、情報処理装置100は、入力される属性に応じて、入力画像に対して出力する領域Wと評価値Eが変化する。換言すると、共通の入力画像に対して、一の属性が与えられた際に出力される領域W及び評価値Eは、当該一の属性と異なる他の属性が与えられた際に出力される領域W及び評価値Eとは互いに異なることになる。
【0024】
ここで、「入力される属性に応じて、入力画像に対して出力する領域Wと評価値Eが変化する」とは、特定の入力画像に対し、入力する属性が異なれば、画像評価部110から出力される領域Wと評価値Eが常に異なることを意味しない。通常そのようなことはほぼ起こりえないと考えられるが、入力画像の選択など、条件によっては、偶然に、互いに異なる属性に対して、同一(又は実質的に同一)の領域Wと評価値Eが出力される場合が存在してもよい。しかしながら、ある入力画像に対して、同一の領域Wと評価値Eを出力するような互いに異なる属性を入力とした場合に、画像評価部110が互いに異なる領域Wと評価値Eを出力する少なくとも一の別の入力画像は必ず存在する。このことは逆に言えば、いかなる入力画像に対しても、常に同一の領域Wと評価値Eを出力するような2つの属性があったとするならば、それら2つの属性は異なるものではなく、同一である。
【0025】
また、画像評価部110は、少なくとも一の機械学習モデル111を含んでいる。機械学習モデルの種類やアーキテクチャにも特段の制限はなく、入力画像の性質や機械学習技術の進展に伴って、好適なモデルを選択すればよい。現状においては、R-CNN(Region based Convolutional Neural Network)等のDNN(Deep Newral Network)が好適に適用できるため、本明細書でも、以降機械学習モデル111としてDNNを念頭に置いた説明をするが、それ以外のモデルを用いることを制限するものではない。また、本明細書でいう「機械学習モデル」は、機械学習モデル自体のアーキテクチャを制限的に解釈するものではない。すなわち、R-CNN等に見られるように、独立したものとしてみなすこともできる、複数の機械学習用のNN(Neural Network)の入力と出力を適切に組み合わせることによって所望の結果を得る、いわゆる機械学習パイプラインであっても、これを特に区別することなく、「機械学習モデル」と呼ぶものとする。なお、画像評価部110は、外部のコンピュータやサーバが有する少なくとも一の機械学習モデルと連携することで、当該少なくとも一の機械学習モデルを含んでもよい。
【0026】
ここで、上述の情報処理装置100の技術上及び実用上の意義、及び、本明細書において用いられる用語の意味について併せて説明する。
【0027】
図2は入力画像の例である。同図に示したものは、人物の写真であるが、被写体がどのようなものであるかは特に限定されるものではなく、また、入力画像が実写によるものであるかそれ以外のもの(イラストレーション等)であるかも問わない。また、入力画像のフォーマットも特に限定されるものではなく、ラスタ画像、ベクトル画像の別や解像度、フォーマットも任意であるが、少なくとも、入力画像が画像評価部110に入力される際には、入力画像は電子データとして用意されることになる。
【0028】
さて、ここで情報処理装置100が目指すものは、
図2に示したような入力画像の要部を示すことである。要部の位置及び形状が特定できていれば、その後のプロセス、例えばトリミング等を行って、画像の活用に用立てることは容易である。ところが、例に示した単純な入力画像に対しても、その「要部」を一律に定めることは実はできない。
【0029】
というのも、ある入力画像の「要部」は、その入力画像をどのように用いるかにより異なり得るからである。具体例で示すと、
図3に示す
図2と同じ入力画像に対して、「要部」として、人物像が要求されているならば、不要な余白が除去された、図中破線Aで示される枠内の領域が妥当と考えられる。しかしながら、「要部」として、服飾(あるいはファッション)が要求されているならば、「要部」は図中一点鎖線Bで示される枠内の領域が妥当であろうし、「要部」として鞄が要求されているならば、図中二点鎖線Cで示される枠内の領域が妥当となるであろう。
【0030】
したがって、入力画像の「要部」は、その入力画像をどのように用いるかを示す情報に基づいて定められなければならず、かかる情報は入力画像とは別に、何らかの手法により与えられる。かかる情報を、以降、入力画像の「属性」と称する。
図3に即して挙げるならば、「人物像」、「服飾」、「鞄」はいずれも属性の具体例である。
【0031】
ところで、画像解析の技術分野において、適切な学習データを用意することにより、画像を構成する画素単位で重要性の評価を数値的にしめす評価画像を作成できることはすでに知られている。本明細書では、かかる評価画像を以降、「ヒートマップ」と称する。ヒートマップの解像度は必ずしも入力画像と一致している必要はなく、個々の評価値は、3×3や、5×5など、複数画素ごとに示されるものであっても構わない。
【0032】
しかしながら、かかるヒートマップがどのような観点(すなわち、属性)に基づいて生成されるかは、用意された機械学習の学習データに依存する。そのため、ヒートマップにより示される領域を要部として抽出するにしても、従来知られている技術を単に用いるだけでは、種々の観点に応じて、都度適した要部を示すことはできない。
【0033】
一方で、観点毎に別々に学習を行った機械学習モデルを用意することにより、観点に応じた「要部」を得ることは理論的には可能である。しかしながら、このような方法では、多数の画像と、その「要部」を示す正解画像との組からなる多数の学習データを、観点毎に逐一用意して機械学習モデルを訓練しなければならない。従って、かかる方法により観点毎の「要部」を得るのは、理論的には可能ではあるものの、観点毎の学習データを用意するのがむつかしく、現実的ではない。
【0034】
そこで、本発明に係る情報処理装置100では、比較的容易に入手できる学習データにより実現される機械学習モデルから、画像評価部110を構築できるようにしている。
【0035】
図4は、情報処理装置100の画像評価部110に含まれる機械学習モデル111を学習させる方法を示す模式図である。情報処理装置100は同図の下側に示されており、ここでは、画像評価部110に含まれる機械学習モデル111は、未学習であるか、又は学習中である。
【0036】
一方、
図4において、情報処理装置100の上側には、機械学習パイプライン10が示されている。機械学習パイプライン10は、入力画像と、属性の入力を受けて、既存の、又は容易に構築の可能な機械学習モデル11の群を用いて、入力画像の要部を示すヒートマップHM、要部に対応する領域W、かかる領域Wに対応する評価値Eの推定値の少なくともいずれかを出力するものである。すなわち、機械学習パイプライン10を用いれば、入力画像と属性を設問とし、ヒートマップHM、領域W、評価値Eの少なくともいずれかを解答とする学習データが得られるため、かかる学習データを用いて、画像評価部110に含まれる機械学習モデル111を学習させることにより、入力画像と属性とを入力として、領域W及び評価値Eを出力とする画像評価部110を現実的に構築することができることになる。
【0037】
機械学習モデル111の学習データとして、ヒートマップHM、領域W、評価値Eのいずれを用いるかは、画像評価部110の構成に依存する。画像評価部110の種々の具体的構成例及び、当該構成における機械学習モデル111の学習方法については後述する。
【0038】
また、
図4に示す機械学習モデル111を学習させる方法は、機械学習の技術分野において、知識の蒸留、またはTeacher-Student Modelとして知られる学習方法を応用したものとなっている。すなわち、画像評価部110に含まれる機械学習モデル111は、機械学習パイプライン10により実現されている知識を蒸留したものとなっており、機械学習器として見た場合に、機械学習パイプラインに含まれる知識をよりコンパクトな(すなわち、よりノード数が少ない、又は推論に要する総計算数が少ない)モデルに効率よく格納したものとなっている。そのため、入力画像に対し、属性に応じた領域W及び評価値Eを出力するという点では、機械学習パイプライン10と、情報処理装置100とは同等の結果をもたらすが、コンピュータ上で実行する際に、推論に要する演算負荷は、情報処理装置100の方が小さくなり、また、推論速度も速いというメリットがある。
【0039】
以下、機械学習パイプライン10の具体的構成を説明する。機械学習パイプライン10では、機械学習モデル11として、上述したように既存の、又は容易に構築の可能なものを複数用意している。
図4では、一例として機械学習モデル11a~11dの4つを示しているが、この数は任意でよく、用いたい属性の数等に応じて必要なだけ用意すればよい。
【0040】
ここで、機械学習モデル11a~11dは、入力画像の属性に応じて異なる、画像の要部を示すヒートマップではなく、機械学習モデル11a~11d毎に定められた、特定の観点におけるヒートマップを出力するものである。以降、本明細書では、入力画像の属性に即した、画像の要部を示すヒートマップを単にヒートマップHMと称し、個別の機械学習モデル11a~11dにより得られる、単観点によるヒートマップを中間ヒートマップ12と称し、両者を区別することとする。中間ヒートマップは、例えば、個別の機械学習モデルに含まれるAttentionモデルを用いて生成されるAttentionマップやAttention画像などの出力に相当する。このとき、機械学習モデルは、その機械学習モデルに含まれるCNN(畳み込みニューラルネットワーク)などの特徴抽出器により出力された特徴量マップに基づき、Attentionモデルを用いて、AttentionマップやAttention画像などの出力を中間ヒートマップとして生成する。なお、ここでのAttentionマップとは、Attentionモデルに基づいて生成されるマップであってよく、Attentionモデルに基づかずに生成されるマップであってよもよい。例えば、CTR(クリックスルーレート)予測や美的評価値予測における中間ヒートマップとしてのAttentionマップは、Attentionモデルに基づいて生成されるAttentionマップに相当する。
【0041】
図5~
図8は、
図2に例示的に示した入力画像に対する、中間ヒートマップ12の例である。
【0042】
図5の中間ヒートマップ12aは、CTR予測である。CTR予測を中間ヒートマップ12aとして出力する機械学習モデル11aは、例えば、CNNとして知られる機械学習のアーキテクチャを用い、学習データとして、CTRに相当するスコアがアノテーションされた画像を用いて学習させることで得ることができる。かかる学習データは、例えばEC(電子商取引)サイト上に表示させる画像に対するユーザ操作をトラッキングすることにより入手可能である。
【0043】
図6の中間ヒートマップ12bは、美的評価値である。美的評価値を中間ヒートマップ12bとして出力する機械学習モデル11bを得るための学習データは、研究用あるいは実用用として無償或いは有償でインターネット上に公開されているものが既に存在しているため、かかる学習データを用いて例えばCNNによる機械学習モデル111を訓練することにより、機械学習モデル11bを得ることができる。一般に、かかる学習データにおいては、美的評価値として、特に用途などを限定することなく、画像において観者の注意をひきやすい部分に高い評価をつけ、あまり注意を引かない部分には低い評価をつけるような学習をさせるものとなっている。なお、ここでの美的評価値は、審美性スコアとも表現され得る。
【0044】
図7の中間ヒートマップ12cは、服飾を示している。すなわち、画像中、「服飾」に該当する部分を示す画像であり、入力画像中、人物が着用している服が写っている領域を示している。かかる中間ヒートマップ12cを出力する機械学習モデル11cを得るには、専用の学習データを逐一作成してもよいが、より簡便には、例えば、画像のセグメンテーション技術を用い、任意の画像に対し、領域の抽出とラベリングを行って、「服」のラベル付けがなされた領域のデータを学習データとして用い、機械学習モデル11cを訓練すればよい。そのような画像のセグメンテーション技術としては、R-CNN、あるいは、Faster R-CNNとして知られているものが著名であり、これらを用いることができる。あるいは、R-CNNやFaster R-CNNを直接、機械学習モデル11cとして用い、「服」のラベル付けがなされた領域のデータのみを取り出して中間ヒートマップ12cとして用いてもよい。
【0045】
図8の中間ヒートマップ12dは、鞄を示しており、その意味は、入力画像中、鞄が写っている領域を示すものである。かかる中間ヒートマップ12dを出力する機械学習モデル11dを得るには、
図7において服飾について説明したと同様のことを鞄について行えばよい。
【0046】
同様にして、任意の必要な数の種類の機械学習モデル11を用意し、必要な数の種類の中間ヒートマップ12を得られるようにしておく。なお、
図5~
図8に示した中間ヒートマップ12a~12dの例では、図示の都合上、これら中間ヒートマップ12a~12dが二値画像であるかのように示しているが、これに限定するものではなく、任意のビット数のグレースケール画像であってよい。
【0047】
また、機械学習モデル11a~11dは、上の例示ではCNNを用いるものとして説明したが、機械学習モデルのアーキテクチャはこれに限られない。CNNのようなDNNだけでなく、他の機械学習手法を用いるものであっても差し支えないし、得ようとする中間ヒートマップ12ごと、すなわち、機械学習モデル11毎にそのアーキテクチャは異なっていてもよい。また、入力画像のフォーマットは、入力しようとする機械学習モデル11に応じて変換される。例えば、所定のサイズ、所定の解像度のラスタ画像に変換されるなどである。
【0048】
得られた複数の中間ヒートマップ12は、合成部13によって一枚のヒートマップHMに合成される。この合成の際に、属性が加味され、得られるヒートマップHMはその属性に応じたものとなる。
【0049】
図9及び
図10は、合成部13により生成されたヒートマップHMの例である。
図9に示したヒートマップHMは、属性として服飾を指定したもの、
図10に示したヒートマップHMは、属性として鞄を指定したものであり、いずれも同じ
図2に示した入力画像に基づいて生成されたものであって、指定された属性が異なると、互いに全く異なるヒートマップHMが生成されていることがわかる。一方で、例えば、
図9に示したヒートマップと、
図7に示した服飾を示す中間ヒートマップとを比較すると、両者は同一でなく、
図7の中間ヒートマップでは服飾のみを示す領域が示されているのに対し、
図9に示すヒートマップでは、服飾部分を中心としつつ、その周囲の適度な領域をも含む領域が示され、入力画像を服飾を示す画像として用いるにあたり、その要部を示す領域として妥当な領域が選択されていることがわかる。
図10に示したヒートマップにおいても同様に妥当と考えられる領域が適切に選択されていることがわかる。
【0050】
かかるヒートマップHMが得られる合成手法として、合成部13は、例えば、指定された属性に応じた重みに基づいて中間ヒートマップ12を合成する。例えば、
図4に即した例で説明すると、中間ヒートマップ12a~12dを合成する際のそれぞれの中間ヒートマップ12に乗じる重みの係数をそれぞれ、(a,b,c,d)と示すこととして、属性として服飾が指定された場合の重み係数を、(0.3,0.3,0.4,0)のように設定する。このようにすると、合成部13では、CTR及び美的評価値を考慮しつつ、服飾に関係する領域により高い評価がなされた、
図9に示すようなヒートマップHMを出力する。これに対し、属性として鞄が指定された場合には、重み係数として、(0.3,0.3,0,0.4)のように設定すると、今度は、合成部13では、CTR及び美的評価値を考慮しつつ、鞄に関係する領域により高い評価がなされた、
図10に示すようなヒートマップHMを出力することになる。
【0051】
なお、以上の説明では、合成部13での処理として、属性に応じた重みに基づいて、中間ヒートマップ12a~12dを合成する例を説明したが、中間ヒートマップ12に基づいて、属性に応じたヒートマップHMを合成できるのであれば、別の手法を用いてもよい。そのような手法としては、例えば、あらかじめ、属性に応じて、入力画像が入力される機械学習モデル11を選択しておき、選択された機械学習モデル11から出力された中間ヒートマップ12を合成してヒートマップHMを得る方法や、機械学習モデル11から出力された中間ヒートマップ12の中から、属性に応じて、合成部13に入力される中間ヒートマップ12を選択し、選択された中間ヒートマップ12を合成してヒートマップHMを得る方法、さらにはこれらの方法の組み合わせ等を用いてもよい。
【0052】
領域抽出器14は、合成部13により合成されたヒートマップHMに基づいて、入力画像の一部分である主要部分にあたる領域Wを特定する。本明細書に示す例では、領域Wの形状は矩形であるが、楕円や星型その他不定形状など、主要部分の形状は任意のものであって差し支えない。
【0053】
図11は、領域抽出器14で実行される処理の一例を説明する図である。ここで説明する手法としては、スライディングウィンドウと呼称される方法を用いている。まず、領域抽出器14は、ヒートマップHMに対し、大きさと形状の異なる種々の切り出し窓Xを設定する。例えば、
図11に示すX
Al、X
Bm、X
Cnはいずれも切り出し窓Xの一部である。ここでXの後の一文字目の添え字(A、B、C・・・)は切り出し窓Xのサイズ及び形状を示し、二文字目の添え字(l,m,n・・・)は切り出し窓XのヒートマップHM上の位置を示している。
【0054】
すなわち、あるサイズ及び形状の切り出し窓X、例えばXAが、ヒートマップHM上の全ての領域を覆うように、位置をずらしながらXA1・・・XAlのl個設定される。同様に、XBはm個、XCはn個設定される。ここでは説明のため、切り出し窓Xのサイズ及び形状として、XA~XCの3種のみを示したが、より多数の種々のサイズ及び形状の領域についても同様に設定する。
【0055】
このようにして設定された切り出し窓Xのうち、次の条件を満足するものを候補窓Xcandとして抽出する。
【0056】
【0057】
ここで、xはヒートマップHMに含まれる画素、P(x)は画素xにおけるヒートマップHMの値、λは0<λ<1である任意の閾値である。すなわち、上の数1は結局、ヒートマップHM全ての画素xについての値の総計に対して、切り出し窓Xに含まれる画素xについての値の総計の割合がλより大きくなるXを候補窓Xcandとして抽出することをいうものである。なお、λの値は任意の固定値、例えば0.7等として与えてもよいし、全ての領域Wのうち上位の任意割合、例えば5%が候補窓Xcandとして抽出されるように設定してもよい。
【0058】
その後、候補窓Xcandの中から、領域Wとして適したものを選び出す。一例として、次の数2に示される方法を用いてよい。
【0059】
【0060】
ここで、|X|は切り出し窓Xに含まれる画素数を示しているから、数2は結局、候補領域X
candに含まれる切り出し窓Xのうち、最もサイズの小さいものを選択することをいうものである。このようにして、最終的には、例えば、
図12に示されるように、領域Wが得られる。
【0061】
なお、X
candに含まれる切り出し窓Xから領域Wとして適したものを選び出す方法は上述のものに限定されない。例えば、
図4に関して説明した美的評価値を出力する機械学習モデル11bを用いて、X
candに含まれる切り出し窓Xのうち、最も高い美的評価値を含むものを、次の数3のようにして選択してもよい。
【0062】
【0063】
ここで、Q(X)は、美的評価値についての中間ヒートマップにおける美的評価値を示す。すなわち、数3は、Xcandに含まれる切り出し窓Xにおいて、各画素の美的評価値の総計が最も大きいものを選び出すことをいうものである。なお、本実施形態では、切り出し窓Wについての1又は複数のスコアの総計に基づく何らかのスコアを数3における美的評価値として扱ってよい。
【0064】
図13は、以上説明した例における、領域抽出器14で実行される処理フローを示す図である。領域抽出器14は、処理を開始すると、すでに説明したように種々の大きさと形状および位置の切り出し窓XをステップS01にて設定し、ステップS02で数1に示した方法又は類似するその他の方法により候補窓X
candを抽出する。その後ステップS03にて、数2又は数3に示した方法或いはその他の方法により、領域Wとして適したものを選定する。
【0065】
あるいは、領域抽出器14では、別の処理を実行することにより領域Wを求めてもよい。その一例としては、機械学習モデル、好適には学習済みのR-CNNを用いて、ヒートマップから直接領域Wの大きさと形状および位置を出力させるようにしてもよい。機械学習モデルを得るためには、種々のヒートマップの例と、対応する領域Wを示す学習データを用いて訓練すればよい。かかる学習データを得るために、上の領域抽出器14で行われる処理として説明したスライディングウィンドウと呼称される方法を用いてもよい。
【0066】
図4に戻り、領域抽出器14により得られた領域Wにおける評価値Eを評価値推定器15により推定する。
図14は評価値推定器15の構成の一例を示す図である。
【0067】
評価値推定器15は、入力画像のうち、領域Wに相当する部分のみの画像による評価を行うものである。そのため、まず、乗算器16により入力画像と領域Wとの乗算を行い、領域画像17を得る。その後、領域画像17に所定の評価を行えばよいが、本例では、その評価基準として、すでに説明したCTRと美的評価値を用いる。
【0068】
すなわち、評価値推定器15は、機械学習モデル18aと機械学習モデル18bの2つを有しており、機械学習モデル18aは、画像の入力に対して、そのCTRであるECTRを出力するものであり、同様に、機械学習モデル18bは、画像の入力に対して、その美的評価値であるEaestheticを出力するものである。機械学習モデル18aと機械学習モデル18bはいずれもCNNなどのDNNであってよく、また、その学習データは前述したように比較的入手が容易であるから、これら機械学習モデル18a,18bの構築は十分に可能である。
【0069】
なお、機械学習モデル18a及び機械学習モデル18bは、先の
図4にて説明した機械学習モデル11a及び機械学習モデル11bとは異なり、中間ヒートマップ12を出力するものではなく、評価値E
CTR、E
aestheticを直接出力するように学習がなされている。しかしながら、これに替えて、
図4に示したものと同じ機械学習モデル11a及び機械学習モデル11bを用い、これらより出力された中間ヒートマップから評価値E
CTR、E
aestheticを演算するようにしてもよい(例えば、中間ヒートマップに含まれる各画素の評価値の平均値を画像自体の評価値として用いるなど)。
【0070】
得られた評価値ECTR、Eaestheticは加算器19により加算され、最終的な評価値Eを得る。この時、適当な重みwCTRおよびwaestheticを数4に示すように乗じて、CTRと美的評価値の評価値Eに与える影響の大きさを調整するとよい。
【0071】
【0072】
なお、評価値推定器15において用いる評価値Eとして上にあげたECTRとEaestheticの和は、評価値Eの一例である。ECTRとEaestheticのいずれか一方をそのまま評価値Eとしてもよいし、その他の値を評価値Eとして用いてもよい。また、評価値Eは必ずしも単独の値である必要はなく、ECTRとEaestheticの両方を用いても、これらに替えて、又は追加してその他の値を用いてもよい。その場合、評価値Eはスカラー値ではなく、ベクトル値として観念される。
【0073】
以上説明した機械学習パイプライン10からは、入力画像及び属性に対して、ヒートマップHM、領域W、評価値Eが得られるため、これらを学習データとして、情報処理装置100の画像評価部110に含まれる機械学習モデル111を学習させることができる。
【0074】
以下、機械学習パイプライン10から得られた学習データにより学習がなされる情報処理装置100の具体的構成の種々の実施形態を説明する。
【0075】
図15は、第1の実施形態に係る情報処理装置200の構成を、機械学習モデル211の学習時の動作と合わせて示す図である。
【0076】
情報処理装置200の画像評価部210には、機械学習モデル211、領域抽出器214、評価値予測機215が接続されており、画像評価部210は全体として情報処理器のパイプラインとなっている。
【0077】
機械学習モデル211は、入力画像と属性の入力に対して、属性に応じたヒートマップHMを出力されるように学習がなされた、ヒートマップ出力モデルである。したがって、機械学習モデル211に、例えば、
図2に例示した入力画像を入力し、属性として服飾を入力すると、同モデルは、
図9に示したような属性:服飾に応じたヒートマップHMを出力し、同じ入力画像に対して属性として鞄を入力すると、
図10に示したような属性:鞄に応じたヒートマップHMを出力するものである。
【0078】
このように、機械学習モデル211に入力画像と属性を与えると、直接、属性に応じたヒートマップHMが得られるため、これを領域抽出器214に入力して領域Wを得、さらに、領域Wを評価値推定器215に入力して評価値Eを得ることができる。すなわち、共通の入力画像に対して、一の属性が与えられた際に出力されるヒートマップHMと、当該一の属性と異なる他の属性が与えられた際に出力されるヒートマップHMが互いに異なるため、当然に、情報処理装置200では、共通の入力画像に対して、一の属性が与えられた際に出力される領域W及び評価値Eは、当該一の属性と異なる他の属性が与えられた際に出力される領域W及び評価値Eとは互いに異なることとなる。
【0079】
ここで、情報処理装置200の領域抽出器214及び評価値推定器215は、
図4の機械学習パイプライン10において説明した、領域抽出器14及び評価値推定器15と同一のものであってよい。したがって、改めてこれらの詳細な説明を重複してすることはしない。
【0080】
引き続き
図15を参照して、機械学習モデル211を得る、すなわち、機械学習モデル211を学習する方法について説明する。なお、
図15において、機械学習モデル211の学習時の動作については、これを破線で示すことで明示している。
【0081】
機械学習モデル211は、すでに説明したとおり、入力画像と属性の入力に対し、ヒートマップHMを出力するものである。そして、これもすでに説明したとおり、
図4に示した機械学習パイプライン10(
図15中にも示した)もまた、入力画像と属性の入力に対し、ヒートマップHMを出力することができる。
【0082】
そこで、同じ入力画像と属性の入力に対し、機械学習パイプライン10より得られたヒートマップHMを正解画像、機械学習モデル211より得られたヒートマップMHを予測画像とし、両者の誤差20を得る。ここで、誤差20は交差エントロピー誤差、最小二乗誤差など機械学習の技術において一般に用いられるいかなるものであってもよい。その後、逆誤差伝播法その他適宜の方法を用いて、機械学習モデル211の内部状態を更新する。
【0083】
これを必要な回数適宜繰り返すことにより、機械学習モデル211の学習がなされる。なお、機械学習パイプライン10による正解画像としてのヒートマップHMの出力と、機械学習モデル211からの予測画像としてのヒートマップHMの出力は、必ずしも同時並行的に実施されなくともよく、用意された入力画像と属性に対して、機械学習パイプライン10によるヒートマップHMの出力を事前に行って学習データのセットを作成しておき、その後、同学習データを用いて機械学習モデル211の学習を行っても差し支えない。
【0084】
そして、機械学習パイプライン10においては、すでに説明したとおり、ヒートマップHMは、入力画像の入力に対して中間ヒートマップ12を生成する複数の互いに異なる学習済み機械学習モデル11から得られる複数の中間ヒートマップ12を、前記属性に応じて合成することにより得られる。したがって、機械学習モデル211は、入力画像と、属性を設問とし、機械学習パイプライン10により得られるかかるヒートマップHMを解答とする教師データを用いて学習させる学習方法によって得られたものである。
【0085】
図16は、第2の実施形態に係る情報処理装置300の構成を、機械学習モデル311a,311bの学習時の動作と合わせて示す図である。
【0086】
情報処理装置300の画像評価部310には、機械学習モデル311a及び機械学習モデル311bが含まれており、画像評価部310は全体として、機械学習モデル311a及び機械学習モデル311bを接続した一種の機械学習のパイプラインとなっている。
【0087】
機械学習モデル311aは、先の第1の実施形態に係る情報処理装置200にて示した機械学習モデル211と同じものであり、入力画像と属性の入力に対して、属性に応じたヒートマップHMを出力されるように学習がなされた、ヒートマップ出力モデルである。したがって、機械学習モデル311aについての重複する説明は、先の第1の実施形態に係る情報処理装置200についての説明を援用することとし、これを省略する。
【0088】
機械学習モデル311aから得られたヒートマップHMは、機械学習モデル311bに入力される。機械学習モデル311bは、先の第1の実施形態に係る情報処理装置200における領域抽出器214と評価値推定器215に替えて設けられるものであり、ヒートマップHM及び、入力画像を入力とし、領域W及び評価値Eの組(W,E)を出力とするよう学習された、領域評価値出力モデルである。
【0089】
このような構成の画像評価部310においても、機械学習モデル311aに入力画像と属性を与えると、直接、属性に応じたヒートマップHMが得られるため、これをさらに機械学習モデル311bに与えることにより得られる領域と評価値の組(W,E)は、当然に、共通の入力画像に対して、一の属性が与えられた際に出力される領域と評価値の組(W,E)は、当該一の属性と異なる他の属性が与えられた際に出力される領域と評価値の組(W,E)とは互いに異なることとなる。
【0090】
引き続き
図15を参照して、機械学習モデル311a及び311bを得る、すなわち、機械学習モデル311a及び311bを学習する方法について説明する。なお、
図16においても、機械学習モデル311a及び311bの学習時の動作については、これを破線で示すことで明示している。
【0091】
機械学習モデル311aの学習については、先の第1の実施形態に係る情報処理装置200についてすでに説明したとおりである。そのため、これについても、重複する説明は、先の第1の実施形態に係る情報処理装置200についての説明を援用することとし、これを省略する。なお、
図15において誤差20として示されたものは、
図16における誤差20aに相当する。
【0092】
機械学習モデル311bは、すでに説明したとおり、入力画像とヒートマップHMとを入力とし、当該入力画像における少なくとも1つの領域Wと、当該少なくとも1つの領域Wのそれぞれについての評価値Eとを出力とするものである。そして、これもすでに説明したとおり、
図4に示した機械学習パイプライン10(
図16中にも示した)は、入力画像の入力に対し、ヒートマップHM、領域W及び評価値Eを出力することができるものである。
【0093】
そこで、入力画像と属性の入力に対し、機械学習パイプライン10より得られたヒートマップHMを設問とし、同じく機械学習パイプライン10より得られた領域と評価値の組(W,E)を正解データ、機械学習モデル311bより得られた領域と評価値の組(W,E)を予測データとし、両者の誤差20bを得る。ここで、誤差20bは交差エントロピー誤差、最小二乗誤差など機械学習の技術において一般に用いられるいかなるものであってもよい。その後、逆誤差伝播法その他適宜の方法を用いて、機械学習モデル311bの内部状態を更新する。
【0094】
これを必要な回数適宜繰り返すことにより、機械学習モデル311bの学習がなされる。なお、機械学習パイプライン10からの正解画像としてのヒートマップHMの出力と、機械学習モデル211からのヒートマップHM、領域W及び評価値Eの出力を事前に行って学習データのセットを作成しておき、その後、同学習データを用いて機械学習モデル311bの学習を行っても差し支えない点については機械学習モデル311aと同様である。
【0095】
なお、以上の説明では、機械学習モデル311aと機械学習モデル311bの学習をそれぞれ独立に行うものとして説明したが、これをパイプラインとして一体のものとして同時に学習させてもよい。その場合、機械学習モデル311bに設問として入力されるヒートマップHMは、機械学習パイプライン10から出力されたものではなく、機械学習モデル311aから出力されるものとなる。
【0096】
したがって、機械学習モデル311aは、入力画像と、属性を設問とし、機械学習パイプライン10により得られるヒートマップHMを解答とする教師データを用いて学習させる学習方法によって得られたものである。また、機械学習モデル311bは、ヒートマップHMを設問とし、機械学習パイプライン10から得られる領域W及び評価値E、すなわち、ヒートマップHMを設問とし、ヒートマップHMの入力に対して領域Wを出力する学習済み機械学習モデル又はアルゴリズムから得られる領域Wと、入力画像の当該領域Wに対応する部分に対して評価値Eを出力する学習済み機械学習モデルから得られる評価値Eとを解答とする教師データを用いて学習させる学習方法により得られたものである。
【0097】
図17は、第3の実施形態に係る情報処理装置400の構成を、機械学習モデル411の学習時の動作と合わせて示す図である。
【0098】
情報処理装置400の画像評価部410には、単一の機械学習モデル411が含まれている。そして、機械学習モデル411は、入力画像と属性の入力に対して、直接、領域W及び評価値Eの組(W,E)を出力とするよう学習されたものである。したがって、情報処理装置400を用いて画像の評価を行う、すなわち、入力画像にたいして属性を与え、領域W及び評価値Eを得る際には、上記した第1の実施形態、第2の実施形態のように、ヒートマップHMが明に現れることはない。
【0099】
しかしながら、以降説明する、機械学習モデル411の学習方法から明らかなように、本実施形態に係る情報処理装置400の画像評価部410においても、当然に、共通の入力画像に対して、一の属性が与えられた際に出力される領域と評価値の組(W,E)は、当該一の属性と異なる他の属性が与えられた際に出力される領域と評価値の組(W,E)とは互いに異なることとなる。
【0100】
引き続き
図17を参照して、機械学習モデル411bを得る、すなわち、機械学習モデル411を学習する方法について説明する。なお、
図17においても、機械学習モデル411の学習時の動作については、これを破線で示すことで明示している。
【0101】
機械学習モデル411は、すでに説明したとおり、入力画像と属性とを入力とし、領域W及び評価値Eの組(W,E)を出力とするものである。そして、これもすでに説明したとおり、
図4に示した機械学習パイプライン10(
図17中にも示した)は、入力画像及び属性の入力に対し、領域W及び評価値Eを出力することができるものである。
【0102】
そこで、入力画像と属性を設問とし、機械学習パイプライン10より得られた領域と評価値の組(W,E)を正解データ、機械学習モデル411より得られた領域と評価値の組(W,E)を予測データとし、両者の誤差20を得る。ここで、誤差20は交差エントロピー誤差、最小二乗誤差など機械学習の技術において一般に用いられるいかなるものであってもよい。その後、逆誤差伝播法その他適宜の方法を用いて、機械学習モデル411の内部状態を更新する。
【0103】
これを必要な回数適宜繰り返すことにより、機械学習モデル411の学習がなされる。なお、機械学習パイプライン10からの領域W及び評価値Eの出力を事前に行って学習データのセットを作成しておき、その後、同学習データを用いて機械学習モデル411の学習を行っても差し支えない点についてはこれまで説明してきたとおりである。
【0104】
なお、以上の説明では、機械学習モデル411の学習を領域W及び評価値Eの組(W,E)を正解データとして行うものとして説明したが、これに加え、機械学習パイプライン10から出力されるヒートマップHMを機械学習モデル411の中間層の学習に用いてもよい。すなわち、機械学習モデル411がCNNに基づくアーキテクチャを有している場合に、中間層として、アテンションマスクに基づくアテンションマップの生成層を設けておき、出力されたアテンションマップを予測画像、ヒートマップHMを正解画像とする中間層学習を併せて行ってもよい。このような学習機構を採用することにより、より少ない繰り返し回数で効率よく学習を進めることができる。
【0105】
以上説明したように、単一の機械学習モデル411は、入力画像と、属性を設問とし、機械学習パイプライン10により得られる領域W及びE、すなわち、入力画像の入力に対して中間ヒートマップ12を生成する複数の互いに異なる学習済み機械学習モデル11から得られる複数の中間ヒートマップ12を、当該属性に応じて合成して得られるヒートマップHMを、ヒートマップHMの入力に対して領域Wを出力する学習済み機械学習モデル又はアルゴリズムに入力して得られる領域Wと、入力画像の当該領域Wに対応する部分に対して評価値Eを出力する学習済み機械学習モデルから得られる評価値Eとを解答とする教師データとして用いて学習させる方法により得られたものである。
【0106】
図18は、
図1に示した機械学習モデル111を実装するアーキテクチャの一例として、Faster R-CNNに基づく機械学習モデルパイプラインの構成を示している。
【0107】
Faster R-CNNでは、入力画像は、CNN111aにより入力され、得られた特徴マップ(Feature map)はRPN(Region Proposal Network)111bに入力されて、特徴的であると判断されるアンカーボックスが得られる(この時、NMS(Non-Maximum Suppression)等の手法により重複が排除される)。特徴的であると判断されたアンカーボックスに係る特徴マップは、RoI(Region of Interest) Pooling111cにより、単一層に規格化される。
【0108】
規格化されたアンカーボックスに係る特徴マップについてどのように処理するかは、Faster R-CNNをどのように用いるかに依存する。ここでは、機械学習モデル111を、第3の実施形態に係る情報処理装置400における機械学習モデル411のように、領域Wと評価値Eを出力するものとする場合には、CNN111aにさらに、属性を入力するものとし、規格化されたアンカーボックスに係る特徴マップをRegression Layers111d及び、Score Predictor111eに入力すればよい。Regression Layers111d及びScore Predictor111eはいずれもCNNであってよい。Regression Layers111dからは領域Wが、Score Predictor111eからは評価値Eが出力されるように、機械学習モデル111を学習させることが可能である。
【0109】
なお、機械学習モデル111から評価値Eに替えて、又は追加してCTRについての評価値であるE
CTRや、美的評価値E
aestheticを出力させたいならば、Score Predictor111eに替えて、又は追加してE
CTRや美的評価値E
aestheticを予測するCNNを設ければよい。また、機械学習モデル411以外の種々の機械学習モデルを作成するためには、適宜必要な層を追加しまたは不要な層を削除するなどして、
図18に示した機械学習パイプラインの構成を適宜変更すればよい。
【0110】
以上説明した情報処理装置100,200,300及び400は、物理的には、一般的なコンピュータを用いて実現して良い。
図19はそのような一般的なコンピュータ1の代表的な物理構成を示す構成図である。
【0111】
コンピュータ1は、CPU(Central Processing Unit)1a、RAM(Random Access Memory)1b、外部記憶装置1c、GC(Graphics Controller)1d、入力デバイス1e及びI/O(Inpur/Output)1fがデータバス1gにより相互に電気信号のやり取りができるよう接続されている。ここで、外部記憶装置1cはHDD(Hard Disk Drive)やSSD(Solid State Drive)等の静的に情報を記録できる装置である。またGC1dからの信号はCRT(Cathode Ray Tube)やいわゆるフラットパネルディスプレイ等の、使用者が視覚的に画像を認識するモニタ1hに出力され、画像として表示される。入力デバイス1eはキーボードやマウス、タッチパネル等の、ユーザが情報を入力するための機器であり、I/O1fはコンピュータ1が外部の機器と情報をやり取りするためのインタフェースである。CPU1aはコンピュータ1が必要とする情報処理の負荷に応じて、複数用意されて並列演算がなされるように構成されていてもよい。
【0112】
コンピュータ1を情報処理装置100として機能させるための命令列を含むアプリケーションプログラムは、外部記憶装置1cにインストールされ、必要に応じてRAM1bに読みだされてCPU1aにより実行される。また、かかるプログラムは、適宜の光ディスク、光磁気ディスク、フラッシュメモリ等の適宜のコンピュータ可読情報記録媒体に記録されて提供されても、インターネット等の情報通信回線を介して提供されてもよい。また、情報処理装置100を使用者が使用するためのインタフェースは、コンピュータ1自身にかかるインタフェースが実装され、使用者が直接コンピュータ1を操作するものであってもよいし、他のコンピュータ上でwebブラウザのような汎用のソフトウェアを用い、I/O1fを介してコンピュータ1から機能が提供される、いわゆるクラウドコンピューティングの方法によってもよく、さらに、コンピュータ1が他のコンピュータに対してAPI(アプリケーションプログラミングインタフェース)を利用可能に提供することにより、他のコンピュータからの求めに応じてコンピュータ1が情報処理装置100として動作するものであってもよい。