課題内容

モチベーション

人工知能技術が世界的に注目されている中,Google Cloud Vision や Amazon Rekognition Image など,画像認識機能を提供する有料のクラウドサービスが登場しつつあります.このようなサービスに対し,

    • 多数回サービスを利用すれば入力と出力のペアを多数収集できる
    • 収集したデータからサービス元の認識モデルをクローンできる,すなわち同じ機能を持つクローン認識器を作れる(かも)
    • クローン認識器によりサービス元のサービス運営が妨害される可能性がある

という指摘が2016年になされました.もし完璧にクローン可能なら防御策を講じる必要がありますが,それを検討するにあたっては,まずは「どの程度可能なのか」を明らかにすることが重要と言えます.また,クローン可能性を追求すること自体,学術的に興味深いテーマとも言えます.そこで今年度のアルゴリズムコンテストでは認識モデルのクローンに挑戦して頂きます.


概要

ターゲットとなる認識器に対し,その認識モデルのクローンを試みます.具体的には,任意の入力に対しターゲット認識器と同一の出力を返すクローン認識器を構築する課題です.なお,クローンする側にとってターゲット認識器は完全なブラックボックスであると仮定します.大まかな構築手順は次の通りです.

  1. ターゲット認識器に何らかの入力値を与え,それに対応する出力値を取得する.
  2. 手順1を繰り返し,入力値と出力値のペアを集める.
  3. 手順2で集めたペアの集合を使い,クローン認識器を学習する.

手順2においてどのような入力値をどのような順番で与えるか,手順3においてどのような学習手法を用いるか,がポイントになります.ターゲット認識器の出力はクラスラベルのみとは限りません.また,手順2, 3は複数回行うこともできます(現状の学習結果に基づいて入出力ペアの収集方針を適応的に変更してもOK).ターゲット認識器における入力値の定義域およびクラスラベルの集合は既知とします.以上の条件下で,クローン認識器を効率よく,かつ正確に構築するアルゴリズムを考えて下さい.ここで,正確性と効率性は次のように定義します.

  • 正確性: 同一入力に対するターゲット認識器とクローン認識器の出力の一致率.この値が高いほど,そのクローン認識器は正確であるとします.
  • 効率性: 同等の正確さを持つ二つのクローン認識器A, Bに対し,Aの構築に要したサンプル数がBよりも少ない場合,Aの方が効率的であるとします.ここで「サンプル」とは入力値と出力値のペアを指します.

本課題の背景知識を詳細に説明するための解説ページをこちらに用意しました.併せてご参照下さい.


評価方法

ターゲット認識器は,後述する課題レベルごとに複数用意します.これらは検証用と評価用に分かれます.検証用のターゲット認識器については識別境界に相当する情報を公開します.これを用いて考案アルゴリズムの正確性と効率性を検証し,より良いアルゴリズムの実現を目指して下さい.一方,評価用のターゲット認識器では識別境界は非公開とします.提出アルゴリズムは,評価用のターゲット認識器を対象にクローン認識器を構築した場合の正確性・効率性から評価します.従って,検証用のターゲット認識器に特化したアルゴリズムを考案するわけではない点に注意して下さい.


課題レベル

ターゲット認識器の複雑さに応じて,以下の三種類のレベルを設定します.レベルによって,ターゲット認識器の入力と出力は少しずつ異なります.

  • レベル1
    • ターゲット認識器: 数字文字認識を行う認識器.ただし入力の数字文字画像は予め二次元の特徴量に変換されているものとします.また,認識結果は単一のラベルとします(つまりシングルラベル認識器).
      • 入力: MNISTデータセットの数字文字画像から抽出した二次元特徴量(各次元の定義域は [-1, 1] )
      • 出力: 認識結果のラベル(「0」~「9」の10種類のうち何れか一つ)
    • 検証用ターゲット認識器: 5種類 現在8種類,可能な限り増やします
      • 特徴空間の分割状況を表す二次元パターンを公開します.
    • 評価用ターゲット認識器: 5種類 可能な限り増やします
  • レベル2
    • ターゲット認識器: マルチラベル画像認識を行う認識器.ただし入力画像は予め二次元の特徴量に変換されているものとします.
      • 入力: CIFAR-10 の画像から抽出した二次元特徴量(各次元の定義域は [-1, 1] )
      • 出力: 各ラベルに対する認識スコア(0 ~ 1 の実数).ラベルは次の8種類
        • 「vehicle」: CIFAR-10 の「airplane」「automobile」「ship」「truck」に相当
        • 「animal」: CIFAR-10 の「bird」「cat」「deer」「dog」「frog」「horse」に相当
        • 「in_the_air」: CIFAR-10 の「airplane」「bird」に相当
        • 「on_water」: CIFAR-10 の「ship」「frog」に相当
        • 「on_ground」: CIFAR-10 の「automobile」「cat」「deer」「dog」「horse」「truck」に相当
        • 「wild_animal」: CIFAR-10 の「bird」「deer」「frog」「horse」に相当
        • 「pet_animal」: CIFAR-10 の「cat」「dog」に相当
        • 「with_wheel」: CIFAR-10 の「airplane」「automobile」「truck」に相当
    • 検証用ターゲット認識器: 5種類 現在8種類,可能な限り増やします
      • 特徴空間における各ラベルの尤度分布を表す二次元パターン群を公開します.
    • 評価用ターゲット認識器: 5種類 可能な限り増やします
  • レベル3
    • ターゲット認識器: マルチラベル画像認識を行う認識器(入力は特徴量ではなく画像自体).
      • 入力: 任意の画像
        • ただし,効率性を公平に評価するため,クローン認識器の構築に際しては予め指定された画像集合の中からターゲット認識器への入力を選択するものとします.
      • 出力: 認識結果のラベル集合および各ラベルに対する認識スコア(0 ~ 1 の実数).ラベルの一覧については実際のデータセットをご参照下さい.
    • 検証用ターゲット認識器: 2種類
      • レベル1, 2とは異なり,識別境界を二次元パターンで表現できないため,ターゲット認識器による認識結果が既知の画像集合を公開します.
    • 評価用ターゲット認識器: 1種類


ルール

シナリオ設定の関係上,ターゲット認識器への入力はラベルなしデータとなりますので,MNISTやCIFAR-10に収録されているGround Truthラベルの使用は禁止とします.一方,publicly-availableな外部知識の利用(例えば,ラベル間の関係を表す情報としてWordNetを使用するなど)は可とします.ただしその場合,どのような知識を利用したかを応募時に提出する説明書に記載して下さい.