IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ トヨタ自動車株式会社の特許一覧

<>
  • 特許-情報処理方法 図1
  • 特許-情報処理方法 図2
  • 特許-情報処理方法 図3
  • 特許-情報処理方法 図4
  • 特許-情報処理方法 図5
  • 特許-情報処理方法 図6
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2025-07-07
(45)【発行日】2025-07-15
(54)【発明の名称】情報処理方法
(51)【国際特許分類】
   G06V 10/82 20220101AFI20250708BHJP
   G06T 7/00 20170101ALI20250708BHJP
   G06N 20/00 20190101ALI20250708BHJP
【FI】
G06V10/82
G06T7/00 350C
G06N20/00
【請求項の数】 4
(21)【出願番号】P 2022133601
(22)【出願日】2022-08-24
(65)【公開番号】P2024030614
(43)【公開日】2024-03-07
【審査請求日】2024-05-16
(73)【特許権者】
【識別番号】000003207
【氏名又は名称】トヨタ自動車株式会社
(74)【代理人】
【識別番号】110001519
【氏名又は名称】弁理士法人太陽国際特許事務所
(72)【発明者】
【氏名】馬渕 充啓
【審査官】伊知地 和之
(56)【参考文献】
【文献】国際公開第2022/124067(WO,A1)
【文献】特開2020-047191(JP,A)
【文献】国際公開第2022/102054(WO,A1)
【文献】堀崎行太 外3名,PCクラスタシステムにおけるミニバッチ学習の概念を用いたニューラルネットワークの並列学習,電子情報通信学会技術研究報告 NC2002-88~102 ニューロコンピューティング,社団法人電子情報通信学会,2002年12月06日,第102巻 第508号,pp.19~22
【文献】Wicaksana Jeffry et al.,“Customized Federated Learning for Multi-Source Decentralized Medical Image Classification”,IEEE Journal of Biomedical and Health Informatics[online],IEEE,2022年,Vol.26,No.11,pp.5596-5607,[検索日 2025.2.26], インターネット:<URL:https://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=9855868>,DOI: 10.1109/JBHI.2022.3198440
(58)【調査した分野】(Int.Cl.,DB名)
G06F 18/00 - 18/40
G06N 3/00 - 99/00
G06T 7/00 - 7/90
G06V 10/00 - 20/90
G06V 30/418
G06V 40/16
G06V 40/20
CSDB(日本国特許庁)
IEEE Xplore
(57)【特許請求の範囲】
【請求項1】
画像を認識するための学習済みモデルを生成する情報処理方法であって、
学習用モデルは複数の第1のモデルと、前記第1のモデルとは異なる第2のモデルとにより構成されており、
学習に用いる画像をパッチごとに分割し、
分割された複数のパッチの各々は個々に独立して保管され、前記複数の第1のモデルの各々は個々に独立して所定のサーバで動作しており、前記複数のパッチの各々を、パッチごとに所定の前記複数の第1のモデルの各々にそれぞれに入力して計算し、
前記第1のモデルの各々の計算結果の出力を前記第2のモデルにおいて統合させて、前記学習用モデルを学習することにより、前記学習済みモデルを生成する、
情報処理方法。
【請求項2】
前記学習用モデルにおいて、前記複数のパッチに対応する前記複数の第1のモデルの数は、前記複数のパッチの数と同等に構成される請求項1に記載の情報処理方法。
【請求項3】
前記第2のモデルは、前記複数の第1のモデルの計算結果の出力を受け付けて統合し、当該第2のモデルのロスを計算して、前記学習用モデルを学習する、請求項1に記載の情報処理方法。
【請求項4】
前記学習用モデルは、第3のモデルを更に含み、
前記第3のモデルは、前記複数の第1のモデルの各々の出力を受け付け、当該出力ごとに、個々のロスを計算し、
前記個々のロスと、前記第2のモデルのロスとに基づいて全体のロスを計算して、前記学習用モデルを学習する、請求項に記載の情報処理方法。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、情報処理方法に関する。
【背景技術】
【0002】
特許文献1には、ニューラルネットワークを複数に分割し、入出力特性に基づいて、パラメータを特定する技術が開示されている。
【先行技術文献】
【特許文献】
【0003】
【文献】特許6784162
【非特許文献】
【0004】
【文献】Federated Learning: Strategies for Improving Communication Efficiency, NIPS Workshop on Private Multi-Party Machine Learning (2016), URL:"https://arxiv.org/pdf/1610.05492.pdf"
【文献】Split learning for health: Distributed deep learning without sharing raw patient data, December 2018, URL:"https://arxiv.org/pdf/1812.00564.pdf"
【発明の概要】
【発明が解決しようとする課題】
【0005】
先行技術では、ニューラルネットワークを分割することで、各ニューラルネットワークにそれぞれに途中までの学習結果を与えるため、プライバシー保護に対する配慮が可能であるものの計算途中のデータから元のデータを復元する手法も存在する。そのため、ニューラルネットワークを分割するだけでは十分なプライバシー保護ができない場合も想定され、改善の余地がある。
【0006】
本開示は、学習用モデルの学習におけるプライバシー保護を可能とする情報処理方法を提供することを目的とする。
【課題を解決するための手段】
【0007】
請求項1に記載の情報処理方法は、画像を認識するための学習済みモデルを生成する情報処理方法であって、学習用モデルは複数の第1のモデルと、前記第1のモデルとは異なる第2のモデルとにより構成されており、学習に用いる画像をパッチごとに分割し、分割された複数のパッチの各々は個々に独立して保管され、前記複数の第1のモデルの各々は個々に独立して所定のサーバで動作しており、前記複数のパッチの各々を、パッチごとに所定の前記複数の第1のモデルの各々にそれぞれに入力して計算し、前記第1のモデルの各々の計算結果の出力を前記第2のモデルにおいて統合させて、前記学習用モデルを学習することにより、前記学習済みモデルを生成する。
【0008】
請求項1に記載の情報処理方法は、パッチの各々に分割し、学習用モデルをパッチに対応して分割した構成とする。これにより、学習用モデルの学習におけるプライバシー保護を可能とする。また、1のサーバからは元画像が復元できないため、プライバシー保護が可能となる。
【0009】
請求項2に記載の情報処理方法は、請求項1に記載の情報処理方法において、前記学習用モデルにおいて、前記複数のパッチに対応する前記複数の第1のモデルの数は、前記複数のパッチの数と同等に構成される。請求項2に記載の情報処理方法によれば、プライバシー保護が可能な態様で学習データを扱える。
【0011】
請求項に記載の情報処理方法は、請求項1に記載の情報処理方法において、前記第2のモデルは、前記複数の第1のモデルの計算結果の出力を受け付けて統合し、当該第2のモデルのロスを計算して、前記学習用モデルを学習する。請求項に記載の情報処理方法によれば、パッチの計算を個々に独立して扱い、かつ、プライバシー保護が可能な態様としてモデルを構成できる。
【0012】
請求項に記載の情報処理方法は、請求項に記載の情報処理方法において、前記学習用モデルは、第3のモデルを更に含み、前記第3のモデルは、前記複数の第1のモデルの各々の出力を受け付け、当該出力ごとに、個々のロスを計算し、前記個々のロスと、前記第2のモデルのロスとに基づいて全体のロスを計算して、前記学習用モデルを学習する。請求項に記載の情報処理方法によれば、個々のロスを考慮し、全体のロスとして学習においてフィードバックすることで、学習用モデルの学習を高速化できる。
【発明の効果】
【0013】
本開示の技術によれば、学習用モデルの学習におけるプライバシー保護を可能とする。
【図面の簡単な説明】
【0014】
図1】情報処理システムの構成を示す図である。
図2】ユーザ端末及び各サーバのコンピュータとしてのハードウェア構成を示すブロック図である。
図3】情報処理システムのデータの流れ及び学習用モデルの構成例を模式的に示す図である。
図4】学習用モデルのニューラルネットワークとしての構成例を示す図である。
図5】本実施形態の情報処理システムで実行される情報処理方法としての処理の流れについて説明するシーケンスである。
図6】実施形態を改良し、Upperの個々のロスを計算するマルチ計算モデルを更に設ける場合の構成例である。学習用モデルのニューラルネットワークとしての構成例を示す図である。
【発明を実施するための形態】
【0015】
本発明の実施形態の概要について説明する。画像認識は深層学習により、特に正解データを必要とする教師あり学習での精度が向上し、広く一般に利用されるようになってきている。一方、顔認識、感情認識など、個人情報などのセンシティブな情報を用いて学習したモデルを活用するアプリケーションも増加している。また、GDPR(General Data Protection Regulation)やCCPA(California Consumer Privacy Act)などプライバシー保護に関わる法律が各国で制定されており、データ収集やモデル学習においてもプライバシー保護が重要になってきている。
【0016】
本実施形態の前提として既存の学習手法に関して上述した課題がある。課題に関する学習手法として、非特許文献1のような連合学習、非特許文献2のような分割ニューラルネットワークの手法がある。
【0017】
非特許文献1の手法では、中央サーバにデータを収集することなく、エッジ(データ提供側の端末)で学習させた結果のパラメータのみを収集し、サーバでは集まったパラメータを利用してモデルを学習させている。もっとも、非特許文献1ではモデルが大きくなるとパラメータが増え、その分の通信量が増え、エッジの計算量が増える。また、各エッジに学習させたい最新のモデルを配置する必要がある。
【0018】
非特許文献2の手法では、CNN(Convolutional neural network)を途中で分割して、別々のユーザの端末で保持して学習させることで、データを提供するユーザはデータ自体ではなく、途中までのニューラルネットワークの学習結果を、学習を処理するユーザの端末に送信するだけでよい。しかし、データ量を増やすためには、データ提供者(クライアント)を増やす必要があり、そのためには学習時の通信が複雑になる。また、データを収集しないため、プライバシー保護は可能なものの、例えば精度が低い場合のデータ確認や正解データの付与などのデータの調整を行うことができない。
【0019】
いずれの手法もデータを中央に収集しないことでプライバシー保護を実現しているが、モデルの性能を改善したい場合、データの調整ができないという課題がある。また、顔などのプライバシー情報を含む部分にマスクをするなどの手法も考えられるが、認識性能に影響を及ぼす可能性が高い。
【0020】
画像認識の深層学習においてニューラルネットワークを学習する際には、大量の画像が必要であり、教師あり学習の場合、収集後に正解データのラベルを付ける必要がある。収集した画像には、例えば、顔、車両のナンバープレートなどプライバシーにかかわる情報が含まれており、セキュリティを確保したとしても、一箇所に保存する場合、プライバシー情報を含んでおり、取扱いに配慮が必要となる。また、プライバシー情報の収集は対象者の同意が必要となり、大量の収集が困難である。
【0021】
本実施形態では、学習に用いる画像を小さなサイズのパッチに分割して、個別のサーバに保管する。また、非特許文献2の分割ニューラルネットワークをベースに、分割したパッチに合わせた学習用モデルの構成として、パッチ分割ニューラルネットワーク(Patch split NN)を用いる。学習用モデルの構成例については後述する。
【0022】
小さなサイズのパッチにすることで、元の画像にプライバシー情報が含まれていたとしても判別できないサイズに分割され、1つ1つのパッチを非プライバシー情報にできる。また、別々にパッチを保管することで、元画像を構成するパッチを一定数同時に取り出さない限りプライバシー情報を復元できないようにする。ただし、一部のユーザには権限を与えて元の画像を復元できるようにして、データの分析を可能にしてもよい。
【0023】
学習用モデルは、CNNをUpperモデルとLowerモデルとの2部構成に分割する。学習時はUpperモデルとLowerモデルとを別々のサーバで動作させることで、学習に用いるデータ(パッチ)がそのまま一箇所に集まらないようにする。Upperモデルの計算を介してLowerに出力することで計算結果からは復元できなくなる。また、パッチ数に応じた数のUpperモデルを用意することで、パッチが一箇所のサーバに集まらないようにする。なお、Upperモデルの数がパッチ数未満の場合、適宜、Upperモデルに割り当てる。Upperモデルが本開示の第1のモデルの一例であり、Lowerモデルが本開示の第2のモデルの一例である。
【0024】
本実施形態の手法によれば、パッチ分割して学習した場合でも元画像をそのまま利用した場合に対して十分な認識性能を有する学習済みモデルが生成可能である。
【0025】
図1は、情報処理システム10の構成を示す図である。図1に示すように、情報処理システム10は、ユーザ端末102と、パッチを保存する複数のパッチサーバ110(1101~N)と、複数のUpperモデルの各々を保存する複数のUpperサーバ112(1121~N)と、Lowerモデルを保存するLowerサーバ114と、がネットワークNを介して接続されている。ユーザ端末102は学習に用いる画像を入力する端末である。パッチサーバ110は、分割したパッチを保管するストレージサーバである。Upperサーバ112及びLowerサーバ114は学習用モデルを保管するとともに学習用モデルを実行するサーバである。
【0026】
図2は、ユーザ端末102及び各サーバ(110、112、114)のコンピュータ(CM)としてのハードウェア構成を示すブロック図である。図2に示すように、コンピュータ(CM)は、CPU(Central Processing Unit)11、ROM(Read Only Memory)12、RAM(Random Access Memory)13、ストレージ14、入力部15、表示部16及び通信インタフェース(I/F)17を有する。各構成は、バス19を介して相互に通信可能に接続されている。
【0027】
CPU11は、中央演算処理ユニットであり、各種プログラムを実行したり、各部を制御したりする。すなわち、CPU11は、ROM12又はストレージ14からプログラムを読み出し、RAM13を作業領域としてプログラムを実行する。CPU11は、ROM12又はストレージ14に記憶されているプログラムに従って、上記各構成の制御及び各種の演算処理を行う。本実施形態では、ROM12又はストレージ14には、情報処理プログラムが格納されている。その他のハードウェア構成はコンピュータとして一般的な構成を用いればよいため、説明を省略する。
【0028】
図3は、情報処理システム10のデータの流れ及び学習用モデルの構成例を模式的に示す図である。パッチは、学習に用いる画像を分割した複数のパッチの各々である。情報処理システム10で学習する学習用モデルは、複数のupperモデルの各々と、Lowerモデルとに分割される。後述する。なお、パッチへの分割は、ユーザ端末102で行われるものとするが、1つのパッチサーバ110でバッチへの分割処理を行い、他のパッチサーバ110に配布してもよい。
【0029】
図3の(1)では、ユーザが入力した画像を複数のパッチに分割してパッチサーバ110の各々にアップロードする。(2)では、パッチは別々のパッチサーバ110に保管される。(3)では、複数のUpperモデルを準備してパッチをそれぞれのUpperモデルに入力する。学習用モデルのうちのUpperモデルによる個々の学習を行う。ここで、個々のUpperモデルは個々に独立したUpperサーバ112で起動し、動作する。(4)では、各Upperモデルの出力結果をLowerモデルに転送して、学習用モデルのうちのLowerモデルで各Upperモデルの出力結果を統合してロスを計算し、学習用モデルを学習する。統合されたロスの計算により、学習用モデルの認識結果が得られる。このようにして情報処理システム10は学習済みモデル生成し、出力する。(5)は、学習用モデルの学習状況に応じた任意の処理である。(5)では、学習された学習用モデルの学習状況に応じて、必要なパッチを収集し、収集したパッチから画像を復元して分析し、パッチに適宜、正解データをラベリングする。
【0030】
パッチの分割パターンの例を説明する。分割パターンは、(A)単純分割、又は(B)オーバーラップの何れかを用いればよい。(A)単純分割は、例えば画像のオリジナルサイズをベースに過不足なく分割する。(A)単純分割では、32x32サイズの画像であれば、分割サイズを16x16サイズとし、4パッチに分割する。分割サイズを8x8サイズとし、8パッチに分割してもよい。(B)オーバーラップの場合、固定長でオーバーラップさせて分割し、切れ目が生じないようにする。32x32サイズの画像であれば、分割サイズを16x16サイズ、スライドを8とすると、9パッチに分割される。分割サイズを8x8サイズ、スライドを4とすると、49パッチに分割される。分割パターンは画像の複雑度に応じて使い分けてもよい。
【0031】
図4は、学習用モデルのニューラルネットワークとしての構成例を示す図である。上段にPatch split NNとしての学習用モデルを示し、下段にベースとなるCNNの一種であるResNet18を示して対比している。Upperモデルはパッチの数と同様に構成される場合を想定している。1~Nの番号で示した各パッチは対応するUpperモデル(図中のUpper)に入力される。Lowerモデルには、個々のUpperモデルから出力を統合するconcatenate層が設けられ、統合してからLower層に入力する。なお、Upperモデルはパッチの数と同等でなくとも、数個のパッチが入力されるパッチモデルがあったとしてもプライバシー情報が保護できるパッチのレベルであればよい。UpperモデルがResNet18のInput Layer、Residual Block1に相当する。LowerモデルがResNet18のResidual Block2~4、Output Layerに相当する。
【0032】
(制御の流れ)
図5は、本実施形態の情報処理システム10で実行される情報処理方法としての処理の流れについて説明するシーケンスである。情報処理方法においては、複数のコンピュータ(ユーザ端末102、パッチサーバ110、Upperサーバ112の各々、及びLowerサーバ114)を組み合わせて処理を実行する。
【0033】
ステップS100において、ユーザ端末102は、画像をパッチに分割して、パッチサーバ110の各々に送信する。
【0034】
ステップS102において、パッチサーバ110の各々は、保管しているパッチに対応するUpperモデル(UpperモデルがあるUpperサーバ112)に出力する。
【0035】
ステップS104において、Upperサーバ112の各々は、当該Upperモデルの計算を行い、計算結果をLowerモデル(LowerモデルがあるLowerサーバ114)に出力する。
【0036】
ステップS106において、Lowerサーバ114は、受け付けたLowerモデルの各々の計算結果を統合して、ロスを計算し、学習用モデルを学習する。学習手法は、CNの学習と同様に、計算されたロスから、Upperモデル及びLowerモデルの重みパラメータを調整する手法を用いればよい。
【0037】
以上、本実施形態の情報処理システム10は、パッチの各々に分割し、学習用モデルをパッチに対応して分割した構成とすることにより、学習用モデルの学習におけるプライバシー保護を可能とする。
【0038】
[変形例]
図6は、上述した実施形態を改良し、Upperの個々のロスを計算するマルチ計算モデルを更に設ける場合の構成例である。なお、マルチ計算モデルは、Lowerサーバ114に設けてもよいし、個別のサーバに設けてもよい。マルチ計算モデルが本開示の第3のモデルの一例である。
【0039】
マルチ計算モデルでは、個々のUpperモデルの計算結果を受け付け、Adaptation Netにおいて個々の計算結果について、個々のロス(upper_loss)を計算する。このような構成を学習時に導入することで、Upperモデルの学習を高速化できる。なお、推論時にはこのような構成は不要である。
【0040】
Lowerサーバ114では、Upperモデルについて計算された個々のロスの計算結果を受け付け、全体のロスの計算を以下(1)式に従って行う。学習用モデルの学習は、Lowerモデルのロスに代えて、当該全体のロスを用いて行えばよい。
【数1】

