JP2021068004A - Identification assistance data generation technique and identification information extraction technique - Google Patents

Identification assistance data generation technique and identification information extraction technique Download PDF

Info

Publication number
JP2021068004A
JP2021068004A JP2019190852A JP2019190852A JP2021068004A JP 2021068004 A JP2021068004 A JP 2021068004A JP 2019190852 A JP2019190852 A JP 2019190852A JP 2019190852 A JP2019190852 A JP 2019190852A JP 2021068004 A JP2021068004 A JP 2021068004A
Authority
JP
Japan
Prior art keywords
vector
objects
error correction
hypersurface
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.)
Granted
Application number
JP2019190852A
Other languages
Japanese (ja)
Other versions
JP7416400B2 (en
Inventor
和邦 古原
Kazukuni Kohara
和邦 古原
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.)
National Institute of Advanced Industrial Science and Technology AIST
Original Assignee
National Institute of Advanced Industrial Science and Technology AIST
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 National Institute of Advanced Industrial Science and Technology AIST filed Critical National Institute of Advanced Industrial Science and Technology AIST
Priority to JP2019190852A priority Critical patent/JP7416400B2/en
Publication of JP2021068004A publication Critical patent/JP2021068004A/en
Application granted granted Critical
Publication of JP7416400B2 publication Critical patent/JP7416400B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

To certainly extract unique data from a target even in a situation where an ID or the like is not assigned to the target.SOLUTION: A first phase includes the steps of: obtaining an input vector representing each of a plurality of targets; and dividing a space including the input vector such that the input vector representing each of the plurality of targets is included in different sub-spaces and generating a plurality of hyper-surfaces used to generate a unique vector that identifies each of the plurality of targets. A second phase includes the steps of: obtaining a vector representing a specific target included in the plurality of targets; and evaluating the vector representing the specific target by dividing the space including the vector such that each of the plurality of targets is included in the different sub-spaces and using the plurality of hyper-surfaces held in advance, to generate a vector that identifies the specific target.SELECTED DRAWING: Figure 1

Description

本発明は、複数の対象からユニークな識別情報を抽出するための技術に関する。 The present invention relates to a technique for extracting unique identification information from a plurality of objects.

個体その他の対象から、対象毎に固有の固定されたディジタル値(0又は1といった離散値。なお、複数のディジタル値の系列を含めベクトルと呼ぶ。なお、その特性から固定値とも呼ぶ)を抽出するために、一般的には、対象特有の何らかのアナログ値を読み出して、当該アナログ値に対して設定されている閾値との比較によって、0又は1を決定する。 Extract a fixed digital value (discrete value such as 0 or 1. A vector including a series of multiple digital values. Also called a fixed value from its characteristics) unique to each object from an individual or other object. In general, 0 or 1 is determined by reading out some object-specific analog value and comparing it with a threshold set for the analog value.

例えば、0以上1以下のアナログ値に対して閾値0.5が設定されていると仮定する。この場合、閾値0.5付近のアナログ値が測定される特定の対象について、ノイズがプラスである場合には閾値0.5以上のアナログ値が測定されて「1」が抽出されるが、ノイズがマイナスである場合には閾値0.5未満のアナログ値が測定されて「0」が抽出されるようになってしまう。このような場合には、固有の固定されたディジタル値が得られない。同様に、複数の対象について、「0」又は「1」の一方のみに偏った変換がなされても、「固有の」固定されたディジタル値を得られないので、避けるべきである。 For example, it is assumed that a threshold value of 0.5 is set for an analog value of 0 or more and 1 or less. In this case, for a specific target for which an analog value near the threshold value of 0.5 is measured, if the noise is positive, an analog value having a threshold value of 0.5 or more is measured and "1" is extracted. If is negative, an analog value less than the threshold value of 0.5 is measured and "0" is extracted. In such cases, a unique fixed digital value cannot be obtained. Similarly, for a plurality of objects, a conversion biased to only one of "0" or "1" should be avoided because a "unique" fixed digital value cannot be obtained.

このような状況において固有の固定されたディジタル値を得るための技術としては、以下のようなものがある。
(1)何度も読み取りを行い、多数決などの方法により固定値を決定する技術(例えば、特許文献1及び2など)
(2)固定値を抽出する対象の読取りパターン毎に個別の補助データ(ヘルパーデータ)を事前に計算、保持しておき、誤り訂正時にその情報を使う技術。ヘルパーデータとしては、抽出パターンにランダムな符号語を排他的論理和したものや、抽出パターンを誤り訂正時に使用するシンドロームに変換したものなどがあり、これらの方法はファジー抽出器(Fuzzy Extractor)とも呼ばれる。(例えば非特許文献1)
(3)ノイズの多い軸や値、対象全体を通して読み取った値が偏っている軸や値を使わないようにする技術(例えば特許文献3)
Techniques for obtaining a unique fixed digital value in such a situation include the following.
(1) A technique for determining a fixed value by reading many times and determining a fixed value by a method such as majority voting (for example, Patent Documents 1 and 2).
(2) A technique in which individual auxiliary data (helper data) is calculated and held in advance for each read pattern for which a fixed value is to be extracted, and that information is used when correcting errors. Helper data includes the exclusive OR of random codewords in the extraction pattern and the conversion of the extraction pattern into the syndrome used for error correction. These methods are also called Fuzzy Extractor. be called. (For example, Non-Patent Document 1)
(3) A technique for avoiding the use of noisy axes and values, and axes and values in which the values read throughout the object are biased (for example, Patent Document 3).

(1)の技術は、読取り時に一時的に生じるノイズを訂正するには有効であるが、パターンの変形、傷、劣化などにより恒久的に加わったノイズは訂正できない。また、読取り時に一時的に生じるノイズに対しても、読み取り値の平均がノイズの分散以上にしきい値から離れていなければ有効な対策とはならない。 The technique (1) is effective for correcting noise temporarily generated during reading, but cannot correct noise permanently added due to pattern deformation, scratches, deterioration, or the like. Further, even for noise that temporarily occurs during reading, if the average of the reading values is not farther from the threshold value than the dispersion of noise, it is not an effective countermeasure.

(2)の技術は、ヘルパーデータによる補正を行うが、この補正値は読み取り対象毎に異なるため、読み取り対象のIDが事前に分かっている場合など、読み取り対象が事前に特定できており、その対象が本物であるか否かを検証する際には有効な方法となる。しかし、対象に対応する補助データが分からない状態から、そのIDや暗号鍵などの固定値を抽出する場合には使えない。なお、全ての補助データを試すという方法も可能であるが、識別に要する時間が、対象の候補数に比例して長くなるという問題がある。 The technique (2) corrects with helper data, but since this correction value differs for each read target, the read target can be specified in advance, such as when the ID of the read target is known in advance. It is an effective method for verifying whether or not the object is genuine. However, it cannot be used when extracting a fixed value such as an ID or an encryption key from a state in which the auxiliary data corresponding to the target is unknown. Although it is possible to try all the auxiliary data, there is a problem that the time required for identification becomes longer in proportion to the number of target candidates.

(3)の技術は、読取り対象毎に使わない軸を決める場合、対象にIDを付けるか、固定値抽出時に全数探索等を行わなければならない問題がある。読取り対象毎ではなく、全ての対象で使わない軸を決める場合、対象の数が増えると全ての対象でエラーとなる軸、または、全ての対象でエラーが小さくなる軸の割合が小さくなるため、いくつかの対象に対してはエラーが小さくなっているにも関わらずその軸を使わなかったり、いくつかの対象に対してはエラーが大きくなっているにも関わらずその軸を残すことになりエラーを取り切れなくなるという問題がある。 The technique (3) has a problem that when determining an axis to be used for each read target, it is necessary to assign an ID to the target or perform an 100% search or the like at the time of extracting a fixed value. When deciding which axes are not used for all targets, not for each read target, as the number of targets increases, the ratio of axes that cause an error for all targets or axes that cause an error for all targets decreases. For some targets, the error is small but the axis is not used, or for some targets, the error is large but the axis is left. There is a problem that the error cannot be removed.

その他、テンプレートとのマッチングを行う方法や、電子透かしを用いる方法など様々な技術が存在しているが、それらは、多数の対象にID等が付いていない状況や電子透かしを埋め込むために対象を変更したり加工したりできない状況において、対象そのものから固定値を確実に抽出するのには、必ずしも有効ではない。 In addition, there are various technologies such as a method of matching with a template and a method of using a digital watermark, but these are situations in which a large number of targets do not have an ID, etc., or targets for embedding a digital watermark. It is not always effective to reliably extract a fixed value from the object itself in a situation where it cannot be changed or processed.

特開2018−175762号公報Japanese Unexamined Patent Publication No. 2018-175762 特開平11−288465号公報Japanese Unexamined Patent Publication No. 11-288465 日本特許第6305579号公報Japanese Patent No. 6305579

Y. Dodis, R. Ostrovsky, L. Reyzin, A. Smith. Fuzzy Extractors: How to Generate Strong Keys from Biometrics and Other Noisy Data. SIAM J. Comput. 38(1): 97-139 (2008)Y. Dodis, R. Ostrovsky, L. Reyzin, A. Smith. Fuzzy Extractors: How to Generate Strong Keys from Biometrics and Other Noisy Data. SIAM J. Comput. 38 (1): 97-139 (2008)

従って、本発明の目的は、一側面として、対象から固有のデータを確実に抽出できるようにするための新規な技術を提供することである。 Therefore, an object of the present invention is, as one aspect, to provide a novel technique for reliably extracting unique data from an object.

本発明の第1の態様に係る情報処理方法は、(A)複数の対象の各々を表す入力ベクトルを取得するステップと、(B)入力ベクトルを包含する空間を複数の対象の各々を表す入力ベクトルが異なる部分空間に含まれるように分割し、且つ複数の対象の各々を識別するユニークなベクトルを生成するのに用いられる複数の超曲面を生成するステップとを含む。 The information processing method according to the first aspect of the present invention includes (A) a step of acquiring an input vector representing each of a plurality of objects, and (B) an input representing each of a plurality of objects in a space including the input vector. It includes a step of dividing the vector so that it is contained in different subspaces and generating a plurality of hypersurfaces used to generate a unique vector that identifies each of the plurality of objects.

本発明の第2の態様に係る情報処理方法は、(C)複数の対象に含まれる特定の対象を表すベクトルを取得するステップと、(D)上記ベクトルを包含する空間を複数の対象の各々が異なる部分空間に含まれるように分割し且つ予め保持している複数の超曲面を用いて、特定の対象を表すベクトルを評価することで、特定の対象を識別するベクトルを生成するステップとを含む。 The information processing method according to the second aspect of the present invention includes (C) a step of acquiring a vector representing a specific object included in the plurality of objects, and (D) each of the plurality of objects in a space including the above vector. A step of generating a vector that identifies a specific object by evaluating a vector that represents a specific object using a plurality of hypersurfaces that are divided and held in advance so that they are contained in different subspaces. Including.

一側面によれば、対象から固有のデータを確実に抽出できるようになる。 According to one aspect, it is possible to reliably extract unique data from the target.

図1は、第1の実施の形態におけるシステムの概要を示す図である。FIG. 1 is a diagram showing an outline of the system according to the first embodiment. 図2は、第1の実施の形態に係る情報処理装置の処理フローを示す図である。FIG. 2 is a diagram showing a processing flow of the information processing apparatus according to the first embodiment. 図3は、二次元空間の一例を示す図である。FIG. 3 is a diagram showing an example of a two-dimensional space. 図4は、超曲面の一例を示す図である。FIG. 4 is a diagram showing an example of a hypersurface surface. 図5は、超曲面生成処理の処理フローを示す図である。FIG. 5 is a diagram showing a processing flow of the hypersurface generation process. 図6は、超曲面の一例を示す図である。FIG. 6 is a diagram showing an example of a hypersurface surface. 図7は、度数偏り調整処理の処理フローを示す図である。FIG. 7 is a diagram showing a processing flow of the frequency bias adjustment processing. 図8は、超曲面の一例を示す図である。FIG. 8 is a diagram showing an example of a hypersurface surface. 図9は、類似性調整処理の処理フローを示す図である。FIG. 9 is a diagram showing a processing flow of the similarity adjustment processing. 図10は、超曲面の一例を示す図である。FIG. 10 is a diagram showing an example of a hypersurface surface. 図11は、距離調整処理の処理フローを示す図である。FIG. 11 is a diagram showing a processing flow of the distance adjustment process. 図12は、超曲面生成処理の処理フローを示す図である。FIG. 12 is a diagram showing a processing flow of the hypersurface generation process. 図13は、適応的距離調整処理の処理フローを示す図である。FIG. 13 is a diagram showing a processing flow of adaptive distance adjustment processing. 図14は、目標値の設定について説明するための図である。FIG. 14 is a diagram for explaining the setting of the target value. 図15は、類似性再判定処理の処理フローを示す図である。FIG. 15 is a diagram showing a processing flow of the similarity re-determination process. 図16は、適切な超曲面を用いて評価された対象の位置を示す図である。FIG. 16 is a diagram showing the positions of objects evaluated using an appropriate hypersurface surface. 図17は、第1の実施の形態に係る検出装置の処理フローを示す図である。FIG. 17 is a diagram showing a processing flow of the detection device according to the first embodiment. 図18は、第2乃至4の実施の形態におけるシステムの概要を示す図である。FIG. 18 is a diagram showing an outline of the system according to the second to fourth embodiments. 図19は、第2の実施の形態における誤り訂正データ生成処理の処理フローを示す図である。FIG. 19 is a diagram showing a processing flow of error correction data generation processing in the second embodiment. 図20は、第2の実施の形態に係る検出装置の処理フローを示す図である。FIG. 20 is a diagram showing a processing flow of the detection device according to the second embodiment. 図21は、第3の実施の形態における誤り訂正データ生成処理の処理フローを示す図である。FIG. 21 is a diagram showing a processing flow of error correction data generation processing in the third embodiment. 図22は、第3の実施の形態に係る検出装置の処理フローを示す図である。FIG. 22 is a diagram showing a processing flow of the detection device according to the third embodiment. 図23は、第4の実施の形態における誤り訂正データ生成処理の処理フローを示す図である。FIG. 23 is a diagram showing a processing flow of error correction data generation processing in the fourth embodiment. 図24は、第4の実施の形態に係る検出装置の処理フローを示す図である。FIG. 24 is a diagram showing a processing flow of the detection device according to the fourth embodiment. 図25は、コンピュータ装置のブロック構成図である。FIG. 25 is a block configuration diagram of a computer device.

[実施の形態1]
図1に、第1の実施の形態に係るシステム概要を示す。例えば生産場所、採取場所、登録場所などに設置される情報処理装置100と、例えば流通経路上に設置される複数の検出装置200とが、例えばインターネットなどのネットワークを介して接続するようになっている。
[Embodiment 1]
FIG. 1 shows an outline of the system according to the first embodiment. For example, an information processing device 100 installed at a production place, a collection place, a registration place, or the like and a plurality of detection devices 200 installed on a distribution channel, for example, have come to be connected via a network such as the Internet. There is.

図1で示すように、複数の対象(図1ではA乃至Dなど)を生産、採取、登録などする場面において、情報処理装置100では、当該複数の対象に対して測定などを行った上で、複数の対象の各々を識別するユニークなデータ(以下では、固定値ベクトルと呼ぶ)を生成するための変換関数として、測定データなどを表す空間を複数の対象の各々を異なる部分空間に含まれるように分割する超曲面を生成し、当該超曲面のパラメータを検出装置200に配信する。 As shown in FIG. 1, in a scene where a plurality of objects (A to D, etc. in FIG. 1) are produced, collected, registered, etc., the information processing apparatus 100 performs measurement or the like on the plurality of objects. , As a conversion function for generating unique data (hereinafter referred to as a fixed value vector) that identifies each of a plurality of objects, a space representing measurement data or the like is included in a different subspace for each of the plurality of objects. A hypersurface surface to be divided is generated, and the parameters of the hypersurface surface are distributed to the detection device 200.

検出装置200は、例えば対象の流通経路上で、特定の対象について測定などを行った上で、情報処理装置100から配信された超曲面のパラメータを用いて測定データなどに対して評価を行うことで、特定の対象を識別するユニークな固定値ベクトルを生成する。固定値ベクトルが得られれば、当該固定値ベクトルをIDとして用いることで例えば生産等に関するデータなど属性データを別途抽出できるようになる。 The detection device 200, for example, measures a specific target on the distribution channel of the target, and then evaluates the measurement data or the like using the parameters of the hypersurface surface distributed from the information processing device 100. Generates a unique fixed value vector that identifies a particular object. Once the fixed value vector is obtained, attribute data such as data related to production or the like can be separately extracted by using the fixed value vector as an ID.

