2016-04-07 24 views
2

私は複数のオブジェクトトラッキング試行のデータセットを持っています。参加者はディスプレイ上で8ポイントを追跡します。そのうちの4つはターゲット(試行の始めに簡単にマークされます)と4つのディストラクターです。試行の終わりに、その人は4つのターゲットをマークします。私のデータセットには、参加者の回答が正しい試行だけが含まれています。私は毎秒10フレームを持っており、各フレームにはポイントの位置と視線の位置が含まれているので、合計で18の数字があります。試行は8秒間続きます。 ポイントには40の可能な軌跡があります。順列不変ニューラルネットワーク

An example of what a frame in a trial looks like, the red points are targets, the blue cross is the gaze.

私はもっぱら視線の位置やポイントに基づいて4つのターゲットをマークするニューラルネットを訓練しようとしています。問題は、データセットでは、答えは常にベクトルの最初の4つの点です。これらの出力をトレーニングに使用した場合、ネットは[1,1,1,1,0,0,0,0]と常に言うことを学ぶだけです。 入力や出力(またはその両方)を変更する方法はありますか?たとえば、異なる機能を計算するなどして、ポイントを受け取った順番にネットに関係しないようにしますか?点の座標が入力ベクトルの最初(2番目、3番目...)であるという事実は、このタスクでは意味を持ちません。私は今まで試み何

  • トレーニング、並び替える各ランダム入力(および出力correspodningly )の間と 出力ベクトルのすべての70の可能な順列を反復[1,1,1,1、 0,0,0,0]となり、順列は と同等に表現されます。成功しなかった(成功率は 1/70、チャンスと同じ)
  • 左から右(x座標)でポイントを並べ替える - 結果は改善されましたが、ネットは基本的に軌跡を記憶し、同様にうまく機能しました私が目の凝視位置を外しても。もちろん、訓練されていない新しい軌跡であってもネットが正しく答えるようにします。

私は入力機能のアイディアを持っています。ディスプレイを個別のメッシュに分割し、他のいくつかの数字は、注視の位置は0で、他の場所は0です。私はしかし、出力はどのような外観、任意のアイデアを知っている?

私は1つのフレームからトライアル全体に関する回答を見つけることができないことを知っています。したがって、試行の80フレームすべてについてネットの出力を結合し、そこから答えを見つけることを望んでいます。

NNがこれを知りたいという希望があるとは確信していません。パーミュテーション不変である機械学習モデルはありますか?私は長い間捜し求めておらず、何も見つかりませんでした。

答えて

0

PointNetアーキテクチャをご覧ください。彼らは同様の問題を3Dで解決しています。

基本的なアプローチは次のとおりです。すべての点を、xyの座標を高次元の空間に写像する埋め込みレイヤーに送ります。これらはポイントのローカルな特徴です。次に、すべてのローカルフィーチャを最後のレイヤが最大プールである「グローバルフィーチャ抽出モジュール」に送ります。このモジュールの出力は入力全体を表し、最後のmax-poolは順列不変性(または「対称性」)を保証します。次に、すべてのローカルフィーチャをグローバルフィーチャと連結し、各ポイントの完全なフィーチャセットを取得します。最後に、各ポイントのフィーチャを密なレイヤーを介してポイントのクラスにマップすると、完了します。

PointNet source codeを見ると、このアーキテクチャを実装するのが非常に簡単であることがわかります。

関連する問題