JP6748372B2 - データ処理装置、データ処理方法、およびデータ処理プログラム - Google Patents

データ処理装置、データ処理方法、およびデータ処理プログラム Download PDF

Info

Publication number
JP6748372B2
JP6748372B2 JP2016116161A JP2016116161A JP6748372B2 JP 6748372 B2 JP6748372 B2 JP 6748372B2 JP 2016116161 A JP2016116161 A JP 2016116161A JP 2016116161 A JP2016116161 A JP 2016116161A JP 6748372 B2 JP6748372 B2 JP 6748372B2
Authority
JP
Japan
Prior art keywords
candidate
data
update
determination
candidate data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2016116161A
Other languages
English (en)
Other versions
JP2017220149A (ja
Inventor
善之 大野
善之 大野
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP2016116161A priority Critical patent/JP6748372B2/ja
Publication of JP2017220149A publication Critical patent/JP2017220149A/ja
Application granted granted Critical
Publication of JP6748372B2 publication Critical patent/JP6748372B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、データ処理装置、データ処理方法、およびデータ処理プログラムに関する。
近年、様々なデータ処理(例えば、画像処理、音声処理、その他統計処理等)において、データを抽出する抽出計算が用いられている。ここで、「抽出計算」とは、多数の入力データ列に対して、複数の判別条件の全てを満たすような入力データのみを抽出する計算のことをいう。代表的な抽出計算として、画像データから、顔などの特定のオブジェクトを検出する検出処理が知られている。
非特許文献1は、検出処理の手法を開示している。この非特許文献1に開示された検出処理の手法では、次のようにして特定のオブジェクトの検出を行う。まず、検出処理の手法は、画像データをウィンドウと呼ばれる部分領域に分割する処理を行う。引き続いて、検出処理の手法は、それぞれのウィンドウに対して、特定の画素領域から求めたスコアとあらかじめ定めた閾値と比較する処理を行う。最後に、検出処理の手法は、これら処理を複数回繰り返すことで、特定のオブジェクトの検出を行っている。
図15は、非特許文献1に開示された検出処理の手法を、コンピュータで動作させるためのプログラムとして記述した場合のコードを示す図である。
また、特許文献1は、上記の検出処理を、並列に処理する手法を開示している。特許文献1に開示された手法では、画素領域からスコアを計算するという処理(図15の内側ループに相当)を、並列に実行している。
特開2010−204947号公報
Rapid Object Detection using a Boosted Cascade of Simple Features, Conference of Computer Vision And Pattern Recognition, 2001.
しかしながら、上記特許文献1に開示された並列検出処理では、全ての候補ウィンドウに対して、全てのスコア計算および閾値判別をすることになり、計算量が大きくなるという問題がある。
図15で示す通り、複数回のスコア計算および閾値判別をする間で、一度閾値判定からもれた場合は、当該ウィンドウについては、残りのスコア計算および閾値判別をする必要がない。そのため、上記特許文献1に開示の並列検出処理は、計算量が大きくなるといえる。
本発明の目的は、上述したいずれかの課題を解決する、データ処理装置、データ処理方法、およびデータ処理プログラムを提供することにある。
本発明のデータ処理装置は、処理対象である複数の抽出候補データ列に対して、入力判別条件式の内1つまたは複数の判別条件式を計算することによって、連続データ判別処理を行う連続候補データ判別手段と;前記各抽出候補データ列を示すインデックス情報が含まれる候補IDリストで指定される抽出候補データ列に対して、入力判別条件式の内1つまたは複数の条件式を計算することによって、不連続データ判別処理を行う不連続候補データ判別手段と;前記連続候補データ判別手段が行った判別結果をもとに、前記候補IDリストに含まれる候補IDを更新するかどうかを判断する候補ID更新判定手段と;前記候補ID更新判定手段が候補IDリストを更新すると判断した場合や、前記不連続候補データ判別手段の実行後に、候補IDリストの更新を行う候補ID更新手段と;を備え、前記連続候補データ判別手段、前記不連続候補データ判別手段、前記候補ID更新判定手段、および前記候補ID更新手段による処理を複数回反復処理することによって、前記複数の抽出候補データ列のうち、前記候補ID更新手段によって更新された候補IDに対応する候補データが抽出されることを特徴とする。
本発明のデータ処理方法は、データ処理装置が、複数の抽出候補データ列および複数の判別条件式情報を入力し、抽出候補データ列のうち、全ての判別条件式を満たすような候補データのみを抽出するようなデータ処理方法であって、処理対象である抽出候補データ列に対して、入力判別条件式の内1つまたは複数の判別条件式を計算することによって、連続データ判別処理を行い;前記判別条件式を用いた判定の結果に基づいて、各抽出候補データ列を示すインデックス情報が含まれる候補IDリストで指定される候補IDを更新するかどうかを判断し;前記候補IDリストを更新すると判断しない場合は、次の判別条件式に対しては、前記の判別条件式を用いた条件判定と、前記候補ID更新判定を行い;前記候補IDリストを更新すると判断した場合は、候補IDリストの更新を行い;前記候補IDリストで指定される抽出候補データ列に対して、入力判別条件式の内1つまたは複数の条件式を計算することによって、不連続データ判別処理を行い、これら処理を複数回反復処理することによって、更新された候補IDに対応する候補データが抽出される。
本発明のデータ処理プログラムは、コンピュータに、複数の抽出候補データ列および複数の判別条件式情報を入力し、抽出候補データ列のうち、全ての判別条件式を満たすような候補データのみを抽出させるデータ処理プログラムであって、処理対象である抽出候補データ列に対して、入力判別条件式の内1つまたは複数の判別条件式を計算することによって、連続データ判別処理を行う連続候補データ判別処理と;各抽出候補データ列を示すインデックス情報が含まれる候補IDリストで指定される抽出候補データ列に対して、入力判別条件式の内1つまたは複数の条件式を計算することによって、不連続データ判別処理を行う不連続候補データ判別処理と;前記連続候補データ判別処理が行った判別結果に基づいて、候補IDリストに含まれる候補IDを更新するかどうかを判断する候補ID更新判定処理と;前記候補ID更新判定処理が候補IDリストを更新すると判断した場合と、前記不連続候補データ判別処理の実行後に、候補IDリストの更新を行う候補ID更新処理と;を前記コンピュータに実行させ、前述した連続候補データ判別処理、不連続候補データ判別処理、候補ID更新判定処理、および候補ID更新処理を複数回反復処理することによって、更新された候補IDに対応する候補データを抽出させる。
本発明によれば、連続候補データ判別処理と不連続候補データ判別処理とのどちらを実施するかどうかを切り替えられるようにし、各判別式の判別処理実行後に、次の判別式の判別処理の実行を動的判断させることで、より効率のよい並列判別処理を選択・実行できる。
本発明の第1の実施形態に係るデータ処理装置の構成を例示するブロック図である。 本発明の第1の実施形態に係るデータ処理装置の機能的な構成を例示するブロック図である。 本発明の第1の実施形態に係るデータ処理装置の動作の概要を例示するフローチャートである。 本発明の第1の実施形態に係るデータ処理装置を構成する記憶部に記憶されたデータの具体例を示す図である。 本発明の第1の実施形態に係る、候補データ判別条件式情報の具体例を表す図である。 本発明の第1の実施形態に係る、候補ID更新判定閾値情報の具体例を表す図である。 本発明の第1の実施形態に係る、連続候補データ判別部で実行される連続候補データ判別処理の概要を例示するプログラムの一例である。 本発明の第1の実施形態に係る、候補ID更新判定部で実行される候補ID更新判定処理の概要を例示するプログラムの一例である。 本発明の第1の実施形態に係る、候補ID更新部で実行される候補ID更新処理の概要を例示するプログラムの一例である。 本発明の第1の実施形態に係る、候補ID更新処理の前後の、記憶部に記憶されたデータの一部を示す図である。 本発明の第1の実施形態に係る、不連続候補データ判別部で実行される不連続候補データ判別処理の概要を例示するプログラムの一例である。 本発明の第2の実施形態に係る、候補ID更新判定閾値情報の具体例を表す図である。 本発明の第3の実施形態に係る、候補ID更新判定閾値情報の具体例を表す図である。 本発明の第4の実施形態に係るデータ処理装置の機能的な構成を例示するブロック図である。 非特許文献1の検出処理の手法を、コンピュータで動作させるためのプログラムとして記述した場合のコードの一例である。
以下、本発明を実施する形態について図面を参照して詳細に説明する。以下の各実施形態に記載されている構成は単なる例示であり、本発明の技術範囲はそれらには限定されない。
次に、発明を実施するための形態について図面を参照して詳細に説明する。
[第1の実施形態]
[構成の説明]
本発明の第1の実施形態に係るデータ処理装置について、図面を参照して詳細に説明する。
図1は、本第1の実施形態におけるデータ処理装置の機能的な構成を例示するブロック図である。
図1を参照すると、本発明の第1の実施形態におけるデータ処理装置100は、演算処理部101と、記憶部102と、入力部103とを備える。データ処理装置100を構成するこれらの構成要素の間は、任意の通信手段(例えば、通信バスや通信ネットワーク等)により、相互に通信可能に接続されている。以下、それぞれの構成要素について概要を説明する。
演算処理部101は、例えば、後述する記憶部102に記憶されたデータに対して任意の演算処理を実行可能な、専用又は汎用のプロセッサ(CPU(central processing unit)等)である。演算処理部101は、例えば、記憶部102に記憶された任意のソフトウェア・プログラム(コンピュータ・プログラム、以下単に「プログラム」と称する場合がある)を実行可能であってもよい。なお、プログラムは、記憶部102に限定されず、データ処理装置100の内外の任意の装置(不図示)に保持されてもよい。この場合、必要に応じて演算処理部101が当該プログラムを読み出して実行する。
記憶部102は、任意のデータを記憶可能な記憶デバイス(メモリ)である。記憶部102は、半導体記憶装置等により実現された揮発性あるいは不揮発性のメモリデバイスにより実現されてもよい。なお、記憶部102は、上記に限定されず、任意の記憶デバイス(例えば、磁気記憶デバイス、光磁気記憶デバイス、光記憶デバイス、等)により実現可能である。
入力部103は、データ処理装置100に対して任意のデータを入力可能な入力装置である。入力部103は、データ処理装置100の構成に応じて、任意の入力装置を用いて実現可能である。即ち、入力部103は、例えば、ネットワークを介して任意のデータを入力可能なネットワークデバイスでもよい。また、入力部103は、例えば、データ処理装置100のユーザが直接データを入力可能な、インタフェース装置であってもよい。また、入力部103は、例えば、任意の記憶媒体(記録媒体)を介してデータを入力可能な、記憶媒体(記録媒体)の読み込みデバイスであってもよい。本第1の実施形態においては、入力部103を介して、処理対象のデータ集合である入力データがデータ処理装置100に入力され、その入力データが記憶部102に保持(記憶)される。
上記のように構成された本第1の実施形態におけるデータ処理装置100は、入力データ列に対して、複数の判別条件の全てを満たすような入力データ列のみを抽出する抽出処理を実行する。より具体的には、本第1の実施形態におけるデータ処理装置100においては、演算処理部101が、記憶部102に記憶されたデータ(入力データ列)に対し、抽出処理を実行する。この場合、演算処理部101は、特定のプログラムを実行することにより、上記抽出処理を実行してもよい。これに限定されず、演算処理部101は、予め組み込まれたロジック等により、上記抽出処理を実行してもよい。
以下、本第1の実施形態におけるデータ処理装置100の動作について、図面を参照して説明する。
図2は、本第1の実施形態におけるデータ処理装置100の演算処理部101における動作の概要を例示する処理ブロック図である。図2に例示するように、データ処理装置100の演算処理部101における主要な構成要素は、大別して、連続候補データ判別部201、不連続候補データ判別部202、候補ID(identification; identity)更新判定部203、および候補ID更新部204から成る。
後述するように、連続候補データ判別部201、不連続候補データ判別部202、候補ID更新判定部203、および候補ID更新部204の組合せが、入力データ列に対して、複数の判別条件の全てを満たすような入力データ列のみを抽出する抽出手段として働く。
連続候補データ判別部201は、後述する連続候補データ判別処理を実行する。不連続候補データ判別部202は、後述する不連続候補データ判別処理を実行する。候補ID更新判定部203は、後述する候補ID更新判定処理を実行する。候補ID更新部204は、後述する候補ID更新処理を実行する。
連続候補データ判別部201は、入力となる全抽出候補データ列に対して、入力判別条件式の内1つまたは複数の判別条件式を計算することによって、連続データ判別処理を行う。不連続候補データ判別部202は、各抽出候補データ列を示すインデックス情報が含まれる候補IDリストを受け取り、この候補IDリストで指定される抽出候補データ列のみに対して、入力判別条件式の内1つまたは複数の条件式を計算することによって、不連続データ判別処理を行う。候補ID更新判定部203は、連続候補データ判別部201が行った判別結果に基づいて、候補IDリストに含まれる候補IDを更新するかどうかを判断する。候補ID更新部204は、候補ID更新判定部203が候補IDリストを更新すると判断した場合、および不連続候補データ判別部202の実行後に、候補IDリストの更新を行う。
なお、記憶部102(図1)は、候補データ判別条件式情報500と候補ID更新判定閾値情報600とを保持している。
また、図3は、データ処理装置100の動作の概要を例示するフローチャートである。なお、図3に例示するフローチャートにおける各処理の実行順序は、処理結果に影響を与えない範囲で変更されてもよい。各ステップにおける処理については、後述する。
図4は、本実施形態におけるデータ処理装置100における、記憶部102に記憶されたデータの一部を例示する図である。
図4に例示するように、記憶部102は、入力データ配列401、全候補数402、現候補数403、候補ID配列404、候補フラグ配列405、及び候補ID更新済フラグ406を保持する。入力データ配列401、候補ID配列404、及び候補フラグ配列405は、それぞれ連続した記憶領域に配置される。連続した記憶領域は、記憶領域を構成するアドレス等が物理的に連続した記憶領域であってもよく、論理的に連続した記憶領域であってもよい。
入力データ配列401は、m個(mは自然数)のデータの集合(入力データ)を保持する配列である。以下、入力データ配列401を「入力データ配列d」と表し、入力データ配列401のi番目の要素(iは0以上の整数)をd[i]と表す場合がある。
全候補数402および現候補数403は、それぞれ順に、抽出候補の総数および任意の参照時点での抽出候補の数である。全候補数402がn(nは自然数)の場合、データ処理の開始時には、全候補数402および現候補数403には、nが入っている。
候補ID配列404は、最大n個の抽出候補を示す候補IDを保持する配列である。以下、候補ID配列404を「候補ID配列p」と表し、候補ID配列404のi番目の要素(iは0以上の整数)をp[i]と表す場合がある。なお、データ処理の開始時には、候補ID配列pは、p[i]=iとなる値が入っている。
候補フラグ配列405は、候補ID配列404と同サイズの配列である。以下、候補フラグ配列405を「候補ID配列q」と表し、候補フラグ配列405のi番目の要素(iは0以上の整数)をq[i]と表す場合がある。候補フラグの要素q[i]は、候補ID配列404の要素p[i]が示す候補IDが、判別処理の結果、抽出候補であるかどうかを示す、trueもしくはfalseをとり、順に、“候補である”、もしくは、“候補ではない”を意味する。データ処理の開始時には、候補フラグ配列405の全要素には、trueが入っている。
現在候補数403は、n候補である。
候補ID更新済フラグ406は、候補ID配列405が初期状態から更新されたかどうかを示すフラグである。候補ID更新済フラグ406の値は、trueもしくはfalseをとり、順に、“更新済”、もしくは、“未更新”を意味する。データ処理の開始時には、候補ID更新済フラグ406はfalse(未更新)が入っている。
図5及び図6は、それぞれ、候補データ判別条件式情報500及び候補ID更新判定閾値情報600の一例を示す図である。
図5に示されるように、候補データ判別条件式情報500は、判別条件式数L(Lは自然数)と、L個の判別条件式C(0)、C(1)、・・・、C(L−1)とから成る。それぞれの判別条件式C(0)〜C(L−1)は、自然数xを引数として算出される評価値S(x)と、S(x)と閾値との大小関係の比較を行う条件式T(y)とから成る。なお、評価値S(x)の自然数の引数xは、候補IDや、候補IDをインデックスとしてデータ配列dを参照した際の参照値などを与えることを想定している。本例では、候補IDを引数として与える場合を例に説明する。
図6に示されるように、候補ID更新判定閾値情報600は、0以上1未満の小数値である候補ID更新判定閾値から成る。
次に、図3のフローチャートを参照しながら、データ処理装置100の動作について説明する。なお、以下においては、図5及び図6に示す、候補データ判別条件式情報500及び候補ID更新判定閾値情報600を具体例として用いて説明する。
図3のフローチャートで示す通り、データ処理装置100の演算処理部101は、iが0から順に、L−1(Lは判別条件式数)までL回の反復処理を行う(ステップS301、S302)。
反復処理の初めに、演算処理部101は、候補ID更新済フラグ406を参照する(ステップS303)。候補IDが更新済みではない場合(ステップS303の「更新されていない」)、演算処理部101の連続候補データ判別部201は、連続候補データ判別処理を実行する(ステップS304)。候補IDが更新済みの場合(ステップS303の「更新されている」)、演算処理部101の不連続候補データ判別部202は、不連続候補データ判別処理を実行する(ステップS305)。
連続候補データ判別部201での連続候補データ判別処理の実行後、演算処理部101の候補ID更新判定部203は、候補ID更新判定処理を実行することにより、候補IDを更新するかどうかの判定を行う(ステップS306)。更新すると判定した場合(ステップS306の「更新する」)、演算処理部101の候補ID更新部204は、候補ID更新処理を実行することにより、候補IDを更新し(ステップS307)、反復処理の1回を完了する(ステップS308)。更新しないと判定した場合(ステップS306の「更新しない」)、演算処理部101は、候補IDを更新せずに反復処理の1回を完了する(ステップS308)。
一方、不連続候補データ判別部202での不連続候補データ判別処理の実行後、演算処理部101の候補ID更新判定部203での候補ID更新判定処理を行わずに、候補ID更新部204は、候補ID更新処理を実行して、候補IDを更新し(ステップS307)、反復処理の1回を完了する(ステップS308)。
L回の反復処理が終わったときには(ステップS302のNO)、現候補数403には全ての判別式を満たす候補の数、また、候補ID配列404の先頭から現候補数要素には、全ての判別式を満たした候補のIDが入っている。
以下、演算処理部101の連続候補データ判別部201で実行される連続候補データ判別処理、候補ID更新判定部203で実行される候補ID更新判定処理、候補ID更新部204で実行される候補ID更新処理、および不連続候補データ判別部202で実行される不連続候補データ判別処理について説明する。
図7は、演算処理部101の連続候補データ判別部201で実行される連続候補データ判別処理を示すプログラムの一例である。
連続候補データ判別部201は、現候補数個の抽出候補に対して、i番目の判別条件式C(i)を満たすかどうかの判別を行う。このとき、連続候補データ判別部201は、全ての抽出候補に対して以下の処理を行う。
まず、連続候補データ判別部201は、候補ID(CandidateID)を取得する。連続候補データ判別処理を実行している間は、候補ID配列404が更新されていないため、連続候補データ判別部201は、候補ID配列404を参照することなく、ループのインデックスjが候補IDとなる。連続候補データ判別部201は、候補IDを引数として、判別条件式のC(i)の評価値を計算する。そして、連続候補データ判別部201は、評価値が判別条件式C(i)の条件式を満たすかどうかの判定を行う。閾値を満たさない場合、連続候補データ判別部201は、候補フラグ配列405のj番目の要素q[j]を falseに更新する。なお、これらの処理は、異なる抽出候補に対して独立した処理であるため、連続候補データ判別部201は、連続候補データ判別処理を並列に実行することができる。
図8は、演算処理部101の候補ID更新判定部203で実行される候補ID更新判定処理を示すプログラムの一例である。
候補ID更新判定部203は、候補フラグ配列405を参照することで、現時点での抽出候補として残っている残存候補数を数え上げる(0行目から6行目)。そして、候補ID更新判定部203は、全候補数のうちの残存候補数の割合である残存率を算出する(9行目)。残存率が候補ID更新判定閾値を下回った場合、もしくは、最後の判別条件式を用いた判別であった場合、候補ID更新判定部203は、候補ID更新をすると判定する(10行目から12行目)。そうでない場合、候補ID更新判定部203は、候補IDを更新しないと判定する。
図9は、演算処理部101の候補ID更新部204で実行される候補ID更新処理を示すプログラムの一例である。
候補ID更新部204は、候補ID配列404と候補フラグ配列405との再構成を行う。候補ID更新部204は、現候補数個分の候補ID配列404と候補フラグ配列405とを参照し、抽出候補として残っている候補の候補ID(q[i] が trueであるようなp[i])のみを、候補ID配列pに先頭から代入していくことで、再構成を行う。そして、候補ID更新部204は、最後に、現候補数を残存候補数で更新する。
図10は、候補ID更新前後の、記憶部102の現候補数403、候補ID配列404、および候補フラグ配列405の様子を示した図である。
候補フラグ配列405のTはtrueを、Fはfalseを示す。候補ID更新前にて、候補フラグ配列405がtrueであるような要素に対応する、候補ID配列404の要素(0、1、4、…)のみが、候補ID更新後の候補ID配列に順に保存される。そして、それらの個数(n’)が現候補数403に入り、候補フラグ配列405の先頭n’個の要素にはtrueが入る。候補ID配列404および候補フラグ配列405の(n’+1)以降の要素は、以降利用しないので、どのような値が入っていてもよい。
図11は、演算処理部101の不連続候補データ判別部202で実行される不連続候補データ判別処理を示すプログラムの一例である。
不連続候補データ判別部202は、現候補数個の抽出候補に対して、i番目の判別条件式C(i)を満たすかどうかの判別を行う。
不連続候補データ判別部202は、連続候補データ判別部201での連続候補データ判別処理とほぼ同じような処理をするが、唯一の違いは、候補ID(CandidateID)の取得方法である。
詳述すると、連続候補データ判別部201では、ループのインデックスjが候補IDとなっていた。これに対して、不連続候補データ判別部202では、ループのインデックスjが示す候補ID配列の要素p[j]が候補IDとなる。換言すれば、不連続候補データ判別部202は、抽出候補データを示すインデックス情報である候補IDリストを受け取る。
それ以外の処理は、連続候補データ判別処理と同等である。また、これらの処理は、連続候補データ判別部201の連続データ判別処理と同様に、異なる抽出候補に対して独立した処理であるため、不連続候補データ判別部202は、不連続データ判別処理を並列に実行することができる。
[効果の説明]
次に、本第1の実施形態の効果について説明する。
先に述べたとおり、連続候補データ判別処理や不連続候補データ判別処理は、異なる抽出候補に対して独立した処理であるため、連続候補データ判別部201や不連続候補データ判別部202はそれらの処理を並列に実行することができる。
また、連続候補データ判別部201が連続候補データ判別処理を並列に実行する場合、評価値計算の際の記憶域102の参照が連続(シーケンシャルアクセス)、もしくは、固定値要素とび(ストライドアクセス)になるため、効率的なメモリアクセスをすることができる。一方で、不連続候補データ判別部202が不連続候補データ判別処理を並列に実行する場合は、評価値計算の際の記憶域102の参照が、候補IDをインデックスとした参照(ランダムアクセス、リストアクセス)となるため、メモリアクセス性能が並列処理の効率性を損なう可能性がある。候補IDを更新しなければ、全判別式に対して、連続候補データ判別部201は連続候補データ判別処理で処理することができる。しかしながら、その場合は、抽出候補でない候補(候補フラグがfalseになった候補)に対しても、判別処理を施すことになり、不要な計算を行うことになる。
そこで、本発明の第1の実施形態では、連続候補データ判別処理と不連続候補データ判別処理とのどちらを実施するかどうかを切り替えられるようにし、各判別式の判別処理実行後に、次の判別式の判別処理の実行を動的判断させることで、より効率のよい並列判別処理を選択・実行している。
[第2の実施形態]
上記第1の実施形態の例では、図6に示されるように、候補ID更新判定閾値情報600を1つの候補ID更新判定閾値とした。
これに対して、本発明の第2の実施形態に係るデータ処理装置では、図12に示されるように、候補ID更新判定閾値情報600Aとして、複数の(例えば、判別条件式数個の)候補ID更新判定閾値を有する、候補ID更新判定閾値リストを用いる。
そして、本発明の第2の実施形態に係るデータ処理装置では、残りの判別条件式の数に応じて、候補ID更新判定部203は、候補ID更新判定処理で用いる候補ID更新判定閾値を変更するという方法を採用する。
[第3の実施形態]
また、上記第1の実施形態の例では、図6に示されるように、候補ID更新判定閾値情報600として、候補ID更新判定閾値を入力として与えるものとした。
これに対して、本発明の第3の実施形態に係るデータ処理装置では、候補ID更新判定部203が、候補ID更新判定処理の中で候補ID更新判定閾値を計算で求めるという構成をとっている。
例えば、図13で示すように候補ID更新判定閾値情報600Bとして、プロセッサ別の連続候補データ判別コスト係数、不連続候補データ判別コスト係数を与え、それにより、候補ID更新判定の閾値を計算で求めるという構成を例に挙げる。
例えば、プロセッサAの場合、連続候補データ判別コスト係数が1.0であり、不連続候補データ判別コスト係数が3.0である。これは、連続候補データ判別部201の連続候補データ判別処理での抽出候補1要素あたりの処理コストが1.0であり、不連続候補データ判別部202の不連続候補データ判別処理での抽出候補1要素あたりの処理コストが3.0であることを意味する。
全候補数をn、残候補数がzとする。この場合、仮に候補ID更新部204で候補ID更新処理を実行しなかった場合は、判別処理1回の総コストは 1.0×nである。何故なら、次の連続候補データ判別部201の連続候補データ判別処理では全候補に対して処理を行うのからである。これに対して、候補ID更新部204で候補ID更新処理を実行した場合の総コストは、3.0×zである。したがって、候補ID更新判定部203の候補ID更新判定処理では、それぞれの総コストを比較し、コストが小さくなる方を選択する。
すなわち、候補ID更新判定部203は、連続候補データ判別部201が行った判別の結果に基づいて、残存候補数を数え上げ、数え上げた残存候補数と不連続候補データ判別コスト係数とから不連続候補データ判別コストを算出するとともに、全抽出候補数と連続候補データ判別コスト係数とから連続候補データ判別コストを算出し、不連続候補データ判別コストの方が連続候補データ判別コストより小さくなるときに、候補IDを更新すると判定する。
[第4の実施形態]
上記の候補ID更新判定閾値情報600Bは、入力データとしてデータ処理装置100の利用者が与えてもよいが、データ処理装置100の中で、動的に更新してもよい。
例えば、本発明の第4の実施形態に係るデータ処理装置では、図14に示されるように、演算処理部101Aがコスト計測部205を更に有する。コスト計測部205は、上記プロセッサ別の候補データ判別コスト係数、不連続候補データ判別コスト係数を、複数の抽出処理を進める中で更新することができる。
詳述すると、コスト計測部205は、処理にかかった実行時間や電力、通信量、記憶域のサイズといったコスト情報を計測する。コスト計測部205は、連続候補データ判別部201および不連続候補データ判別部202の実行にかかったコストを計測して、上記プロセッサ別の候補データ判別コスト係数、不連続候補データ判別コスト係数を更新する。
尚、コスト計測部205は、上記コストを計測して、上記プロセッサ別の候補ID更新判定閾値を更新してもよい。
なお、本発明は、上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、複数の構成要素の適宜な組合せにより種々の発明を形成できる。
尚、データ処理装置の各部は、ハードウェアとソフトウェアとの組み合わせを用いて実現すればよい。ハードウェアとソフトウェアとを組み合わせた形態では、RAM(random access memory)にデータ処理プログラムが展開され、該データ処理プログラムに基づいて制御部(CPU(central processing unit))等のハードウェアを動作させることによって、各部を各種手段として実現する。また、該データ処理プログラムは、記録媒体に記録されて頒布されても良い。当該記録媒体に記録されたデータ処理プログラムは、有線、無線、又は記録媒体そのものを介して、メモリに読込まれ、制御部等を動作させる。尚、記録媒体を例示すれば、オプティカルディスクや磁気ディスク、半導体メモリ装置、ハードディスクなどが挙げられる。
上記実施の形態を別の表現で説明すれば、データ処理装置として動作させるコンピュータを、RAMに展開されたデータ処理プログラムに基づき、連続候補データ判別部201、不連続候補データ判別部202、候補ID更新判定部203、候補ID更新部204、およびコスト計測部205として動作させることで実現することが可能である。
また、本発明の具体的な構成は前述の実施の形態に限られるものではなく、この発明の要旨を逸脱しない範囲の変更があってもこの発明に含まれる。
以上、実施の形態を参照して本願発明を説明したが、本願発明は上記実施の形態に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
本発明は、GPGPU(General Purpose computing on Graphics Processing Unit)やベクトル型命令を有するCPUで、抽出計算を並列に効率的に処理するデータ処理装置に適用可能である。
100 データ処理装置
101、101A 演算処理部(プロセッサ)
102 記憶部(メモリ)
103 入力部
201 連続候補データ判別部
202 不連続候補データ判別部
203 候補ID更新判定部
204 候補ID更新部
205 コスト計測部
500 候補データ判別条件式情報
600、600A、600B 候補ID更新判定閾値情報

Claims (9)

  1. 処理対象である複数の抽出候補データ列に対して、入力判別条件式の内1つまたは複数の判別条件式を計算することによって、連続データ判別処理を行う連続候補データ判別手段と、
    前記各抽出候補データ列を示すインデックス情報が含まれる候補IDリストで指定される抽出候補データ列に対して、入力判別条件式の内1つまたは複数の条件式を計算することによって、不連続データ判別処理を行う不連続候補データ判別手段と、
    前記連続候補データ判別手段が行った判別結果に基づいて、前記候補IDリストに含まれる候補IDを更新するかどうかを判断する候補ID更新判定手段と、
    前記候補ID更新判定手段が前記候補IDリストを更新すると判断した場合、および前記不連続候補データ判別手段の実行後に、前記候補IDリストの更新を行う候補ID更新手段と、を備え、
    前記連続候補データ判別手段、前記不連続候補データ判別手段、前記候補ID更新判定手段、および前記候補ID更新手段による処理を複数回反復処理することによって、前記複数の抽出候補データ列のうち、前記候補ID更新手段によって更新された候補IDに対応する候補データが抽出されることを特徴とするデータ処理装置。
  2. 当該データ処理装置は、候補ID更新判定閾値を保持し、
    前記候補ID更新判定手段は、前記連続候補データ判別手段が行った判別の結果、全抽出候補数のうちの残存候補数の割合が、前記候補ID更新判定閾値を下回ったときに、前記候補IDリストを更新すると判定する、
    ことを特徴とする、請求項1に記載のデータ処理装置。
  3. 当該データ処理装置が保持する前記候補ID更新判定閾値は、データ処理装置の構成に応じた複数の値であり、
    前記候補ID更新判定手段は、当該データ処理装置の構成に応じた、前記候補ID更新判定閾値を選択して、更新判定処理を行う、
    ことを特徴とする、請求項2に記載のデータ処理装置。
  4. 前記連続候補データ判別手段および前記不連続候補データ判別手段の実行にかかったコストを計測して、前記候補ID更新判定閾値を更新するコスト計測手段を更に有する、
    ことを特徴とする、請求項2または3に記載のデータ処理装置。
  5. 当該データ処理装置は、連続候補データ判別コスト係数および不連続候補データ判別コスト係数を保持し、
    前記候補ID更新判定手段は、前記連続候補データ判別手段が行った判別の結果に基づいて、残存候補数を数え上げ、数え上げた残存候補数と前記不連続候補データ判別コスト係数とから不連続候補データ判別コストを算出するとともに、全抽出候補数と前記連続候補データ判別コスト係数とから連続候補データ判別コストを算出し、前記不連続候補データ判別コストの方が前記連続候補データ判別コストより小さくなるときに、前記候補IDリストを更新すると判定する、
    ことを特徴とする、請求項1に記載のデータ処理装置。
  6. 当該データ処理装置が保持する前記連続候補データ判別コスト係数および不連続候補データ判別コスト係数は、データ処理装置の構成に応じた複数の値であり、
    前記候補ID更新判定手段は、当該データ処理装置の構成に応じた、前記連続候補データ判別コスト係数および不連続候補データ判別コスト係数を選択して、更新判定処理を行う、
    ことを特徴とする、請求項5に記載のデータ処理装置。
  7. 前記連続候補データ判別手段および前記不連続候補データ判別手段の実行にかかったコストを計測して、前記連続候補データ判別コスト係数および不連続候補データ判別コスト係数を更新するコスト計測手段を更に有する、
    ことを特徴とする、請求項5または6に記載のデータ処理装置。
  8. データ処理装置が、複数の抽出候補データ列および複数の判別条件式情報を入力し、抽出候補データ列のうち、全ての判別条件式を満たすような候補データのみを抽出するようなデータ処理方法において、
    処理対象である複数の抽出候補データ列に対して、入力判別条件式の内1つまたは複数の判別条件式を計算することによって、連続データ判別処理を行い、
    前記判別条件式を用いた判定の結果に基づいて、各抽出候補データ列を示すインデックス情報が含まれる候補IDリストに含まれる更新IDを更新するかどうかを判断し、
    前記候補IDリストを更新すると判断しない場合は、次の判別条件式に対しては、前記の判別条件式を用いた条件判定と、前記候補ID更新判定を行い、
    前記候補IDリストを更新すると判断した場合は、前記候補IDリストの更新を行い、
    更新された更新候補IDリストで指定される抽出候補データ列に対して、入力判別条件式の内1つまたは複数の条件式を計算することによって、不連続データ判別処理を行い、
    上述した処理を複数回反復処理することによって、更新された候補IDに対応する候補データが抽出されるデータ処理方法。
  9. コンピュータに、複数の抽出候補データ列および複数の判別条件式情報を入力し、抽出候補データ列のうち、全ての判別条件式を満たすような候補データのみを抽出させるデータ処理プログラムであって、
    処理対象である複数の抽出候補データ列に対して、入力判別条件式の内1つまたは複数の判別条件式を計算することによって、連続データ判別処理を行う連続候補データ判別処理と、
    各抽出候補データ列を示すインデックス情報が含まれる候補IDリストで指定される抽出候補データ列に対して、入力判別条件式の内1つまたは複数の条件式を計算することによって、不連続データ判別処理を行う不連続候補データ判別処理と、
    前記連続候補データ判別処理が行った判別結果に基づいて、前記候補IDリストに含まれる候補IDを更新するかどうかを判断する候補ID更新判定処理と、
    前記候補ID更新判定処理が前記候補IDリストを更新すると判断した場合と、前記不連続候補データ判別処理の実行後に、前記候補IDリストの更新を行う候補ID更新処理と、
    を前記コンピュータに実行させ、
    前記連続候補データ判別処理、前記不連続候補データ判別処理、前記候補ID更新判定処理、および前記候補ID更新処理を複数回反復処理することによって、更新された候補IDに対応する候補データを抽出させるデータ処理プログラム。
JP2016116161A 2016-06-10 2016-06-10 データ処理装置、データ処理方法、およびデータ処理プログラム Active JP6748372B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2016116161A JP6748372B2 (ja) 2016-06-10 2016-06-10 データ処理装置、データ処理方法、およびデータ処理プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016116161A JP6748372B2 (ja) 2016-06-10 2016-06-10 データ処理装置、データ処理方法、およびデータ処理プログラム

Publications (2)

Publication Number Publication Date
JP2017220149A JP2017220149A (ja) 2017-12-14
JP6748372B2 true JP6748372B2 (ja) 2020-09-02

Family

ID=60656388

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016116161A Active JP6748372B2 (ja) 2016-06-10 2016-06-10 データ処理装置、データ処理方法、およびデータ処理プログラム

Country Status (1)

Country Link
JP (1) JP6748372B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112540727A (zh) * 2020-12-04 2021-03-23 北京百度网讯科技有限公司 数据管理方法、装置、计算设备、存储介质和云平台

Also Published As

Publication number Publication date
JP2017220149A (ja) 2017-12-14

Similar Documents

Publication Publication Date Title
JP6894058B2 (ja) 危険アドレス識別方法及びコンピュータ可読記憶媒体、並びに電子装置
JP5299272B2 (ja) 分析プログラムおよび分析装置
US10796244B2 (en) Method and apparatus for labeling training samples
JP6954003B2 (ja) データベースのための畳み込みニューラルネットワークモデルの決定装置及び決定方法
JP6188976B2 (ja) 画像に含まれるテキストを検出する方法、装置及びコンピュータ読み取り可能な記録媒体
JP7296715B2 (ja) 学習装置、処理装置、ニューラルネットワーク、学習方法、及びプログラム
KR20170141247A (ko) 정보 추천 방법 및 장치
US20170140273A1 (en) System and method for automatic selection of deep learning architecture
US11562294B2 (en) Apparatus and method for analyzing time-series data based on machine learning
JP2017004123A (ja) 判定装置、判定方法および判定プログラム
CN109685805B (zh) 一种图像分割方法及装置
US20150067644A1 (en) Method and apparatus for minimum cost cycle removal from a directed graph
TWI570554B (zh) 軟體測試裝置、軟體測試方法及其電腦程式產品
JP6860084B2 (ja) 情報処理装置、情報処理方法及びプログラム
JP6748372B2 (ja) データ処理装置、データ処理方法、およびデータ処理プログラム
Pashaei et al. A combined SVM and Markov model approach for splice site identification
CN110728359B (zh) 搜索模型结构的方法、装置、设备和存储介质
JP5135803B2 (ja) 最適パラメータ探索プログラム、最適パラメータ探索装置および最適パラメータ探索方法
JP6324264B2 (ja) 三値内積演算回路、三値内積演算処理プログラム、及び、三値内積演算回路による演算処理方法
US20180039863A1 (en) Neural network classification through decomposition
JP6659618B2 (ja) 分析装置、分析方法及び分析プログラム
JP6988991B2 (ja) 意味推定システム、方法およびプログラム
US20170270243A1 (en) Method for finding associated positions of bases of a read on a reference genome
CN103793623B (zh) 碱基序列重组系统及方法
JP6631516B2 (ja) 情報処理装置、ベクトルデータ処理方法、及び、プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190509

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200325

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200603

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200622

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20200708

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200721

R150 Certificate of patent or registration of utility model

Ref document number: 6748372

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150