情報処理装置100は、測定部110と、第1データ格納部120と、パラメータ生成部130と、第2データ格納部140と、登録部150と、配信部160と、対象DB170とを有する。 The information processing device 100 includes a measurement unit 110, a first data storage unit 120, a parameter generation unit 130, a second data storage unit 140, a registration unit 150, a distribution unit 160, and a target DB 170.

測定部110は、対象に対する所定の測定を行い、測定データを第1データ格納部120に格納する。なお、測定部110は、測定だけではなく、測定データに対する特徴抽出などの追加的な処理を行って、その処理結果を第1データ格納部120に格納するようにしてもよい。パラメータ生成部130は、第1データ格納部120に格納されているデータを用いて、要件を満たす超曲面を生成し、当該超曲面のパラメータを第2データ格納部140に格納する。 The measurement unit 110 performs a predetermined measurement on the target and stores the measurement data in the first data storage unit 120. The measurement unit 110 may perform not only the measurement but also additional processing such as feature extraction on the measurement data, and store the processing result in the first data storage unit 120. The parameter generation unit 130 uses the data stored in the first data storage unit 120 to generate a hypersurface surface that satisfies the requirements, and stores the parameters of the hypersurface surface in the second data storage unit 140.

登録部150は、第2データ格納部140に格納されている超曲面のパラメータを用いて、第1データ格納部120に格納されている測定データなどを評価して、各対象について固定値ベクトルを生成すると共に、各対象の属性データ(例えば生産場所、生産時刻その他)を対応付けて、対象DB170に格納する。なお、パラメータ生成部130によって各対象の固定値ベクトルが生成されて第2データ格納部140に格納されている場合には、第2データ格納部140に格納されている各対象の固定値ベクトルを読み出す場合もある。配信部160は、第2データ格納部140に格納されている超曲面のパラメータを、検出装置200に配信する。 The registration unit 150 evaluates the measurement data and the like stored in the first data storage unit 120 by using the parameters of the hypersurface stored in the second data storage unit 140, and sets a fixed value vector for each object. At the same time as generating, the attribute data of each target (for example, production place, production time, etc.) is associated and stored in the target DB 170. When the parameter generation unit 130 generates the fixed value vector of each object and stores it in the second data storage unit 140, the fixed value vector of each object stored in the second data storage unit 140 is used. It may be read. The distribution unit 160 distributes the parameters of the hypersurface surface stored in the second data storage unit 140 to the detection device 200.

検出装置200は、測定部210と、測定データ格納部220と、抽出部230と、後処理部240と、設定部250と、パラメータ格納部260とを有する。 The detection device 200 includes a measurement unit 210, a measurement data storage unit 220, an extraction unit 230, a post-processing unit 240, a setting unit 250, and a parameter storage unit 260.

設定部250は、情報処理装置100から配信された超曲面のパラメータを、パラメータ格納部260に格納する。オフラインで超曲面のパラメータを受け取った場合にも同様にパラメータ格納部260に格納する。 The setting unit 250 stores the parameters of the hypersurface surface distributed from the information processing device 100 in the parameter storage unit 260. When the hypersurface parameter is received offline, it is similarly stored in the parameter storage unit 260.

測定部210は、情報処理装置100における測定部110と同じ処理を行って、処理結果を測定データ格納部220に格納する。抽出部230は、測定データ格納部220に格納された測定データなどを、パラメータ格納部260に格納されている超曲面のパラメータを用いて評価し、特定の対象を識別するユニークな固定値ベクトルを生成する。後処理部240は、固定値ベクトルをIDとして用いて、当該IDに対応付けられている属性データを取得するなどの処理を行う。 The measurement unit 210 performs the same processing as the measurement unit 110 in the information processing device 100, and stores the processing result in the measurement data storage unit 220. The extraction unit 230 evaluates the measurement data and the like stored in the measurement data storage unit 220 using the parameters of the hypersurface stored in the parameter storage unit 260, and generates a unique fixed value vector that identifies a specific target. Generate. The post-processing unit 240 uses a fixed value vector as an ID to perform processing such as acquiring attribute data associated with the ID.

次に、情報処理装置100の処理の内容を図2乃至図16を用いて詳細に説明する。 Next, the contents of the processing of the information processing apparatus 100 will be described in detail with reference to FIGS. 2 to 16.

まず、測定部110は、各対象iに対して所定の測定を行って、測定結果に基づき、L1次元のベクトルXiを生成し、第1データ格納部120に格納する(図2:ステップS1)。 First, the measurement unit 110 performs a predetermined measurement on each target i, generates an L1 dimensional vector Xi based on the measurement result, and stores it in the first data storage unit 120 (FIG. 2: step S1). ..

ここで、対象は全部でL3個あるものとする。また、測定部110は、単なる測定ではなく、測定データに対して所定の特徴抽出などの処理を行うようにしてもよい。そして、L3個ある対象のうちi番目の対象に対して、L1次元のベクトルXi=(x1,x2,...,xL1)が生成される。 Here, it is assumed that there are L3 objects in total. Further, the measurement unit 110 may perform a process such as a predetermined feature extraction on the measurement data, not just the measurement. Then, the L1 dimensional vector Xi = (x 1 , x 2 , ..., X L1 ) is generated for the i-th object among the three L objects.

説明を分かりやすくするため、L3=4且つL1=2の例を図3に示しておく。L1=2なので、図3に示すようにベクトルXiは2次元の空間、すなわち平面上で表される。ここでは、対象1のベクトルX1=(x1,x2)=(0.5,1)、対象2のベクトルX2=(x1,x2=(1,0.5)、対象3のベクトルX3=(x1,x2)=(0,0.5)、対象4のベクトルX4=(x1,x2)=(0.5,0)であるものとする。 In order to make the explanation easy to understand, an example of L3 = 4 and L1 = 2 is shown in FIG. Since L1 = 2, the vector Xi is represented in a two-dimensional space, that is, on a plane as shown in FIG. Here, the vector X 1 = (x 1 , x 2 ) = (0.5, 1) of the object 1, the vector X 2 = (x 1 , x 2 = (1, 0.5)) of the object 2, and the object 3 It is assumed that the vector X 3 = (x 1 , x 2 ) = (0, 0.5) of the object 4 and the vector X 4 = (x 1 , x 2 ) = (0.5, 0) of the object 4.

この例では、図3の平面において、いずれの軸についても、0.5を閾値として、それ以上であれば「1」、それ未満であれば「0」を割り当てるものとする(以下、これを実現する関数をround()と表すものとする)。図3の平面において、このような閾値のラインを二点鎖線で表しているが、対象1乃至4はそれぞれ閾値のライン上に載っている。このため、少しでも測定結果にノイズがあると、「0」と「1」とが入れ替わってしまい、検出誤りが生ずることになる。 In this example, in the plane of FIG. 3, 0.5 is set as a threshold value, and if it is more than that, "1" is assigned, and if it is less than that, "0" is assigned (hereinafter, this is used). The function to be realized shall be expressed as round ()). In the plane of FIG. 3, such a threshold line is represented by a chain double-dashed line, and the objects 1 to 4 are respectively placed on the threshold line. Therefore, if there is noise in the measurement result even a little, "0" and "1" are exchanged, and a detection error occurs.

本実施の形態では、L1次元の空間をn個の部分空間に分割するための超曲面を生成する。各軸の値を0又は1の2種類に分類する場合、nとユニークな超曲面の数L2との関係は、n=2L2で表される。L2=log2L3以上であり、n≧L3である。L2が大きいほど、ノイズ耐性が高い。 In the present embodiment, a hypersurface surface for dividing the L1 dimensional space into n subspaces is generated. When the value of each axis is classified into two types of 0 or 1, the relationship between n and the number L2 of the unique hypersurface is represented by n = 2 L2. L2 = log 2 L3 or more, and n ≧ L3. The larger L2, the higher the noise immunity.

図3の例では、例えば図4のような超曲面y1及びy2(平面の場合には直線)を生成することを目指す。図4の例では、L2=2、n=4であり、2本の点線で表される超曲面y1及びy2を生成する。そして、各対象は、これらの超曲面で分割された4つの部分空間A乃至Dのうち互いに異なるものに含まれるようになっている。 In the example of FIG. 3, for example, it aims to generate hypersurfaces y 1 and y 2 (straight lines in the case of a plane) as shown in FIG. In the example of FIG. 4, L2 = 2 and n = 4, and the hypersurfaces y 1 and y 2 represented by the two dotted lines are generated. Then, each object is included in four subspaces A to D divided by these hypersurfaces, which are different from each other.

以下、このような超曲面に対応する関数をf()と表し、f()の出力範囲を0以上1以下とする。また、二値化、量子化又は離散化の閾値を0.5、すなわちf()の出力の小数点第一位を四捨五入する関数round()をf()に適用し、round(f())を行うものとして説明するが、当然それ以外の場合にも拡張可能である。 Hereinafter, the function corresponding to such a hypersurface is represented by f (), and the output range of f () is set to 0 or more and 1 or less. Also, apply the function round (), which rounds the threshold of binarization, quantization, or discretization to 0.5, that is, the first decimal place of the output of f (), to f (), and round (f ()). However, it can be extended to other cases as well.

図2の処理の説明に戻って、次に、パラメータ生成部130は、対象の個数L3に応じて空間を分割する超曲面数L2等を設定する(ステップS3)。上で述べたとおりの関係があるので、これに従ってL2等が決定される。また、パラメータ生成部130は、超曲面についてのカウンタjを1に初期化する(ステップS5)。 Returning to the description of the process of FIG. 2, the parameter generation unit 130 next sets the number of hypersurfaces L2 and the like that divide the space according to the number of objects L3 (step S3). Since there is a relationship as described above, L2 and the like are determined accordingly. Further, the parameter generation unit 130 initializes the counter j for the hypersurface to 1 (step S5).

そして、パラメータ生成部130は、超曲面生成処理を実行する(ステップS7)。この超曲面生成処理については、後に詳細に説明する。生成された超曲面のパラメータは、第2データ格納部140に格納される。 Then, the parameter generation unit 130 executes the hypersurface generation process (step S7). This hypersurface generation process will be described in detail later. The generated hypersurface parameters are stored in the second data storage unit 140.

その後、パラメータ生成部130は、カウンタjを1インクリメントして、jがL2以下であるか否かを判断する(ステップS11)。この条件を満たす場合には、まだ超曲面を生成するので、処理はステップS7に戻る。 After that, the parameter generation unit 130 increments the counter j by 1 and determines whether or not j is L2 or less (step S11). If this condition is satisfied, the hypersurface is still generated, so the process returns to step S7.

一方、jがL2を超えるようになると、登録部150は、生成されたパラメータに係る超曲面で、各ベクトルXiを評価して、対象iの固定値ベクトルZiを生成し、属性データと共に対象DB160に登録する(ステップS13)。なお、固定値ベクトルZiについては、j番目の超曲面が決まるたびにZiのj番目の値を求め、または、j番目の超曲面が決まる際に同時に定まったZiのj番目の値を、対象DB160において対応する場所に登録してもよい。後に固定値ベクトルZiから属性データを抽出するためである。 On the other hand, when j exceeds L2, the registration unit 150 evaluates each vector Xi on the hypersurface related to the generated parameter, generates a fixed value vector Zi of the target i, and generates the target DB 160 together with the attribute data. Register in (step S13). Regarding the fixed value vector Zi, the j-th value of Zi is obtained each time the j-th hypersurface is determined, or the j-th value of Zi determined at the same time when the j-th hypersurface is determined is targeted. It may be registered in the corresponding place in DB160. This is because the attribute data is later extracted from the fixed value vector Zi.

ここでは、L2個の超曲面を表す関数f1乃至fL2の集合F()=(f1(),f2(),...,fL2())を用いて、ベクトルYi=(yi,1,yi,2,...,yi,L2)=F(Xi)=(f1(Xi),f2(Xi),...,fL2(Xi))を算出し、さらに各要素yi,jについてround()を適用することで離散化し、固定値ベクトルZiを生成する。 Here, using the set F () = (f 1 (), f 2 (), ..., f L2 ()) of the functions f 1 to f L 2 representing the L2 hypersurface, the vector Yi = ( Calculate y i, 1 , y i, 2 , ..., y i, L2 ) = F (Xi) = (f 1 (Xi), f 2 (Xi), ..., f L2 (Xi)) Then, by applying round () to each element y i, j , it is discretized and a fixed value vector Zi is generated.

さらに、配信部160は、生成された超曲面のパラメータを、第2データ格納部140から読み出して、所定の検出装置200に配信する(ステップS15)。なお、配信ではなく、オフラインで配布するようにしてもよいし、検出装置200の製造部門に送信して、検出装置200の製造段階でパラメータ格納部260に記録するようにしてもよい。 Further, the distribution unit 160 reads the generated hypersurface parameter from the second data storage unit 140 and distributes it to the predetermined detection device 200 (step S15). It may be distributed offline instead of being distributed, or it may be transmitted to the manufacturing department of the detection device 200 and recorded in the parameter storage unit 260 at the manufacturing stage of the detection device 200.

このような処理を行うことで、対象にはID等を付すことなく、検出装置200において固定値ベクトルを確実に抽出することができるようになる。 By performing such processing, the detection device 200 can reliably extract the fixed value vector without attaching an ID or the like to the target.

次に、図5乃至図16を用いて、超曲面生成処理について詳細を説明する。 Next, the hypersurface generation process will be described in detail with reference to FIGS. 5 to 16.

まず、パラメータ生成部130は、全ベクトルXiを写像するj番目の超曲面を表す関数fj()をランダムに生成する(図5:ステップS21)。 First, the parameter generation unit 130 randomly generates a function fj () representing the j-th hypersurface that maps the entire vector Xi (FIG. 5: step S21).

そして、パラメータ生成部130は、fj()に対して度数偏り調整処理を実行する(ステップS23)。この度数偏り調整処理については、図6及び図7を用いて説明する。 Then, the parameter generation unit 130 executes the frequency bias adjustment process for f j () (step S23). This frequency bias adjustment process will be described with reference to FIGS. 6 and 7.

図2に対して図3とは異なり図6に示すような超曲面を表す点線y1=0.5及びy2=0.5が生成されたものとする。ここで、超曲面を表す点線yj=0.5 は、yj=fj(x1,x2)=0.5を満たす(x1,x2)であり、f1(x1,x2)は、点線y1=0.5より右上にある点を、「1」に分類される、0.5以上の値に写像し、点線y1=0.5より左下にある点を、「0」に分類される、0.5未満の値に写像する。同様に、f2(x1,x2)は、点線y2=0.5より左上にある点を「0」に分類される、0.5未満の値に写像し、点線y2=0.5より右下にある点を、「1」に分類される、0.5以上の値に写像する。 It is assumed that the dotted lines y 1 = 0.5 and y 2 = 0.5 representing the hypersurface as shown in FIG. 6 are generated with respect to FIG. 2, unlike FIG. Here, the dotted line y j = 0.5 representing the hypersurface satisfies y j = f j (x 1 , x 2 ) = 0.5 (x 1 , x 2 ), and f 1 (x 1 , x 2). x 2 ) maps the point on the upper right of the dotted line y 1 = 0.5 to a value of 0.5 or more, which is classified as "1", and the point on the lower left of the dotted line y 1 = 0.5. , Map to a value less than 0.5, classified as "0". Similarly, f 2 (x 1 , x 2 ) maps the point above the dotted line y 2 = 0.5 to a value less than 0.5, which is classified as "0", and the dotted line y 2 = 0. The point at the lower right of .5 is mapped to a value of 0.5 or more, which is classified as "1".

このような場合、点線y1=0.5の左右で対象の数は2個ずつだが、点線y2=0.5については、その左上の領域(round(y2)=0の領域)に4つの対象が含まれるのに対して、右下の領域(round(y2)=1の領域)には0個となってしまう。すなわち、超曲面で分割される部分空間において対象の分布に偏りがある。 In such a case, the number of objects is two on each side of the dotted line y 1 = 0.5, but the dotted line y 2 = 0.5 is in the upper left area (the area of round (y 2 ) = 0). While four objects are included, the number is 0 in the lower right area (area of round (y 2) = 1). That is, there is a bias in the distribution of objects in the subspace divided by the hypersurface.

