JP2022150498A - 学習プログラム、学習方法及び学習装置 - Google Patents
学習プログラム、学習方法及び学習装置 Download PDFInfo
- Publication number
- JP2022150498A JP2022150498A JP2021053128A JP2021053128A JP2022150498A JP 2022150498 A JP2022150498 A JP 2022150498A JP 2021053128 A JP2021053128 A JP 2021053128A JP 2021053128 A JP2021053128 A JP 2021053128A JP 2022150498 A JP2022150498 A JP 2022150498A
- Authority
- JP
- Japan
- Prior art keywords
- calculation
- update
- learning
- unit
- logistic regression
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 36
- 238000004364 calculation method Methods 0.000 claims abstract description 66
- 238000007477 logistic regression Methods 0.000 claims abstract description 33
- 230000006870 function Effects 0.000 claims abstract description 26
- 238000012545 processing Methods 0.000 description 22
- 238000000605 extraction Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 6
- 230000010365 information processing Effects 0.000 description 4
- 230000000694 effects Effects 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 230000010354 integration Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000010454 slate Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
- G06F21/6245—Protecting personal data, e.g. for financial or medical purposes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N7/00—Computing arrangements based on specific mathematical models
- G06N7/01—Probabilistic graphical models, e.g. probabilistic networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/085—Secret sharing or secret splitting, e.g. threshold schemes
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Data Mining & Analysis (AREA)
- Mathematical Physics (AREA)
- Computer Security & Cryptography (AREA)
- Evolutionary Computation (AREA)
- Computing Systems (AREA)
- Bioethics (AREA)
- Artificial Intelligence (AREA)
- Computer Hardware Design (AREA)
- Medical Informatics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Computer Networks & Wireless Communication (AREA)
- Algebra (AREA)
- Biophysics (AREA)
- Molecular Biology (AREA)
- Computational Linguistics (AREA)
- Databases & Information Systems (AREA)
- Biomedical Technology (AREA)
- Signal Processing (AREA)
- Probability & Statistics with Applications (AREA)
- Life Sciences & Earth Sciences (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Debugging And Monitoring (AREA)
- Electrically Operated Instructional Devices (AREA)
Abstract
Description
本発明は、学習プログラム、学習方法及び学習装置に関する。
従来、暗号化された状態のデータに対し統計処理を行う秘密計算システムが知られている。例えば、暗号化された状態のデータを使って、ロジスティック回帰分析のパラメータを求める技術が知られている(例えば、非特許文献1を参照)。
なお、以降の説明では、ロジスティック回帰モデル自体の回帰係数等をモデルパラメータと呼ぶ。また、学習データを使ってモデルパラメータを求める処理、すなわち学習処理において設定されるパラメータを、チューニングパラメータ又はハイパーパラメータと呼ぶ。
秘密計算のシステムとその原理 https://www.rd.ntt/sc/project/data-security/NTT-himitsu-keisan.pdf 最終閲覧日: 2021/3/5
桐淵 直人, 五十嵐 大, 濱田 浩気, 菊池 亮: "プログラマブルな秘密計算ライブラリMEVAL3," 暗号と情報セキュリティシンポジウム(SCIS), 2018.
Eizen Kimura, Koki Hamada, Ryo Kikuchi, Koji Chida, Kazuya Okamoto, Shirou Manabe, Tomohiro Kuroda, Yasushi Matsumura, Toshihiro Takeda, and Naoki Mihara: "Evaluation of Secure Computation in a Distributed Healthcare Setting," Medical Informatics Europe (MIE) 2016: 152-156.
Koji Chida, Gembu Morohashi, Hitoshi Fuji, Fumihiko Magata, Akiko Fujimura, Koki Hamada, Dai Ikarashi, Ryuichi Yamamoto: "Implementation and evaluation of an efficient secure computation system using 'R' for healthcare statistics," J Am Med Inform Assoc. 21, pp.326-331, 2014
しかしながら、従来の技術には、秘密計算によるロジスティック回帰モデルの学習処理において、分析対象に合わせた分析精度の調整が困難な場合があるという問題がある。
例えば、ロジスティック回帰モデルを含む機械学習モデルの学習においては、収束条件が満たされるまでモデルパラメータの更新が繰り返される場合がある。
その場合、収束条件を決定するチューニングパラメータの中には、学習用のプログラムの開発者によってあらかじめ設定され、ユーザ(分析者)が調整できないものがある。そして、チューニングパラメータの設定は、学習済みのロジスティック回帰モデルの分析精度に大きく影響する。
特に、モデルパラメータの1回の更新量が基準値を下回ることが収束条件として採用される場合がある。一方で、特許文献1に記載の技術では、モデルパラメータの更新量の基準値をユーザが任意に設定することができない。
上述した課題を解決し、目的を達成するために、学習プログラムは、説明変数をロジスティック回帰モデルに入力し秘密計算により目的変数を計算する計算ステップと、前記計算ステップによる計算結果を基に、前記ロジスティック回帰モデルのパラメータを秘密計算により更新する更新ステップと、前記更新ステップによる前記パラメータの更新量がユーザによって指定され、暗号化された基準値未満であるか否かによって、前記パラメータの更新を終了するか否かを秘密計算により判定する判定ステップと、をコンピュータに実行させることを特徴とする。
本発明によれば、秘密計算によるロジスティック回帰モデルの学習処理において、分析対象に合わせた分析精度の調整を行うことができる。
以下に、本願に係る学習プログラム、学習方法及び学習装置の実施形態を図面に基づいて詳細に説明する。なお、本発明は、以下に説明する実施形態により限定されるものではない。
[第1の実施形態]
第1の実施形態では、学習プログラム、学習方法及び学習装置は、分析システムの1つの機能によって実現されるものとする。分析システムは、ロジスティック回帰モデルの学習及び学習済みのモデルを使った分析を、秘密計算の手法により行うことができる。
第1の実施形態では、学習プログラム、学習方法及び学習装置は、分析システムの1つの機能によって実現されるものとする。分析システムは、ロジスティック回帰モデルの学習及び学習済みのモデルを使った分析を、秘密計算の手法により行うことができる。
[第1の実施形態の分析システムの構成]
図1は、第1の実施形態に係る分析システムの構成例を示す図である。図1に示すように、分析システム1は、登録端末10、分析サーバ20A、分析サーバ20B、分析サーバ20C及び分析端末30を有する。
図1は、第1の実施形態に係る分析システムの構成例を示す図である。図1に示すように、分析システム1は、登録端末10、分析サーバ20A、分析サーバ20B、分析サーバ20C及び分析端末30を有する。
各分析サーバは、データセンタDCに備えられる。また、分析サーバの数は図1に示すものに限られない。また、以降の説明では、分析サーバ20A、分析サーバ20B及び分析サーバ20Cをまとめて分析サーバ群と呼ぶ場合がある。
登録端末10は、入力データを暗号化し各分析サーバに入力する。ここで、入力データは、ロジスティック回帰モデルの学習を行うためのチューニングパラメータ、又は分析対象データである。
例えば、登録端末10は、入力データをシェアと呼ばれるデータに断片化させ、各シェアを、それぞれ異なる分析サーバに分散させて入力することにより暗号化を行う(秘密分散)。また、各シェアは単体では復元不可能である。
登録端末10は、秘密分散に限られず、データを秘匿化可能な方法であって、既知の秘密計算手法に対応する方法で暗号化を行うことができる。
分析サーバ群は、マルチパーティ計算を行うことで秘密計算を実行する。例えば、分析サーバ群は、ロジスティック回帰モデルの学習処理を秘密計算により行うことができる。また、分析サーバ群は、学習済みのロジスティック回帰モデルに説明変数として分析対象のデータを入力し、目的変数の計算を秘密計算により行うことができる。
分析端末30は、各分析サーバから出力される分析結果を復号する。
図2を用いて、分析サーバの構成について説明する。図2は、第1の実施形態に係る分析サーバの構成例を示す図である。
なお、分析サーバ群に含まれる各分析サーバを区別せずに分析サーバ20と表記する。また、分析サーバ20は、学習装置及び分析装置として機能する。
まず、分析サーバ20が学習装置として機能する場合、分析サーバ20は、分析サーバ20チューニングパラメータの入力を受け付ける。また、分析サーバ20は、更新済みのモデルパラメータを出力し他の装置に受け渡すことができる。
チューニングパラメータには、学習率、最大反復回数、バッチ区分(バッチ or ミニバッチ)、更新量の基準値が含まれる。各チューニングパラメータの詳細については後述する。
次に、分析サーバ20が分析装置として機能する場合、は、分析対象のデータの入力を受け付ける。分析対象のデータには、目的変数が未知の説明変数が含まれる。
分析サーバ20の各部について説明する。図1に示すように、分析サーバ20は、インタフェース部21、記憶部22及び制御部23を有する。
インタフェース部21は、データの入力及び出力のためのインタフェースである。例えば、インタフェース部21はNIC(Network Interface Card)である。インタフェース部21は他の装置との間でデータの送受信を行うことができる。
また、インタフェース部21は、マウスやキーボード等の入力装置と接続されていてもよい。また、インタフェース部21は、ディスプレイ及びスピーカ等の出力装置と接続されていてもよい。
記憶部22は、HDD(Hard Disk Drive)、SSD(Solid State Drive)、光ディスク等の記憶装置である。なお、記憶部22は、RAM(Random Access Memory)、フラッシュメモリ、NVSRAM(Non Volatile Static Random Access Memory)等のデータを書き換え可能な半導体メモリであってもよい。記憶部22は、分析サーバ20で実行されるOS(Operating System)や各種プログラムを記憶する。
記憶部22は、チューニングパラメータ情報221及びモデル情報222を記憶する。チューニングパラメータ情報221は、チューニングパラメータのデフォルト値である。また、モデル情報222は、後に説明するロジスティック回帰モデルを構築するためのモデルパラメータである。例えば、モデル情報222は、ロジスティック回帰モデルの回帰係数である。
学習データ223は、説明変数と正解の目的変数との組み合わせである。なお、学習データ223は、秘密計算のための暗号化がされているものとする。
制御部23は、分析サーバ20全体を制御する。制御部23は、例えば、CPU(Central Processing Unit)、MPU(Micro Processing Unit)、GPU(Graphics Processing Unit)等の電子回路や、ASIC(Application Specific Integrated Circuit)、FPGA(Field Programmable Gate Array)等の集積回路である。また、制御部23は、各種の処理手順を規定したプログラムや制御データを格納するための内部メモリを有し、内部メモリを用いて各処理を実行する。
制御部23は、各種のプログラムが動作することにより各種の処理部として機能する。例えば、制御部23は、設定部231、抽出部232、計算部233、更新部234、判定部235及び出力制御部236として機能する。
まず、分析サーバ20が学習装置として機能する場合の、設定部231、抽出部232、計算部233、更新部234及び判定部235の処理について説明する。
設定部231、抽出部232、計算部233、更新部234及び判定部235は、1つの関数により各処理を実行するものであってもよい。この場合、関数の引数にはチューニングパラメータが含まれる。
設定部231はチューニングパラメータの設定を行う。例えば、設定部231は、入力されたチューニングパラメータを関数内の所定の変数に格納する。
抽出部232は、学習データからミニバッチを抽出する。例えば、抽出部232は、チューニングパラメータのバッチ区分が「ミニバッチ」である場合に抽出を行う。
ここで、計算部233、更新部234及び判定部235における計算は、秘密計算により行われる。
計算部233は、説明変数をロジスティック回帰モデルに入力し目的変数を秘密計算により計算する。計算部233は、ユーザによって指定され、暗号化された基準値を引数に含む関数により目的変数を計算する。
計算部233は、(1)式により目的変数を計算する。
(1)式の左辺が計算によって得られる目的変数に相当する。また、σはシグモイド関数である。また、→w(wの直上に→)はロジスティック回帰モデルの回帰係数である。また、→wはモデルパラメータということができ、モデル情報222に相当する。→xは説明変数である。
(1)式の右辺の括弧内の数式は(2)式のように展開できる。また、→wは(3)式のように表される。また、→xは(4)式のように表される。
また、学習データ223は(5)式のように表される。yiは目的変数の正解である。mは学習データ223に含まれる個別のデータの件数であり、iは学習データ223に含まれる個別のデータを識別する番号である。
また、ロジスティック回帰モデルのモデルパラメータの初期値は(6)式のように表される。
(7)式のηは、チューニングパラメータに含まれる学習率である。
(8)式のTは、チューニングパラメータに含まれる最大反復回数である。
更新部234は、計算部233による計算結果を基に、ロジスティック回帰モデルのモデルパラメータを秘密計算により更新する。更新部234は、関数によりモデルパラメータを更新する。
更新部234は、t+1回目(tの範囲は(8)式の通り)の更新において、(9)式のようにモデルパラメータを更新する。
判定部235は、更新部234によるモデルパラメータの更新量がユーザによって指定された基準値未満であるか否かによって、モデルパラメータの更新を終了するか否かを判定する。判定部235は、関数によりモデルパラメータの更新を終了するか否かを秘密計算により判定する。
例えば、|wj,t+1-wj,t|(ただし、||は絶対値)がユーザによって指定された基準値を超えている場合、判定部235はモデルパラメータの更新を終了しないと判定する。
一方、|wj,t+1-wj,t|がユーザによって指定された基準値を超えていない場合、判定部235はモデルパラメータの更新を終了すると判定する。
また、判定部235によってモデルパラメータの更新を終了しないと判定された場合、計算部233はさらに計算を実行する。すなわち、t回目のモデルパラメータの更新後に収束条件が満たされていない場合、分析サーバ20はt+1回目のモデルパラメータの更新を行う。
次に、分析サーバ20が分析装置として機能する場合の、計算部233及び出力制御部236の処理について説明する。
計算部233は、モデル情報222を基に構築されたロジスティック回帰モデルに説明変数を入力し、目的変数を秘密計算により計算する。
出力制御部236は、計算部233によって計算された目的変数に基づいて、分析結果を出力する。例えば、出力制御部236は、目的変数をそのまま出力してもよいし、目的変数に基づく分類又は判定の結果を出力してもよい。
[第1の実施形態の分析システムの処理]
図3は、第1の実施形態に係る分析システムによる学習処理の流れを示すフローチャートである。まず、登録端末10は、チューニングパラメータを暗号化する(ステップS101)。
図3は、第1の実施形態に係る分析システムによる学習処理の流れを示すフローチャートである。まず、登録端末10は、チューニングパラメータを暗号化する(ステップS101)。
そして、分析サーバ20は、記憶部22から学習データ223を取得する(ステップS102)。同時に、分析サーバ20は、更新量の基準値を含む暗号化されたチューニングパラメータの入力を受け付ける(ステップS103)。
なお、学習データは関数の引数として入力されてもよい。また、学習データ及びチューニングパラメータは、ユーザが編集可能な設定ファイル等から取得されるものであってもよい。
ここで、チューニングパラメータの全部又は一部が入力されない場合もあり得る。そこで、分析サーバ20は、未入力のチューニングパラメータがある場合(ステップS104、Yes)、未入力のチューニングパラメータにデフォルト値を設定する(ステップS105)。分析サーバ20は、チューニングパラメータのデフォルト値をチューニングパラメータ情報221から取得することができる。
一方、未入力のチューニングパラメータがない場合(ステップS104、No)、分析サーバ20はステップS106へ進む。
ここで、チューニングパラメータとして指定されたバッチ区分が「ミニバッチ」である場合(ステップS106、Yes)、分析サーバ20は、学習データからミニバッチを抽出する(ステップS107)。
一方、チューニングパラメータとして指定されたバッチ区分が「ミニバッチ」でない場合(ステップS106、No)、分析サーバ20はステップS108へ進む。
ここで、分析サーバ20は、ステップS108からステップS111の処理を秘密計算により実行する。
分析サーバ20は、ミニバッチ又は入力された学習データを説明変数としてロジスティック回帰モデルに入力し目的変数を計算する(ステップS108)。
なお、分析サーバ20は、モデル情報222から取得したモデルパラメータを基にロジスティック回帰モデルを構築することができる。
分析サーバ20は、計算した目的変数の正解からのかい離度合いを基にロジスティック回帰モデルのモデルパラメータを更新する(ステップS109)。
ここで、ステップS106からステップS109までの反復回数が、チューニングパラメータの最大反復回数未満でない場合(ステップS110、No)、分析サーバ20は処理を終了する。
一方、反復回数が最大反復回数未満である場合(ステップS110、Yes)、分析サーバ20はステップS111へ進む。
さらに、ステップS109における更新量が、チューニングパラメータの基準値未満である場合(ステップS111、Yes)、分析サーバ20は処理を終了する。
一方、ステップS109における更新量が基準値未満でない場合(ステップS111、No)、分析サーバ20はステップS106に戻り処理を繰り返す。
図4は、第1の実施形態に係る分析システムによる分析処理の流れを示すフローチャートである。図4に示すように、まず、登録端末10は、分析対象データを暗号化する(ステップS201)。
そして、分析サーバ20は、暗号化された分析対象データの入力を受け付ける(ステップS202)。
ここで、分析サーバ20は、ステップS203及びS204の処理を秘密計算により実行する。
分析サーバ20は、分析対象データを説明変数としてロジスティック回帰モデルに入力し目的変数を計算する(ステップS203)。そして、分析サーバ20は、計算した目的変数に基づく分析結果を出力する(ステップS204)。
さらに、分析端末30は、分析結果を復号する(ステップS205)。
[第1の実施形態の効果]
これまで説明してきたように、計算部233は、説明変数をロジスティック回帰モデルに入力し目的変数を秘密計算により計算する。更新部234は、計算部233による計算結果を基に、ロジスティック回帰モデルのモデルパラメータを秘密計算により更新する。判定部235は、更新部234によるモデルパラメータの更新量がユーザによって指定され、暗号化された基準値未満であるか否かによって、モデルパラメータの更新を終了するか否かを秘密計算により判定する。
これまで説明してきたように、計算部233は、説明変数をロジスティック回帰モデルに入力し目的変数を秘密計算により計算する。更新部234は、計算部233による計算結果を基に、ロジスティック回帰モデルのモデルパラメータを秘密計算により更新する。判定部235は、更新部234によるモデルパラメータの更新量がユーザによって指定され、暗号化された基準値未満であるか否かによって、モデルパラメータの更新を終了するか否かを秘密計算により判定する。
このように、分析サーバ20は、ユーザによって指定された更新量の基準値を基に収束判定を行う。その結果、本実施形態によれば、ロジスティック回帰モデルの学習処理において、分析対象に合わせた分析精度の調整が可能になる。
このように、本実施形態では、目的変数の計算、パラメータの更新及び更新するか否かの判定をいずれも秘密計算で行うことができる。このとき、計算、更新及び判定の結果は暗号化されたまま分析サーバ20内では復号されることがないため、処理の過程及び結果を秘匿することができる。
なお、本実施形態では、秘密計算の手法については特許文献1に記載の方法と同様の方法を用いることができる。
さらに、基準値(最大反復回数)を含むチューニングパラメータについても暗号化されているため、秘匿することができる。
計算部233は、ユーザによって指定された基準値を引数に含む関数により目的変数を計算する。更新部234は、関数によりモデルパラメータを更新する。判定部235は、関数によりモデルパラメータの更新を終了するか否かを秘密計算により判定する。
このように、更新量の基準値を関数の引数として扱うことで、容易にユーザの指定を受け付けることができる。
判定部235によってモデルパラメータの更新を終了しないと判定された場合、計算部233はさらに計算を実行する。これにより、モデルの分析精度をユーザが意図した精度に調整できる。
[システム構成等]
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示のように構成されていることを要しない。すなわち、各装置の分散及び統合の具体的形態は図示のものに限られず、その全部又は一部を、各種の負荷や使用状況等に応じて、任意の単位で機能的又は物理的に分散又は統合して構成することができる。さらに、各装置にて行われる各処理機能は、その全部又は任意の一部が、CPU(Central Processing Unit)及び当該CPUにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。なお、プログラムは、CPUだけでなく、GPU等の他のプロセッサによって実行されてもよい。
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示のように構成されていることを要しない。すなわち、各装置の分散及び統合の具体的形態は図示のものに限られず、その全部又は一部を、各種の負荷や使用状況等に応じて、任意の単位で機能的又は物理的に分散又は統合して構成することができる。さらに、各装置にて行われる各処理機能は、その全部又は任意の一部が、CPU(Central Processing Unit)及び当該CPUにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。なお、プログラムは、CPUだけでなく、GPU等の他のプロセッサによって実行されてもよい。
また、本実施形態において説明した各処理のうち、自動的に行われるものとして説明した処理の全部又は一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部又は一部を公知の方法で自動的に行うこともできる。この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
[プログラム]
一実施形態として、分析サーバ20は、パッケージソフトウェアやオンラインソフトウェアとして上記の学習処理を実行する学習プログラムを所望のコンピュータにインストールさせることによって実装できる。例えば、上記の学習プログラムを情報処理装置に実行させることにより、情報処理装置を分析サーバ20として機能させることができる。ここで言う情報処理装置には、デスクトップ型又はノート型のパーソナルコンピュータが含まれる。また、その他にも、情報処理装置にはスマートフォン、携帯電話機やPHS(Personal Handyphone System)等の移動体通信端末、さらには、PDA(Personal Digital Assistant)等のスレート端末等がその範疇に含まれる。
一実施形態として、分析サーバ20は、パッケージソフトウェアやオンラインソフトウェアとして上記の学習処理を実行する学習プログラムを所望のコンピュータにインストールさせることによって実装できる。例えば、上記の学習プログラムを情報処理装置に実行させることにより、情報処理装置を分析サーバ20として機能させることができる。ここで言う情報処理装置には、デスクトップ型又はノート型のパーソナルコンピュータが含まれる。また、その他にも、情報処理装置にはスマートフォン、携帯電話機やPHS(Personal Handyphone System)等の移動体通信端末、さらには、PDA(Personal Digital Assistant)等のスレート端末等がその範疇に含まれる。
また、分析サーバ20は、ユーザが使用する端末装置をクライアントとし、当該クライアントに上記の学習処理に関するサービスを提供する学習サーバ装置として実装することもできる。例えば、学習サーバ装置は、暗号化された学習データ及びチューニングパラメータを入力とし、学習済みのモデルパラメータを出力とする学習サービスを提供するサーバ装置として実装される。
図5は、学習プログラムを実行するコンピュータの一例を示す図である。コンピュータ1000は、例えば、メモリ1010、CPU1020を有する。また、コンピュータ1000は、ハードディスクドライブインタフェース1030、ディスクドライブインタフェース1040、シリアルポートインタフェース1050、ビデオアダプタ1060、ネットワークインタフェース1070を有する。これらの各部は、バス1080によって接続される。
メモリ1010は、ROM(Read Only Memory)1011及びRAM(Random Access Memory)1012を含む。ROM1011は、例えば、BIOS(Basic Input Output System)等のブートプログラムを記憶する。ハードディスクドライブインタフェース1030は、ハードディスクドライブ1090に接続される。ディスクドライブインタフェース1040は、ディスクドライブ1100に接続される。例えば磁気ディスクや光ディスク等の着脱可能な記憶媒体が、ディスクドライブ1100に挿入される。シリアルポートインタフェース1050は、例えばマウス1110、キーボード1120に接続される。ビデオアダプタ1060は、例えばディスプレイ1130に接続される。
ハードディスクドライブ1090は、例えば、OS1091、アプリケーションプログラム1092、プログラムモジュール1093、プログラムデータ1094を記憶する。すなわち、分析サーバ20の各処理を規定するプログラムは、コンピュータにより実行可能なコードが記述されたプログラムモジュール1093として実装される。プログラムモジュール1093は、例えばハードディスクドライブ1090に記憶される。例えば、分析サーバ20における機能構成と同様の処理を実行するためのプログラムモジュール1093が、ハードディスクドライブ1090に記憶される。なお、ハードディスクドライブ1090は、SSD(Solid State Drive)により代替されてもよい。
また、上述した実施形態の処理で用いられる設定データは、プログラムデータ1094として、例えばメモリ1010やハードディスクドライブ1090に記憶される。そして、CPU1020は、メモリ1010やハードディスクドライブ1090に記憶されたプログラムモジュール1093やプログラムデータ1094を必要に応じてRAM1012に読み出して、上述した実施形態の処理を実行する。
なお、プログラムモジュール1093やプログラムデータ1094は、ハードディスクドライブ1090に記憶される場合に限らず、例えば着脱可能な記憶媒体に記憶され、ディスクドライブ1100等を介してCPU1020によって読み出されてもよい。あるいは、プログラムモジュール1093及びプログラムデータ1094は、ネットワーク(LAN(Local Area Network)、WAN(Wide Area Network)等)を介して接続された他のコンピュータに記憶されてもよい。そして、プログラムモジュール1093及びプログラムデータ1094は、他のコンピュータから、ネットワークインタフェース1070を介してCPU1020によって読み出されてもよい。
10 登録端末
20、20A、20B、20C 分析サーバ
21 インタフェース部
22 記憶部
23 制御部
30 分析端末
221 チューニングパラメータ情報
222 モデル情報
223 学習データ
231 設定部
232 抽出部
233 計算部
234 更新部
235 判定部
236 出力制御部
20、20A、20B、20C 分析サーバ
21 インタフェース部
22 記憶部
23 制御部
30 分析端末
221 チューニングパラメータ情報
222 モデル情報
223 学習データ
231 設定部
232 抽出部
233 計算部
234 更新部
235 判定部
236 出力制御部
Claims (5)
- 説明変数をロジスティック回帰モデルに入力し目的変数を秘密計算により計算する計算ステップと、
前記計算ステップによる計算結果を基に、前記ロジスティック回帰モデルのパラメータを秘密計算により更新する更新ステップと、
前記更新ステップによる前記パラメータの更新量がユーザによって指定され、暗号化された基準値未満であるか否かによって、前記パラメータの更新を終了するか否かを秘密計算により判定する判定ステップと、
をコンピュータに実行させることを特徴とする学習プログラム。 - 前記計算ステップは、ユーザによって指定され、暗号化された基準値を引数に含む関数により前記目的変数を計算し、
前記更新ステップは、前記関数により前記パラメータを更新し、
前記判定ステップは、前記関数により前記パラメータの更新を終了するか否かを判定することを特徴とする請求項1に記載の学習プログラム。 - 前記判定ステップによって前記パラメータの更新を終了しないと判定された場合、前記計算ステップをさらに実行させることを特徴とする請求項1又は2に記載の学習プログラム。
- 学習装置によって実行される学習方法であって、
説明変数をロジスティック回帰モデルに入力し目的変数を秘密計算により計算する計算工程と、
前記計算工程による計算結果を基に、前記ロジスティック回帰モデルのパラメータを更新する更新工程と、
前記更新工程による前記パラメータの更新量がユーザによって指定され、暗号化された基準値未満であるか否かによって、前記パラメータの更新を終了するか否かを秘密計算により判定する判定工程と、
を含むことを特徴とする学習方法。 - ユーザによって指定された値を基準値に設定する設定部と、
説明変数をロジスティック回帰モデルに入力し目的変数を秘密計算により計算する計算部と、
前記計算部による計算結果を基に、前記ロジスティック回帰モデルのパラメータを秘密計算により更新する更新部と、
前記更新部による前記パラメータの更新量がユーザによって指定され、暗号化された基準値未満であるか否かによって、前記パラメータの更新を終了するか否かを秘密計算により判定する判定部と、
を有することを特徴とする学習装置。
Priority Applications (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2021053128A JP2022150498A (ja) | 2021-03-26 | 2021-03-26 | 学習プログラム、学習方法及び学習装置 |
PCT/JP2022/014701 WO2022203083A1 (ja) | 2021-03-26 | 2022-03-25 | 学習プログラム、学習方法及び学習装置 |
AU2022243369A AU2022243369A1 (en) | 2021-03-26 | 2022-03-25 | Learning program, learning method, and learning device |
EP22775864.6A EP4318441A4 (en) | 2021-03-26 | 2022-03-25 | LEARNING PROGRAM, LEARNING METHOD AND LEARNING DEVICE |
CN202280023663.8A CN117083653A (zh) | 2021-03-26 | 2022-03-25 | 学习程序、学习方法以及学习装置 |
US18/372,145 US20240028966A1 (en) | 2021-03-26 | 2023-09-25 | Learning program, learning method, and learning device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2021053128A JP2022150498A (ja) | 2021-03-26 | 2021-03-26 | 学習プログラム、学習方法及び学習装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2022150498A true JP2022150498A (ja) | 2022-10-07 |
Family
ID=83397492
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2021053128A Pending JP2022150498A (ja) | 2021-03-26 | 2021-03-26 | 学習プログラム、学習方法及び学習装置 |
Country Status (6)
Country | Link |
---|---|
US (1) | US20240028966A1 (ja) |
EP (1) | EP4318441A4 (ja) |
JP (1) | JP2022150498A (ja) |
CN (1) | CN117083653A (ja) |
AU (1) | AU2022243369A1 (ja) |
WO (1) | WO2022203083A1 (ja) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017207839A (ja) * | 2016-05-17 | 2017-11-24 | 日本電信電話株式会社 | ニューラルネットワークシステム、シェア計算装置、ニューラルネットワークの学習方法、プログラム |
JP2020042128A (ja) * | 2018-09-10 | 2020-03-19 | 日本電信電話株式会社 | 秘密統計処理システム、方法、統計処理装置及びプログラム |
WO2020071441A1 (ja) * | 2018-10-04 | 2020-04-09 | 日本電信電話株式会社 | 秘密シグモイド関数計算システム、秘密ロジスティック回帰計算システム、秘密シグモイド関数計算装置、秘密ロジスティック回帰計算装置、秘密シグモイド関数計算方法、秘密ロジスティック回帰計算方法、プログラム |
WO2020071187A1 (ja) * | 2018-10-04 | 2020-04-09 | 日本電信電話株式会社 | 秘密シグモイド関数計算システム、秘密ロジスティック回帰計算システム、秘密シグモイド関数計算装置、秘密ロジスティック回帰計算装置、秘密シグモイド関数計算方法、秘密ロジスティック回帰計算方法、プログラム |
WO2021029024A1 (ja) * | 2019-08-14 | 2021-02-18 | 日本電信電話株式会社 | 秘密ソフトマックス関数計算システム、秘密ソフトマックス関数計算装置、秘密ソフトマックス関数計算方法、秘密ニューラルネットワーク計算システム、秘密ニューラルネットワーク学習システム、プログラム |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
SG11201909946UA (en) * | 2019-01-11 | 2019-11-28 | Alibaba Group Holding Ltd | Logistic regression modeling scheme using secrete sharing |
-
2021
- 2021-03-26 JP JP2021053128A patent/JP2022150498A/ja active Pending
-
2022
- 2022-03-25 AU AU2022243369A patent/AU2022243369A1/en active Pending
- 2022-03-25 EP EP22775864.6A patent/EP4318441A4/en active Pending
- 2022-03-25 WO PCT/JP2022/014701 patent/WO2022203083A1/ja active Application Filing
- 2022-03-25 CN CN202280023663.8A patent/CN117083653A/zh active Pending
-
2023
- 2023-09-25 US US18/372,145 patent/US20240028966A1/en active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017207839A (ja) * | 2016-05-17 | 2017-11-24 | 日本電信電話株式会社 | ニューラルネットワークシステム、シェア計算装置、ニューラルネットワークの学習方法、プログラム |
JP2020042128A (ja) * | 2018-09-10 | 2020-03-19 | 日本電信電話株式会社 | 秘密統計処理システム、方法、統計処理装置及びプログラム |
WO2020071441A1 (ja) * | 2018-10-04 | 2020-04-09 | 日本電信電話株式会社 | 秘密シグモイド関数計算システム、秘密ロジスティック回帰計算システム、秘密シグモイド関数計算装置、秘密ロジスティック回帰計算装置、秘密シグモイド関数計算方法、秘密ロジスティック回帰計算方法、プログラム |
WO2020071187A1 (ja) * | 2018-10-04 | 2020-04-09 | 日本電信電話株式会社 | 秘密シグモイド関数計算システム、秘密ロジスティック回帰計算システム、秘密シグモイド関数計算装置、秘密ロジスティック回帰計算装置、秘密シグモイド関数計算方法、秘密ロジスティック回帰計算方法、プログラム |
WO2021029024A1 (ja) * | 2019-08-14 | 2021-02-18 | 日本電信電話株式会社 | 秘密ソフトマックス関数計算システム、秘密ソフトマックス関数計算装置、秘密ソフトマックス関数計算方法、秘密ニューラルネットワーク計算システム、秘密ニューラルネットワーク学習システム、プログラム |
Also Published As
Publication number | Publication date |
---|---|
US20240028966A1 (en) | 2024-01-25 |
WO2022203083A1 (ja) | 2022-09-29 |
EP4318441A4 (en) | 2024-09-25 |
AU2022243369A1 (en) | 2023-10-12 |
EP4318441A1 (en) | 2024-02-07 |
CN117083653A (zh) | 2023-11-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Li et al. | A weighting analogue to pair matching in propensity score analysis | |
Leucht et al. | Dependent wild bootstrap for degenerate U-and V-statistics | |
Molnár et al. | A continuous-time MaxSAT solver with high analog performance | |
US11030246B2 (en) | Fast and accurate graphlet estimation | |
WO2018157752A1 (en) | Approximate random number generator by empirical cumulative distribution function | |
EP3863003B1 (en) | Hidden sigmoid function calculation system, hidden logistic regression calculation system, hidden sigmoid function calculation device, hidden logistic regression calculation device, hidden sigmoid function calculation method, hidden logistic regression calculation method, and program | |
Patra et al. | A consistent bootstrap procedure for the maximum score estimator | |
Chambaz et al. | Targeted sequential design for targeted learning inference of the optimal treatment rule and its mean reward | |
JP6767312B2 (ja) | 検知システム、検知方法及び検知プログラム | |
Miao et al. | Off-policy evaluation for episodic partially observable markov decision processes under non-parametric models | |
WO2022203083A1 (ja) | 学習プログラム、学習方法及び学習装置 | |
Hong | Inference in semiparametric conditional moment models with partial identification | |
WO2019208523A1 (ja) | 学習装置、学習方法及び学習プログラム | |
Baldi Antognini et al. | Simulated annealing for balancing covariates | |
Yu et al. | A homoscedasticity test for the accelerated failure time model | |
JP7310884B2 (ja) | パラメータ推定装置、パラメータ推定方法、及びパラメータ推定プログラム | |
Chen et al. | Quantifying the average of the time-varying hazard ratio via a class of transformations | |
WO2023067666A1 (ja) | 算出装置、算出方法及び算出プログラム | |
Cohen et al. | Multivariate one-sided testing in matched observational studies as an adversarial game | |
US11081024B2 (en) | Secure computation system, secure computation device, secure computation method, and program | |
WO2022070343A1 (ja) | 学習装置、学習方法及び学習プログラム | |
WO2022070342A1 (ja) | 学習装置、学習方法及び学習プログラム | |
Rejchel | Fast rates for ranking with large families | |
JP7322976B2 (ja) | 秘密最大値計算装置、方法及びプログラム | |
US11451375B2 (en) | System, method and apparatus for privacy preserving inference |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20210326 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20220517 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20220719 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20220920 |