JP6333082B2 - Processing device, arithmetic device, processing method, arithmetic method, processing program, and arithmetic program - Google Patents
Processing device, arithmetic device, processing method, arithmetic method, processing program, and arithmetic program Download PDFInfo
- Publication number
- JP6333082B2 JP6333082B2 JP2014128201A JP2014128201A JP6333082B2 JP 6333082 B2 JP6333082 B2 JP 6333082B2 JP 2014128201 A JP2014128201 A JP 2014128201A JP 2014128201 A JP2014128201 A JP 2014128201A JP 6333082 B2 JP6333082 B2 JP 6333082B2
- Authority
- JP
- Japan
- Prior art keywords
- trajectory information
- information
- node
- unit
- trajectory
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Description
本発明は、軌跡情報を処理する処理装置、処理方法及び処理プログラムと、軌跡情報に基づいて次のノードを演算する演算装置、演算方法、及び演算プログラムに関する。 The present invention relates to a processing device, a processing method, and a processing program that process trajectory information, and a computing device, a computing method, and a computing program that compute the next node based on the trajectory information.
従来技術には、プレフィックス木の識別器(分類器)に基づいて、次の場所を計算して求めるものがある(例えば、非特許文献1を参照)。 In the prior art, there is one that calculates and obtains the next location based on a prefix tree classifier (classifier) (see, for example, Non-Patent Document 1).
ところで、次のノード(例えば、場所)を計算して求めるときに、パブリッククラウドのようなプライバシーの保護が図られていないサードパーティが提供しているサーバ(以下、クラウドサーバという)を利用してしまうと、軌跡情報を含むクエリのプライバシーの保護が困難になる。つまり、クラウドサーバで次のノードを計算して求める過程において、軌跡情報のプライバシーの保護を図ることができない。 By the way, when calculating and determining the next node (for example, location), a server (hereinafter referred to as a cloud server) provided by a third party that does not protect privacy such as a public cloud is used. In such a case, it becomes difficult to protect the privacy of the query including the trajectory information. In other words, the privacy of the trajectory information cannot be protected in the process of calculating and obtaining the next node on the cloud server.
本発明では、プライバシーの保護を図りつつ、クラウドサーバを利用して次のノードを計算して求めることができる処理装置、演算装置、処理方法、演算方法、処理プログラム及び演算プログラムを提供することを目的とする。 The present invention provides a processing device, an arithmetic device, a processing method, an arithmetic method, a processing program, and an arithmetic program that can calculate and obtain the next node using a cloud server while protecting privacy. Objective.
処理装置は、複数のノードとエッジで構成されており、ユーザの行動履歴に基づいて作成された軌跡情報を受信する受信部と、前記受信部によって受信された軌跡情報にループ部分が存在する場合には、複数の軌跡情報に分割してループを解消する分割処理部と、軌跡情報を構成する各ノードに対して重み付けを行なう重み付け部と、前記重み付けが行われた軌跡情報に暗号化を行なう暗号化部と、前記暗号化部により暗号化された軌跡情報を送信する送信部とを備える構成である。 The processing device includes a plurality of nodes and edges, and a receiving unit that receives trajectory information created based on a user's behavior history, and a loop portion exists in the trajectory information received by the receiving unit Includes a division processing unit that divides a plurality of pieces of trajectory information to eliminate a loop, a weighting unit that weights each node constituting the trajectory information, and encrypts the weighted trajectory information. It is a structure provided with an encryption part and the transmission part which transmits the locus | trajectory information encrypted by the said encryption part.
処理装置では、前記分割処理部は、ループしているノードに向かって接続されているエッジを分断することにより複数の軌跡情報に分割してループを解消する構成でもよい。 In the processing device, the division processing unit may be configured to resolve the loop by dividing the edge connected toward the looped node into a plurality of pieces of trajectory information.
処理装置では、前記重み付け部は、時間的に古いノードに対して高い値が付くように、軌跡情報を構成する各ノードに対して値が重複しないように重み付けを行なう構成でもよい。 In the processing device, the weighting unit may be configured to perform weighting so that a value does not overlap each node constituting the trajectory information so that a high value is assigned to a node that is older in time.
演算装置は、送信されてきた暗号化されている軌跡情報を第1軌跡情報として受信する第1受信部と、ユーザ端末から暗号化されている軌跡情報を第2軌跡情報として受信する第2受信部と、前記第1受信部で受信した複数の前記第1軌跡情報を統合情報として統合する統合部と、前記第2軌跡情報に基づいて、前記統合情報を参照し、前記第2軌跡情報を構成している最後のノードに続く次のノードとして相応しいノードを算出する算出部と、前記算出部により算出されたノードの情報を前記ユーザ端末へ送信する送信部を備える構成である。 The computing device receives a first received trajectory information as the first trajectory information, and a second reception unit receives the encrypted trajectory information from the user terminal as the second trajectory information. Based on the second trajectory information, an integration unit that integrates a plurality of the first trajectory information received by the first reception unit, and the second trajectory information. It is a structure provided with the calculation part which calculates the node suitable as a next node following the last node which comprises, and the transmission part which transmits the information of the node calculated by the said calculation part to the said user terminal.
演算装置では、前記算出部は、前記第2軌跡情報を構成している最後のノードに続く次のノードとして相応しいノードを複数個算出し、前記送信部は、前記算出部で算出された複数個のノードの情報を前記ユーザ端末へ送信する構成でもよい。 In the arithmetic device, the calculation unit calculates a plurality of nodes suitable as the next node following the last node constituting the second trajectory information, and the transmission unit calculates the plurality of nodes calculated by the calculation unit. The node information may be transmitted to the user terminal.
処理方法は、複数のノードとエッジで構成されており、ユーザの行動履歴に基づいて作成された軌跡情報にループ部分が存在する場合には、複数の軌跡情報に分割してループを解消する分割処理工程と、軌跡情報を構成する各ノードに対して重み付けを行なう重み付け工程と、前記重み付けが行われた軌跡情報に暗号化を行なう暗号化工程と、前記暗号化工程により暗号化された軌跡情報を送信する送信工程とを備える構成である。 The processing method consists of a plurality of nodes and edges, and when there is a loop part in the trajectory information created based on the user's behavior history, the division that splits the trajectory information and eliminates the loop A processing step; a weighting step for weighting each node constituting the trajectory information; an encryption step for encrypting the weighted trajectory information; and the trajectory information encrypted by the encryption step. The transmission process of transmitting.
演算方法は、送信されてきた暗号化されている軌跡情報を第1軌跡情報として受信する第1受信工程と、ユーザ端末から暗号化されている軌跡情報を第2軌跡情報として受信する第2受信工程と、前記第1受信工程で受信した複数の前記第1軌跡情報を統合情報として統合する統合工程と、前記第2軌跡情報に基づいて、前記統合情報を参照し、前記第2軌跡情報を構成している最後のノードに続く次のノードとして相応しいノードを算出する算出工程と、前記算出工程により算出されたノードの情報を前記ユーザ端末へ送信する送信工程を備える構成である。 The calculation method includes a first receiving step of receiving transmitted encrypted trajectory information as first trajectory information, and a second reception of receiving encrypted trajectory information from the user terminal as second trajectory information. A step of integrating a plurality of the first trajectory information received in the first receiving step as integrated information, and referring to the integrated information based on the second trajectory information; It is a structure provided with the calculation process which calculates the node suitable as the next node following the last node which comprises, and the transmission process which transmits the information of the node calculated by the said calculation process to the said user terminal.
処理プログラムは、コンピュータに、複数のノードとエッジで構成されており、ユーザの行動履歴に基づいて作成された軌跡情報にループ部分が存在する場合には、複数の軌跡情報に分割してループを解消する分割処理工程と、軌跡情報を構成する各ノードに対して重み付けを行なう重み付け工程と、前記重み付けが行われた軌跡情報に暗号化を行なう暗号化工程と、前記暗号化工程により暗号化された軌跡情報を送信する送信工程とを実行させるためのプログラムである。 The processing program is composed of a plurality of nodes and edges in the computer, and if there is a loop portion in the trajectory information created based on the user's behavior history, the loop is divided into a plurality of trajectory information. The division processing step to be eliminated, the weighting step for weighting each node constituting the trajectory information, the encryption step for encrypting the weighted trajectory information, and the encryption step This is a program for executing the transmission step of transmitting the trajectory information.
演算プログラムは、コンピュータに、送信されてきた暗号化されている軌跡情報を第1軌跡情報として受信する第1受信工程と、ユーザ端末から暗号化されている軌跡情報を第2軌跡情報として受信する第2受信工程と、前記第1受信工程で受信した複数の前記第1軌跡情報を統合情報として統合する統合工程と、前記第2軌跡情報に基づいて、前記統合情報を参照し、前記第2軌跡情報を構成している最後のノードに続く次のノードとして相応しいノードを算出する算出工程と、前記算出工程により算出されたノードの情報を前記ユーザ端末へ送信する送信工程とを実行させるためのプログラムである。 The arithmetic program receives the encrypted trajectory information transmitted to the computer as first trajectory information, and receives the encrypted trajectory information from the user terminal as second trajectory information. Based on the second reception step, the integration step of integrating the plurality of first trajectory information received in the first reception step as integration information, and referring to the integration information based on the second trajectory information, the second A calculation step for calculating a node suitable as the next node following the last node constituting the trajectory information, and a transmission step for transmitting the node information calculated by the calculation step to the user terminal. It is a program.
本発明によれば、クラウドサーバを利用して次のノードを計算して求めることができる。 According to the present invention, the next node can be calculated and obtained using a cloud server.
本実施形態について以下に説明する。
プライバシーの保護を図りつつ、サードパーティによって運営されているサーバを利用して次のノードを計算処理して求める処理システム1は、図1に示すように、処理装置10と、演算装置20と、第1端末装置30と、第2端末装置40とから構成されている。第1端末装置30及び第2端末装置40は、スマートフォン、タブレット等の通信機能を有する端末装置であって、それぞれ複数の端末装置から構成されている。また、第2端末装置40は、ユーザにより所有される端末装置だけでなく、ユーザに代わって演算装置20に対して問合せを行なう第三者のサービスプロバイダにより所有される端末装置、情報処理装置、サーバ等であってもよい。
This embodiment will be described below.
As shown in FIG. 1, a
なお、第1端末装置30を構成している複数の端末装置と、第2端末装置40を構成している複数の端末装置とは、一部又は全部が重複していてもよい。
以下では、演算装置20は、パブリッククラウドのようなプライバシーの保護が図られていないサードパーティが提供しているサーバ(以下、クラウドサーバという)を想定して説明するが、これに限られない。
The plurality of terminal devices constituting the first
Hereinafter, the
処理装置10は、図2に示すように、受信部11と、分割処理部12と、重み付け部13と、暗号化部14と、送信部15とを備える。
受信部11は、複数のノードとエッジで構成されており、ユーザの行動履歴に基づいて作成された軌跡情報を第1端末装置30から受信する。
As illustrated in FIG. 2, the
The
分割処理部12は、受信部11によって受信された軌跡情報にループ部分が存在する場合には、複数の軌跡情報に分割してループを解消する。なお、分割処理部12により行われる分割処理は、第1端末装置30で行われてもよい。
When there is a loop portion in the trajectory information received by the receiving
重み付け部13は、軌跡情報を構成する各ノードに対して重み付けを行なう。
暗号化部14は、重み付けが行われた軌跡情報に暗号化を行なう。具体的には、暗号化部14は、演算装置20において、暗号化したまま演算処理が行えるように、準同型暗号方式を利用して軌跡情報に暗号化を行なう。
送信部15は、暗号化部14により暗号化された軌跡情報を演算装置20に送信する。
The
The
The
例えば、ユーザが訪れた場所をノードとして軌跡情報が構成されている場合、ユーザが同じ場所を訪れると、軌跡情報にループ部分が生じることになる。ループ部分が生じている軌跡情報の各ノードに重み付けを行ってしまうと、同じノードに対して重複して重み付けが行われてしまう。
そこで、処理装置10では、分割処理部12によって軌跡情報にループ部分が存在する場合には、複数の軌跡情報に分割してループを解消する。
For example, in the case where the trajectory information is configured with the location where the user visited as a node, when the user visits the same location, a loop portion is generated in the trajectory information. If weighting is performed on each node of the trajectory information in which the loop portion is generated, the same node is weighted repeatedly.
Therefore, in the
このようにして、処理装置10は、分割処理によって軌跡情報にループ部分が存在しないように処理するので、重み付け部13によって軌跡情報の各ノードに対して重複することなく重み付けを行なうことができる。
In this way, the
また、処理装置10は、軌跡情報に対して暗号化を行なうので、クラウドサーバとしての演算装置20に軌跡情報を送信しても、軌跡情報を提供したユーザのプライバシーを保護することができる。
Further, since the
分割処理部12は、ループしているノードに向かって接続されているエッジを分断することにより複数の軌跡情報に分割してループを解消する構成でもよい。
例えば、軌跡情報が「A→B→C→A→B→D→E→F」のように構成されており、ノードAでループしている場合を例にして説明する。
The
For example, the case where the trajectory information is configured as “A → B → C → A → B → D → E → F” and loops at the node A will be described as an example.
分割処理部12は、ループしている最初のノードであるノードAの手前のエッジで分割する。分割処理部12は、軌跡情報を「A→B→C」と「A→B→D→E→F」に分割する。さらに、分割処理部12は、ノードCからノードAに向かう情報を残すために、後者の軌跡情報を「C→A→B→D→E→F」に修正する。
このようにして、処理装置10は、分割処理によって軌跡情報にループ部分が存在しないように処理する。
The
In this way, the
重み付け部13は、時間的に古いノードに対して高い値が付くように、軌跡情報を構成する各ノードに対して値が重複しないように重み付けを行なう構成でもよい。
例えば、軌跡情報が「A→B→C→D→E」で構成されている場合、重み付け部13は、ノードAには「5」、ノードBには「4」、ノードCには「3」、ノードDには「2」、ノードDには「1」を付与する。
このようにして、処理装置10は、軌跡情報を構成する各ノードに対して重み付けを行なうことができる。
The
For example, when the trajectory information is composed of “A → B → C → D → E”, the
In this way, the
演算装置20は、図3に示すように、第1受信部21と、第2受信部22と、統合部23と、算出部24と、送信部25とを備える。
第1受信部21は、処理装置10によって送信されてきた暗号化されている軌跡情報を第1軌跡情報として受信する。
第2受信部22は、第2端末装置40から暗号化されている軌跡情報を第2軌跡情報として受信する。
As illustrated in FIG. 3, the
The
The
統合部23は、第1受信部21で受信した複数の第1軌跡情報を統合情報として統合する。
ここで、統合情報ついて説明する。第1受信部21は、例えば、処理装置10からの複数ユーザ(以下に示す、A氏、B氏、C氏、D氏、E氏)の暗号化されている軌跡情報を受信したものとする。例えば、A氏の軌跡情報は、分割及び重み付けが行われており、「A(5)→B(4)→C(3)→D(2)→E(1)」及び「C(3)→B(2)→A(1)」であるとする。例えば、B氏の軌跡情報は、「E(3)→C(2)→A(1)」であるとする。例えば、C氏の軌跡情報は、「B(3)→E(2)→C(1)」であるとする。例えば、D氏の軌跡情報は、例えば、「A(3)→D(2)→E(1)」であるとする。例えば、E氏の軌跡情報は、例えば、「F(4)→G(3)→H(2)→I(1)」であるとする。カッコ内の数字は、重み付け部13によって行われた重み付け値である。
The integrating
Here, the integrated information will be described. For example, the
統合部23は、図4に示すように、受信した軌跡情報をマージして、統合情報を生成する。なお、図4に示す表の左端のカラム(図4中のX)は、処理装置10から演算装置20に送信する際に削除されているので、統合情報に含まれない。
As shown in FIG. 4, the
また、処理装置10の重み付け部13は、上述に限らず、図5に示すように、1になるように正規化して重み付けを行ってもよい。なお、図5に示す表の左端のカラム(図5中のX)は、処理装置10から演算装置20に送信する際に削除されているので、統合情報に含まれない。また、図4及び図5に示す統合情報は、一例であって、これに限られない。
Further, the
算出部24は、第2軌跡情報に基づいて、統合情報を参照し、第2軌跡情報を構成している最後のノードに続く次のノードに相応しいノードを算出する。例えば、算出部24は、第2軌跡情報が「A→B」の場合、図4又は5に示す統合情報を参照し、「A→B」に続くノードとして重み付け値が最も高いノード「C」を算出する。
The
送信部25は、算出部24により算出されたノードの情報を第2端末装置40へ送信する。なお、送信部25から送信されるノードの情報も暗号化されている。
The
このようにして、演算装置20は、暗号化されている第1軌跡情報から統合情報を生成し、当該統合情報を参照して第2軌跡情報を構成している最後のノードに続く次のノードに相応しいノードを算出し、算出したノードの情報を第2端末装置40に送信する。よって、演算装置20は、プライバシーを保護しながら第2端末装置40に対して、次のノードの情報を提供することができる。
In this way, the
算出部24は、第2軌跡情報を構成している最後のノードに続く次のノードに相応しいノードを複数個算出する構成でもよい。
送信部25は、算出部24で算出された複数個のノードの情報を第2端末装置40へ送信する。
The
The
このようにして、演算装置20は、プライバシーを保護しながら第2端末装置40に対して、次のノードとして相応しい複数のノードを提供することができる。例えば、演算装置20は、第2軌跡情報が「A→B」の場合、統合情報を参照し、「A→B」に続くノードとして重み付け値が最も高いノードから順番に候補となるノードを算出し、算出したノードに順番を付けて第2端末装置40に提供することができる。
In this way, the
ここで、処理システム1を適用して、次のノードを算出する具体例について、図6を用いて説明する。以下では、旅行等の際に、今いる場所から次に向かう場所を算出する手順について説明するが、本実施形態に係る処理システム1の適用例はこれに限られない。例えば、次に観る映画等の算出にも適用することができる。
Here, a specific example of calculating the next node by applying the
ステップS1において、データ提供者(第1端末装置30に相当する)は、データブローカー(処理装置10に相当する)へ軌跡情報を送信する。
ステップS2において、データブローカーは、軌跡情報を協調フィルタリング(例えば、Slope One等)に適用できるように一般化(正規化)する。ここで、一般化(正規化)とは、訪れた場所に応じて重み付け値を付与する処理である。例えば、ノードAには「5」、ノードBには「4」、ノードCには「3」、ノードDには「2」、ノードDには「1」を付与する。
In step S1, a data provider (corresponding to the first terminal device 30) transmits trajectory information to a data broker (corresponding to the processing device 10).
In step S2, the data broker generalizes (normalizes) the trajectory information so that it can be applied to collaborative filtering (for example, Slope One). Here, the generalization (normalization) is a process of assigning a weight value according to the place visited. For example, “5” is assigned to node A, “4” to node B, “3” to node C, “2” to node D, and “1” to node D.
ステップS3において、データブローカーは、個々の軌跡情報を、例えば、準同型暗号技術を利用して暗号化してクラウドサーバ(演算装置20に相当する)に送信する。なお、データブローカーは、一般化する過程で、軌跡情報にループが存在する場合には、分割を行なう。 In step S3, the data broker encrypts each piece of trajectory information using, for example, a homomorphic encryption technique, and transmits the encrypted information to the cloud server (corresponding to the computing device 20). Note that, in the process of generalization, the data broker performs division when a loop exists in the trajectory information.
ステップS4において、クラウドサーバは、暗号化された軌跡情報に基づいて統合情報を生成する。 In step S4, the cloud server generates integrated information based on the encrypted trajectory information.
ステップS5において、ユーザ(第2端末装置40に相当する)は、軌跡情報をクラウドサーバに送信し、次の場所(ノード)を検索する。
例えば、ユーザは、軌跡情報として「A→B→C」をクラウドサーバに送信し、ノードCの次の場所(ノード)を検索する。
In step S5, the user (corresponding to the second terminal device 40) transmits the trajectory information to the cloud server and searches for the next place (node).
For example, the user transmits “A → B → C” as trajectory information to the cloud server, and searches for a location (node) next to node C.
ステップS6において、クラウドサーバは、ユーザから送信されてきた軌跡情報に基づいて、統合情報を参照し、次の場所(ノードCの次のノード)を計算し、計算結果をユーザに送信する。なお、計算結果には、一つ又は複数の次の場所の情報(順位付けされて)が含まれていてもよい。 In step S6, the cloud server refers to the integrated information based on the trajectory information transmitted from the user, calculates the next location (the node next to the node C), and transmits the calculation result to the user. The calculation result may include information (ranked) on one or a plurality of next places.
なお、ステップ5の工程において、クラウドサーバに送信される軌跡情報は、暗号化を行なうことによってプライバシーの保護を図っている。
例えば、プライバシー保護協調フィルタリング(PPCF)において加法準同型暗号を利用することにより、軌跡情報に暗号化を行ってプライバシーを保護する。
Note that, in the process of step 5, the trajectory information transmitted to the cloud server is encrypted to protect privacy.
For example, by using additive homomorphic encryption in privacy protection collaborative filtering (PPCF), the trajectory information is encrypted to protect privacy.
また、軌跡情報は、いわゆる、順序付き木構造(ordered vertex representation)によって協調フィルタリングで表現される。
また、第1端末装置30及び第2端末装置40により生成されるオリジナルの軌跡情報は、場所(座標)の情報から構成されているが、これに限られず、ユーザのアイデンティティ情報や、タイムスタンプ情報が含まれていてもよい。
オリジナルの軌跡情報は、異なる場所同士の僅かな差は、無視するように、空間と時間において統合され、数値的に分類された場所の順番(例えば、「A→B→C」等)に変換されて、処理装置10及び演算装置20に送信される。
Further, the trajectory information is expressed by collaborative filtering by a so-called ordered tree structure (ordered vertex representation).
In addition, the original trajectory information generated by the first
The original trajectory information is integrated in space and time so that slight differences between different places are ignored, and converted into numerically sorted place orders (eg “A → B → C”, etc.) Then, the data is transmitted to the
つぎに、ステップS2の工程について詳述する。
処理装置10は、受信した軌跡情報に対して、さらに、すべての場所(ノード)に重み付けを行なうことによって、順序付き木構造(ordered vertex representation)に変換する。例えば、軌跡情報が「A→B→C→D→E」で構成される場合、ノードAには「5」、ノードBには「4」、ノードCには「3」、ノードDには「2」、ノードDには「1」を付与する。
Next, the step S2 will be described in detail.
The
また、軌跡情報の重み付けには、範囲に限界がある(非特許文献1を参照)。軌跡情報を構成するノードには必ず重み付け値が付与され、ゼロになるノードは存在しない。なお、軌跡情報の外側となるすべての場所では、その軌跡の重み付けがゼロになる。 In addition, the range of weighting of the trajectory information is limited (see Non-Patent Document 1). A weight value is always given to the nodes constituting the trajectory information, and there is no node that becomes zero. It should be noted that the trajectory weight is zero at all locations outside the trajectory information.
また、処理装置10は、軌跡情報が「A→B→C→C→D→E」のように、あるノード(本実施例では、ノードC)が繰り返されている場合には、「A→B→C→D→E」のようにして、複数回連続した発生して繰り返されたノードを削除する。つまり、処理装置10は、元々ノードが1つの軌跡データや削除によってノードが1つになってしまった軌跡データを無視する(取り除く)。
Further, the
このようにして、本実施例に係る処理システム1は、軌跡情報に準同型暗号による暗号化を行なうので、クラウドサーバ(演算装置20に相当する)を用いて次の場所(ノード)を計算してもプライバシーを保護することができる。
また、ユーザ(第2端末装置40に相当する)は、自身の軌跡情報を準同型暗号による暗号化を行なうので、プライバシーの保護を図りつつ、クラウドサーバを利用して次の場所(ノード)を検索することができる。
In this way, the
In addition, since the user (corresponding to the second terminal device 40) encrypts his / her trajectory information by homomorphic encryption, the cloud server is used to set the next place (node) while protecting the privacy. You can search.
また、本実施例では、主に、プライバシーの保護を図りつつ、サードパーティによって運営されているサーバを利用して次のノードを計算する処理システム1の処理装置10と演算装置20の構成と動作について説明したが、これに限られず、各構成要素を備え、プライバシーの保護を図りつつ、サードパーティによって運営されているサーバを利用して次のノードを計算するための方法、及びプログラムとして構成されてもよい。
In the present embodiment, the configuration and operation of the
さらに、処理システム1を構成する処理装置10と演算装置20の機能を実現するためのプログラムをコンピュータで読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することによって実現してもよい。
Further, a program for realizing the functions of the
ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものとする。また、「コンピュータで読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。 The “computer system” here includes an OS and hardware such as peripheral devices. The “computer-readable recording medium” refers to a storage device such as a portable medium such as a flexible disk, a magneto-optical disk, a ROM, and a CD-ROM, and a hard disk built in the computer system.
さらに「コンピュータで読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時刻の間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時刻プログラムを保持しているものも含んでもよい。また、上記プログラムは、前述した機能の一部を実現するためのものであってもよく、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであってもよい。 Furthermore, “computer-readable recording medium” means that a program is dynamically held for a short time, like a communication line when transmitting a program via a network such as the Internet or a communication line such as a telephone line. It is also possible to include one that holds a program for a certain time, such as a volatile memory inside a computer system that becomes a server or client in that case. Further, the program may be for realizing a part of the above-described functions, and may be capable of realizing the above-described functions in combination with a program already recorded in the computer system. .
1 処理システム
10 処理装置
11 受信部
12 分割処理部
13 重み付け部
14 暗号化部
15 送信部
20 演算装置
21 第1受信部
22 第2受信部
23 統合部
24 算出部
25 送信部
30 第1端末装置
40 第2端末装置
DESCRIPTION OF
Claims (9)
前記受信部によって受信された軌跡情報にループ部分が存在する場合には、複数の軌跡情報に分割してループを解消する分割処理部と、
軌跡情報を構成する各ノードに対して重み付けを行なう重み付け部と、
前記重み付けが行われた軌跡情報を準同型暗号方式を利用して暗号化を行なう暗号化部と、
前記暗号化部により暗号化された軌跡情報を送信する送信部とを備える処理装置。 A receiving unit configured with a plurality of nodes and edges, and receiving trajectory information created based on a user's behavior history;
When there is a loop portion in the trajectory information received by the receiving unit, a division processing unit that divides the trajectory information and eliminates the loop;
A weighting unit that weights each node constituting the trajectory information;
An encryption unit that encrypts the weighted trajectory information using a homomorphic encryption method;
A processing apparatus comprising: a transmission unit that transmits trajectory information encrypted by the encryption unit.
ユーザ端末から、準同型暗号方式を利用して暗号化されている軌跡情報を第2軌跡情報として受信する第2受信部と、
前記第1受信部で受信した複数の前記第1軌跡情報を統合情報として統合する統合部と、
前記第2軌跡情報に基づいて、前記統合情報を参照し、前記第2軌跡情報を構成している最後のノードに続く次のノードに相応しいノードを算出する算出部と、
前記算出部により算出されたノードの情報を前記ユーザ端末へ送信する送信部を備える演算装置。 A first receiver that receives, as first trajectory information, trajectory information that has been transmitted using the homomorphic encryption method transmitted by the processing device according to claim 1;
A second receiving unit that receives trajectory information encrypted using a homomorphic encryption method as second trajectory information from the user terminal;
An integration unit that integrates a plurality of the first trajectory information received by the first reception unit as integrated information;
A calculation unit that refers to the integrated information based on the second trajectory information, and calculates a node suitable for the next node following the last node constituting the second trajectory information;
A computing device comprising a transmission unit for transmitting node information calculated by the calculation unit to the user terminal.
前記送信部は、前記算出部で算出された複数個のノードの情報を前記ユーザ端末へ送信する請求項4記載の演算装置。 The calculation unit calculates a plurality of nodes suitable for the next node following the last node constituting the second trajectory information,
The computing device according to claim 4, wherein the transmission unit transmits information on a plurality of nodes calculated by the calculation unit to the user terminal.
ユーザの行動履歴に基づいて作成された、複数のノードとエッジで構成された軌跡情報にループ部分が存在する場合には、複数の軌跡情報に分割してループを解消する分割処理工程と、
軌跡情報を構成する各ノードに対して重み付けを行なう重み付け工程と、
前記重み付けが行われた軌跡情報を準同型暗号方式を利用して暗号化を行なう暗号化工程と、
前記暗号化工程により暗号化された軌跡情報を送信する送信工程とを備える処理方法。 Computer
Was created based on the action history Yu over The, when the loop portion exists in the trajectory information made up of a plurality of nodes and edges, a dividing process for eliminating the loop is divided into a plurality of track information ,
A weighting step for weighting each node constituting the trajectory information;
An encryption step of encrypting the weighted trajectory information using a homomorphic encryption method;
And a transmission step of transmitting the trajectory information encrypted by the encryption step.
請求項6記載の処理方法によって送信されてきた、準同型暗号方式を利用して暗号化されている軌跡情報を第1軌跡情報として受信する第1受信工程と、
ユーザ端末から、準同型暗号方式を利用して暗号化されている軌跡情報を第2軌跡情報として受信する第2受信工程と、
前記第1受信工程で受信した複数の前記第1軌跡情報を統合情報として統合する統合工程と、
前記第2軌跡情報に基づいて、前記統合情報を参照し、前記第2軌跡情報を構成している最後のノードに続く次のノードに相応しいノードを算出する算出工程と、
前記算出工程により算出されたノードの情報を前記ユーザ端末へ送信する送信工程を備える演算方法。 A first reception step of receiving, as first trajectory information, trajectory information encrypted by using a homomorphic encryption method transmitted by the computer according to the processing method according to claim 6;
A second receiving step for receiving, as second trajectory information, trajectory information encrypted using a homomorphic encryption method from a user terminal;
An integration step of integrating a plurality of the first trajectory information received in the first reception step as integration information;
A calculation step of referring to the integrated information based on the second trajectory information and calculating a node suitable for a next node following the last node constituting the second trajectory information;
A calculation method comprising a transmission step of transmitting node information calculated by the calculation step to the user terminal.
複数のノードとエッジで構成されており、ユーザの行動履歴に基づいて作成された軌跡情報にループ部分が存在する場合には、複数の軌跡情報に分割してループを解消する分割処理工程と、
軌跡情報を構成する各ノードに対して重み付けを行なう重み付け工程と、
前記重み付けが行われた軌跡情報を準同型暗号方式を利用して暗号化を行なう暗号化工程と、
前記暗号化工程により準同型暗号方式を利用して暗号化された軌跡情報を送信する送信工程とを実行させるための処理プログラム。 On the computer,
When there is a loop portion in the trajectory information created based on the user's behavior history, which is composed of a plurality of nodes and edges, a division processing step for dividing the plural trajectory information and eliminating the loop;
A weighting step for weighting each node constituting the trajectory information;
An encryption step of encrypting the weighted trajectory information using a homomorphic encryption method;
The processing program for performing the transmission process which transmits the locus | trajectory information encrypted using the homomorphic encryption system by the said encryption process.
請求項8記載の処理プログラムによって送信されてきた、準同型暗号方式を利用して暗号化されている軌跡情報を第1軌跡情報として受信する第1受信工程と、
ユーザ端末から、準同型暗号方式を利用して暗号化されている軌跡情報を第2軌跡情報として受信する第2受信工程と、
前記第1受信工程で受信した複数の前記第1軌跡情報を統合情報として統合する統合工程と、
前記第2軌跡情報に基づいて、前記統合情報を参照し、前記第2軌跡情報を構成している最後のノードに続く次のノードに相応しいノードを算出する算出工程と、
前記算出工程により算出されたノードの情報を前記ユーザ端末へ送信する送信工程とを実行させるための演算プログラム。 On the computer,
A first receiving step of receiving, as first trajectory information, trajectory information encrypted by using a homomorphic encryption method transmitted by the processing program according to claim 8;
A second receiving step for receiving, as second trajectory information, trajectory information encrypted using a homomorphic encryption method from a user terminal;
An integration step of integrating a plurality of the first trajectory information received in the first reception step as integration information;
A calculation step of referring to the integrated information based on the second trajectory information and calculating a node suitable for a next node following the last node constituting the second trajectory information;
An arithmetic program for executing a transmission step of transmitting node information calculated by the calculation step to the user terminal.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2014128201A JP6333082B2 (en) | 2014-06-23 | 2014-06-23 | Processing device, arithmetic device, processing method, arithmetic method, processing program, and arithmetic program |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2014128201A JP6333082B2 (en) | 2014-06-23 | 2014-06-23 | Processing device, arithmetic device, processing method, arithmetic method, processing program, and arithmetic program |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2016009243A JP2016009243A (en) | 2016-01-18 |
| JP6333082B2 true JP6333082B2 (en) | 2018-05-30 |
Family
ID=55226775
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2014128201A Expired - Fee Related JP6333082B2 (en) | 2014-06-23 | 2014-06-23 | Processing device, arithmetic device, processing method, arithmetic method, processing program, and arithmetic program |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP6333082B2 (en) |
Families Citing this family (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2022172347A1 (en) | 2021-02-10 | 2022-08-18 | 日本電気株式会社 | Similarity calculation system, similarity calculation device, similarity calculation method, and similarity calculation program |
Family Cites Families (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH07218281A (en) * | 1994-02-07 | 1995-08-18 | Japan Radio Co Ltd | Car navigation system |
| JP4495620B2 (en) * | 2004-03-05 | 2010-07-07 | パナソニック株式会社 | Destination prediction apparatus and destination prediction method |
| JP2011118777A (en) * | 2009-12-04 | 2011-06-16 | Sony Corp | Learning device, learning method, prediction device, prediction method, and program |
| US8862895B2 (en) * | 2010-04-27 | 2014-10-14 | Fuji Xerox Co., Ltd. | Systems and methods for communication, storage, retrieval, and computation of simple statistics and logical operations on encrypted data |
-
2014
- 2014-06-23 JP JP2014128201A patent/JP6333082B2/en not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| JP2016009243A (en) | 2016-01-18 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN111046433B (en) | Model training method based on federal learning | |
| CN112434313B (en) | Data sharing method, system, electronic device and storage medium | |
| CN110011954B (en) | Homomorphic encryption-based biological identification method, device, terminal and business server | |
| Mouratidis et al. | Shortest path computation with no information leakage | |
| CN115104098A (en) | Minimum right resource license management | |
| TWI729698B (en) | Data processing method, device and electronic equipment | |
| CN116547941A (en) | Secure re-encryption of homomorphic encrypted data | |
| EP3552132A1 (en) | Login information processing method and device | |
| CN105592085B (en) | The method for secret protection of facing position perception recommender system | |
| WO2014073214A1 (en) | Information processing system that analyzes personal information, and method for analyzing personal information | |
| CN106817358A (en) | The encryption and decryption method and equipment of a kind of user resources | |
| CN113711247A (en) | Data processing method, device and system of machine learning model | |
| CN116167868A (en) | Risk identification method, apparatus, device and storage medium based on privacy calculation | |
| CN111767550B (en) | Data storage method and device | |
| US10049231B2 (en) | Method and system for obfuscating the properties of a web browser | |
| KR101942763B1 (en) | Encrypted index based range query processing method and range query processing system | |
| CN113259336A (en) | Communication method based on block chain technology | |
| JP6333082B2 (en) | Processing device, arithmetic device, processing method, arithmetic method, processing program, and arithmetic program | |
| CN110874481A (en) | A prediction method and device based on GBDT model | |
| KR102245886B1 (en) | Analytics center and control method thereof, and service providing device and control method thereof in co-operational privacy protection communication environment | |
| CN108206961B (en) | Method for calculating popularity of live broadcast platform and related equipment | |
| KR20210082019A (en) | Apparatus and method for set intersection operation | |
| You et al. | A novel location-based encryption model using fuzzy vault scheme | |
| KR102503526B1 (en) | Apparatus and method for providing authentication service | |
| CN109144743A (en) | A kind of acquisition methods of data, device and equipment |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20170118 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20171129 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20171205 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20180117 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20180306 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20180405 |
|
| 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: 20180417 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20180424 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 6333082 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| LAPS | Cancellation because of no payment of annual fees |