このような場合、例えば、超曲面のパラメータ(直線y2=f2(Xi)=f2(x1,x2)=ax1+b2=cのパラメータa、b及びc)をそれぞれ+又は−方向に変化させて、例えば図6の例では、点線y2=0.5を平行に左上方向に移動させれば、分布の偏りを是正できる。 In such a case, for example, the parameters of the hypersurface (straight line y 2 = f 2 (Xi) = f 2 (x 1 , x 2 ) = ax 1 + b 2 = c parameters a, b and c) are + or c, respectively. By changing in the − direction, for example, in the example of FIG. 6, if the dotted line y 2 = 0.5 is moved in the upper left direction in parallel, the bias of the distribution can be corrected.

より具体的には、点線y2=0.5に近い対象2及び4が点線y2=0.5の右下に属し、対象1及び3が点線y2=0.5の左上に属するように点線y2=0.5を移動させれば、分布が均等化される。 More specifically, as the target 2 and 4 close to the dotted line y 2 = 0.5 belong to the lower right of the dotted line y 2 = 0.5, the target 1 and 3 belong to the upper left of the dotted line y 2 = 0.5 If you move the dotted line y 2 = 0.5 to, the distribution will be equalized.

対象2及び4は、X2=(1,0.5)、X4=(0.5,0)であるから、y2,2=f2(X2)=a+0.5b+cとなるので、round(y2,2)が0から1に変わるように、bよりa及びbに重みをつけてa、b及びcをいずれも増加する方向に変更する。同様に、y2,4=f2(X4)=0.5a+cとなるので、round(y2,4)が0から1に変わるように、aよりcに重みをつけてa及びcを増加させる方向に変更する。 Since the objects 2 and 4 are X 2 = (1,0.5) and X 4 = (0.5,0), y 2,2 = f 2 (X 2 ) = a + 0.5b + c. A and b are weighted from b so that round (y 2, 2 ) changes from 0 to 1, and all of a, b, and c are changed in the direction of increasing. Similarly, since y 2,4 = f 2 (X 4 ) = 0.5a + c, weight a and c are weighted from a so that round (y 2,4) changes from 0 to 1. Change to increase.

このような例を念頭にして、図7に示す度数偏り調整処理を実行する。 With such an example in mind, the frequency bias adjustment process shown in FIG. 7 is executed.

まず、パラメータ生成部130は、ローカルなカウンタcounterを0に初期化する(ステップS51)。 First, the parameter generation unit 130 initializes the local counter counter to 0 (step S51).

また、パラメータ生成部130は、fj()を各ベクトルXiに適用して、YT jベクトルを生成する(ステップS53)。以下に示すYT jベクトルは、Yの転置行列のj行目のベクトルを表し、Yはyi,j=fj(Xi)をi行j列目の要素とするL3行L2列の2次元行列である。
T j=(y1,j,y2,j,...,yL3,j)=(fj(X1),fj(X2),...,fj(XL3))
Further, the parameter generation unit 130 applies f j () to each vector Xi to generate a Y T j vector (step S53). The Y T j vector shown below represents the vector in the jth row of the transposed matrix of Y, and Y is 2 in the L3 row and L2 column with y i, j = f j (Xi) as the element in the i row and jth column. It is a dimensional matrix.
Y T j = (y 1, j , y 2, j , ..., y L3, j ) = (f j (X 1 ), f j (X 2 ), ..., f j (X L3 )) )

その後、パラメータ生成部130は、YT jベクトルの各要素を閾値に応じて0と1とのいずれかに分けて、0と1の度数を計数し、度数差biasを算出する(ステップS55)。 After that, the parameter generation unit 130 divides each element of the Y T j vector into either 0 or 1 according to the threshold value, counts the frequencies of 0 and 1, and calculates the frequency difference bias (step S55). ..

図6の例では、YT 2ベクトルは(0,0,0,0)となるので、bias=|4−0|=4となる。ここでスカラー値wに対して、|w|は、wの絶対値を表す。 In the example of FIG. 6, since the Y T 2 vector is (0, 0, 0, 0), bias = | 4-0 | = 4. Here, with respect to the scalar value w, | w | represents the absolute value of w.

そして、パラメータ生成部130は、度数差biasが、予め定められた閾値bias_threshold2より小さいか否かを判断する(ステップS57)。完全に均一の分布にするのであれば度数差bias=0であるから、bias_threshold2=1となる。この要件を満たす場合には、呼び出し元の処理に戻る。 Then, the parameter generation unit 130 determines whether or not the frequency difference bias is smaller than the predetermined threshold value bias_threshold2 (step S57). If the distribution is completely uniform, the frequency difference bias = 0, so bias_threshold2 = 1. If this requirement is met, the process returns to the caller.

一方、度数差biasが、予め定められた閾値bias_threshold2以上であれば、パラメータ生成部130は、度数差biasが、予め定められたもう一つの閾値bias_threshold1より大きいか否かを判断する(ステップS59)。あまりに度数差biasが大きい場合には、今回の超曲面は許容できないので、ステップS59の要件を満たす場合には、パラメータ生成部130は、今回の超曲面を破棄して(ステップS67)、呼び出し元の処理に戻る。 On the other hand, if the frequency difference bias is greater than or equal to the predetermined threshold value bias_threshold2, the parameter generation unit 130 determines whether or not the frequency difference bias is larger than another predetermined threshold value bias_threshold1 (step S59). .. If the frequency difference bias is too large, the hypersurface of this time cannot be tolerated. Therefore, when the requirement of step S59 is satisfied, the parameter generation unit 130 discards the hypersurface of this time (step S67) and calls the caller. Return to the processing of.

一方、度数差biasが、予め定められた閾値bias_threshold1未満であれば、パラメータ生成部130は、ローカルなカウンタcounterを1インクリメントして(ステップS61)、counterの値が、予め定められた閾値bias_threshold3を超えたか否かを判断する(ステップS63)。bias_threshold3回、パラメータの変更を行ってもステップS57の要件を満たすことができない場合には、今回の超曲面は適切ではない。従って、ステップS63の要件を満たす場合には、処理はステップS67に移行する。 On the other hand, if the frequency difference bias is less than the predetermined threshold value bias_threshold1, the parameter generation unit 130 increments the local counter counter by 1 (step S61), and the value of the counter sets the predetermined threshold value bias_threshold3. It is determined whether or not the value has been exceeded (step S63). bias_threshold If the requirements of step S57 cannot be satisfied even after changing the parameters three times, the hypersurface surface this time is not appropriate. Therefore, when the requirement of step S63 is satisfied, the process proceeds to step S67.

一方、counterの値が、予め定められた閾値bias_threshold3以下であれば、パラメータ生成部130は、fj()を表す各パラメータを度数差biasが小さくなる方向に変化させる(ステップS65)。その後、処理はステップS53に戻る。 On the other hand, if the value of counter is equal to or less than the predetermined threshold value bias_threshold3, the parameter generation unit 130 changes each parameter representing f j () in a direction in which the frequency difference bias becomes smaller (step S65). After that, the process returns to step S53.

このようにすれば、追加した超曲面で空間を区切った場合における度数偏りを適切に是正できる。 In this way, the frequency bias when the space is divided by the added hypersurface can be appropriately corrected.

図5の処理の説明に戻って、ステップS23の後に、パラメータ生成部130は、今回の超曲面が破棄されたか否かを判断する(ステップS25)。破棄された場合には、処理はステップS21に戻って、超曲面の生成から再開する。一方、破棄されなかった場合、パラメータ生成部130は、類似性調整処理を実行する(ステップS27)。この類似性調整処理については、図8及び図9を用いて説明する。 Returning to the description of the process of FIG. 5, after step S23, the parameter generation unit 130 determines whether or not the hypersurface surface of this time has been discarded (step S25). If it is discarded, the process returns to step S21 and resumes from the generation of the hypersurface. On the other hand, if it is not discarded, the parameter generation unit 130 executes the similarity adjustment process (step S27). This similarity adjustment process will be described with reference to FIGS. 8 and 9.

図2に対して図3とは異なり図8に示すような超曲面を表す点線y1=0.5及びy2=0.5が生成されたものとする。ここで、超曲面を表す点線yj=0.5 は、yj=fj(x1,x2)=0.5を満たす(x1,x2)であり、f1(x1,x2)は、点線y1=0.5より右上にある点を、「1」に分類される、0.5以上の値に写像し、点線y1=0.5より左下にある点を、「0」に分類される、0.5未満の値に写像する。同様に、f2(x1,x2)は、点線y2=0.5より左にある点を「0」に分類される、0.5未満の値に写像し、点線y2=0.5より右にある点を、「1」に分類される、0.5以上の値に写像する。 It is assumed that the dotted lines y 1 = 0.5 and y 2 = 0.5 representing the hypersurface as shown in FIG. 8 are generated with respect to FIG. 2, unlike FIG. Here, the dotted line y j = 0.5 representing the hypersurface satisfies y j = f j (x 1 , x 2 ) = 0.5 (x 1 , x 2 ), and f 1 (x 1 , x 2). x 2 ) maps the point on the upper right of the dotted line y 1 = 0.5 to a value of 0.5 or more, which is classified as "1", and the point on the lower left of the dotted line y 1 = 0.5. , Map to a value less than 0.5, classified as "0". Similarly, f 2 (x 1 , x 2 ) maps the points to the left of the dotted line y 2 = 0.5 to a value less than 0.5, which is classified as "0", and the dotted line y 2 = 0. The points to the right of .5 are mapped to values of 0.5 or more, which are classified as "1".

この場合、y1とy2とを単独で判断すると、y1で分けられる2つの領域で対象の数は2個ずつであり、同様に、y2で分けられる2つの領域で対象の数は2個ずつであるから、度数差biasで判断すれば問題は無い。しかし、2つの超曲面により空間全体を分割することにより得られる部分空間のそれぞれに対象が含まれるのではなく、対象1及び2が同じ部分空間に含まれ、対象3及び4が同じ部分空間に含まれるようになってしまっている。すなわち、偏った分布が形成されている。 In this case, when y 1 and y 2 are judged independently, the number of targets is two in each of the two regions divided by y 1 , and similarly, the number of targets is two in the two regions divided by y 2. Since there are two each, there is no problem if it is judged by the frequency difference bias. However, the objects are not included in each of the subspaces obtained by dividing the entire space by the two hypersurfaces, but the objects 1 and 2 are included in the same subspace, and the objects 3 and 4 are in the same subspace. It has come to be included. That is, a biased distribution is formed.

この問題を解消するには、超曲面間の類似度を考慮すればよい。ここでは、今回の超曲面について計算されたYT jベクトルと、既にj2番目として設定されている他の超曲面についてのYT j2ベクトルとの類似度Similarityを、超曲面間の類似度として以下のように定義する。
Similarity(YT j,YT j2)=2・max(HD(YT j,YT j2),L3−HD(YT j,YT j2))/L3−1
To solve this problem, the similarity between hypersurfaces should be considered. Here, a Y T j vector calculated for this hypersurface already similarity Similarity between Y T j2 vectors for other hypersurface is set as the second j, as the similarity between the hypersurface It is defined as follows.
Similarity (Y T j , Y T j2 ) = 2 · max (HD (Y T j , Y T j2 ), L3-HD (Y T j , Y T j2 )) / L3-1

max(A,B)は、AとBとのうち大きい方の値を出力する関数である。HD(YT j,YT j2)は、YT jベクトルと、YT j2ベクトルのうち、round()を適用した場合に値が一致しない要素数である。図8の例では、y1が既設定の超曲面とするとYT j2ベクトルはround()を適用すると(1,1,0,0)となり、y2が今回の超曲面とするとYT jベクトルもround()を適用すると(1,1,0,0)となるので、HD(YT j,YT j2)=0となる。よって、Similarityは、2・max(0,4−0)/4−1=1となる。 max (A, B) is a function that outputs the larger value of A and B. HD (Y T j , Y T j2 ) is the number of elements of the Y T j vector and the Y T j2 vector whose values do not match when round () is applied. In the example of FIG. 8, if y 1 is a hypersurface already set, the Y T j2 vector becomes (1,1,0,0) when round () is applied, and if y 2 is the hypersurface this time, Y T j When round () is applied to the vector, it becomes (1,1,0,0), so HD (Y T j , Y T j2 ) = 0. Therefore, the Similarity is 2.max (0,4-0) / 4-1 = 1.

なお、類似度Similarityについては、各ベクトルの要素値が0又は1については上で述べたような関数を用いても良く、実数である場合には、コサイン類似度を採用するようにしてもよい。コサイン類似度は、ベクトルV1とV2について、V1・V2/(|V1||V2|)の絶対値である。なお、V1・V2はV1とV2の内積を表しており、|V|は、ベクトルの各要素の値の自乗和の平方根を表す。 Regarding the similarity, the function as described above may be used for the element value of each vector being 0 or 1, and when it is a real number, the cosine similarity may be adopted. .. The cosine similarity is the absolute value of V1 · V2 / (| V1 || V2 |) for the vectors V1 and V2. Note that V1 and V2 represent the inner product of V1 and V2, and | V | represents the square root of the sum of squares of the values of each element of the vector.

このような類似度を用いた類似性調整処理について、図9を用いて説明する。 The similarity adjustment process using such similarity will be described with reference to FIG.

まず、パラメータ生成部130は、既設定の各超曲面fj2()を各ベクトルXiに適用して、j2それぞれについてYT j2ベクトルを生成する(ステップS71)。また、パラメータ生成部130は、ローカルなカウンタcounterを0に初期化する(ステップS73)。 First, the parameter generation unit 130 applies each of the set hypersurfaces f j2 () to each vector X i to generate a Y T j2 vector for each of j 2 (step S71). Further, the parameter generation unit 130 initializes the local counter counter to 0 (step S73).

そして、パラメータ生成部130は、全てのj2(<j)について、YT jベクトルとYT j2ベクトルとの類似度Similarityを算出して、当該類似度Similarityが、予め定められた閾値sim_threshold1未満であるか否かを判断する(ステップS75)。ステップS75の要件を満たしている場合には問題が無いので、処理は呼び出し元の処理に戻る。 The parameter generating unit 130, for all j 2 (<j), to calculate the similarity Similarity between Y T j vector and Y T j2 vector, the similarity Similarity is less than the threshold sim_threshold1 a predetermined It is determined whether or not it is (step S75). If the requirement of step S75 is satisfied, there is no problem, so the process returns to the process of the caller.

一方、ステップS75の要件を満たしていない、すなわち既設定の超曲面の一つでもその類似度Similarityが閾値sim_threshold1を超えている場合には、パラメータ生成部130は、全てのj2(<j)について算出された、YT jベクトルとYT j2ベクトルとの類似度Similarityが、予め定められた閾値sim_threshold2を超えている否かを判断する(ステップS77)。これは、どの既設定の超曲面とも類似度があまりに高い場合には、超曲面の調整を行わずに破棄するためである。 On the other hand, if the requirement of step S75 is not satisfied, that is, if the similarity of even one of the hypersurfaces already set exceeds the threshold value sim_threshold 1, the parameter generation unit 130 will perform all j 2 (<j). calculated for similarity similarity between Y T j vector and Y T j2 vectors, it determines whether it exceeds the threshold sim_threshold2 predetermined (step S77). This is because if the similarity is too high with any of the set hypersurfaces, the hypersurface is discarded without adjustment.

よって、ステップS77の条件を満たす場合には、パラメータ生成部130は、今回の超曲面を破棄する(ステップS87)。そして、処理は呼び出し元の処理に戻る。 Therefore, when the condition of step S77 is satisfied, the parameter generation unit 130 discards the hypersurface surface this time (step S87). Then, the process returns to the process of the caller.

一方、ステップS77の条件を満たしていない場合には、パラメータ生成部130は、ローカルなカウンタcounterを1インクリメントして、このcounterの値が、予め定められた閾値sim_threshold3を超えているか否かを判断する(ステップS81)。sim_threshold3回、パラメータの変更を行ってもステップS75の要件を満たすことができない場合には、今回の超曲面は適切ではない。従って、ステップS81の要件を満たす場合には、処理はステップS87に移行する。 On the other hand, if the condition of step S77 is not satisfied, the parameter generation unit 130 increments the local counter counter by 1, and determines whether or not the value of this counter exceeds the predetermined threshold value sim_threshold3. (Step S81). If the requirements of step S75 cannot be satisfied even after changing the parameters three times, the hypersurface this time is not appropriate. Therefore, if the requirements of step S81 are satisfied, the process proceeds to step S87.

