Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP7388445B2 - ニューラルネットワークの更新方法、端末装置、計算装置及びプログラム - Google Patents
[go: Go Back, main page]

JP7388445B2 - ニューラルネットワークの更新方法、端末装置、計算装置及びプログラム - Google Patents

ニューラルネットワークの更新方法、端末装置、計算装置及びプログラム Download PDF

Info

Publication number
JP7388445B2
JP7388445B2 JP2021560803A JP2021560803A JP7388445B2 JP 7388445 B2 JP7388445 B2 JP 7388445B2 JP 2021560803 A JP2021560803 A JP 2021560803A JP 2021560803 A JP2021560803 A JP 2021560803A JP 7388445 B2 JP7388445 B2 JP 7388445B2
Authority
JP
Japan
Prior art keywords
model update
neural network
terminal device
calculating
training data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2021560803A
Other languages
English (en)
Other versions
JPWO2021106077A1 (ja
Inventor
勇 寺西
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Publication of JPWO2021106077A1 publication Critical patent/JPWO2021106077A1/ja
Application granted granted Critical
Publication of JP7388445B2 publication Critical patent/JP7388445B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/552Detecting local intrusion or implementing counter-measures involving long-term monitoring or reporting
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/09Supervised learning
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/094Adversarial learning
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/098Distributed learning, e.g. federated learning
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09CCIPHERING OR DECIPHERING APPARATUS FOR CRYPTOGRAPHIC OR OTHER PURPOSES INVOLVING THE NEED FOR SECRECY
    • G09C1/00Apparatus or methods whereby a given sequence of signs, e.g. an intelligible text, is transformed into an unintelligible sequence of signs by transposing the signs or groups of signs or by replacing them by others according to a predetermined system
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/03Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
    • G06F2221/034Test or assess a computer or a system
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Mathematical Physics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Computer And Data Communications (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Description

本発明は、ニューラルネットワークの更新方法、端末装置、計算装置及びプログラムに関する。
近年、デバイス側で機械学習を行って、サーバがこれらのデバイスからモデル更新パラメータを受け取ってニューラルネットワークのモデルを更新するFederated Learningという機械学習の形態が注目されている。Federated Learningは、訓練データを集める必要がないため、プライバシーの保護やデータ通信量の削減を図ることができるとされている。
特許文献1、2には、上記したクライアント-サーバ構成で機械学習を行う構成が示されている。例えば、特許文献1には、学習によって得られた重みパラメータを管理装置に送信する端末装置と、前記複数の端末装置から重みパラメータを受信し、最適な重みパラメータを選択する管理装置とを含む構成が開示されている。特許文献2には、上記構成において、よりプライバシー性の高いデータを訓練データとする際の構成が提案されている。
非特許文献1には、推論アルゴリズムへのアクセスが可能であるとの条件下で、個人情報を漏洩させるInference attacksという方法が開示されている。その基本的なアイデアは以下の通りである。まず、攻撃者は訓練データ集合Tと同種の訓練データからなる集合T’={(x’(1),y’(1)),…,(x’(N),y’(N))}を用意する。例えば、Tが顔画像とその特徴量の組からなる集合であれば、攻撃者は、インターネット等から顔画像を拾い集めてT’を作ることができる。そして攻撃者は、n’=1,2,・・・,に対しx’(n’)を推論アルゴリズムに入力して、推論結果Infer(α,w,x’(n’))がy’(n’)とどの程度一致するかを判定し、一致度が高いデータは、T内のデータと類似度が高いと判定する。これにより、攻撃者は、T内にどのようなデータが入っていたのかをある程度推測できてしまう。
非特許文献2には、非特許文献1のような攻撃に耐性のある学習アルゴリズムを提案する文献である。
特開2017-174298号公報 特開2019-28656号公報
Reza Shokri, Marco Stronati, Congzheng Song, Vitaly Shmatikov: "Membership Inference Attacks Against Machine Learning Models", IEEE Symposium on Security and Privacy 2017: 3-18、[online]、[令和1年11月21日検索]、インターネット〈URL:https://arxiv.org/pdf/1610.05820.pdf〉 Milad Nasr, Reza Shokri, Amir Houmansadr: "Machine Learning with Membership Privacy using Adversarial Regularization"、[online]、[令和1年11月21日検索]、インターネット〈URL:https://arxiv.org/pdf/1807.05852.pdf〉
以下の分析は、本発明者によって与えられたものである。上記背景技術に記載したとおり、クライアント-サーバ構成で機械学習を行う構成では、クライアントが公開したモデル更新パラメータからそのクライアントが持っていた訓練データの情報が漏れる可能性がある。訓練データが個人情報に関連するものであった場合、これは個人情報漏えいに繋がることを意味する。
上記のような攻撃に対する対策として、Differential Privacyなどのサーバに送信するデータにノイズを付加する方法が考えられる。しかしながら、ノイズの付加による方法では、十分なプライバシーを確保しようとすると、学習の正確性が損なわれてしまう可能性がある。さらに、スマートフォン等の個人のデバイス由来のデータを訓練データとする場合、その偏りにより、情報が漏れてしまう可能性がある。
この点、非特許文献2の方法を用いることで、Inference attacksに対する攻撃耐性を上げることが可能となる。しかしながら、非特許文献2では、個々の端末装置で計算したモデル更新パラメータを集めて学習を行う形の機械学習への適用は何ら言及されていない。
本発明は、個々の端末装置で計算したモデル更新パラメータを集めて学習を行う形態の機械学習におけるInference attacksに対する耐性の向上に貢献できるニューラルネットワークの更新方法、端末装置、計算装置及びプログラムを提供することを目的とする。
第1の視点によれば、訓練データを用いて、第1のニューラルネットワークの第1のモデル更新パラメータを計算する処理と、前記訓練データとは異なる擬似攻撃用の訓練データを用いて、前記ニューラルネットワークとは別の第2のニューラルネットワークの第2のモデル更新パラメータを計算する処理とを、実行可能な機械学習部と、所定の準同型暗号を用いて前記第1、第2のモデル更新パラメータを暗号化する暗号処理部と、所定の計算装置に対して、前記暗号化した前記第1、第2のモデル更新パラメータを送信するデータ送信部と、前記計算装置から、他の端末装置から受信した第1、第2のモデル更新パラメータを用いて計算された前記第1、第2のニューラルネットワークのモデル更新パラメータを受信し、前記第1、第2のニューラルネットワークを更新する更新部と、を備えた端末装置が提供される。
第2の視点によれば、上記した端末装置と通信可能であり、前記端末装置から受信した第1、第2のモデル更新パラメータを用いて、前記第1、第2のニューラルネットワークのモデル更新パラメータを計算する計算部と、前記端末装置に対し、更新後の前記第1、第2のニューラルネットワークのモデル更新パラメータを送信する送信部と、を備えた計算装置が提供される。
第3の視点によれば、訓練データを用いて、第1のニューラルネットワークの第1のモデル更新パラメータを計算する処理と、前記訓練データとは異なる擬似攻撃用の訓練データを用いて、前記ニューラルネットワークとは別の第2のニューラルネットワークの第2のモデル更新パラメータを計算する処理とを、実施し、所定の準同型暗号を用いて前記第1、第2のモデル更新パラメータを暗号化し、所定の計算装置に対して、前記暗号化した前記第1、第2のモデル更新パラメータを送信し、前記計算装置から、他の端末装置から受信した第1、第2のモデル更新パラメータを用いて計算された前記第1、第2のニューラルネットワークのモデル更新パラメータを受信し、前記第1、第2のニューラルネットワークを更新する、ニューラルネットワークの更新方法が提供される。本方法は、訓練データを用いて、ニューラルネットワークのモデル更新パラメータを計算するコンピュータという、特定の機械に結びつけられている。
第4の視点によれば、上記した端末装置の機能を実現するためのコンピュータプログラムが提供される。プログラムは、コンピュータ装置に入力装置又は外部から通信インターフェースを介して入力され、記憶装置に記憶されて、プロセッサを所定のステップないし処理に従って駆動させ、必要に応じ中間状態を含めその処理結果を段階毎に表示装置を介して表示することができ、あるいは通信インターフェースを介して、外部と交信することができる。そのためのコンピュータ装置は、一例として、典型的には互いにバスによって接続可能なプロセッサ、記憶装置、入力装置、通信インターフェース、及び必要に応じ表示装置を備える。また、このプログラムは、コンピュータが読み取り可能な(非トランジトリーな)記憶媒体に記録することができる。
本発明によれば、個々の端末装置で計算したモデル更新パラメータを集めて学習を行う形態の機械学習におけるInference attacksに対する耐性を向上させることが可能となる。
本発明の一実施形態の構成を示す図である。 本発明の一実施形態の動作を説明するための図である。 本発明の一実施形態の動作を説明するための図である。 本発明の第1の実施形態の構成を示す図である。 本発明の第1の実施形態の詳細構成を表した機能ブロック図である。 本発明の第1の実施形態の動作を表したシーケンス図である。 本発明の端末装置又はサーバを構成するコンピュータの構成を示す図である。
はじめに本発明の一実施形態の概要について図面を参照して説明する。なお、この概要に付記した図面参照符号は、理解を助けるための一例として各要素に便宜上付記したものであり、本発明を図示の態様に限定することを意図するものではない。また、以降の説明で参照する図面等のブロック間の接続線は、双方向及び単方向の双方を含む。一方向矢印については、主たる信号(データ)の流れを模式的に示すものであり、双方向性を排除するものではない。プログラムはコンピュータ装置を介して実行され、コンピュータ装置は、例えば、プロセッサ、記憶装置、入力装置、通信インターフェース、及び必要に応じ表示装置を備える。また、このコンピュータ装置は、通信インターフェースを介して装置内又は外部の機器(コンピュータを含む)と、有線、無線を問わず、通信可能に構成される。また、図中の各ブロックの入出力の接続点には、ポート乃至インターフェースがあるが図示を省略する。また、以下の説明において、「A及び/又はB」は、A又はB、若しくは、A及びBという意味で用いる。
本発明は、その一実施形態において、図1に示すように、機械学習部21と、暗号処理部22と、データ送信部23と、更新部24と、を備えた端末装置20にて実現できる。
より具体的には、機械学習部21は、訓練データを用いて、第1のニューラルネットワークの第1のモデル更新パラメータを計算する処理と、前記訓練データとは異なる擬似攻撃用の訓練データを用いて、前記ニューラルネットワークとは別の第2のニューラルネットワークの第2のモデル更新パラメータを計算する処理とを実行可能に構成される。
暗号処理部22は、所定の準同型暗号を用いて、計算した第1、第2のモデル更新パラメータのいずれかを暗号化する。例えば、端末装置mが計算したモデル更新パラメータをΔm、準同型暗号をEnc(x)と表した場合、暗号化後のモデル更新パラメータは、Enc(Δm)と表される。
データ送信部23は、図2に示すように、所定の計算装置10に対して、前記暗号化したモデル更新パラメータを送信する。例えば、図2の左端の端末装置20は、モデル更新パラメータEnc(Δ1)を送信する。図2の右端の端末装置20は、モデル更新パラメータEnc(Δm)を送信する。
前記モデル更新パラメータEnc(Δ1)やEnc(Δm)を受信した計算装置10は、受信した第1、第2のモデル更新パラメータを用いて、前記第1、第2のニューラルネットワークのモデル更新パラメータΔを計算する。前記モデル更新パラメータEnc(Δ1)は準同型暗号を用いて暗号化されているため、暗号化した状態で、ニューラルネットワークのモデル更新パラメータΔを計算することができる。
そして、計算装置10は、図3に示すように、端末装置20に対し、更新したニューラルネットワークのモデル更新パラメータΔを送信する。
端末装置20の更新部24は、前記計算装置10から、更新された前記第1、第2のニューラルネットワークのモデル更新パラメータΔを受信し、受信したモデル更新パラメータΔに対応するニューラルネットワークを更新する。
以上のとおり、本実施形態によれば、端末装置20から計算装置10に送信されるモデル更新パラメータは暗号化されて送信され、計算装置10においても復号せずに、モデル更新パラメータの計算が行われる。さらに、機械学習部21において、本来の訓練データによる学習に加えて、擬似攻撃用の訓練データによる学習が行われるため、Inference attacksに対する耐性が飛躍的に向上されることになる。
[第1の実施形態]
続いて、端末装置及び計算装置(サーバ)がハイパーパラメータを共有して、Horizontal Federated Learningを実施するようにした本発明の第1の実施形態について図面を参照して詳細に説明する。図4は、本発明の第1の実施形態の構成を示す図である。図4を参照すると、サーバ100と、このサーバ100にモデル更新パラメータを送信し、サーバ100にて計算されたモデル更新パラメータを受信可能なM台の端末装置200-1~200-Mと、が接続された構成が示されている。なお、以降、端末装置200-1~200-Mを特に区別しない場合、端末装置200と記す。
また、サーバ100は、複数のサブサーバ300と接続され、このサブサーバ300と連携して、後記する加法準同型暗号によって暗号化されたデータのしきい値復号を実行可能となっている。
図5は、本発明の第1の実施形態の詳細構成を表した機能ブロック図である。図5を参照すると、端末装置200は、機械学習部201a、201bと、暗号処理部202と、データ送信部203と、更新部204と、訓練データ記憶部205a、205bと、を備えている。なお、このような端末装置200としては、後記するハイパーパラメータを共有可能であり、かつ、モデル更新パラメータを計算可能な種々の電子機器(デバイス)を用いることができる。このような電子機器(デバイス)の例としては、スマートフォン、パーソナルコンピュータやタブレット端末等を挙げることができる。
本実施形態では、Inference attacksに対する耐性を向上させるために、2つのニューラルネットワークを用意する。第1のニューラルネットワークは、本来の訓練データ集合を学習するためのニューラルネットワークである。このニューラルネットワークを用いて推論を行う。第2のニューラルネットワークは、第1のニューラルネットワークに擬似的攻撃を仕掛けるためのニューラルネットワークである。本実施形態では、この2つのニューラルネットワークを交互に動かしながら学習を行う。以下の説明では、区別のため、第1のニューラルネットワークを利用用ニューラルネットワーク、第2のニューラルネットワークを攻撃用ニューラルネットワークと呼ぶことにする。以下、利用用ニューラルネットワークのハイパーパラメータをα、攻撃用ニューラルネットワークのハイパーパラメータをα’とする。この攻撃用ニューラルネットワークの構成方法としては、非特許文献2に記載されている方法を用いることができる。
以下、説明の便宜上、本実施形態の端末装置200は、上記2つのニューラルネットワークを取り扱うため、2つの機械学習部201a、201bと、訓練データ記憶部205a、205bを備えているものとして説明する。
訓練データ記憶部205aは、利用用ニューラルネットワークで学習したい訓練データ集合を記憶する。以下の説明では、この訓練データ集合をT={(x(1),y(1)),・・・,(x(N),y(N))と記す。
訓練データ記憶部205bは、攻撃用ニューラルネットワークを用いて擬似攻撃をしかける為に利用する訓練データ集合を記憶する。以下の説明では、この訓練データ集合をT’={(x’(1),y’(1)),・・・,(x’(N’),y’(N’))と記す。
なお、上記各x(N)、x’(N’)は、同一の集合Xの元であるとする。同様に、各y(N)、y’(N’)は、同一の集合Yの元であるとする。
また、事前準備として、前述のハイパーパラメータα、α’は、何らかの方法で決定されているものとする。ハイパーパラメータの決定方法としては、例えば、ニューラルネットワークの既知のハイパーパラメータαを流用する方法が挙げられる。もちろん、ハイパーパラメータα、α’の決定方法は、これに限られずニューラルネットワークの用途やサーバ100や端末装置200の仕様に応じたパラメータを設定すればよい。
さらにエポックtを1に初期化し、モデルパラメータ初期値w[1]を何らかの方法で初期化する。初期化方法はニューラルネットワークの設計により様々な方法を採用することができる。
サーバ100と端末装置200は、ハイパーパラメータα、α’を、事前に共有しておくものとする。共有方法としては、例えば、サーバ100が各端末装置200にα、α’を事前に送信する方法や、端末装置200にインストールするプログラムに事前にα、α’を書き込んでおく等の方法を採用することができる。また、モデルパラメータの初期値w[1]、w’[1]も同様に、何らかの方法でサーバ100と端末装置200間で事前に共有しておくものとする。
以下の説明では、機械学習部201aが、訓練データ集合Tを用いて利用用ニューラルネットワークの学習を行い、機械学習部201bが、訓練データ集合T’を用いて攻撃用ニューラルネットワークの学習を行うものとして説明する。
サーバ100は、事前に設定した加法準同型暗号の鍵生成アルゴリズムGen(κ)を使って、公開鍵・秘密鍵ペア(pk,sk)を作成し、すべての端末装置200に対し、公開鍵pkを事前に送信しておくものとする。なお、加法準同型暗号としては、岡本内山暗号、Paillier暗号、Damgaard-Jurik暗号等を用いることができる。
暗号処理部202は、公開鍵pkを用いて、機械学習部201aが計算したモデル更新パラメータを暗号化する。この公開鍵pkに対応する秘密鍵sk、skは、サーバ100とサブサーバ300がそれぞれ保持するものとする。
データ送信部203は、サーバ100に対し、前記暗号処理部202にて暗号化したモデル更新パラメータを送信する。
更新部204は、サーバ100から受信したモデル更新パラメータΔ[t]、Δ’[t,a]を用いて、利用用ニューラルネットワーク又は攻撃用ニューラルネットワークを更新する。その詳細は、後に具体的な動作とともに説明する。
サーバ100は、計算部101と、送信部102とを備える。計算部101は、端末装置200から送信された暗号化済みのモデル更新パラメータを集計する。さらに、サーバ100は、サブサーバ300の協力の下、暗号化済みのモデル更新パラメータの復号を行ってモデル更新パラメータΔ[t]、Δ’[t,a]を計算する。
送信部102は、各端末装置200に対し、前記計算部101にて計算されたモデル更新パラメータΔ[t]、Δ’[t,a]を送信する。
続いて、本実施形態の動作について図面を参照して詳細に説明する。図6は、本発明の第1の実施形態の動作を表したシーケンス図である。
以下の説明中、c及びAは、事前に定められた定数である。また、学習率η’[t,a]は、サーバ100及びすべての端末装置200で共有されているものとする。また、学習率η’[t]は、ループにおいてw[t]の値の変化しやすさを決める実数である。学習率η’[t,a],学習率η’[t]は、ニューラルネットワークの設計によって様々な決め方が存在するが、本発明ではどのような値を用いてもよいので説明を省略する。
図6を参照すると、まず、サーバ100及びすべての端末装置200は、t=1とし、w[1]、w’[1]を初期化する(ステップS001)。
サーバ100及びすべての端末装置200は、w[t]が終了条件を満たすまで以下、(ステップS002)~(ステップS106)を繰り返す。また、上記終了条件としては、例えば、(w[t+1]-w[t]が事前に定められた値より小さくなったらループを終了するといった条件を設定することができる。終了条件は、これに限られるものではなく、ニューラルネットワークに応じたものを採用することができる。
サーバ100及びすべての端末装置200は、w’[t,1]=w’[t]とする(ステップS002)。
サーバ100は、a=1,・・・,Aに対し、以下の処理を実行し、端末装置200に対し、攻撃用ニューラルネットワークの更新用のパラメータを配布する(ステップS003)。
・サーバ100は、非負整数c(1),・・・,c(M)でc(1)+・・・+c(M)=cとなるものを選ぶ。
・サーバ100は、非負整数c’(0),・・・,c’(M)でc’(0)+・・・+c’(M)=cとなるものを選ぶ。
・サーバ100は、T’のc元部分集合B’[0,t,a]をランダムに選択する。
・サーバ100は、次式[数1]によりD[0,t,a]を計算した後、[数2]によりΔ’[0,t,a]を計算する。なお、[数2]中のInfer(x)は、ハイパーパラメータα、パラメータw、およびデータxを入力として受け取り、推論結果を出力する推論アルゴリズムを示す。このΔ’[0,t,a]がモデル更新パラメータの初期値となる。
Figure 0007388445000001
Figure 0007388445000002
・サーバ100は、端末装置m(m=1,・・・,M)に対し、(c(m),c’(m))を送信する。
m台(m=1,・・・M)の端末装置200は、以下の処理を実行して、攻撃用ニューラルネットワークのモデル更新パラメータの計算、送信を行う(ステップS004)。
・端末装置200は、(c(m),c’(m))を受信する。
・端末装置200の機械学習部201bは、T(m)のc(m)元部分集合B[m,t,a]をランダムに選択する。ここで、T(m)は端末装置mが保持する訓練データ集合を示す。
・端末装置200の機械学習部201bは、T’(m)のc’(m)元部分集合B’[m,t,a]をランダムに選択する。
・端末装置200の機械学習部201bは、次式[数3]によりD[m,t,a]を計算した後、[数4]により、端末装置mのエポックtのモデル更新パラメータΔ’[m,t,a]を計算する。
Figure 0007388445000003
Figure 0007388445000004
・端末装置200は、事前に配布された加法準同型暗号の公開鍵pkを用いて、モデル更新パラメータΔ’[m,t,a]を暗号化し、Enc(pk,Δ’[m,t,a])をサーバ100に送信する。
サーバ100は、前記端末装置200から受信したEnc(pk,Δ’[m,t,a])を用いて、攻撃用ニューラルネットワークのモデル更新パラメータの復号、配布を行う(ステップS005)。具体的には、サーバ100は、端末装置200から受信したEnc(pk,Δ’[1,t,a])+・・・+Enc(pk,Δ’[M,t,a])を計算する。前述のとおり、Enc(pk,Δ’[m,t,a])は、加法準同型暗号を用いて暗号化されているので、Enc(pk,Δ’[1,t,a])+・・・+Enc(pk,Δ’[M,t,a])は、暗号化した状態のEnc(pk,Δ’[m,t,a])を集計することで計算することができる。
さらに、サーバ100は、計算結果を、秘密鍵skを保持するサブサーバ300の協力の下にしきい値復号し、復号結果Δ’[t,a]を得る。このしきい値復号としては、n個中の分散データのうち、しきい値k個の分散データから元の情報を復元できるk-out-of-n分散方式といわれているものを用いることができる。
そして、サーバ100は、すべての端末装置200に対し、復号結果Δ’[t,a]を送信する。
前記復号結果Δ’[t,a]を受信した端末装置200は、w’[t,a+1]=w’[t,a]+η[t,a]Δ’[t,a]を計算する(ステップS006)。
次に、サーバ100及びすべての端末装置200は、w’[t]=w’[t,a]とする(ステップS007)。
次に、m台(m=1,・・・M)の端末装置200は、以下の処理を実行して、利用用ニューラルネットワークのモデル更新パラメータの計算、送信を行う(ステップS104)。
・端末装置200の機械学習部201aは、T(m)のc(m)元部分集合B[m,t]をランダムに選択する。ここで、T(m)は端末装置mが保持する訓練データ集合を示す。
・端末装置200の機械学習部201aは、次式[数5]により、端末装置mのエポックtのモデル更新パラメータΔ[m,t]を計算する。
Figure 0007388445000005
・端末装置200は、事前に配布された加法準同型暗号の公開鍵pkを用いて、モデル更新パラメータΔ[m,t]を暗号化し、Enc(pk,Δ[m,t])をサーバ100に送信する。
サーバ100は、前記端末装置200から受信したEnc(pk,Δ[m,t])を用いて、利用用ニューラルネットワークのモデル更新パラメータの復号、配布を行う(ステップS105)。具体的には、サーバ100は、端末装置200から受信したEnc(pk,Δ[1,t])+・・・+Enc(pk,Δ[M,t])を計算する。前述のとおり、Enc(pk,Δ[m,t])は、加法準同型暗号を用いて暗号化されているので、Enc(pk,Δ’[1,t])+・・・+Enc(pk,Δ[M,t])は、Enc(pk,Δ[m,t])を暗号化した状態で集計することで計算することができる。
さらに、サーバ100は、計算結果を、秘密鍵skを保持するサブサーバ300の協力の下にしきい値復号し、復号結果Δ[t]を得る。そして、サーバ100は、すべての端末装置200に対し、復号結果Δ[t]を送信する。
前記復号結果Δ’[t]を受信した端末装置200は、w[t+1]=w[t]-η[t]Δ[t]を計算する(ステップS106)。
サーバ100およびすべての端末装置200は、終了条件を充足したか否かを判定する。終了条件を充足している場合(ステップS107の「充足」)、サーバ100およびすべての端末装置200は、エポックt=t+1に更新、w=w[t]、w’=w’[t]とする(ステップS200)。一方、終了条件を充足していない場合(ステップS107の「非充足」)、ステップaをインクリメントし(ステップS108)、ステップS002以降の処理を繰り返す。
以上の結果、利用用ニューラルネットワークと、攻撃用ニューラルネットワークのモデルパラメータw、w’がそれぞれ更新される。
以上のとおり、本実施形態によれば、端末装置200からサーバ100に送信されるモデル更新パラメータは暗号化されて送信され、サーバ100においても復号せずに、モデル更新パラメータの計算が行われる。さらに、機械学習部201a、201bにおいて、本来の訓練データによる学習に加えて、擬似攻撃用の訓練データによる学習が行われるため、Inference attacksに対する耐性が飛躍的に向上されることになる。
以上、本発明の各実施形態を説明したが、本発明は、上記した実施形態に限定されるものではなく、本発明の基本的技術的思想を逸脱しない範囲で、更なる変形・置換・調整を加えることができる。例えば、各図面に示したネットワーク構成、各要素の構成、メッセージの表現形態は、本発明の理解を助けるための一例であり、これらの図面に示した構成に限定されるものではない。
例えば、上記した実施形態では、端末装置200が、機械学習部201a、201b、訓練データ記憶部205a、205bを備えているものとして説明したが、両者を統合した構成とすることも可能である。
上記した実施形態では、攻撃用ニューラルネットワークのモデル更新パラメータの計算の後に、利用用ニューラルネットワークのモデル更新パラメータの計算を行うものとして説明したが、その順序に限定はない。また、上記した実施形態では、m台(m=1,・・・M)の端末装置200のすべてから、モデル更新パラメータを受信できるものとして説明したが、すべての端末装置200からのモデル更新パラメータの受信を待たずに、モデル更新パラメータを計算してもよい。
また、上記した実施形態に示した手順は、サーバ100及び端末装置200として機能するコンピュータ(図7の9000)に、これらの装置としての機能を実現させるプログラムにより実現可能である。このようなコンピュータは、図7のCPU(Central Processing Unit)9010、通信インターフェース9020、メモリ9030、補助記憶装置9040を備える構成に例示される。すなわち、図7のCPU9010にて、機械学習プログラムや暗復号プログラムを実行し、その補助記憶装置9040等に保持された各計算パラメータの更新処理を実施させればよい。
即ち、上記した実施形態に示したサーバ100及び端末装置200の各部(処理手段、機能)は、これらの装置に搭載されたプロセッサに、そのハードウェアを用いて、上記した各処理を実行させるコンピュータプログラムにより実現することができる。
最後に、本発明の好ましい形態を要約する。
[第1の形態]
(上記第1の視点による端末装置参照)
[第2の形態]
上記した端末装置の機械学習部は、第1のニューラルネットワークの第1のモデル更新パラメータを計算する処理と、前記第2のニューラルネットワークの第2のモデル更新パラメータを計算する処理とを、交互に実施する構成を採ることができる。
[第3の形態]
上記した端末装置は、前記他の端末装置及び前記計算装置と、ハイパーパラメータを共有して、Horizontal Federated Learningを実施する構成を採ることができる。
[第4の形態]
前記第1、第2のニューラルネットワークのモデル更新パラメータは、前記計算装置において、加法準同型暗号を用いて、前記端末装置から受信したモデル更新パラメータを暗号化した状態で加算することで計算される構成を採ることができる。
[第5の形態]
前記計算装置は、秘密分散方式を用いて分散された復号鍵を保持するサブサーバと接続され、前記サブサーバと共同して、前記第1、第2のニューラルネットワークのモデル更新パラメータを復号する構成を採ることができる。
[第6の形態]
(上記第2の視点による計算装置参照)
[第7の形態]
(上記第3の視点によるニューラルネットワークの更新方法参照)
[第8の形態]
(上記第4の視点によるプログラム参照)
なお、上記第6~第8の形態は、第1の形態と同様に、第2~第5の形態に展開することが可能である。
なお、上記の特許文献および非特許文献の各開示は、本書に引用をもって繰り込み記載されているものとし、必要に応じて本発明の基礎ないし一部として用いることが出来るものとする。本発明の全開示(請求の範囲を含む)の枠内において、さらにその基本的技術思想に基づいて、実施形態ないし実施例の変更・調整が可能である。また、本発明の開示の枠内において種々の開示要素(各請求項の各要素、各実施形態ないし実施例の各要素、各図面の各要素等を含む)の多様な組み合わせ、ないし選択(部分的削除を含む)が可能である。すなわち、本発明は、請求の範囲を含む全開示、技術的思想にしたがって当業者であればなし得るであろう各種変形、修正を含むことは勿論である。特に、本書に記載した数値範囲については、当該範囲内に含まれる任意の数値ないし小範囲が、別段の記載のない場合でも具体的に記載されているものと解釈されるべきである。さらに、上記引用した文献の各開示事項は、必要に応じ、本発明の趣旨に則り、本発明の開示の一部として、その一部又は全部を、本書の記載事項と組み合わせて用いることも、本願の開示事項に含まれるものと、みなされる。
10 計算装置
11、101 計算部
12、102 送信部
20 端末装置
21、201a、201b 機械学習部
22、202 暗号処理部
23、203 データ送信部
24、204 更新部
100 サーバ
200-1~200-M 端末装置
205a、205b 訓練データ記憶部
300 サブサーバ
9000 コンピュータ
9010 CPU
9020 通信インターフェース
9030 メモリ
9040 補助記憶装置

Claims (10)

  1. 訓練データを用いて、第1のニューラルネットワークの第1のモデル更新パラメータを計算する処理と、前記訓練データとは異なる擬似攻撃用の訓練データを用いて、前記ニューラルネットワークとは別の第2のニューラルネットワークの第2のモデル更新パラメータを計算する処理とを、実行可能な機械学習部と、
    所定の準同型暗号を用いて前記第1、第2のモデル更新パラメータを暗号化する暗号処理部と、
    所定の計算装置に対して、前記暗号化した前記第1、第2のモデル更新パラメータを送信するデータ送信部と、
    前記計算装置から、他の端末装置から受信した第1、第2のモデル更新パラメータを用いて計算された前記第1、第2のニューラルネットワークのモデル更新パラメータを受信し、前記第1、第2のニューラルネットワークを更新する更新部と、
    を備え
    前記第2のニューラルネットワークのモデル更新パラメータの初期値は、前記他の端末装置から受信した第2のモデル更新パラメータを用いずに前記計算装置が計算したものである端末装置。
  2. 前記機械学習部は、第1のニューラルネットワークの第1のモデル更新パラメータを計算する処理と、前記第2のニューラルネットワークの第2のモデル更新パラメータを計算する処理とを、交互に実施する請求項1の端末装置。
  3. 前記他の端末装置及び前記計算装置と、ハイパーパラメータを共有して、Horizontal Federated Learningを実施する請求項1又は2の端末装置。
  4. 前記第1、第2のニューラルネットワークのモデル更新パラメータは、前記計算装置において、加法準同型暗号を用いて、前記端末装置から受信したモデル更新パラメータを暗号化した状態で加算することで計算される請求項1から3いずれか一の端末装置。
  5. 訓練データを用いて、第1のニューラルネットワークの第1のモデル更新パラメータを計算する処理と、前記訓練データとは異なる擬似攻撃用の訓練データを用いて、前記ニューラルネットワークとは別の第2のニューラルネットワークの第2のモデル更新パラメータを計算する処理とを、実行可能な機械学習部と、
    所定の準同型暗号を用いて前記第1、第2のモデル更新パラメータを暗号化する暗号処理部と、
    所定の計算装置に対して、前記暗号化した前記第1、第2のモデル更新パラメータを送信するデータ送信部と、
    前記計算装置から、他の端末装置から受信した第1、第2のモデル更新パラメータを用いて更新された前記第1、第2のニューラルネットワークのモデル更新パラメータを受信し、前記第1、第2のニューラルネットワークを更新する更新部と、を備えた端末装置と通信可能であり、
    前記他の端末装置から受信した第2のモデル更新パラメータを用いずに前記第2のニューラルネットワークのモデル更新パラメータの初期値を計算し、前記端末装置から受信した第1、第2のモデル更新パラメータを用いて、前記第1、第2のニューラルネットワークのモデル更新パラメータを計算する計算部と、
    前記端末装置に対し、更新後の前記第1、第2のニューラルネットワークのモデル更新パラメータを送信する送信部と、
    を備えた計算装置。
  6. 前記端末装置と前記他の端末装置とハイパーパラメータを共有して、Horizontal Federated Learningを実施する請求項5の計算装置。
  7. 前記計算部は、加法準同型暗号を用いて、前記第1、第2のモデル更新パラメータを暗号化した状態で加算することで、前記第1、第2のニューラルネットワークのモデル更新パラメータを計算する請求項5又は6の計算装置。
  8. 前記計算装置は、秘密分散方式を用いて分散された復号鍵を保持するサブサーバと接続され、
    前記計算部は、前記サブサーバと共同して、前記第1、第2のニューラルネットワークのモデル更新パラメータを復号する請求項5から7いずれか一の計算装置。
  9. 訓練データを用いて、第1のニューラルネットワークの第1のモデル更新パラメータを計算する処理と、前記訓練データとは異なる擬似攻撃用の訓練データを用いて、前記ニューラルネットワークとは別の第2のニューラルネットワークの第2のモデル更新パラメータを計算する処理とを、実施し、
    所定の準同型暗号を用いて前記第1、第2のモデル更新パラメータを暗号化し、
    所定の計算装置に対して、前記暗号化した前記第1、第2のモデル更新パラメータを送信し、
    他の端末装置から受信した第2のモデル更新パラメータを用いずに計算された前記第2のニューラルネットワークのモデル更新パラメータの初期値と前記他の端末装置から受信した第1、第2のモデル更新パラメータを用いて計算された前記第1、第2のニューラルネットワークのモデル更新パラメータを前記計算装置から受信し、前記第1、第2のニューラルネットワークを更新する、
    ニューラルネットワークの更新方法。
  10. 訓練データを用いて、第1のニューラルネットワークの第1のモデル更新パラメータを計算する処理と、前記訓練データとは異なる擬似攻撃用の訓練データを用いて、前記ニューラルネットワークとは別の第2のニューラルネットワークの第2のモデル更新パラメータを計算する処理とを、実施する処理と、
    所定の準同型暗号を用いて前記第1、第2のモデル更新パラメータを暗号化する処理と、
    所定の計算装置に対して、前記暗号化した前記第1、第2のモデル更新パラメータを送信する処理と、
    他の端末装置から受信した第2のモデル更新パラメータを用いずに計算された前記第2のニューラルネットワークのモデル更新パラメータの初期値と前記他の端末装置から受信した第1、第2のモデル更新パラメータを用いて計算された前記第1、第2のニューラルネットワークのモデル更新パラメータを前記計算装置から受信し、前記第1、第2のニューラルネットワークを更新する処理と、
    をコンピュータに実行させるプログラム。
JP2021560803A 2019-11-26 2019-11-26 ニューラルネットワークの更新方法、端末装置、計算装置及びプログラム Active JP7388445B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2019/046169 WO2021106077A1 (ja) 2019-11-26 2019-11-26 ニューラルネットワークの更新方法、端末装置、計算装置及びプログラム

Publications (2)

Publication Number Publication Date
JPWO2021106077A1 JPWO2021106077A1 (ja) 2021-06-03
JP7388445B2 true JP7388445B2 (ja) 2023-11-29

Family

ID=76129280

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021560803A Active JP7388445B2 (ja) 2019-11-26 2019-11-26 ニューラルネットワークの更新方法、端末装置、計算装置及びプログラム

Country Status (3)

Country Link
US (1) US12045340B2 (ja)
JP (1) JP7388445B2 (ja)
WO (1) WO2021106077A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2025143666A1 (ko) * 2023-12-29 2025-07-03 주식회사 세이프에이아이 위험 상황 예측을 위해 데이터 암호화를 활용하여 연합 학습을 수행하는 방법

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021146652A1 (en) * 2020-01-17 2021-07-22 Syntiant Systems and methods for neural network training via local target signal augmentsation
US20210312336A1 (en) * 2020-04-03 2021-10-07 International Business Machines Corporation Federated learning of machine learning model features
CN113591040B (zh) * 2021-06-23 2023-10-24 北京百度网讯科技有限公司 加密方法及其装置、解密方法及其装置、电子设备和介质
JP7701721B2 (ja) * 2021-07-06 2025-07-02 ザ ガバニング カウンシル オブ ザ ユニバーシティ オブ トロント マルチパーティ型準同型暗号によるセキュアでロバストな連合学習システム及び連合学習方法
JP7792688B2 (ja) * 2022-01-26 2025-12-26 国立大学法人 筑波大学 端末、データ処理装置、端末制御プログラム、データ処理プログラム、端末制御方法及びデータ処理方法
CN114726496B (zh) * 2022-03-07 2023-10-03 电子科技大学 一种安全的应用于纵向联邦学习的特征选择方法
US20250190864A1 (en) * 2022-03-18 2025-06-12 Nippon Telegraph And Telephone Corporation Learning apparatus, learning system, learning method, and program
WO2024129052A1 (en) * 2022-12-12 2024-06-20 Rakuten Mobile, Inc. Collaborative training with compressed transmissions
CN115719094B (zh) * 2023-01-06 2023-04-28 腾讯科技(深圳)有限公司 基于联邦学习的模型训练方法、装置、设备及存储介质
JPWO2024247166A1 (ja) * 2023-05-31 2024-12-05
CN121311906A (zh) * 2023-06-13 2026-01-09 华为技术有限公司 通信方法和通信装置
CN117314594B (zh) * 2023-09-15 2025-09-19 蝴蝶供应链有限公司 一种基于工程机械监控的租赁管理方法及系统

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9946970B2 (en) * 2014-11-07 2018-04-17 Microsoft Technology Licensing, Llc Neural networks for encrypted data
JP6561004B2 (ja) 2016-03-25 2019-08-14 株式会社デンソーアイティーラボラトリ ニューラルネットワークシステム、端末装置、管理装置およびニューラルネットワークにおける重みパラメータの学習方法
US10755172B2 (en) * 2016-06-22 2020-08-25 Massachusetts Institute Of Technology Secure training of multi-party deep neural network
CN108243216B (zh) * 2016-12-26 2020-02-14 华为技术有限公司 数据处理的方法、端侧设备、云侧设备与端云协同系统
WO2018136801A1 (en) * 2017-01-20 2018-07-26 Enveil, Inc. End-to-end secure operations using a query matrix
US20190012595A1 (en) * 2017-07-07 2019-01-10 Pointr Data, Inc. Neural network consensus using blockchain
JP6936474B2 (ja) 2017-07-28 2021-09-15 プラスマン合同会社 情報処理装置、システムおよび情報処理方法
JP6741636B2 (ja) 2017-09-15 2020-08-19 Kddi株式会社 情報処理装置、情報処理方法、及びプログラム
US11526745B2 (en) * 2018-02-08 2022-12-13 Intel Corporation Methods and apparatus for federated training of a neural network using trusted edge devices
KR102153992B1 (ko) * 2018-06-21 2020-09-09 한국전자통신연구원 심층 신경망을 이용한 사이버 위협 탐지 방법 및 장치
US11886989B2 (en) * 2018-09-10 2024-01-30 International Business Machines Corporation System for measuring information leakage of deep learning models
US11710029B2 (en) * 2018-09-28 2023-07-25 Intel Corporation Methods and apparatus to improve data training of a machine learning model using a field programmable gate array
US20210073393A1 (en) * 2019-09-09 2021-03-11 Kazuhm, Inc. Encryption for machine learning model inputs
EP4012593A1 (en) * 2020-12-09 2022-06-15 Thales DIS France SA Neural network cryptography coprocessor providing countermeasture against side-channel analysis

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
BONAWITZ, Keith et al.,Practical Secure Aggregation for Privacy-Preserving Machine Learning,CCS'17: Proceedings of the 2017 ACM SIGSAC Conference on Computer and Communications Security,米国,Association for Computing Machinery,2017年10月,pp.1175-1191,検索日[2020.01.23]、インターネット:<URL:https://dl.acm.org/doi/pdf/10.1145/3133956.2133982>
NASR, Milad et al.,Machine Learning with Membership Privacy using Adversarial Regularization,2018年07月16日,pp.1-14,検索日[2020.01.23]、インターネット:<URL:https://arxiv.org/pdf/1807.05852v1.pdf>

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2025143666A1 (ko) * 2023-12-29 2025-07-03 주식회사 세이프에이아이 위험 상황 예측을 위해 데이터 암호화를 활용하여 연합 학습을 수행하는 방법

Also Published As

Publication number Publication date
US12045340B2 (en) 2024-07-23
WO2021106077A1 (ja) 2021-06-03
JPWO2021106077A1 (ja) 2021-06-03
US20220414208A1 (en) 2022-12-29

Similar Documents

Publication Publication Date Title
JP7388445B2 (ja) ニューラルネットワークの更新方法、端末装置、計算装置及びプログラム
CN113221105B (zh) 一种基于部分参数聚合的鲁棒性联邦学习算法
He et al. Privacy-preserving and low-latency federated learning in edge computing
US9948460B2 (en) Multivariate cryptography based on clipped hopfield neural network
CN110704860A (zh) 提升安全性的纵向联邦学习方法、设备、系统及存储介质
Prajapat et al. A privacy preserving quantum authentication scheme for secure data sharing in wireless body area networks
Kao et al. Controlled quantum dialogue using cluster states
KR20150123823A (ko) 마스크들을 사용한 프라이버시-보존 리지 회귀
CN114691167A (zh) 机器学习模型更新的方法和装置
CN116681141B (zh) 隐私保护的联邦学习方法、终端及存储介质
KR20230148200A (ko) 멀티소스 데이터의 데이터 처리 방법, 장치 및 전자 기기, 저장 매체
CN114003950A (zh) 基于安全计算的联邦机器学习方法、装置、设备及介质
WO2014132552A1 (ja) 順序保存暗号化システム、装置、方法およびプログラム
CN118445844A (zh) 一种联邦学习数据隐私保护方法、装置及可读存储介质
CN116502732A (zh) 基于可信执行环境的联邦学习方法以及系统
CN116579439A (zh) 面向异质场景的隐私保护个性化联邦学习方法和装置
Chen et al. Cryptanalysis and improvement of DeepPAR: Privacy-preserving and asynchronous deep learning for industrial IoT
CN117579334A (zh) 一种高效的强隐私保护联邦学习系统及方法
CN111581648B (zh) 在不规则用户中保留隐私的联邦学习的方法
Hannun et al. Privacy-preserving multi-party contextual bandits
Yang et al. Privacy-preserving machine learning in cloud–edge–end collaborative environments
Shen et al. An Efficient and Secure Privacy-Preserving Federated Learning Framework Based on Multiplicative Double Privacy Masking.
CN114357504B (zh) 基于隐私保护的联邦学习方法以及相关设备
US10396983B2 (en) Method for cryptographic communication based on pure chance
CN105099693B (zh) 一种传输方法及传输装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220525

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230523

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230719

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20231030

R151 Written notification of patent or utility model registration

Ref document number: 7388445

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151