・・・(1)
【0041】
Full_Lossがニューラルネットワーク全体のロス、Lower_LossがLowerモデルで計算されたロス、Upper_LossがUpperモデルごとに計算された個々のロスである。また、Num_Of_ModelがUpperモデルの数、Num_Of_Pathが分割したパッチの数、αがUpper_Loss全体の係数である。なお、Adaptation Netにおける個々の層は、入力から順に、AdaptiveAvgPool、Linner、BatchNorn、Linner、BatchNorn、ReLU、Linnerのニューラルネットワークの層とすればよい。当該変形例における手法を用いた検証例では、データセットにCIFAR10及びCIFAR100を用いた検証を行い、元の画像をそのまま用いた学習の場合と同等程度又は同等以上の認識精度が得られることが確認できている。
【0042】
なお、上記実施形態でCPU11がソフトウェア(プログラム)を読み込んで実行した各種処理を、CPU以外の各種のプロセッサが実行してもよい。この場合のプロセッサとしては、FPGA(Field-Programmable Gate Array)等の製造後に回路構成を変更可能なPLD(Programmable Logic Device)、GPU(Graphics Processing Unit)及びASIC(Application Specific Integrated Circuit)等の特定の処理を実行させるために専用に設計された回路構成を有するプロセッサである専用電気回路等が例示される。また、上述した各処理を、これらの各種のプロセッサのうちの1つで実行してもよいし、同種又は異種の2つ以上のプロセッサの組み合わせ(例えば、複数のFPGA、及びCPUとFPGAとの組み合わせ等)で実行してもよい。また、これらの各種のプロセッサのハードウェア的な構造は、より具体的には、半導体素子等の回路素子を組み合わせた電気回路である。
【0043】
また、上記実施形態において、情報処理プログラムはコンピュータが読み取り可能な非一時的記録媒体に予め記憶(インストール)されている態様で説明した。例えば、情報処理プログラムはROM12又はストレージ14に予め記憶されている。しかしこれに限らず、各プログラムは、CD-ROM(Compact Disc Read Only Memory)、DVD-ROM(Digital Versatile Disc Read Only Memory)、及びUSB(Universal Serial Bus)メモリ等の非一時的記録媒体に記録された形態で提供されてもよい。また、情報処理プログラムは、ネットワークを介して外部装置からダウンロードされる形態としてもよい。
【0044】
上記実施形態で説明した処理の流れは、一例であり、主旨を逸脱しない範囲内において不要なステップを削除したり、新たなステップを追加したり、処理順序を入れ替えたりしてもよい。
【符号の説明】
【0045】
10 情報処理システム
102 ユーザ端末
110 パッチサーバ
112 Upperサーバ
114 Lowerサーバ
図1
図2
図3
図4
図5
図6