一方、ステップS81の要件を満たしていない場合には、パラメータ生成部130は、fj()を表すパラメータを、類似度Similarityが小さくなる方向に変化させる(ステップS83)。 On the other hand, when the requirement of step S81 is not satisfied, the parameter generation unit 130 changes the parameter representing f j () in a direction in which the similarity similarity becomes smaller (step S83).

より具体的には、YT jベクトルとYT j2ベクトルの要素(対象)のうちround()を適用した場合に一致する要素(対象)であって閾値(=0.5)に近い要素(対象)から順番に、例えばその要素値にround()を適用した場合に値が反転することで類似度Similarityが閾値sim_threshold1より小さくなる数だけ、要素i(対象i)を選択する。そして、選択した要素iについて、fj()及びround()を適用した場合に、値が反転するように超曲面のパラメータを調整する。 More specifically, among the elements (objects) of the Y T j vector and the Y T j2 vector, the elements (objects) that match when round () is applied and are close to the threshold value (= 0.5) ( In order from the target), for example, when round () is applied to the element value, the elements i (target i) are selected by the number in which the similarity similarity becomes smaller than the threshold value sim_threshold1 due to the inversion of the values. Then, when f j () and round () are applied to the selected element i, the parameters of the hypersurface are adjusted so that the values are inverted.

図8の例で、今回の超曲面がy2であるとすると、対象1及び4がy2に近いので選択され、X1=(0.5,1)、X4=(0.5,0)でround(y1,2)=round(f2(X1))=1であり、round(y4,2)=round(f2(X4))=0であるので、それぞれ0と1に反転するように超曲面のパラメータを調整する。そうすると、round(YT 2ベクトル)は(0,1,0,1)となる。round(YT j2ベクトル)は(1,1,0,0)であるから、HD(YT j,YT j2)=2であり、類似度Similarityは、2・max(2,4−2)/4−1=0となるので、類似度Similarityは下がる。 In the example of FIG. 8, assuming that the hypersurface this time is y 2 , the objects 1 and 4 are selected because they are close to y 2 , and X 1 = (0.5, 1) and X 4 = (0.5, At 0), round (y 1, 2 ) = round (f 2 (X 1 )) = 1, and round (y 4, 2 ) = round (f 2 (X 4 )) = 0, so each is 0. Adjust the parameters of the hypersurface so that it is inverted to 1 and 1. Then, round (Y T 2 vector) becomes (0,1,0,1). Since round (Y T j2 vector) is (1,1,0,0), HD (Y T j , Y T j2 ) = 2, and the similarity is 2.max (2,4-2). ) / 4-1 = 0, so the similarity is reduced.

なお、対象1のX1をf2(x1,x2)で写像すると、y1,2=f2(x1,x2)=ax1+bx2+c=0.5a+b+cであるので、aよりb及びcに重みをつけてa、b及びcいずれも減少させる方向で変化させる。また、対象4のX2をf2(x1,x2)で写像すると、y4,2=f2(x1,x2)=ax1+bx2+c=0.5a+cであるので、aよりcに重みをつけてa及びcを増加させる方向で変化させる。 When X 1 of the object 1 is mapped with f 2 (x 1 , x 2 ), y 1 , 2 = f 2 (x 1 , x 2 ) = ax 1 + bx 2 + c = 0.5a + b + c. B and c are weighted and changed in the direction of decreasing all of a, b and c. Further, when X 2 of the object 4 is mapped by f 2 (x 1 , x 2 ), y 4 , 2 = f 2 (x 1 , x 2 ) = ax 1 + bx 2 + c = 0.5a + c, so a More weight is given to c to change a and c in the direction of increasing.

そして、パラメータ生成部130は、変更後のパラメータに係る関数fj()を各Xiに適用して、新たなYT jベクトルを生成する(ステップS85)。そして、処理はステップS75に戻る。 Then, the parameter generation unit 130 applies the function f j () related to the changed parameter to each X i to generate a new Y T j vector (step S85). Then, the process returns to step S75.

以上のような処理を行うことで、個々の対象がいずれか1つの異なる部分空間に含まれるように超曲面が調整されるようになる。 By performing the above processing, the hypersurface is adjusted so that the individual objects are included in any one different subspace.

図5の処理の説明に戻って、ステップS27の後に、パラメータ生成部130は、今回の超曲面が破棄されたか否かを判断する(ステップS29)。破棄された場合には、処理はステップS21に戻る。一方、破棄されなかった場合には、パラメータ生成部130は、距離調整処理を実行する(ステップS31)。距離調整処理については、図10及び図11を用いて説明する。 Returning to the description of the process of FIG. 5, after step S27, the parameter generation unit 130 determines whether or not the hypersurface surface of this time has been discarded (step S29). If it is discarded, the process returns to step S21. On the other hand, if it is not discarded, the parameter generation unit 130 executes the distance adjustment process (step S31). The distance adjustment process will be described with reference to FIGS. 10 and 11.

距離調整処理では、閾値として取り扱われる超曲面付近に当該超曲面による対象の写像先が存在しているとノイズによってround()の結果が変わってしまう可能性があるので、閾値(超曲面)と対象の写像先との距離を広げるように超曲面のパラメータを変更するものである。 In the distance adjustment process, if the target mapping destination by the hypersurface exists near the hypersurface treated as the threshold, the result of round () may change due to noise. The parameters of the hypersurface are changed so as to increase the distance to the target mapping destination.

例えば、図2に対して図3とは異なり図10に示すような超曲面を表す点線y1=0.5及びy2=0.5が生成されたものとする。このような超曲面で空間を分割することで得られる部分空間のいずれかにいずれかの1つの対象が含まれているが、対象1及び4が点線y2=0.5にとても近い。このような場合には、矢印で示すように点線y2=0.5を回転させれば、対象1及び4が点線y2=0.5から離れるので好ましい。 For example, it is assumed that the dotted lines y 1 = 0.5 and y 2 = 0.5 representing the hypersurface as shown in FIG. 10 are generated with respect to FIG. 2, unlike FIG. One of the objects is included in any of the subspaces obtained by dividing the space by such a hypersurface, but the objects 1 and 4 are very close to the dotted line y 2 = 0.5. In such a case, it is preferable to rotate the dotted line y 2 = 0.5 as shown by the arrow because the objects 1 and 4 are separated from the dotted line y 2 = 0.5.

図11に、距離調整処理の処理フローを示す。 FIG. 11 shows a processing flow of the distance adjustment processing.

まず、パラメータ生成部130は、ローカルなカウンタcounterを0に初期化する(ステップS91)。そして、パラメータ生成部130は、超曲面の関数fj()を表すパラメータを、YT jベクトルの各要素と閾値との差が大きくなるように変化させる(ステップS93)。 First, the parameter generation unit 130 initializes the local counter counter to 0 (step S91). Then, the parameter generation unit 130 changes the parameter representing the hypersurface function f j () so that the difference between each element of the Y T j vector and the threshold value becomes large (step S93).

図10の例では、対象1についてはy1,2が0.5より小さいため、y1,2がより小さくなる方向にパラメータを修正し、対象4についてはy4,2が0.5より大きいため、y4,2がより大きくなる方向にパラメータを修正する。 In the example of FIG. 10, because y 1, 2 for the object 1 is smaller than 0.5, modify the parameters in the direction of y 1, 2 is smaller than y 4, 2 0.5 for subject 4 Since it is large, the parameters are modified so that y 4, 2 becomes larger.

より具体的には、対象1のX1をf2()で写像すると、y1,2=f2(X1)=ax1+bx2+c=0.5a+b+cであるので、aよりb及びcに重みをつけてa、b及びcいずれも減少させる方向で変化させる。また、対象4のX4をf2()で写像すると、y4,2=f2(X4)=ax1+bx2+c=0.5a+cであるので、aよりcに重みをつけてa及びcを増加させる方向で変化させる。 More specifically, when X 1 of the object 1 is mapped by f 2 (), y 1 , 2 = f 2 (X 1 ) = ax 1 + bx 2 + c = 0.5 a + b + c, so b and c from a. Is weighted and all of a, b and c are changed in the direction of decreasing. Further, when X 4 of the object 4 is mapped by f 2 (), y 4 , 2 = f 2 (X 4 ) = ax 1 + bx 2 + c = 0.5 a + c. And c are changed in the direction of increasing.

なお、パラメータの修正を行うと、他の対象の写像先が閾値(超曲面)に近づくこともあるので、そのような場合には、他の対象の写像先についても閾値(超曲面)から離れるようにパラメータを変更する。 If the parameters are modified, the mapping destination of the other object may approach the threshold value (hypersurface). In such a case, the mapping destination of the other object also deviates from the threshold value (hypersurface). Change the parameters so that.

そして、パラメータ生成部130は、変更後の関数fj()を各Xiに適用して、新たなYT jベクトルを生成する(ステップS95)。 Then, the parameter generation unit 130 applies the changed function f j () to each X i to generate a new Y T j vector (step S95).

そうすると、パラメータ生成部130は、YT jベクトルにおいて全ての又は一定数以上の要素と閾値との差が所定値以上離れているか否かを判断する(ステップS97)。|yi,j−0.5|が所定値以上であるか否かを判断するものである。全ての要素なのか、一定数以上の要素なのかについては、予め設定しておくものとする。 Then, the parameter generation unit 130 determines whether or not the difference between all or a certain number of elements and the threshold value is separated by a predetermined value or more in the Y T j vector (step S97). It is for determining whether or not | y i, j −0.5 | is equal to or greater than a predetermined value. Whether it is all elements or more than a certain number of elements shall be set in advance.

ステップS97の要件を満たしている場合には、好ましい超曲面が生成できたことになるので、パラメータ生成部130は、今回の超曲面の関数fj()を要件充足と設定する(ステップS101)。そして処理は、呼び出し元の処理に戻る。 If the requirements of step S97 are satisfied, it means that a preferable hypersurface surface has been generated. Therefore, the parameter generation unit 130 sets the function f j () of the hypersurface surface this time as satisfying the requirements (step S101). .. Then, the process returns to the process of the caller.

一方、ステップS97の要件を満たしていない場合には、パラメータ生成部130は、ローカルなカウンタcounterを1インクリメントし(ステップS99)、counterの値が閾値dis_thresholdを超えたか否かを判断する(ステップS103)。counterの値が閾値dis_threshold以下である場合には、処理はステップS93に戻る。一方、counterの値が閾値dis_thresholdを超えた場合には、呼び出し元の処理に戻る。 On the other hand, if the requirement of step S97 is not satisfied, the parameter generation unit 130 increments the local counter counter by 1 (step S99) and determines whether or not the value of the counter exceeds the threshold value dis_threshold (step S103). ). If the value of counter is equal to or less than the threshold value dis_threshold, the process returns to step S93. On the other hand, when the value of counter exceeds the threshold value dis_threshold, the process returns to the caller's processing.

このような処理を行うことで、全ての対象又は一定数以上の対象の写像先が閾値(超曲面)から十分離れるように調整できる。なお、この要件を満たすことができない場合でも、これ以降の処理を行うことで、今回の超曲面を活用できる場合もある。 By performing such processing, it is possible to adjust so that the mapping destinations of all objects or a certain number or more of objects are sufficiently separated from the threshold value (hypersurface surface). Even if this requirement cannot be satisfied, the hypersurface surface of this time may be utilized by performing the subsequent processing.

図5の処理の説明に戻って、ステップS31の後に、パラメータ生成部130は、今回の超曲面に対して要件充足が設定されたか否かを判断する(ステップS33)。要件充足が設定されていれば、次の超曲面を生成するために、端子Cを介して呼び出し元の処理(図2)に戻る。一方、要件充足が設定されていなければ、端子Aを介して、図12の処理に移行する。 Returning to the description of the process of FIG. 5, after step S31, the parameter generation unit 130 determines whether or not the requirement satisfaction is set for the hypersurface surface this time (step S33). If the requirement satisfaction is set, the process returns to the caller's process (FIG. 2) via the terminal C in order to generate the next hypersurface. On the other hand, if the requirement satisfaction is not set, the process proceeds to the process shown in FIG. 12 via the terminal A.

図12の処理の説明に移行して、パラメータ生成部130は、適応的距離調整処理を実行する(ステップS35)。この適応的距離調整処理については、図13及び図14を用いて説明する。 Moving on to the description of the process of FIG. 12, the parameter generation unit 130 executes the adaptive distance adjustment process (step S35). This adaptive distance adjustment process will be described with reference to FIGS. 13 and 14.

適応的距離調整処理は、超曲面からなかなか離れない対象の集合がある場合に、round()を適用した後の度数分布が大幅に変わらない範囲で、当該集合に含まれる対象のround()後の値が反転するように超曲面のパラメータを変更するものである。例えば、m個程度の対象のround()後の値を0から1に反転させ、m個程度の対象のround()後の値を1から0個に変えるものである。0から1に反転させる個数と1から0に反転させる個数は厳密に同じでなくても良い。 In the adaptive distance adjustment process, when there is a set of objects that are not easily separated from the hypersurface, the frequency distribution after applying round () does not change significantly, and after round () of the objects included in the set. The parameter of the hypersurface is changed so that the value of is inverted. For example, the value after round () of about m objects is inverted from 0 to 1, and the value after round () of about m objects is changed from 1 to 0. The number of flips from 0 to 1 and the number of flips from 1 to 0 do not have to be exactly the same.

図13に適応的距離調整処理の処理フローを示す。 FIG. 13 shows the processing flow of the adaptive distance adjustment process.

まず、パラメータ生成部130は、ローカルなカウンタcounterを0に初期化する(ステップS111)。また、パラメータ生成部130は、|fj(Xi)−0.5|が一定値以下となる対象iの集合Sを特定する(ステップS113)。これによって今回の超曲面からなかなか離れない対象iの集合を特定する。 First, the parameter generation unit 130 initializes the local counter counter to 0 (step S111). Further, the parameter generation unit 130 specifies a set S of the target i in which | f j (X i ) −0.5 | is equal to or less than a certain value (step S113). In this way, a set of objects i that are not easily separated from the hypersurface this time is specified.

そして、パラメータ生成部130は、集合Sに含まれる対象iに対して目標値Ci,jを算出する(ステップS115)。 Then, the parameter generation unit 130 calculates the target values C i and j for the target i included in the set S (step S115).

目標値は、1−round(fj(Xi))に設定する。これは、図14に模式的に示すように、fj(Xi)が0.5より小さい場合には、round(fj(Xi))=0であるから、目標値Ci,jは1になる。すなわち、fj(Xi)が0.5以上となるようにパラメータを変更させる。 The target value is set to 1-round (f j (X i )). This is because, as schematically shown in FIG. 14, when f j (X i ) is smaller than 0.5, round (f j (X i )) = 0, so the target value C i, j Becomes 1. That is, the parameters are changed so that f j (X i ) is 0.5 or more.

一方、fj(Xi)が0.5より大きい場合には、round(fj(Xi))=1であるから、目標値Ci,jは0になる。すなわち、fj(Xi)が0.5を下回るようにパラメータを変更させる。 On the other hand, when f j (X i ) is larger than 0.5, round (f j (X i )) = 1, so the target values C i and j become 0. That is, the parameters are changed so that f j (X i ) is less than 0.5.

ここまでの処理は、適応的距離調整処理の前提処理であり、ステップS117以降の処理を行っても集合S及び目標値Ci,jを変更しない。 The processing up to this point is a precondition processing of the adaptive distance adjustment processing, and the set S and the target values C i and j are not changed even if the processing after step S117 is performed.

そして、パラメータ生成部130は、超曲面の関数fj()を表すパラメータを、YT jベクトルにおいて、集合Sに含まれる対象iについての要素値と目標値Ci,jとの差が小さくなるように、且つ、それ以外の対象の要素値と閾値との差が大きくなるように変化させる(ステップS117)。この処理は、基本的にステップS93と同様であるが、一部の対象に係る要素については、目標値との差を小さくするという方向が異なっている。 Then, the parameter generation unit 130 sets the parameter representing the hypersurface function f j () to have a small difference between the element value and the target value C i, j for the target i included in the set S in the Y T j vector. And so that the difference between the element value of the other object and the threshold value becomes large (step S117). This process is basically the same as in step S93, but the direction of reducing the difference from the target value is different for some elements related to the target.

そして、パラメータ生成部130は、新たな超曲面の関数fj()を各Xiに適用して、新たなYT jベクトルを生成する(ステップS119)。 Then, the parameter generation unit 130 applies a new hypersurface function f j () to each X i to generate a new Y T j vector (step S119).

そうすると、パラメータ生成部130は、YT jベクトルにおいて全ての又は一定数以上の要素と閾値との差が所定値以上離れているか否かを判断する(ステップS121)。本ステップはステップS97と同様である。 Then, the parameter generation unit 130 determines whether or not the difference between all or a certain number of elements and the threshold value is separated by a predetermined value or more in the Y T j vector (step S121). This step is the same as in step S97.

ステップS121の要件を満たしている場合には、次の処理を行うべく、呼び出し元の処理に戻る。 If the requirement of step S121 is satisfied, the process returns to the caller's process in order to perform the next process.

一方、ステップS121の要件を満たしていない場合には、パラメータ生成部130は、ローカルなカウンタcounterを1インクリメントし(ステップS123)、counterの値が閾値dis_thresholdを超えたか否かを判断する(ステップS125)。counterの値が閾値dis_threshold以下である場合には、処理はステップS117に戻る。一方、counterの値が閾値dis_thresholdを超えた場合には、パラメータ生成部130は、今回の超曲面を破棄する(ステップS127)。そして、呼び出し元の処理に戻る。 On the other hand, if the requirement of step S121 is not satisfied, the parameter generation unit 130 increments the local counter counter by 1 (step S123) and determines whether or not the value of the counter exceeds the threshold value dis_threshold (step S125). ). If the value of counter is equal to or less than the threshold value dis_threshold, the process returns to step S117. On the other hand, when the value of counter exceeds the threshold value dis_threshold, the parameter generation unit 130 discards the hypersurface surface this time (step S127). Then, it returns to the processing of the caller.

このようにすれば、度数分布をほぼ維持した上で、距離についての要件を満たすことができるようになる。但し、適応的距離調整処理を行うと、類似性調整処理で得られた状態がもはや崩れている可能性がある。 In this way, it becomes possible to satisfy the requirements for distance while maintaining the frequency distribution. However, when the adaptive distance adjustment process is performed, the state obtained by the similarity adjustment process may no longer be destroyed.

図12の処理の説明に戻って、ステップS35の後に、パラメータ生成部130は、今回の超曲面が破棄されたか否かを判断する(ステップS37)。今回の超曲面が破棄されている場合には、端子Bを介して図5のステップS21に戻る。 Returning to the description of the process of FIG. 12, after step S35, the parameter generation unit 130 determines whether or not the hypersurface surface of this time has been discarded (step S37). If the hypersurface surface this time is discarded, the process returns to step S21 in FIG. 5 via the terminal B.

一方、今回の超曲面が破棄されていない場合には、パラメータ生成部130は、類似性再判定処理を実行する(ステップS39)。類似性再判定処理については、図15を用いて説明する。 On the other hand, when the hypersurface surface this time is not discarded, the parameter generation unit 130 executes the similarity re-determination process (step S39). The similarity re-determination process will be described with reference to FIG.

パラメータ生成部130は、全てのj2(<j)について、YT jベクトルとYT j2ベクトルとの類似度Similarityを算出して、当該類似度Similarityが、予め定められた閾値sim_threshold1未満であるか否かを判断する(ステップS131)。これはステップS75と同様である。この要件を満たしている場合には問題が無いので、処理は呼び出し元の処理に戻る。 Parameter generating unit 130, for all j 2 (<j), to calculate the similarity Similarity between Y T j vector and Y T j2 vector, the similarity Similarity is less than the threshold sim_threshold1 a predetermined Whether or not it is determined (step S131). This is the same as step S75. If this requirement is met, there is no problem, so the process returns to the caller's process.

一方、ステップS131の要件を満たしていない、すなわち既設定の超曲面の一つでもその類似度Similarityが閾値sim_threshold1を超えている場合には、パラメータ生成部130は、今回の超曲面を破棄する(ステップS133)そして、呼び出し元の処理に戻る。 On the other hand, if the requirement of step S131 is not satisfied, that is, if the similarity of even one of the hypersurfaces already set exceeds the threshold value sim_threshold1, the parameter generation unit 130 discards the hypersurface this time ( Step S133) Then, the process returns to the process of the caller.

図12の処理の説明に戻って、ステップS39の後に、パラメータ生成部130は、今回の超曲面は破棄されたか否かを判断する(ステップS41)。破棄された場合には、端子Bを介して図5のステップS21に戻る。 Returning to the description of the process of FIG. 12, after step S39, the parameter generation unit 130 determines whether or not the hypersurface surface of this time has been discarded (step S41). If it is discarded, the process returns to step S21 of FIG. 5 via the terminal B.

一方、今回の超曲面が破棄されていない場合には、今回の超曲面を採用するので、呼び出し元の処理に戻る。 On the other hand, if the hypersurface this time is not discarded, the hypersurface this time is adopted, so the process returns to the caller's process.

以上のような超曲面生成処理を実行することで、L2個の超曲面を適切に生成できる。 By executing the above-mentioned hypersurface generation process, L2 hypersurfaces can be appropriately generated.

なお、上で述べた超曲面生成処理は一例であって、様々な変形が可能である。特に、超曲面を一つずつ追加する処理例を示したが、複数の超曲面を一度に生成して、それらについて類似性調整処理などを行っても良い。度数偏り調整処理、類似性再判定処理、距離調整処理などを直列的に実行してその都度パラメータを変更しているが、これらの処理の要件を満たしているか否かをまとめて判定して、その結果に基づきパラメータの変更を一度に行うようにしてもよい。 The hypersurface generation process described above is an example, and various deformations are possible. In particular, although an example of processing in which hypersurfaces are added one by one is shown, a plurality of hypersurfaces may be generated at once and similarity adjustment processing may be performed on them. The frequency bias adjustment process, similarity re-judgment process, distance adjustment process, etc. are executed in series and the parameters are changed each time. The parameters may be changed at once based on the result.

なお、上で述べた超曲面生成処理において、j=1の場合には、類似性調整処理及び類似性再判定処理は行われない。 In the hypersurface generation process described above, when j = 1, the similarity adjustment process and the similarity redetermination process are not performed.

図4に好ましい超曲面y1及びy2の例を示したが、より具体的には、これらの超曲面は閾値=0.5であるから、y1=0.5=x2+x1−0.5であり、y2=0.5=x2−x1+0.5となる。y1のパラメータは、a=1、b=1、c=−0.5である。y2のパラメータは、a=−1、b=1、c=0.5である。 An example of preferable hypersurfaces y 1 and y 2 is shown in FIG. 4, but more specifically, since these hypersurfaces have a threshold value of 0.5, y 1 = 0.5 = x 2 + x 1 −. It is 0.5, and y 2 = 0.5 = x 2- x 1 +0.5. The parameters of y 1 are a = 1, b = 1, and c = −0.5. The parameters of y 2 are a = -1, b = 1, and c = 0.5.

そして、このようなy1及びy2を用いて、対象1乃至4の入力ベクトルX1乃至X4を評価すれば、図16に示すようになる。すなわち、対象1には固定値ベクトルZ1=(1,1)が算出され、対象2には固定値ベクトルZ2=(1,0)が算出され、対象3には固定値ベクトルZ3=(0,1)が算出され、対象4には固定値ベクトルZ4=(0,0)が算出される。これによって、対象1乃至4の測定結果などから得られる入力ベクトルX1乃至X4のみから、対象の各々を識別するユニークなベクトルが得られるようになる。 Then, if the input vectors X 1 to X 4 of the objects 1 to 4 are evaluated using such y 1 and y 2 , it becomes as shown in FIG. That is, the fixed value vector Z 1 = (1, 1) is calculated for the target 1, the fixed value vector Z 2 = (1, 0) is calculated for the target 2, and the fixed value vector Z 3 = is calculated for the target 3. (0,1) is calculated, and a fixed value vector Z 4 = (0,0) is calculated for the target 4. As a result, a unique vector that identifies each of the objects can be obtained from only the input vectors X 1 to X 4 obtained from the measurement results of the objects 1 to 4.

次に、検出装置200の処理内容について、図17を用いて説明する。 Next, the processing content of the detection device 200 will be described with reference to FIG.

まず、測定部210は、特定の対象に対して所定の測定を行って、測定結果に基づき、L1次元のベクトルXを生成し、測定データ格納部220に格納する(図17:ステップS201)。測定部210は、情報処理装置100の測定部110と同じ処理を行う。 First, the measurement unit 210 makes a predetermined measurement on a specific target, generates an L1 dimensional vector X based on the measurement result, and stores it in the measurement data storage unit 220 (FIG. 17: step S201). The measuring unit 210 performs the same processing as the measuring unit 110 of the information processing apparatus 100.

抽出部230は、情報処理装置100から配信され且つパラメータ格納部260に格納されているパラメータに係る超曲面で、ベクトルXを評価して、対象の固定値ベクトルを生成する(ステップS203)。 The extraction unit 230 evaluates the vector X on the hypersurface related to the parameter distributed from the information processing device 100 and stored in the parameter storage unit 260, and generates a target fixed value vector (step S203).

パラメータ格納部260には、fj()(1≦j≦L2)のパラメータが格納されているので、Y’=(y1,y2,...,yL2)=(f1(X),f2(X),...,fL2(X))を算出し、yjのそれぞれについてround()を適用することで、固定値ベクトルZが得られる。 Since the parameters of f j () (1 ≦ j ≦ L2) are stored in the parameter storage unit 260, Y'= (y 1 , y 2 , ..., y L2 ) = (f 1 (X). ), F 2 (X), ..., f L2 (X)), and round () is applied to each of y j to obtain the fixed value vector Z.

抽出部230は、この固定値ベクトルを後処理部240に出力し、後処理部240は、例えばネットワーク300を介して情報処理装置100における対象DB170などから、固定値ベクトルに対応する属性データを抽出し、属性データなどに関連する処理を実行する(ステップS205)。 The extraction unit 230 outputs this fixed value vector to the post-processing unit 240, and the post-processing unit 240 extracts the attribute data corresponding to the fixed value vector from, for example, the target DB 170 in the information processing apparatus 100 via the network 300. Then, the process related to the attribute data and the like is executed (step S205).

このように、本実施の形態では、パラメータ格納部260に格納されているパラメータに係る超曲面は、どの対象についても同一の超曲面であり、個々の対象に対してID等を付することなく、固定値ベクトルを得ることができるようになる。 As described above, in the present embodiment, the hypersurface surface related to the parameter stored in the parameter storage unit 260 is the same hypersurface surface for all objects, and no ID or the like is attached to each object. , You will be able to get a fixed value vector.

[実施の形態2]
第1の実施の形態でも十分なノイズ耐性を有しているが、誤り訂正機能を追加するようにしてもよい。
[Embodiment 2]
Although the first embodiment also has sufficient noise immunity, an error correction function may be added.

本実施の形態では、例えば図18に示すように、情報処理装置100bは、誤り訂正データ生成部180及び第3データ格納部190をさらに有し、配信部160の代わりに超曲面のパラメータと誤り訂正データとを配信する配信部160bを有する。 In the present embodiment, for example, as shown in FIG. 18, the information processing apparatus 100b further includes an error correction data generation unit 180 and a third data storage unit 190, and instead of the distribution unit 160, the parameters and errors of the hypersurface surface are used. It has a distribution unit 160b that distributes correction data.

また、各検出装置200bは、誤り訂正データ格納部270をさらに有し、設定部250及び抽出部230の代わりに、パラメータ格納部260に超曲面のパラメータを格納すると共に誤り訂正データ格納部270に誤り訂正データを格納する設定部250bと、誤り訂正機能を有する抽出部230bとを有する。 Further, each detection device 200b further has an error correction data storage unit 270, and instead of the setting unit 250 and the extraction unit 230, stores the hypersurface parameters in the parameter storage unit 260 and in the error correction data storage unit 270. It has a setting unit 250b for storing error correction data and an extraction unit 230b having an error correction function.

次に、情報処理装置100bの誤り訂正データ生成部180の処理内容について、図19を用いて説明する。この処理は、例えば、図2のステップS15の前又は後に実行する。 Next, the processing content of the error correction data generation unit 180 of the information processing apparatus 100b will be described with reference to FIG. This process is performed, for example, before or after step S15 in FIG.

まず、誤り訂正データ生成部180は、生成された超曲面に基づき、各対象iの固定値ベクトルZiを生成する(ステップS301)。このステップは、図2のステップS13における処理の一部と同じである。 First, the error correction data generation unit 180 generates a fixed value vector Zi for each target i based on the generated hypersurface surface (step S301). This step is the same as a part of the process in step S13 of FIG.

すなわち、超曲面を表す関数f1乃至fL2の集合F()=(f1(),f2(),...,fL2())を用いて、ベクトルYi=(yi,1,yi,2,...,yi,L2)=F(Xi)=(f1(Xi),f2(Xi),...,fL2(Xi))を算出する。さらに、このベクトルYiの各要素yi,jについてround()を適用することで離散化し、固定値ベクトルZiを生成する。 That is, the vector Yi = (y i, 1 ) using the set F () = (f 1 (), f 2 (), ..., f L2 ()) of the functions f 1 to f L 2 representing the hypersurface. , Y i, 2 , ..., y i, L2 ) = F (Xi) = (f 1 (Xi), f 2 (Xi), ..., f L2 (Xi)). Further, the fixed value vector Zi is generated by discretizing each element y i, j of the vector Y i by applying round ().

そして、誤り訂正データ生成部180は、各固定値ベクトルZiに対して、誤り訂正のための冗長データを生成する(ステップS303)。具体的には、BCH符号、RS符号、LDPC符号、ターボ符号などの既存の誤り訂正符号に従い、Ziを情報シンボルとする組織符号の冗長データを生成する。 Then, the error correction data generation unit 180 generates redundant data for error correction for each fixed value vector Zi (step S303). Specifically, redundant data of the organization code having Zi as an information symbol is generated according to existing error correction codes such as BCH code, RS code, LDPC code, and turbo code.

例えば、Xi=(0.5,0.5)に対して固定値ベクトルZi=(1,1)が得られた場合には、Ziに対して所定の誤り訂正符号に従って、冗長データZr,i=(0,0,1,0,1,0,0)を生成する。 For example, when the fixed value vector Zi = (1,1) is obtained for Xi = (0.5, 0.5), the redundant data Z r, according to a predetermined error correction code for Zi. i = (0,0,1,0,1,0,0) is generated.

そして、誤り訂正データ生成部180は、入力ベクトルXiを入力とし、その冗長データZr,iを教師データとする機械学習を実施し、学習済みモデルを生成する(ステップS305)。例えばニューラルネットワークに基づく所定のモデルを用意して既存のアルゴリズムによって学習を行うことで学習済みモデルを生成する。誤り訂正データ生成部180は、学習済みモデルのパラメータを、第3データ格納部190に格納する。 Then, the error correction data generation unit 180 performs machine learning using the input vector Xi as an input and the redundant data Z r and i as teacher data to generate a trained model (step S305). For example, a trained model is generated by preparing a predetermined model based on a neural network and training with an existing algorithm. The error correction data generation unit 180 stores the parameters of the trained model in the third data storage unit 190.

配信部160bは、第3データ格納部190に格納されている学習済みモデルのパラメータを、各検出装置200bに配信する(ステップS307)。このデータについても、オフラインで配布するようにしてもよい。 The distribution unit 160b distributes the parameters of the trained model stored in the third data storage unit 190 to each detection device 200b (step S307). This data may also be distributed offline.

これに対して、検出装置200bでは、図20に示すような処理を実行する。 On the other hand, the detection device 200b executes the process as shown in FIG.

まず、測定部210は、特定の対象に対して所定の測定を行って、測定結果に基づき、L1次元のベクトルXを生成し、測定データ格納部220に格納する(ステップS311)。このステップは、図17のステップS201と同じである。 First, the measurement unit 210 makes a predetermined measurement on a specific target, generates an L1 dimensional vector X based on the measurement result, and stores it in the measurement data storage unit 220 (step S311). This step is the same as step S201 in FIG.

抽出部230bは、情報処理装置100bから配信され且つパラメータ格納部260に格納されているパラメータに係る超曲面で、ベクトルXを評価して、対象の固定値ベクトルを生成する(ステップS313)。このステップは、図17のステップS203と同じである。 The extraction unit 230b is a hypersurface surface related to the parameters distributed from the information processing device 100b and stored in the parameter storage unit 260, evaluates the vector X, and generates a target fixed value vector (step S313). This step is the same as step S203 in FIG.

さらに、抽出部230bは、誤り訂正データ格納部270に格納されている学習済みモデルのパラメータから学習済みモデルを構築して、ベクトルXに対する冗長データを生成する(ステップS315)。 Further, the extraction unit 230b constructs a trained model from the parameters of the trained model stored in the error correction data storage unit 270, and generates redundant data for the vector X (step S315).

そして、抽出部230bは、固定値ベクトル及び冗長データで誤り訂正処理を行って、最終的な固定値ベクトルを生成する(ステップS317)。 Then, the extraction unit 230b performs error correction processing on the fixed value vector and the redundant data to generate the final fixed value vector (step S317).

例えば、上で述べた例と同じ対象についてステップS313でX=(0.4,0.6)が得られて、固定値ベクトルZ=(1,0)が得られたとしても、ステップS315で冗長データ(1,0,1,0,1,0,0)又はそれに近いデータが得られれば、誤り訂正処理にて、Z=(1,1)に訂正できるようになる。 For example, even if X = (0.4,0.6) is obtained in step S313 and the fixed value vector Z = (1,0) is obtained for the same object as in the above example, in step S315. If redundant data (1,0,1,0,1,0,0) or data close to it is obtained, it can be corrected to Z = (1,1) by error correction processing.

なお、ステップS317の後に、図17におけるステップS205のような処理を行うようにしてもよい。 In addition, after step S317, the process as in step S205 in FIG. 17 may be performed.

以上のような誤り訂正データを検出装置200bに配布しておくことにより、検出装置200bにおける測定に対するノイズ耐性が高くなる。 By distributing the above error correction data to the detection device 200b, the noise immunity to the measurement by the detection device 200b is increased.

[実施の形態3]
第2の実施の形態とは異なる態様で誤り訂正データを生成し、それを用いた誤り訂正処理を行ってもよい。
[Embodiment 3]
Error correction data may be generated in a mode different from that of the second embodiment, and error correction processing may be performed using the data.

本実施の形態に係る誤り訂正データ生成部180の処理内容について、図21を用いて説明する。この処理は、例えば、図2のステップS15の前又は後に実行する。但し、L2は冗長性を持たせ長めに設定する。 The processing content of the error correction data generation unit 180 according to the present embodiment will be described with reference to FIG. This process is performed, for example, before or after step S15 in FIG. However, L2 is set longer with redundancy.

まず、誤り訂正データ生成部180は、生成された超曲面に基づき、各対象iの固定値ベクトルZiを生成する(ステップS321)。このステップは、図2のステップS13における処理の一部と同じである。 First, the error correction data generation unit 180 generates a fixed value vector Zi for each target i based on the generated hypersurface surface (step S321). This step is the same as a part of the process in step S13 of FIG.

そして、誤り訂正データ生成部180は、固定値ベクトルの各要素iについて、当該要素i以外の要素の値を入力とし、当該要素iの値を教師データとする機械学習を実施し、学習済みモデルを生成する(ステップS323)。例えばニューラルネットワークに基づく所定のモデルを用意して既存のアルゴリズムによって学習を行うことで学習済みモデルを生成する。誤り訂正データ生成部180は、学習済みモデルのパラメータを、第3データ格納部190に格納する。 Then, the error correction data generation unit 180 performs machine learning for each element i of the fixed value vector by inputting the value of the element other than the element i and using the value of the element i as the teacher data, and the trained model. Is generated (step S323). For example, a trained model is generated by preparing a predetermined model based on a neural network and training with an existing algorithm. The error correction data generation unit 180 stores the parameters of the trained model in the third data storage unit 190.

ここで、固定値ベクトルZi=(a,b,c,d,e,f,g,h,k)(a乃至kは全て1又は0)が得られたとすると、第1の要素「a」を教師データとして、残りの要素「b,c,d,e,f,g,h,k」を入力とする機械学習を行って、学習済みモデルg1を生成する。また、第2の要素「b」を教師データとして、残りの要素「a,c,d,e,f,g,h,k」を入力とする機械学習を行って、学習済みモデルg2を生成する。同様にして、L2=9番目の要素「k]を教師データとし、残りの要素「a,b,c,d,e,f,g,h」を入力とする機械学習を行って、学習済みモデルg9を生成する。 Here, assuming that the fixed value vector Zi = (a, b, c, d, e, f, g, h, k) (a to k are all 1 or 0) is obtained, the first element "a" is obtained. Is used as the teacher data, and machine learning is performed with the remaining elements "b, c, d, e, f, g, h, k" as inputs, and the trained model g 1 is generated. Further, machine learning is performed using the second element "b" as teacher data and the remaining elements "a, c, d, e, f, g, h, k" as inputs to obtain the trained model g 2 . Generate. Similarly, L2 = 9th element "k" is used as teacher data, and machine learning is performed with the remaining elements "a, b, c, d, e, f, g, h" as inputs, and the learning has been completed. Generate model g 9.

なお、これは一例であって、複数の要素を教師データとし、当該複数の要素の残りの要素を入力とするようにしてもよい。例えば、「a,b,c」を教師データとして、残りの要素「d,e,f,g,k」を入力とする機械学習を行い、「d,e,f」を教師データとして、残りの要素「a,b,c,g,h,k」を入力とする機械学習を行い、「g,h,k」を教師データとし、残りの「a,b,c,d,e,f」を入力とする機械学習を行う、といったように変形することも可能である。要するに、複数の学習済みモデルを生成して、それらを用いて全ての要素を相補的に推測できるようにする。 Note that this is an example, and a plurality of elements may be used as teacher data, and the remaining elements of the plurality of elements may be used as inputs. For example, machine learning is performed with "a, b, c" as teacher data and the remaining elements "d, e, f, g, k" as inputs, and "d, e, f" is used as teacher data and the rest. Machine learning is performed by inputting the elements "a, b, c, g, h, k" of the above, "g, h, k" is used as the teacher data, and the remaining "a, b, c, d, e, f". It is also possible to transform it by performing machine learning with "" as an input. In short, we generate multiple trained models and use them to make complementary inferences about all the elements.

そして、配信部160bは、第3データ格納部190に格納されている学習済みモデルのパラメータを、各検出装置200bに配信する(ステップS325)。このデータについても、オフラインで配布するようにしてもよい。 Then, the distribution unit 160b distributes the parameters of the trained model stored in the third data storage unit 190 to each detection device 200b (step S325). This data may also be distributed offline.

これに対して、検出装置200bにおける処理を図22に示す。 On the other hand, the process in the detection device 200b is shown in FIG.

まず、測定部210は、特定の対象に対して所定の測定を行って、測定結果に基づき、L1次元のベクトルXを生成し、測定データ格納部220に格納する(ステップS311)。このステップは、図17のステップS201と同じである。 First, the measurement unit 210 makes a predetermined measurement on a specific target, generates an L1 dimensional vector X based on the measurement result, and stores it in the measurement data storage unit 220 (step S311). This step is the same as step S201 in FIG.

また、抽出部230bは、パラメータ格納部260に格納されているパラメータに係る超曲面に基づき、ベクトルXから、対象の第1評価ベクトルを生成する(ステップS333)。 Further, the extraction unit 230b generates a target first evaluation vector from the vector X based on the hypersurface surface related to the parameter stored in the parameter storage unit 260 (step S333).

本実施の形態では、パラメータ格納部260には、fj()(1≦j≦L2)のパラメータが格納されているので、Y’=(y1,y2,...,yL2)=(f1(X),f2(X),...,fL2(X))を算出し、これを初期的な第1評価ベクトルとして用いる。 In the present embodiment, since the parameter of f j () (1 ≦ j ≦ L2) is stored in the parameter storage unit 260, Y'= (y 1 , y 2 , ..., y L2 ). = (F 1 (X), f 2 (X), ..., f L2 (X)) is calculated and used as the initial first evaluation vector.

さらに、抽出部230bは、誤り訂正データ格納部270に格納されている複数の学習済みモデルのパラメータから複数の学習済みモデルを構築し、第1評価ベクトルに対して当該複数の学習済みモデルを適用して、第2評価ベクトルを生成する(ステップS335)。 Further, the extraction unit 230b constructs a plurality of trained models from the parameters of the plurality of trained models stored in the error correction data storage unit 270, and applies the plurality of trained models to the first evaluation vector. Then, a second evaluation vector is generated (step S335).

例えば、第1評価ベクトルがY’=[0.9,0.1,0.5,0.3,0.8,0.5,0.7,0.1,0.6]が得られたとすると、上の例では、g1(0.1,0.5,0.3,0.8,0.5,0.7,0.1,0.6)、g2(0.9,0.5,0.3,0.8,0.5,0.7,0.1,0.6)、...g9(0.9,0.1,0.5,0.3,0.8,0.5,0.7,0.1)を計算する。そうすると、例えば、第2評価ベクトルY”=(0.8,0.1,0.5,0.3,0.8,0.5,0.7,0.1,0.6)が得られる。 For example, the first evaluation vector Y'= [0.9,0.1,0.5,0.3,0.8,0.5,0.7,0.1,0.6] is obtained. Assuming, in the above example, g 1 (0.1, 0.5, 0.3, 0.8, 0.5, 0.7, 0.1, 0.6), g 2 (0.9) , 0.5, 0.3, 0.8, 0.5, 0.7, 0.1, 0.6) ,. .. .. Calculate g 9 (0.9, 0.1, 0.5, 0.3, 0.8, 0.5, 0.7, 0.1). Then, for example, the second evaluation vector Y ”= (0.8,0.1,0.5,0.3,0.8,0.5,0.7,0.1,0.6) is obtained. Be done.

そして、抽出部230bは、第1評価ベクトルと第2評価ベクトルとから、候補ベクトルを生成する(ステップS337)。ここでは、第1評価ベクトルと第2評価ベクトルの同一要素について閾値との差が大きい方を採用するか、同一要素の間の任意の値(予め定められたルールに従って決定される値。例えば実験的に定める。)を採用する関数G2(Y’,Y”)を適用する。 Then, the extraction unit 230b generates a candidate vector from the first evaluation vector and the second evaluation vector (step S337). Here, for the same element of the first evaluation vector and the second evaluation vector, the one having a larger difference from the threshold value is adopted, or an arbitrary value between the same elements (a value determined according to a predetermined rule, for example, an experiment) is adopted. The function G 2 (Y', Y ") that adopts) is applied.

例えば、Y’=[0.9,0.1,0.5,0.3,0.8,0.5,0.7,0.1,0.6]で、Y”=(0.8,0.1,0.5,0.3,0.8,0.5,0.7,0.1,0.6)が得られた場合、異なる値は第1要素だけである。ここでは、0.9と0.8のうち、例えば閾値0.5との差が大きい方である「0.9」を採用する。そうすると、Y'''=(0.9,0.1,0.5,0.3,0.8,0.5,0.7,0.1,0.6)が得られる。 For example, when Y'= [0.9,0.1,0.5,0.3,0.8,0.5,0.7,0.1,0.6], Y "= (0. If 8,0.1,0.5,0.3,0.8,0.5,0.7,0.1,0.6) is obtained, the only different value is the first element. Here, "0.9", which is the larger difference between 0.9 and 0.8, for example, the threshold value of 0.5, is adopted. Then, Y'''= (0.9, 0.1, 0.5, 0.3, 0.8, 0.5, 0.7, 0.1, 0.6) is obtained.

そうすると、抽出部230bは、候補ベクトルY'''の全要素が閾値から所定値以上離れているか否かを判断する(ステップS339)。例えば、各要素について、|要素値−閾値|≧所定値であるか否かを判断する。 Then, the extraction unit 230b determines whether or not all the elements of the candidate vector Y'''' are separated from the threshold value by a predetermined value or more (step S339). For example, for each element, it is determined whether or not | element value − threshold value | ≧ predetermined value.

この要件を満たしていない場合には、抽出部230bは、候補ベクトルを新たな第1評価ベクトルに設定する(ステップS341)。そして、処理はステップS335に戻って、新たな第1評価ベクトルから新たな第2評価ベクトルを生成する。 If this requirement is not satisfied, the extraction unit 230b sets the candidate vector as a new first evaluation vector (step S341). Then, the process returns to step S335 to generate a new second evaluation vector from the new first evaluation vector.

一方、ステップS339の要件を満たす場合には、抽出部230bは、候補ベクトルに対して離散化処理(round())を行い、最終的な固定値ベクトルを生成する(ステップS343)。 On the other hand, when the requirement of step S339 is satisfied, the extraction unit 230b performs discretization processing (round ()) on the candidate vector to generate a final fixed value vector (step S343).

なお、ステップS343の後に、図17におけるステップS205のような処理を行うようにしてもよい。 After step S343, the process as in step S205 in FIG. 17 may be performed.

以上のような誤り訂正データを検出装置200bに配布する場合でも、検出装置200bにおける測定に対するノイズ耐性が高くなる。 Even when the above error correction data is distributed to the detection device 200b, the noise immunity to the measurement by the detection device 200b is high.

なお、ステップS339の要件を複数回チェックしても要件を満たさない場合には、エラーを出力するなどしても良い。 If the requirements of step S339 are checked a plurality of times and the requirements are not satisfied, an error may be output.

[実施の形態4]
第2及び3の実施の形態とは異なる態様で誤り訂正データを生成し、それを用いた誤り訂正処理を行ってもよい。
[Embodiment 4]
Error correction data may be generated in a mode different from that of the second and third embodiments, and error correction processing may be performed using the error correction data.

本実施の形態に係る誤り訂正データ生成部180の処理内容について、図23を用いて説明する。この処理は、例えば、図2のステップS15の前又は後に実行する。 The processing content of the error correction data generation unit 180 according to the present embodiment will be described with reference to FIG. 23. This process is performed, for example, before or after step S15 in FIG.

まず、誤り訂正データ生成部180は、生成された超曲面に基づき、各対象iの固定値ベクトルZiを生成する(ステップS351)。このステップは、図2のステップS13における処理の一部と同じである。 First, the error correction data generation unit 180 generates a fixed value vector Zi for each target i based on the generated hypersurface surface (step S351). This step is the same as a part of the process in step S13 of FIG.

すなわち、超曲面を表す関数f1乃至fL2の集合F()=(f1(),f2(),...,fL2())を用いて、ベクトルYi=(yi,1,yi,2,...,yi,L2)=F(Xi)=(f1(Xi),f2(Xi),...,fL2(Xi))を算出する。さらに、このベクトルYiの各要素yi,jについてround()を適用することで離散化し、固定値ベクトルZiを生成する。 That is, the vector Yi = (y i, 1 ) using the set F () = (f 1 (), f 2 (), ..., f L2 ()) of the functions f 1 to f L 2 representing the hypersurface. , Y i, 2 , ..., y i, L2 ) = F (Xi) = (f 1 (Xi), f 2 (Xi), ..., f L2 (Xi)). Further, the fixed value vector Zi is generated by discretizing each element y i, j of the vector Y i by applying round ().

配信部160bは、この固定値ベクトルZiそのものを誤り訂正データとして、各検出装置200bに配信する(ステップS353)。Ziについては全ての対象i(1≦i≦L3)について各検出装置200bに送信してもよいし、本実施の形態以外の実施の態様において誤り訂正能力が低い対象のみに限定して各検出装置200bに配信し、他の実施の形態の誤り訂正方式と組み合わせても良い。 The distribution unit 160b distributes the fixed value vector Zi itself as error correction data to each detection device 200b (step S353). Regarding Zi, all the objects i (1 ≦ i ≦ L3) may be transmitted to each detection device 200b, or each detection is limited to the objects having low error correction capability in the embodiments other than the present embodiment. It may be delivered to the apparatus 200b and combined with an error correction method of another embodiment.

このデータについても、オフラインで配布するようにしてもよい。 This data may also be distributed offline.

これに対して、検出装置200bでは、図24に示すような処理を実行する。 On the other hand, the detection device 200b executes the process as shown in FIG. 24.

まず、測定部210は、特定の対象に対して所定の測定を行って、測定結果に基づき、L1次元のベクトルXを生成し、測定データ格納部220に格納する(ステップS361)。このステップは、図17のステップS201と同じである。 First, the measurement unit 210 makes a predetermined measurement on a specific target, generates an L1 dimensional vector X based on the measurement result, and stores it in the measurement data storage unit 220 (step S361). This step is the same as step S201 in FIG.

そして、抽出部230bは、情報処理装置100bから配信され且つパラメータ格納部260に格納されているパラメータに係る超曲面で、ベクトルXを評価して、対象の候補ベクトルを生成する(ステップS363)。このステップは、図17のステップS203と同じであるが、以下で誤り訂正のための処理を行うので候補ベクトルとして示している。 Then, the extraction unit 230b evaluates the vector X on the hypersurface related to the parameter distributed from the information processing device 100b and stored in the parameter storage unit 260, and generates a target candidate vector (step S363). This step is the same as step S203 in FIG. 17, but is shown as a candidate vector because processing for error correction is performed below.

その後、抽出部230bは、誤り訂正データ格納部270に格納されている固定値ベクトルと候補ベクトルとを比較して、候補ベクトルに最も近い固定値ベクトルを特定して、出力する(ステップS365)。 After that, the extraction unit 230b compares the fixed value vector stored in the error correction data storage unit 270 with the candidate vector, identifies the fixed value vector closest to the candidate vector, and outputs the fixed value vector (step S365).

このような処理を行うようにしても、確実に対象の固定値ベクトルを得ることができるようになる。また、Xi自体を保存するよりデータサイズを削減でき、Xiに特徴が無いようなランダムなデータに対してもデータサイズを削減できる。 Even if such processing is performed, the target fixed value vector can be surely obtained. In addition, the data size can be reduced compared to saving the Xi itself, and the data size can be reduced even for random data that has no feature in the Xi.

以上本発明の実施の形態を説明したが、本発明はこれに限定されるものではない。例えば、処理フローは一例であって、処理結果が変わらない限り、ステップの順番入れ替えや複数ステップの並列実行を行うようにしてもよい。 Although the embodiments of the present invention have been described above, the present invention is not limited thereto. For example, the processing flow is an example, and as long as the processing result does not change, the order of the steps may be changed or a plurality of steps may be executed in parallel.

なお、上で述べた情報処理装置100及び100b並びに検出装置200及び200bの少なくとも一部は、コンピュータ装置であって、図25に示すように、メモリ2501とCPU(Central Processing Unit)2503とハードディスク・ドライブ(HDD:Hard Disk Drive)2505と表示装置2509に接続される表示制御部2507とリムーバブル・ディスク2511用のドライブ装置2513と入力装置2515とネットワークに接続するための通信制御部2517とがバス2519で接続されている。なお、HDDはソリッドステート・ドライブ(SSD:Solid State Drive)などの記憶装置でもよい。オペレーティング・システム(OS:Operating System)及び本発明の実施の形態における処理を実施するためのアプリケーション・プログラムは、HDD2505に格納されており、CPU2503により実行される際にはHDD2505からメモリ2501に読み出される。CPU2503は、アプリケーション・プログラムの処理内容に応じて表示制御部2507、通信制御部2517、ドライブ装置2513を制御して、所定の動作を行わせる。また、処理途中のデータについては、主としてメモリ2501に格納されるが、HDD2505に格納されるようにしてもよい。本技術の実施例では、上で述べた処理を実施するためのアプリケーション・プログラムはコンピュータ読み取り可能なリムーバブル・ディスク2511に格納されて頒布され、ドライブ装置2513からHDD2505にインストールされる。インターネットなどのネットワーク及び通信制御部2517を経由して、HDD2505にインストールされる場合もある。このようなコンピュータ装置は、上で述べたCPU2503、メモリ2501などのハードウエアとOS及びアプリケーション・プログラムなどのプログラムとが有機的に協働することにより、上で述べたような各種機能を実現する。 At least a part of the information processing devices 100 and 100b and the detection devices 200 and 200b described above are computer devices, and as shown in FIG. 25, a memory 2501, a CPU (Central Processing Unit) 2503, and a hard disk. The drive (HDD: Hard Disk Drive) 2505, the display control unit 2507 connected to the display device 2509, the drive device 2513 for the removable disk 2511, the input device 2515, and the communication control unit 2517 for connecting to the network are connected to the bus 2519. It is connected with. The HDD may be a storage device such as a solid state drive (SSD). The operating system (OS) and the application program for performing the processing according to the embodiment of the present invention are stored in the HDD 2505 and read from the HDD 2505 to the memory 2501 when executed by the CPU 2503. .. The CPU 2503 controls the display control unit 2507, the communication control unit 2517, and the drive device 2513 according to the processing contents of the application program to perform a predetermined operation. Further, the data in the process of processing is mainly stored in the memory 2501, but may be stored in the HDD 2505. In an embodiment of the present technology, the application program for performing the above-described processing is stored and distributed on a computer-readable removable disk 2511 and installed from the drive device 2513 to the HDD 2505. It may be installed on the HDD 2505 via a network such as the Internet and a communication control unit 2517. Such a computer device realizes various functions as described above by organically collaborating with the hardware such as the CPU 2503 and the memory 2501 described above and the program such as the OS and the application program. ..

なお、上で述べたような処理を実行することで用いられるデータは、処理途中のものであるか、処理結果であるかを問わず、メモリ2501又はHDD2505等の記憶装置に格納される。 The data used by executing the processing as described above is stored in a storage device such as a memory 2501 or an HDD 2505 regardless of whether the data is in the middle of processing or is the processing result.

以上述べた実施の形態をまとめると以下のようになる。 The above-described embodiments can be summarized as follows.

本実施の形態の第1の態様に係る情報処理方法は、(A)複数の対象の各々を表す入力ベクトルを取得するステップと、(B)入力ベクトルを包含する空間を複数の対象の各々を表す入力ベクトルが異なる部分空間に含まれるように分割し、且つ複数の対象の各々を識別するユニークなベクトルを生成するのに用いられる複数の超曲面を生成するステップとを含む。 The information processing method according to the first aspect of the present embodiment includes (A) a step of acquiring an input vector representing each of a plurality of objects, and (B) each of the plurality of objects in a space including the input vector. It includes a step of dividing the input vector to be represented into different subspaces and generating a plurality of hypersurfaces used to generate a unique vector that identifies each of the plurality of objects.

このような性質を有する超曲面を生成して保持しておくことにより、対象にID等が付されていない状況や対象を変更したり加工したりできない状況においても、後の抽出フェーズ(又は検出フェーズ)において、対象から固有のデータを確実に抽出できるようになる。 By generating and holding a hypersurface surface having such properties, even in a situation where the target is not given an ID or the like or the target cannot be changed or processed, a later extraction phase (or detection) is performed. In the phase), it becomes possible to reliably extract unique data from the target.

なお、上記情報処理方法は、(C)生成された複数の超曲面のパラメータを、複数の対象の少なくともいずれかに対して当該対象を識別するユニークなベクトルを生成する装置に出力するステップをさらに含むようにしてもよい。このような装置に超曲面のパラメータを出力しておけば、当該装置で対象を識別するユニークなベクトルを生成できるようになり、当該ユニークなベクトルを基に属性データの抽出その他の後処理を容易にできるようになる。 The information processing method further includes (C) a step of outputting the parameters of the generated hypersurface surface to an apparatus that generates a unique vector that identifies the target with respect to at least one of the plurality of targets. It may be included. If the parameters of the hypersurface are output to such a device, it becomes possible to generate a unique vector that identifies the object with the device, and it is easy to extract attribute data and other post-processing based on the unique vector. Will be able to.

さらに、上記情報処理方法は、(D)上記ユニークなベクトルの誤り訂正のためのデータを生成し、上記装置に出力するステップをさらに含むようにしてもよい。上記装置における測定におけるノイズにより適切に対処できるようになる。 Further, the information processing method may further include (D) a step of generating data for error correction of the unique vector and outputting it to the apparatus. The noise in the measurement in the above device can be dealt with appropriately.

なお、上で述べた複数の超曲面を生成するステップにおいて、複数の超曲面又は複数の超曲面のうち一定数以上の超曲面が、複数の対象の各々を表す入力ベクトルを当該超曲面で写像した点と閾値との距離が所定値以上離れるように生成されるようにしてもよい。ノイズ耐性が高まる。 In the step of generating the plurality of hypersurfaces described above, a certain number or more of the plurality of hypersurfaces or the plurality of hypersurfaces map an input vector representing each of the plurality of objects on the hypersurface. It may be generated so that the distance between the point and the threshold value is separated by a predetermined value or more. Increased noise immunity.

さらに、上で述べた複数の超曲面を生成するステップにおいて、複数の超曲面が、互いの類似度が閾値未満であるように生成されるようにしてもよい。分布の偏りを是正できるようになる。 Further, in the step of generating the plurality of hypersurfaces described above, the plurality of hypersurfaces may be generated so that their similarity to each other is less than the threshold value. You will be able to correct the distribution bias.

さらに、上で述べた誤り訂正のためのデータを生成する処理が、(d1)複数の対象の各々を表す入力ベクトルを、生成された前記複数の超曲面を用いて評価することで、複数の対象の各々を識別するユニークなベクトルを生成するステップと、(d2)上記ユニークなベクトルの各々に対して、誤り訂正符号による冗長データを生成するステップと、(d3)複数の対象の各々を表す入力ベクトルを入力とし、当該対象についてのユニークなベクトルに対する冗長データを出力とするモデルに対して機械学習を実行し、学習済みモデルを生成するステップとを含むようにしてもよい。既によく知られている誤り訂正符号を活用するものである。 Further, in the process of generating data for error correction described above, (d1) a plurality of input vectors representing each of a plurality of objects are evaluated by using the generated plurality of super-curved surfaces. It represents a step of generating a unique vector for identifying each of the objects, (d2) a step of generating redundant data with an error correction code for each of the above unique vectors, and (d3) each of a plurality of objects. It may include a step of performing machine learning on a model that takes an input vector as an input and outputs redundant data for a unique vector about the target, and generates a trained model. It utilizes an already well-known error correction code.

また、上で述べた誤り訂正のためのデータを生成する処理が、(d4)複数の対象の各々を表す入力ベクトルを、生成された複数の超曲面を用いて評価することで、複数の対象の各々を識別するユニークなベクトルを生成するステップと、(d5)複数の対象の各々を識別するユニークなベクトルにおける一部の要素を出力とし、当該ユニークなベクトルにおける上記一部の要素以外の要素を入力とするモデルに対して機械学習を実行し、上記ユニークなベクトルの全ての要素を推測できるように複数の学習済みモデルを生成するステップとを含むようにしてもよい。このようにすれば、対象を識別するユニークなベクトルを相補的に復元するための学習済みモデルが得られるようになる。 Further, the process of generating data for error correction described above (d4) evaluates an input vector representing each of a plurality of objects by using a plurality of generated hypersurfaces, thereby performing a plurality of objects. The step of generating a unique vector that identifies each of the above, and (d5) some elements in the unique vector that identifies each of the plurality of objects are output, and elements other than the above-mentioned some elements in the unique vector are output. It may include a step of performing machine learning on a model of input and generating a plurality of trained models so that all the elements of the unique vector can be inferred. In this way, a trained model for complementarily reconstructing a unique vector that identifies an object can be obtained.

さらに、上で述べた誤り訂正のためのデータを生成する処理が、(d6)複数の対象の各々を表す入力ベクトルを、生成された複数の超曲面を用いて評価することで、複数の対象の各々を識別するユニークなベクトルを生成するステップを含むようにしてもよい。対象の個数分のユニークなベクトルが誤り訂正データとして生成されるためデータサイズは大きくなる場合があるが、誤り訂正データ生成のための処理負荷は低い。 Further, the process of generating data for error correction described above (d6) evaluates an input vector representing each of a plurality of objects by using a plurality of generated hypersurfaces, thereby performing a plurality of objects. It may include steps to generate a unique vector that identifies each of the above. Since unique vectors for the number of targets are generated as error correction data, the data size may be large, but the processing load for generating error correction data is low.

本実施の形態の第2の態様に係る情報処理方法は、(A)複数の対象に含まれる特定の対象を表すベクトルを取得するステップと、(B)上記ベクトルを包含する空間を複数の対象の各々が異なる部分空間に含まれるように分割し且つ予め保持している複数の超曲面を用いて、特定の対象を表すベクトルを評価することで、特定の対象を識別するベクトルを生成する生成ステップとを含む。 The information processing method according to the second aspect of the present embodiment includes (A) a step of acquiring a vector representing a specific object included in a plurality of objects, and (B) a space including the above vectors. Generate a vector that identifies a specific object by evaluating a vector that represents a specific object using a plurality of hypersurfaces that are divided and held in advance so that each of them is contained in a different subspace. Including steps.

このように、上記のような性質を有する超曲面のデータを予め得ておけば、対象にID等が付されていない状況においても、対象から固有のデータを確実に抽出できる。そして、生成されたベクトルを用いれば、例えば、対応付けられた属性データなどを取得して、様々な処理を行うことができるようになる。 As described above, if the data of the hypersurface surface having the above-mentioned properties is obtained in advance, unique data can be reliably extracted from the target even in a situation where the target is not given an ID or the like. Then, by using the generated vector, for example, it becomes possible to acquire the associated attribute data and perform various processes.

なお、上記情報処理方法は、(C)予め保持している、誤り訂正のためのデータを用いて、生成された上記ベクトルに対する誤り訂正処理を行うステップをさらに含むようにしてもよい。 The information processing method may further include (C) a step of performing error correction processing on the generated vector by using the data for error correction held in advance.

例えば、誤り訂正のためのデータが、ある対象を表す入力ベクトルを入力とし、当該ある対象についての、誤り訂正符号による冗長データを出力とする機械学習の学習済みモデルである場合、上で述べた誤り訂正処理が、(c1)特定の対象を表す入力ベクトルから、学習済みモデルにより、誤り訂正符号による冗長データを生成するステップと、(c2)誤り訂正符号に基づき、特定の対象を識別するベクトルと生成された冗長データとから、特定の対象を識別する訂正後のベクトルを生成するステップとを含むようにしてもよい。このような学習済みモデルを用いることで誤り訂正のための冗長データを復元でき、既によく知られている誤り訂正符号を活用して対象を識別するベクトルの誤りを訂正できるようになる。 For example, when the data for error correction is a machine-learned trained model in which an input vector representing an object is input and redundant data with an error correction code is output for the object, as described above. The error correction process (c1) generates redundant data with an error correction code from an input vector representing a specific target by a trained model, and (c2) a vector that identifies a specific target based on the error correction code. And the generated redundant data, a step of generating a corrected vector that identifies a specific target may be included. By using such a trained model, redundant data for error correction can be restored, and an error in a vector that identifies an object can be corrected by utilizing an already well-known error correction code.

また、誤り訂正のためのデータが、複数の対象の各々を識別するユニークなベクトルである場合、上で述べた誤り訂正処理が、(c3)複数の対象の各々を識別するユニークなベクトルのうち、特定の対象を識別するベクトルと最も近いユニークなベクトルを特定するステップを含むようにしてもよい。 Further, when the data for error correction is a unique vector that identifies each of the plurality of objects, the error correction process described above is (c3) among the unique vectors that identify each of the plurality of objects. , May include a step of identifying a unique vector that is closest to the vector that identifies a particular object.

さらに、誤り訂正のためのデータが、ある対象のためのベクトルにおける一部の要素を出力とし、当該ある対象のためのベクトルにおける上記一部の要素以外の要素を入力とし、ある対象のためのベクトルの全ての要素を推測できるように複数生成された学習済みモデルである場合、上で述べた生成ステップが、(b1)複数の超曲面により入力ベクトルを変換することで得られる第1ベクトルから、上記学習済みモデルにより、第2ベクトルを生成する第1ステップと、(b2)第1ベクトルと第2ベクトルとの要素毎の比較に基づき、候補となるベクトルを生成する第2ステップと、(b3)候補となるベクトルの各要素が、要素毎の離散化処理における閾値との差が所定値以上となるか判定する第3ステップと、(b4)候補となるベクトルの各要素が、要素毎の離散化処理における閾値との差が所定値以上となる場合には、候補となるベクトルの各要素に対して離散化処理を実行するステップと、(b5)候補となるベクトルの各要素が、要素毎の離散化処理における閾値との差が所定値未満である場合には、候補となるベクトルを第1ベクトルとして、第1ステップ乃至第3ステップを実行するステップとを含むようにしてもよい。 Further, the data for error correction has some elements in the vector for a certain object as an output, and elements other than the above-mentioned some elements in the vector for the certain object as inputs, and for a certain object. In the case of a trained model in which all the elements of the vector can be inferred, the generation step described above is (b1) from the first vector obtained by transforming the input vector by the plurality of supercurves. , The first step of generating the second vector by the trained model, and (b2) the second step of generating the candidate vector based on the element-by-element comparison between the first vector and the second vector, and ( b3) The third step of determining whether each element of the candidate vector has a difference from the threshold value in the dispersal processing for each element is equal to or more than a predetermined value, and (b4) each element of the candidate vector is element-by-element. When the difference from the threshold value in the dispersal processing of is greater than or equal to a predetermined value, the step of executing the dispersal process for each element of the candidate vector and (b5) each element of the candidate vector are When the difference from the threshold value in the dispersal processing for each element is less than a predetermined value, the candidate vector may be set as the first vector, and the steps of executing the first step to the third step may be included.

以上述べた情報処理方法をコンピュータに実行させるためのプログラムを作成することができて、そのプログラムは、様々な記憶媒体に記憶される。 A program for causing a computer to execute the information processing method described above can be created, and the program is stored in various storage media.

また、上で述べたような情報処理方法を実行する情報処理装置は、1台のコンピュータで実現される場合もあれば、複数台のコンピュータで実現される場合もあり、それらを合わせて情報処理システム又は単にシステムと呼ぶものとする。 Further, the information processing device that executes the information processing method as described above may be realized by one computer or a plurality of computers, and information processing may be performed by combining them. It shall be referred to as a system or simply a system.

100,100b 情報処理装置
110 測定部
120 第1データ格納部
130 パラメータ生成部
140 第2データ格納部
150 登録部
160,160b 配信部
170 対象DB
180 誤り訂正データ生成部
190 第3データ格納部
200,200b 検出装置
210 測定部
220 測定データ格納部
230,230b 抽出部
240 後処理部
250 設定部
260 パラメータ格納部
270 誤り訂正データ格納部
100,100b Information processing device 110 Measuring unit 120 First data storage unit 130 Parameter generation unit 140 Second data storage unit 150 Registration unit 160, 160b Distribution unit 170 Target DB
180 Error correction data generation unit 190 Third data storage unit 200, 200b Detection device 210 Measurement unit 220 Measurement data storage unit 230, 230b Extraction unit 240 Post-processing unit 250 Setting unit 260 Parameter storage unit 270 Error correction data storage unit

Claims (15)

複数の対象の各々を表す入力ベクトルを取得するステップと、
前記入力ベクトルを包含する空間を前記複数の対象の各々を表す入力ベクトルが異なる部分空間に含まれるように分割し、且つ前記複数の対象の各々を識別するユニークなベクトルを生成するのに用いられる複数の超曲面を生成するステップと、
を、コンピュータに実行させるためのプログラム。
A step to get an input vector representing each of multiple objects,
It is used to divide the space containing the input vector so that the input vectors representing each of the plurality of objects are included in different subspaces, and to generate a unique vector that identifies each of the plurality of objects. Steps to generate multiple hypersurfaces and
A program to make a computer execute.
生成された前記複数の超曲面のパラメータを、前記複数の対象の少なくともいずれかに対して当該対象を識別するユニークなベクトルを生成する装置に出力するステップ
を、コンピュータにさらに実行させるための請求項1記載のプログラム。
A claim for causing a computer to further perform a step of outputting the generated parameters of the plurality of hypersurfaces to a device that generates a unique vector that identifies the target for at least one of the plurality of objects. 1 The program described.
前記ユニークなベクトルの誤り訂正のためのデータを生成し、前記装置に出力するステップ
を、コンピュータにさらに実行させるための請求項2記載のプログラム。
The program according to claim 2, wherein the computer further performs a step of generating data for error correction of the unique vector and outputting the data to the apparatus.
前記複数の超曲面を生成するステップにおいて、
前記複数の超曲面又は前記複数の超曲面のうち一定数以上の超曲面が、前記複数の対象の各々を表す入力ベクトルを当該超曲面で写像した点と閾値との距離が所定値以上離れるように生成される
請求項1乃至3のいずれか1つ記載のプログラム。
In the step of generating the plurality of hypersurfaces,
The distance between the plurality of hypersurfaces or the point at which a certain number or more of the plurality of hypersurfaces map the input vector representing each of the plurality of objects on the hypersurface and the threshold value is separated by a predetermined value or more. The program according to any one of claims 1 to 3 generated in.
前記複数の超曲面を生成するステップにおいて、
前記複数の超曲面が、互いの類似度が閾値未満であるように生成される
請求項1乃至4のいずれか1つ記載のプログラム。
In the step of generating the plurality of hypersurfaces,
The program according to any one of claims 1 to 4, wherein the plurality of hypersurfaces are generated so that their similarity to each other is less than a threshold value.
前記誤り訂正のためのデータを生成する処理が、
前記複数の対象の各々を表す入力ベクトルを、生成された前記複数の超曲面を用いて評価することで、前記複数の対象の各々を識別するユニークなベクトルを生成するステップと、
前記ユニークなベクトルの各々に対して、誤り訂正符号による冗長データを生成するステップと、
前記複数の対象の各々を表す入力ベクトルを入力とし、当該対象についての前記ユニークなベクトルに対する冗長データを出力とするモデルに対して機械学習を実行し、学習済みモデルを生成するステップと、
を含む請求項3記載のプログラム。
The process of generating data for error correction is
A step of generating a unique vector that identifies each of the plurality of objects by evaluating an input vector representing each of the plurality of objects using the generated plurality of hypersurface surfaces.
For each of the unique vectors, a step of generating redundant data with an error correction code, and
A step of executing machine learning on a model that takes an input vector representing each of the plurality of objects as an input and outputs redundant data for the unique vector for the object to generate a trained model.
3. The program according to claim 3.
前記誤り訂正のためのデータを生成する処理が、
前記複数の対象の各々を表す入力ベクトルを、生成された前記複数の超曲面を用いて評価することで、前記複数の対象の各々を識別するユニークなベクトルを生成するステップと、
前記複数の対象の各々を識別する前記ユニークなベクトルにおける一部の要素を出力とし、当該ユニークなベクトルにおける前記一部の要素以外の要素を入力とするモデルに対して機械学習を実行し、前記ユニークなベクトルの全ての要素を推測できるように複数の学習済みモデルを生成するステップと、
を含む請求項3記載のプログラム。
The process of generating data for error correction is
A step of generating a unique vector that identifies each of the plurality of objects by evaluating an input vector representing each of the plurality of objects using the generated plurality of hypersurface surfaces.
Machine learning is executed on a model that outputs a part of the elements in the unique vector that identifies each of the plurality of objects and inputs elements other than the part of the unique vector. Steps to generate multiple trained models so that you can infer all the elements of a unique vector,
3. The program according to claim 3.
前記誤り訂正のためのデータを生成する処理が、
前記複数の対象の各々を表す入力ベクトルを、生成された前記複数の超曲面を用いて評価することで、前記複数の対象の各々を識別するユニークなベクトルを生成するステップ
を含む、請求項3記載のプログラム。
The process of generating data for error correction is
3. The third aspect of the present invention includes a step of generating a unique vector that identifies each of the plurality of objects by evaluating an input vector representing each of the plurality of objects using the generated plurality of hypersurface surfaces. Described program.
複数の対象に含まれる特定の対象を表すベクトルを取得するステップと、
前記ベクトルを包含する空間を前記複数の対象の各々が異なる部分空間に含まれるように分割し且つ予め保持している複数の超曲面を用いて、前記特定の対象を表すベクトルを評価することで、前記特定の対象を識別するベクトルを生成する生成ステップと、
を、コンピュータに実行させるためのプログラム。
A step to get a vector representing a specific object contained in multiple objects, and
By dividing the space containing the vector so that each of the plurality of objects is included in a different subspace and using a plurality of hypersurfaces held in advance, the vector representing the specific object is evaluated. , A generation step that generates a vector that identifies the particular object,
A program to make a computer execute.
予め保持している、誤り訂正のためのデータを用いて、生成された前記ベクトルに対する誤り訂正処理を行うステップ
を前記コンピュータにさらに実行させる請求項9記載のプログラム。
The program according to claim 9, wherein the computer further executes a step of performing error correction processing on the generated vector using the data for error correction held in advance.
前記誤り訂正のためのデータが、ある対象を表す入力ベクトルを入力とし、当該ある対象についての、誤り訂正符号による冗長データを出力とする機械学習の学習済みモデルである場合、
前記誤り訂正処理が、
前記特定の対象を表す入力ベクトルから、前記学習済みモデルにより、前記誤り訂正符号による冗長データを生成するステップと、
前記誤り訂正符号に基づき、前記特定の対象を識別するベクトルと生成された前記冗長データとから、前記特定の対象を識別する訂正後のベクトルを生成するステップと、
を含む請求項10記載のプログラム。
When the data for error correction is a machine learning trained model in which an input vector representing an object is input and redundant data with an error correction code is output for the object.
The error correction process
A step of generating redundant data with the error correction code from the input vector representing the specific target by the trained model, and
A step of generating a corrected vector that identifies the specific target from the vector that identifies the specific target and the generated redundant data based on the error correction code.
10. The program according to claim 10.
前記誤り訂正のためのデータが、前記複数の対象の各々を識別するユニークなベクトルである場合、
前記誤り訂正処理が、
前記複数の対象の各々を識別するユニークなベクトルのうち、前記特定の対象を識別するベクトルと最も近いユニークなベクトルを特定するステップ
を含む請求項10記載のプログラム。
When the data for error correction is a unique vector that identifies each of the plurality of objects,
The error correction process
The program according to claim 10, further comprising a step of identifying a unique vector that is closest to the vector that identifies the specific object among the unique vectors that identify each of the plurality of objects.
誤り訂正のためのデータが、
ある対象のためのベクトルにおける一部の要素を出力とし、当該ある対象のためのベクトルにおける前記一部の要素以外の要素を入力とし、前記ある対象のためのベクトルの全ての要素を推測できるように複数生成された学習済みモデルである場合、
前記生成ステップが、
前記複数の超曲面により前記入力ベクトルを変換することで得られる第1ベクトルから、前記学習済みモデルにより、第2ベクトルを生成する第1ステップと、
前記第1ベクトルと前記第2ベクトルとの要素毎の比較に基づき、候補となるベクトルを生成する第2ステップと、
前記候補となるベクトルの各要素が、要素毎の離散化処理における閾値との差が所定値以上となるか判定する第3ステップと、
前記候補となるベクトルの各要素が、要素毎の離散化処理における閾値との差が所定値以上となる場合には、前記候補となるベクトルの各要素に対して前記離散化処理を実行するステップと、
前記候補となるベクトルの各要素が、要素毎の離散化処理における閾値との差が所定値未満である場合には、前記候補となるベクトルを前記第1ベクトルとして、前記第1ステップ乃至第3ステップを実行するステップと、
を含む請求項9記載のプログラム。
Data for error correction
To be able to infer all the elements of the vector for the object by using some elements in the vector for the object as the output and the elements other than the part of the elements in the vector for the object as the input. If there are multiple trained models generated in
The generation step
The first step of generating the second vector by the trained model from the first vector obtained by transforming the input vector by the plurality of hypersurface surfaces.
The second step of generating a candidate vector based on the element-by-element comparison between the first vector and the second vector, and
The third step of determining whether each element of the candidate vector has a difference from the threshold value in the discretization process for each element is equal to or larger than a predetermined value.
When each element of the candidate vector has a difference from the threshold value in the discretization process for each element of a predetermined value or more, the step of executing the discretization process for each element of the candidate vector. When,
When each element of the candidate vector has a difference from the threshold value in the discretization process for each element less than a predetermined value, the candidate vector is used as the first vector, and the first step to the third step are performed. Steps to perform steps and
9. The program according to claim 9.
複数の対象の各々を表す入力ベクトルを取得する手段と、
前記入力ベクトルを包含する空間を前記複数の対象の各々を表す入力ベクトルが異なる部分空間に含まれるように分割し、且つ前記複数の対象の各々を識別するユニークなベクトルを生成するのに用いられる複数の超曲面を生成する手段と、
を有する情報処理システム。
A means to obtain an input vector representing each of multiple objects,
It is used to divide the space containing the input vector so that the input vectors representing each of the plurality of objects are included in different subspaces, and to generate a unique vector that identifies each of the plurality of objects. A means to generate multiple hypersurfaces,
Information processing system with.
複数の対象に含まれる特定の対象を表すベクトルを取得する手段と、
前記ベクトルを包含する空間を前記複数の対象の各々が異なる部分空間に含まれるように分割し且つ予め保持している複数の超曲面を用いて、前記特定の対象を表すベクトルを評価することで、前記特定の対象を識別するベクトルを生成する手段と、
を有する情報処理システム。
A means to obtain a vector representing a specific object included in multiple objects, and
By dividing the space containing the vector so that each of the plurality of objects is included in a different subspace and using a plurality of hypersurfaces held in advance, the vector representing the specific object is evaluated. , A means of generating a vector that identifies the particular object, and
Information processing system with.
JP2019190852A 2019-10-18 2019-10-18 Identification auxiliary data generation technology and identification information extraction technology Active JP7416400B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2019190852A JP7416400B2 (en) 2019-10-18 2019-10-18 Identification auxiliary data generation technology and identification information extraction technology

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019190852A JP7416400B2 (en) 2019-10-18 2019-10-18 Identification auxiliary data generation technology and identification information extraction technology

Publications (2)

Publication Number Publication Date
JP2021068004A true JP2021068004A (en) 2021-04-30
JP7416400B2 JP7416400B2 (en) 2024-01-17

Family

ID=75638447

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019190852A Active JP7416400B2 (en) 2019-10-18 2019-10-18 Identification auxiliary data generation technology and identification information extraction technology

Country Status (1)

Country Link
JP (1) JP7416400B2 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008134889A (en) * 2006-11-29 2008-06-12 National Institute Of Information & Communication Technology Opinion collection system, opinion collection method, and opinion collection program
WO2010101187A1 (en) * 2009-03-04 2010-09-10 公立大学法人大阪府立大学 Method and program for creating image database, and method for retrieving image
WO2014118980A1 (en) * 2013-02-01 2014-08-07 富士通株式会社 Information conversion method, information conversion device, and information conversion program
JP2017117180A (en) * 2015-12-24 2017-06-29 ファナック株式会社 Control device having learning function for detecting occurrence factor of noise

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008134889A (en) * 2006-11-29 2008-06-12 National Institute Of Information & Communication Technology Opinion collection system, opinion collection method, and opinion collection program
WO2010101187A1 (en) * 2009-03-04 2010-09-10 公立大学法人大阪府立大学 Method and program for creating image database, and method for retrieving image
WO2014118980A1 (en) * 2013-02-01 2014-08-07 富士通株式会社 Information conversion method, information conversion device, and information conversion program
JP2017117180A (en) * 2015-12-24 2017-06-29 ファナック株式会社 Control device having learning function for detecting occurrence factor of noise

Also Published As

Publication number Publication date
JP7416400B2 (en) 2024-01-17

Similar Documents

Publication Publication Date Title
US10713597B2 (en) Systems and methods for preparing data for use by machine learning algorithms
CN111079639B (en) Method, device, equipment and storage medium for constructing garbage image classification model
JP6599294B2 (en) Abnormality detection device, learning device, abnormality detection method, learning method, abnormality detection program, and learning program
CN105960647B (en) Compact face representation
US9342758B2 (en) Image classification based on visual words
US8515956B2 (en) Method and system for clustering datasets
JP6414363B2 (en) Prediction system, method and program
KR20160034814A (en) Client device with neural network and system including the same
JP6798614B2 (en) Image recognition device, image recognition method and image recognition program
US20210110215A1 (en) Information processing device, information processing method, and computer-readable recording medium recording information processing program
CN112434742A (en) Method, system and equipment for identifying Pompe frauds on Ether house
JP6311851B2 (en) Co-clustering system, method and program
CN111144548A (en) Method and device for identifying working condition of pumping well
US11550996B2 (en) Method and system for detecting duplicate document using vector quantization
WO2020168796A1 (en) Data augmentation method based on high-dimensional spatial sampling
CN110969172A (en) Text classification method and related equipment
CN114332500A (en) Image processing model training method and device, computer equipment and storage medium
CN113723070B (en) Text similarity model training method, text similarity detection method and device
Rahmi et al. Offline signature recognition using back propagation neural network
JP7416400B2 (en) Identification auxiliary data generation technology and identification information extraction technology
Fu et al. Minutia tensor matrix: A new strategy for fingerprint matching
CN116993548A (en) Incremental learning-based education training institution credit assessment method and system for LightGBM-SVM
Geurts et al. Gradient boosting for kernelized output spaces
Ruberto et al. Image feature learning with genetic programming
CN115909441A (en) Face recognition model establishing method, face recognition method and electronic equipment

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220628

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20230428

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230516

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20230526

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20230526

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230614

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20230926

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20231018

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20231027

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: 20231219

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20231222

R150 Certificate of patent or registration of utility model

Ref document number: 7416400

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150