(57)【要約】  システムは、機械学習処理を実施可能なクラウドサーバと、該クラウドサーバと通信可能なクライアント装置とを備えるシステムである。クライアント装置は、機械学習処理に用いられる複数のデータから、該複数のデータの少なくとも一部の基準となるデータである一又は複数の基準データを生成するとともに、複数のデータ各々と、一又は複数の基準データのうち対応する基準データとの差分を示す複数の差分データを生成する生成手段と、複数の差分データを、クラウドサーバの記憶装置に保存する保存手段と、を有する。
2020189133.tif 000002
【特許請求の範囲】
【請求項１】
機械学習処理を実施可能なクラウドサーバと、前記クラウドサーバと通信可能なクライアント装置とを備えるシステムであって、
前記クライアント装置は、
前記機械学習処理に用いられる複数のデータから、前記複数のデータの少なくとも一部の基準となるデータである一又は複数の基準データを生成するとともに、前記複数のデータ各々と、前記一又は複数の基準データのうち対応する基準データとの差分を示す複数の差分データを生成する生成手段と、
前記複数の差分データを、前記クラウドサーバの記憶装置に保存する保存手段と、
を有する
ことを特徴とするシステム。
【請求項２】
前記生成手段は、前記複数のデータ各々を一又は複数のカテゴリに分類し、前記一又は複数のカテゴリ毎に前記基準データ及び前記差分データを生成することを特徴とする請求項１に記載のシステム。
【請求項３】
前記保存手段は、前記複数の差分データを周波数変換圧縮した後に、前記記憶装置に保存することを特徴とする請求項１又は２に記載のシステム。
【請求項４】
前記クライアント装置は、前記クラウドサーバに対し前記機械学習処理を要求する際に、前記一又は複数の基準データを前記クラウドサーバに送信し、
前記クラウドサーバは、前記記憶装置に保存された前記複数の差分データと、前記一又は複数の基準データとから、前記複数のデータを復元する復元手段を有する
ことを特徴とする請求項１に記載のシステム。
【請求項５】
前記クライアント装置は、前記クラウドサーバに対し前記機械学習処理を要求する際に、前記一又は複数の基準データを前記クラウドサーバに送信し、
前記クラウドサーバは、前記記憶装置に保存された前記複数の差分データと、前記一又は複数の基準データとから、前記複数のデータを復元する復元手段を有する
ことを特徴とする請求項２に記載のシステム。
【請求項６】
前記クライアント装置は、前記クラウドサーバに対し前記機械学習処理を要求する際に、前記一又は複数の基準データを前記クラウドサーバに送信し、
前記クラウドサーバは、前記記憶装置に保存された前記複数の差分データと、前記一又は複数の基準データとから、前記複数のデータを復元する復元手段を有する
ことを特徴とする請求項３に記載のシステム。
【請求項７】
機械学習処理を実施可能なクラウドサーバと通信可能なクライアント装置であって、
前記機械学習処理に用いられる複数のデータから、前記複数のデータの少なくとも一部の基準となるデータである一又は複数の基準データを生成するとともに、前記複数のデータ各々と、前記一又は複数の基準データのうち対応する基準データとの差分を示す複数の差分データを生成する生成手段と、
前記複数の差分データを、前記クラウドサーバの記憶装置に保存する保存手段と、
を備えることを特徴とするクライアント装置。
【請求項８】
機械学習処理を実施可能なクラウドサーバと、前記クラウドサーバと通信可能なクライアント装置とを備えるシステムにおけるデータ処理方法であって、
前記クライアント装置において、前記機械学習処理に用いられる複数のデータから、前記複数のデータの少なくとも一部の基準となるデータである一又は複数の基準データを生成するとともに、前記複数のデータ各々と、前記一又は複数の基準データのうち対応する基準データとの差分を示す複数の差分データを生成する生成工程と、
前記複数の差分データを、前記クラウドサーバの記憶装置に保存する保存工程と、
を含むことを特徴とするデータ処理方法。
【請求項９】
コンピュータに、請求項８に記載のデータ処理方法を実行させるコンピュータプログラム。
【請求項１０】
請求項９に記載のコンピュータプログラムが記録された記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、システム、該システムに含まれるクライアント装置、該システムにおけるデータ処理方法、コンピュータプログラム及び記録媒体の技術分野に関する。
【背景技術】
【０００２】
機械学習処理に、例えばＩａａＳ（Ｉｎｆｒａｓｔｒｕｃｔｕｒｅ  ａｓ  ａ  Ｓｅｒｖｉｃｅ）等のクラウドサービスが利用されることがある。クラウドサービスを提供する事業者は、例えば通信路の暗号化やストレージの暗号化等のセキュリティ対策を採っている。しかしながら、例えば事業者の人為的ミス等に起因して、ユーザ情報が漏洩するリスクがある。このため、ユーザは、例えば独自の暗号化を施したデータをクラウドサービスに送信する等、情報漏洩に備えた対策を採る必要がある。【０００３】
情報漏洩に備えた技術として、例えば特許文献１に記載の技術が提案されている。特許文献１に記載の技術では、先ず、データＤＴ０がｎ個の分散情報に分割された後、該ｎ個の分散情報のうちｋ個（１＜ｋ＜ｎ）の分散情報によりデータＤＴ０を復元可能な秘密分散が実行され、該秘密分散により生成されたｋ個の分散情報が互いに異なる記憶装置に保存される。次に、該ｋ個の分散情報から復元されたデータＤＴ０が編集されることにより生成されたデータＤＴ１がｎ個の編集後分散情報に分割される。次に、各記憶装置に保存されている分散情報と、対応する編集後分散情報との差分が計算された後、各記憶装置に、対応する編集後分散情報と、該対応する編集後分散情報以外の複数の編集後分散情報に係る複数の差分とが保存される。その他関連する技術として、特許文献２乃至５が挙げられる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００７−３０４９６２号公報
【特許文献２】特開２０１４−１４２８７１号公報
【特許文献３】特開２０１７−２１１６８９号公報
【特許文献４】特許第４５９００４８号
【特許文献５】特許第４５８８１４２号
【発明の概要】
【発明が解決しようとする課題】
【０００５】
特許文献１に記載の技術では、クラウドサービスが考慮されておらず改善の余地がある。【０００６】
本発明は、上記事情に鑑みてなされたものであり、クラウドサービスを提供する事業者に依存することなく、情報漏洩に備えたセキュリティ対策を行うことができるシステム、クライアント装置、データ処理方法、コンピュータプログラム及び記録媒体を提供することを課題とする。
【課題を解決するための手段】
【０００７】
本発明のシステムの一の態様は、機械学習処理を実施可能なクラウドサーバと、前記クラウドサーバと通信可能なクライアント装置とを備えるシステムであって、前記クライアント装置は、前記機械学習処理に用いられる複数のデータから、前記複数のデータの少なくとも一部の基準となるデータである一又は複数の基準データを生成するとともに、前記複数のデータ各々と、前記一又は複数の基準データのうち対応する基準データとの差分を示す複数の差分データを生成する生成手段と、前記複数の差分データを、前記クラウドサーバの記憶装置に保存する保存手段と、を有する。【０００８】
本発明のクライアント装置の一態様は、機械学習処理を実施可能なクラウドサーバと通信可能なクライアント装置であって、前記機械学習処理に用いられる複数のデータから、前記複数のデータの少なくとも一部の基準となるデータである一又は複数の基準データを生成するとともに、前記複数のデータ各々と、前記一又は複数の基準データのうち対応する基準データとの差分を示す複数の差分データを生成する生成手段と、前記複数の差分データを、前記クラウドサーバの記憶装置に保存する保存手段と、を備える。【０００９】
本発明のデータ処理方法の一態様は、機械学習処理を実施可能なクラウドサーバと、前記クラウドサーバと通信可能なクライアント装置とを備えるシステムにおけるデータ処理方法であって、前記クライアント装置において、前記機械学習処理に用いられる複数のデータから、前記複数のデータの少なくとも一部の基準となるデータである一又は複数の基準データを生成するとともに、前記複数のデータ各々と、前記一又は複数の基準データのうち対応する基準データとの差分を示す複数の差分データを生成する生成工程と、前記複数の差分データを、前記クラウドサーバの記憶装置に保存する保存工程と、を含む。【００１０】
本発明のコンピュータプログラムの一の態様は、コンピュータに、上述したデータ処理方法の一の態様を実行させる。【００１１】
本発明の記録媒体の一の態様は、上述したコンピュータプログラムの一の態様が記録された記録媒体である。
【発明の効果】
【００１２】
上述したシステム、クライアント装置、データ処理方法、コンピュータプログラム及び記録媒体のそれぞれの一の態様によれば、クラウドサービスを提供する事業者に依存することなく、情報漏洩に備えたセキュリティ対策を行うことができる。
【図面の簡単な説明】
【００１３】
【図１】実施形態に係るシステムの構成を示すブロック図である。
【図２】実施形態に係るクライアント装置のハードウェア構成を示すブロック図である。
【図３】実施形態に係るクラウドサーバのハードウェア構成を示すブロック図である。
【図４】実施形態に係るクライアント装置及びクラウドサーバ各々のＣＰＵ内で実現される機能ブロックを示すブロック図である。
【図５】入力データの一例を示す図である。
【図６】基準データの一例を示す図である。
【図７】差分データの一例を示す図である。
【図８】実施形態に係るシステムにおいて機械学習処理が行われるときの該システムの動作を示すフローチャートである。
【図９】実施形態に係るシステムにおいて分析モデルを用いた分析が行われるときの該システムの動作を示すフローチャートである。
【図１０】実施形態に係るクライアント装置のＣＰＵ内で実現される機能ブロックの他の例を示すブロック図である。
【発明を実施するための形態】
【００１４】
システム、クライアント装置、データ処理方法、コンピュータプログラム及び記録媒体の実施形態を図面に基づいて説明する。以下では、機械学習処理を実施可能なクラウドサーバと、該クラウドサーバと通信可能なクライアント装置とを備えるシステム１を用いて、システム、クライアント装置、データ処理方法、コンピュータプログラム及び記録媒体の実施形態について説明する。
【００１５】
（構成）
実施形態に係るシステム１の構成について図１乃至図４を参照して説明する。先ず、システム１の全体構成について図１を参照して説明する。図１は、実施形態に係るシステムの構成を示すブロック図である。図１において、システム１は、クライアント装置１００とクラウドサーバ２００とを備えて構成されている。クライアント装置１００は、クラウドサーバ２００と通信可能に構成されている。
【００１６】
次に、クライアント装置１００のハードウェア構成について図２を参照して説明する。図２は、実施形態に係るクライアント装置のハードウェア構成を示すブロック図である。
【００１７】
図２において、クライアント装置１００は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１１、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）１２、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）１３、記憶装置１４、入力装置１５及び出力装置１６を備えている。ＣＰＵ１１、ＲＡＭ１２、ＲＯＭ１３、記憶装置１４、入力装置１５及び出力装置１６は、データバス１７を介して相互に接続されている。
【００１８】
ＣＰＵ１１は、コンピュータプログラムを読み込む。例えば、ＣＰＵ１１は、ＲＡＭ１２、ＲＯＭ１３及び記憶装置１４のうちの少なくとも一つが記憶しているコンピュータプログラムを読み込んでもよい。例えば、ＣＰＵ１１は、コンピュータで読み取り可能な記録媒体が記憶しているコンピュータプログラムを、図示しない記録媒体読み取り装置を用いて読み込んでもよい。ＣＰＵ１１は、ネットワークインタフェースを介して、クライアント装置１００の外部に配置される不図示の装置からコンピュータプログラムを取得してもよい（つまり、読み込んでもよい）。ＣＰＵ１１は、読み込んだコンピュータプログラムを実行することで、ＲＡＭ１２、記憶装置１４、入力装置１５及び出力装置１６を制御する。当該実施形態では特に、ＣＰＵ１１が読み込んだコンピュータプログラムを実行すると、ＣＰＵ１１内には、機械学習に用いられる複数のデータの暗号化（詳細については後述する）を行うための論理的な機能ブロックが実現される。つまり、ＣＰＵ１１は、機械学習に用いられる複数のデータの暗号化を行うためのコントローラとして機能可能である。尚、ＣＰＵ１１内で実現される機能ブロックの構成については、後に図４を参照しながら詳述する。
【００１９】
ＲＡＭ１２は、ＣＰＵ１１が実行するコンピュータプログラムを一時的に記憶する。ＲＡＭ１２は、ＣＰＵ１１がコンピュータプログラムを実行している際にＣＰＵ１１が一時的に使用するデータを一時的に記憶する。ＲＡＭ１２は、例えば、Ｄ−ＲＡＭ（Ｄｙｎａｍｉｃ  ＲＡＭ）であってもよい。
【００２０】
ＲＯＭ１３は、ＣＰＵ１１が実行するコンピュータプログラムを記憶する。ＲＯＭ１３は、その他に固定的なデータを記憶していてもよい。ＲＯＭ１３は、例えば、Ｐ−ＲＯＭ（Ｐｒｏｇｒａｍｍａｂｌｅ  ＲＯＭ）であってもよい。
【００２１】
記憶装置１４は、クライアント装置１００が長期的に保存するデータを記憶する。記憶装置１４は、ＣＰＵ１１の一時記憶装置として動作してもよい。記憶装置１４は、例えば、ハードディスク装置、光磁気ディスク装置、ＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）及びディスクアレイ装置のうちの少なくとも一つを含んでいてもよい。
【００２２】
入力装置１５は、クライアント装置１００のユーザからの入力指示を受け取る装置である。入力装置１５は、例えば、キーボード、マウス及びタッチパネルのうちの少なくとも一つを含んでいてもよい。
【００２３】
出力装置１６は、クライアント装置１００に関する情報を外部に対して出力する装置である。例えば、出力装置１６は、クライアント装置１００に関する情報を表示可能な表示装置であってもよい。
【００２４】
次に、クラウドサーバ２００のハードウェア構成について図３を参照して説明する。図３は、実施形態に係るクラウドサーバのハードウェア構成を示すブロック図である。
【００２５】
図３において、クラウドサーバ２００は、ＣＰＵ２１、ＲＡＭ２２、ＲＯＭ２３、記憶装置２４、入力装置２５及び出力装置２６を備えている。ＣＰＵ２１、ＲＡＭ２２、ＲＯＭ２３、記憶装置２４、入力装置２５及び出力装置２６は、データバス２７を介して相互に接続されている。
【００２６】
ＣＰＵ２１は、コンピュータプログラムを読み込む。例えば、ＣＰＵ２１は、ＲＡＭ２２、ＲＯＭ２３及び記憶装置２４のうちの少なくとも一つが記憶しているコンピュータプログラムを読み込んでもよい。例えば、ＣＰＵ２１は、コンピュータで読み取り可能な記録媒体が記憶しているコンピュータプログラムを、図示しない記録媒体読み取り装置を用いて読み込んでもよい。ＣＰＵ２１は、ネットワークインタフェースを介して、クラウドサーバ２００の外部に配置される不図示の装置からコンピュータプログラムを取得してもよい（つまり、読み込んでもよい）。ＣＰＵ２１は、読み込んだコンピュータプログラムを実行することで、ＲＡＭ２２、記憶装置２４、入力装置２５及び出力装置２６を制御する。当該実施形態では特に、ＣＰＵ２１が読み込んだコンピュータプログラムを実行すると、ＣＰＵ２１内には、機械学習処理、及び、機械学習に用いられる複数のデータの復号化（詳細については後述する）を行うための論理的な機能ブロックが実現される。つまり、ＣＰＵ２１は、機械学習処理、及び、機械学習に用いられる複数のデータの復号化を行うためのコントローラとして機能可能である。尚、ＣＰＵ２１内で実現される機能ブロックの構成については、後に図４を参照しながら詳述する。
【００２７】
ＲＡＭ２２は、ＣＰＵ２１が実行するコンピュータプログラムを一時的に記憶する。ＲＡＭ２２は、ＣＰＵ２１がコンピュータプログラムを実行している際にＣＰＵ２１が一時的に使用するデータを一時的に記憶する。ＲＡＭ２２は、例えば、Ｄ−ＲＡＭであってもよい。
【００２８】
ＲＯＭ２３は、ＣＰＵ２１が実行するコンピュータプログラムを記憶する。ＲＯＭ２３は、その他に固定的なデータを記憶していてもよい。ＲＯＭ２３は、例えば、Ｐ−ＲＯＭであってもよい。
【００２９】
記憶装置２４は、クラウドサーバ２００が長期的に保存するデータを記憶する。記憶装置２４は、ＣＰＵ２１の一時記憶装置として動作してもよい。記憶装置２４は、例えば、ハードディスク装置、光磁気ディスク装置、ＳＳＤ及びディスクアレイ装置のうちの少なくとも一つを含んでいてもよい。
【００３０】
入力装置２５は、クラウドサーバ２００の管理者からの入力指示を受け取る装置である。入力装置２５は、例えば、キーボード、マウス及びタッチパネルのうちの少なくとも一つを含んでいてもよい。
【００３１】
出力装置２６は、クラウドサーバ２００に関する情報を外部に対して出力する装置である。例えば、出力装置２６は、クラウドサーバ２００に関する情報を表示可能な表示装置であってもよい。
【００３２】
次に、ＣＰＵ１１及び２１内で実現される機能ブロックの構成について図４を参照して説明する。図４は、実施形態に係るクライアント装置及びクラウドサーバ各々のＣＰＵ内で実現される機能ブロックを示すブロック図である。
【００３３】
図４において、クライアント装置１００のＣＰＵ１１内には、機械学習に用いられる複数のデータの暗号化を行うための論理的な機能ブロックとして、データ暗号化装置１１１が実現される。データ暗号化装置１１１は、データ前処理装置１１１１、簡易データ分類装置１１１２、基準データ算出装置１１１３及び差分データ算出装置１１１４を有する。
【００３４】
クラウドサーバ２００のＣＰＵ２１内には、機械学習処理、及び、機械学習に用いられる複数のデータの復号化を行うための論理的な機能ブロックとして、データ復号化装置２１１、学習エンジン２１２及び予測エンジン２１３が実現される。データ復号化装置２１１は、結合データ算出装置２１１１を有する。
【００３５】
図４に示すように、本実施形態では、オンプレミス（Ｏｎ−Ｐｒｅｍｉｓｅｓ）環境にあるクライアント装置１００にデータ暗号化装置１１１が配置される一方、クラウドサーバ２００にデータ復号化装置２１１が配置されている。
【００３６】
尚、図４において、簡易分類モデル入力装置３０１、学習用データ入力装置３０２及び予測用データ入力装置３０３は、クライアント装置１００とは異なる装置である。簡易分類モデル入力装置３０１、学習用データ入力装置３０２及び予測用データ入力装置３０３各々は、例えばオンプレミス環境にあるパーソナルコンピュータ等により実現されてよい。クライアント装置１００と、簡易分類モデル入力装置３０１、学習用データ入力装置３０２及び予測用データ入力装置３０３とは、ローカルネットワーク経由で相互に通信可能に接続されていてよい。
【００３７】
さて、データ暗号化装置１１１のデータ前処理装置１１１１は、学習用データ入力装置３０２及び予測用データ入力装置３０３各々から取得した学習用データ又は予測用データに対して、所定の前処理を施す。学習用データ及び予測用データが画像データである場合、例えばコントラスト補正、位置合わせ、回転補正等が、所定の前処理として挙げられる。
【００３８】
簡易データ分類装置１１１２は、簡易分類モデル入力装置３０１から取得したデータ分類のためのモデルを用いて、学習用データ又は予測用データ各々をカテゴリ毎に分類する。尚、データ分類のためのモデルは、インターネット上に公開されているモデルであってもよいし、過去に機械学習処理により生成されたモデルであってもよい。
【００３９】
例えば、学習用データ又は予測用データとしての入力データである、図５に示すＡ〜Ｆの６つの顔画像が、簡易データ分類装置１１１２に入力された場合、簡易データ分類装置１１１２は、顔画像Ａ〜Ｆを、男性の顔画像Ａ、Ｂ及びＣと、女性の顔画像Ｄ、Ｅ及びＦとに分類してよい。
【００４０】
基準データ算出装置１１１３は、カテゴリ毎に分類された学習用データ又は予測用データ各々から、カテゴリ毎に基準データを算出する。基準データは、一のカテゴリに分類された複数のデータの基準となるデータである。このような基準データは、例えば一のカテゴリに分類された複数のデータの平均値であってよい。学習用データ及び予測用データが画像データである場合は、各画素の画素値が、学習用データ又は予測用データとしての複数の画像データの画素値の平均値であるような画像データが、基準データとして算出されてよい。或いは、基準データは、例えば一のカテゴリに分類された複数のデータ各々に共通する共通成分からなるデータであってよい。
【００４１】
基準データ算出装置１１１３は、図５に示す男性の顔画像Ａ、Ｂ及びＣについて、図６（ａ）に示す画像を、基準データとして算出してよい。同様に、基準データ算出装置１１１３は、図５に示す女性の顔画像Ｄ、Ｅ及びＦについて、図６（ｂ）に示す画像を、基準データとして算出してよい。基準データ算出装置１１１３は、算出された基準データを、例えば記憶装置１４により実現される基準データ記憶装置１４１に保存する。
【００４２】
差分データ算出装置１１１４は、カテゴリ毎に、基準データと、学習用データ又は予測用データとの差分を算出することにより、差分データを算出する。差分データ算出装置１１１４は、基準データとしての図６（ａ）に示す画像と、図５に示す男性の顔画像Ａ、Ｂ及びＣ各々との差分を算出することにより、図７（ａ）に示す差分データを算出する。同様に、差分データ算出装置１１１４は、基準データとしての図６（ｂ）に示す画像と、図５に示す女性の顔画像Ｄ、Ｅ及びＦ各々との差分を算出することにより、図７（ｂ）に示す差分データを算出する。差分データ算出装置１１１４は、算出された複数の差分データを、例えばクラウドサーバ２００の記憶装置２４により実現される差分データ記憶装置２４１に保存する。
【００４３】
ここで、図７（ａ）の画像Ａは、図５に示す顔画像Ａと図６（ａ）に示す基準データとしての画像との差分データであり、図７（ａ）の画像Ｂは、図５に示す顔画像Ｂと図６（ａ）に示す基準データとしての画像との差分データであり、図７（ａ）の画像Ｃは、図５に示す顔画像Ｃと図６（ａ）に示す基準データとしての画像との差分データである。図７（ｂ）の画像Ｄは、図５に示す顔画像Ｄと図６（ｂ）に示す基準データとしての画像との差分データであり、図７（ｂ）の画像Ｅは、図５に示す顔画像Ｅと図６（ｂ）に示す基準データとしての画像との差分データであり、図７（ｂ）の画像Ｆは、図５に示す顔画像Ｆと図６（ｂ）に示す基準データとしての画像との差分データである。
【００４４】
学習用データ及び予測用データが画像データである場合、差分データ算出装置１１１４により算出された差分データは、基準データを含まないため元の画像データよりも高周波成分が少なくなる。このため、差分データに対して周波数変換圧縮（つまり、画像データを周波数領域のデータに変換した上で圧縮する処理であり、例えば、ＪＰＥＧ（Ｊｏｉｎｔ  Ｐｈｏｔｏｇｒａｐｈｉｃ  Ｅｘｐｅｒｔｓ  Ｇｒｏｕｐ）方式等で用いられる圧縮処理）を施した場合に、圧縮後の差分データのデータサイズが比較的小さくなることが期待できる。そこで、差分データ算出装置１１１４は、算出された差分データに周波数変換圧縮を施して、圧縮された差分データを、差分データ記憶装置２４１に保存してよい。このように構成すれば、差分データを差分データ記憶装置２４１に保存するために費やされる時間を抑制することができるとともに、差分データ記憶装置２４１の容量の消費を抑制することができる。
【００４５】
クライアント装置１００は、クラウドサーバ２００に機械学習処理を要求する際に、基準データ記憶装置１４１に保存されている基準データを、クラウドサーバ２００のデータ復号化装置２１１に送信する。
【００４６】
データ復号化装置２１１の結合データ算出装置２１１１は、クライアント装置１００から送信された基準データと、差分データ記憶装置２４１に予め保存されている差分データとを結合して、学習用データ又は予測用データを復元する。具体的には、結合データ算出装置２１１１は、図６（ａ）に示す基準データとしての画像と、図７（ａ）に示す差分データとしての画像Ａ、Ｂ及びＣとを結合して、図５に示す顔画像Ａ、Ｂ及びＣを復元する。同様に、結合データ算出装置２１１１は、図６（ｂ）に示す基準データとしての画像と、図７（ｂ）に示す差分データとしての画像Ｄ、Ｅ及びＦとを結合して、図５に示す顔画像Ｄ、Ｅ及びＦを復元する。
【００４７】
学習エンジン２１２は、結合データ算出装置２１１１により復元された学習用データを用いた機械学習により、分析モデルを生成する。学習エンジン２１２は、該生成された分析モデルを、例えば記憶装置２４により実現される分析結果記憶装置２４２に保存する。
【００４８】
予測エンジン２１３は、結合データ算出装置２１１１により復元された予測用データと、分析結果記憶装置２４２に保存されている分析モデルとを用いて、例えば予測用データとしての複数の画像データ各々のカテゴリを予測することにより得られた予測結果を、例えば記憶装置２４により実現される予測結果記憶装置２４３に保存する。
【００４９】
（動作）
次に、機械学習処理が行われるときのシステム１の動作について、図８のフローチャートを参照して説明を加える。
【００５０】
図８において、先ず、クライアント装置１００のデータ暗号化装置１１１は、簡易分類モデル入力装置３０１からデータ分類のためのモデル（簡易分類モデル）を取得する（ステップＳ１０１）。ステップＳ１０１の処理と並行して、データ暗号化装置１１１は、学習用データ入力装置３０２から学習用データを取得する（ステップＳ１０２）。
【００５１】
データ暗号化装置１１１のデータ前処理装置１１１１は、ステップＳ１０２の処理において取得された学習用データに対して所定の前処理を施す（ステップＳ１０３）。次に、データ暗号化装置１１１の簡易データ分類装置１１１２は、ステップＳ１０１の処理において取得された簡易分類モデルを用いて、学習用データをカテゴリ毎に分類する（ステップＳ１０４）。
【００５２】
次に、データ暗号化装置１１１の基準データ算出装置１１１３は、カテゴリ毎に分類された学習用データから、カテゴリ毎に基準データを算出する（ステップＳ１０５）。基準データ算出装置１１１３は、算出された基準データを、基準データ記憶装置１４１に保存する（ステップＳ１０６）とともに、データ暗号化装置１１１の差分データ算出装置１１１４に出力する。
【００５３】
差分データ算出装置１１１４は、カテゴリ毎に、基準データと、学習用データとの差分を算出することにより、差分データを算出する（ステップＳ１０７）。差分データ算出装置１１１４は、算出された複数の差分データを、クラウドサーバ２００の差分データ記憶装置２４１に保存する（ステップＳ１０８）。
【００５４】
その後、クラウドサーバ２００に機械学習処理が要求されるときに、クライアント装置１００は、基準データ記憶装置１４１に保存されている基準データを、クラウドサーバ２００のデータ復号化装置２１１に送信する（ステップＳ１０９）。
【００５５】
データ復号化装置２１１の結合データ算出装置２１１１は、クライアント装置１００から送信された基準データと、差分データ記憶装置２４１に予め保存されている差分データとを結合して、学習用データを復元する（ステップＳ１１０）。データ復号化装置２１１は、復元された学習用データを、学習エンジン２１２に出力する。
【００５６】
学習エンジン２１２は、学習用データを用いて機械学習処理を行うことにより（つまり、学習用データを分析することにより）、分析モデルを生成する（ステップＳ１１１）。学習エンジン２１２は、該生成された分析モデルを、分析結果記憶装置２４２に保存する（ステップＳ１１２）。
【００５７】
次に、機械学習処理により生成された分析モデルを用いた分析が行われるときのシステム１の動作について、図９のフローチャートを参照して説明を加える。
【００５８】
図９において、先ず、クライアント装置１００のデータ暗号化装置１１１は、簡易分類モデル入力装置３０１からデータ分類のためのモデル（簡易分類モデル）を取得する（ステップＳ２０１）。ステップＳ２０１の処理と並行して、データ暗号化装置１１１は、予測用データ入力装置３０３から予測用データを取得する（ステップＳ２０２）。
【００５９】
データ暗号化装置１１１のデータ前処理装置１１１１は、ステップＳ２０２の処理において取得された予測用データに対して所定の前処理を施す（ステップＳ２０３）。次に、データ暗号化装置１１１の簡易データ分類装置１１１２は、ステップＳ２０１の処理において取得された簡易分類モデルを用いて、予測用データをカテゴリ毎に分類する（ステップＳ２０４）。
【００６０】
次に、データ暗号化装置１１１の基準データ算出装置１１１３は、カテゴリ毎に分類された予測用データから、カテゴリ毎に基準データを算出する（ステップＳ２０５）。基準データ算出装置１１１３は、算出された基準データを、基準データ記憶装置１４１に保存する（ステップＳ２０６）とともに、データ暗号化装置１１１の差分データ算出装置１１１４に出力する。
【００６１】
差分データ算出装置１１１４は、カテゴリ毎に、基準データと、予測用データとの差分を算出することにより、差分データを算出する（ステップＳ２０７）。差分データ算出装置１１１４は、算出された複数の差分データを、クラウドサーバ２００の差分データ記憶装置２４１に保存する（ステップＳ２０８）。
【００６２】
その後、クラウドサーバ２００に分析モデルを用いた分析が要求されるときに、クライアント装置１００は、基準データ記憶装置１４１に保存されている基準データを、クラウドサーバ２００のデータ復号化装置２１１に送信する（ステップＳ２０９）。
【００６３】
データ復号化装置２１１の結合データ算出装置２１１１は、クライアント装置１００から送信された基準データと、差分データ記憶装置２４１に予め保存されている差分データとを結合して、予測用データを復元する（ステップＳ２１０）。データ復号化装置２１１は、復元された予測用データを、予測エンジン２１３に出力する。
【００６４】
予測エンジン２１３は、復元された予測用データと、分析結果記憶装置２４２に保存されている分析モデルとを用いて、例えば予測用データとしての複数の画像データ各々のカテゴリを予測することにより得られた予測結果を、予測結果記憶装置２４３に保存する（ステップＳ２１２）。
【００６５】
尚、「基準データ算出装置１１１３」、「差分データ算出装置１１１４」及び「簡易データ分類装置１１１２」は、後述する付記における「生成手段」の一例に相当する。「差分データ算出装置１１１４」は、後述する付記における「保存手段」の一例に相当する。
【００６６】
（技術的効果）
当該システム１では、上述したように、クラウドサーバ２００における機械学習処理に用いられる学習用データ、及び、分析モデルを用いた分析に用いられる予測用データが、オンプレミス環境にあるクライアント装置１００において、基準データと差分データとに分割される（この結果として、学習用データ及び予測用データが暗号化される）。そして、差分データが、クラウドサーバ２００の差分データ記憶装置２４１に保存される一方、基準データは、クライアント装置１００の基準データ記憶装置１４１に保存される。
【００６７】
仮に、クラウドサーバ２００が攻撃を受け、差分データ記憶装置２４１に保存されている差分データが盗まれたとしても、差分データだけから元のデータ（即ち、学習用データ又は予測用データ）を復元することは極めて困難である（事実上不可能であると言える）。機械学習処理や分析モデルを用いた分析が行われるときに、クラウドサーバ２００に基準データが送信される。しかしながら、基準データ、並びに、該基準データ及び差分データから復元された元のデータは、クラウドサーバ２００の、例えばキャッシュメモリ等に一時的に保存され、機械学習処理等が終了した後にクラウドサーバ２００から削除される。このため、クラウドサーバ２００から元のデータが盗まれる可能性は極めて低い。
【００６８】
このように、オンプレミス環境にあるクライアント装置１００において、元のデータ（即ち、学習用データ又は予測用データ）を基準データと差分データとに分割することにより、クラウドサービスを提供する事業者に依存することなく、情報漏洩に備えたセキュリティ対策を行うことができる。特に、データの暗号化（即ち、基準データと差分データとに分割すること）及び復号化（即ち、基準データと差分データとから元のデータを復元すること）により該データは劣化しないので、機械学習処理等の精度が、暗号化及び復号化に起因して損なわれることはない。加えて、クラウドサーバ２００の差分データ記憶装置２４１に保存される（言い換えれば、アップロードされる）差分データのデータサイズは比較的小さいので、差分データに起因する差分データ記憶装置２４１の容量の消費を抑制することができる。また、クラウドサーバ２００において分散処理が行われる場合には、分散処理における通信量を抑制することができる。
【００６９】
＜変形例＞
（１）上述した実施形態では、学習用データ及び予測用データの一例として画像データを挙げたが、画像データに限らず、例えば音声データや時系列数値データ等であってもよい。
【００７０】
（２）図１０に示すように、クライアント装置１００のＣＰＵ１１内には、データ暗号化装置１１１の基準データ算出装置１１１３及び差分データ算出装置１１１４が実現される一方で、基準データ算出装置１１１３及び差分データ算出装置１１１４以外の機能ブロックが実現されなくてもよい。この場合であっても、基準データ算出装置１１１３が、図８におけるステップＳ１０５及びＳ１０６の処理、並びに、図９におけるステップＳ２０５及びＳ２０６の処理を行い、差分データ算出装置１１１４が、図８におけるステップＳ１０８及びＳ１０９の処理、並びに、図９におけるステップＳ２０８及びＳ２０９の処理を行えば、学習用データ及び予測用データが基準データと差分データとに分割され（即ち、暗号化され）、差分データがクラウドサーバ２００の差分データ記憶装置２４１に保存される。この結果、クラウドサービスを提供する事業者に依存することなく、情報漏洩に備えたセキュリティ対策を行うことができる。
【００７１】
＜付記＞
以上説明した実施形態に関して、更に以下の付記を開示する。
【００７２】
（付記１）
付記１に記載のシステムは、機械学習処理を実施可能なクラウドサーバと、前記クラウドサーバと通信可能なクライアント装置とを備えるシステムであって、前記クライアント装置は、前記機械学習処理に用いられる複数のデータから、前記複数のデータの少なくとも一部の基準となるデータである一又は複数の基準データを生成するとともに、前記複数のデータ各々と、前記一又は複数の基準データのうち対応する基準データとの差分を示す複数の差分データを生成する生成手段と、前記複数の差分データを、前記クラウドサーバの記憶装置に保存する保存手段と、を有することを特徴とするシステムである。
【００７３】
（付記２）
付記２に記載のシステムは、前記生成手段は、前記複数のデータ各々を一又は複数のカテゴリに分類し、前記一又は複数のカテゴリ毎に前記基準データ及び前記差分データを生成することを特徴とする付記１に記載のシステムである。
【００７４】
（付記３）
付記３のシステムは、前記保存手段は、前記複数の差分データを周波数変換圧縮した後に、前記記憶装置に保存することを特徴とする付記１又は２に記載のシステムである。
【００７５】
（付記４）
付記４に記載のシステムは、前記クライアント装置は、前記クラウドサーバに対し前記機械学習処理を要求する際に、前記一又は複数の基準データを前記クラウドサーバに送信し、前記クラウドサーバは、前記記憶装置に保存された前記複数の差分データと、前記一又は複数の基準データとから、前記複数のデータを復元する復元手段を有することを特徴とする付記１乃至３のいずれかに記載のシステムである。
【００７６】
（付記５）
付記５に記載のクライアント装置は、機械学習処理を実施可能なクラウドサーバと通信可能なクライアント装置であって、前記機械学習処理に用いられる複数のデータから、前記複数のデータの少なくとも一部の基準となるデータである一又は複数の基準データを生成するとともに、前記複数のデータ各々と、前記一又は複数の基準データのうち対応する基準データとの差分を示す複数の差分データを生成する生成手段と、前記複数の差分データを、前記クラウドサーバの記憶装置に保存する保存手段と、を備えることを特徴とするクライアント装置である。
【００７７】
（付記６）
付記６に記載のデータ処理方法は、機械学習処理を実施可能なクラウドサーバと、前記クラウドサーバと通信可能なクライアント装置とを備えるシステムにおけるデータ処理方法であって、前記クライアント装置において、前記機械学習処理に用いられる複数のデータから、前記複数のデータの少なくとも一部の基準となるデータである一又は複数の基準データを生成するとともに、前記複数のデータ各々と、前記一又は複数の基準データのうち対応する基準データとの差分を示す複数の差分データを生成する生成工程と、前記複数の差分データを、前記クラウドサーバの記憶装置に保存する保存工程と、を含むことを特徴とするデータ処理方法である。
【００７８】
（付記７）
付記７に記載のコンピュータプログラムは、コンピュータに、付記６に記載のデータ処理方法を実行させるコンピュータプログラムである。
【００７９】
（付記８）
付記８に記載の記録媒体は、付記７に記載のコンピュータプログラムが記録された記録媒体である。
【００８０】
本発明は、請求の範囲及び明細書全体から読み取るこのできる発明の要旨又は思想に反しない範囲で適宜変更可能であり、そのような変更を伴うシステム、クライアント装置、データ処理方法、コンピュータプログラム及び記録媒体もまた本発明の技術思想に含まれる。
【００８１】
この出願は、２０１９年３月１９日に出願された日本出願特願２０１９−０５１３１７を基礎とする優先権を主張し、その開示の全てをここに取り込む。
【符号の説明】
【００８２】
１…システム、１００…クライアント装置、１１１…データ暗号化装置、１４１…基準データ記憶装置、２００…クラウドサーバ、２１１…データ復号化装置、２１２…学習エンジン、２１３…予測エンジン、２４１…差分データ記憶装置、２４２…分析結果記憶装置、２４３…予測結果記憶装置、１１１１…データ前処理装置、１１１２…簡易データ分類装置、１１１３…基準データ算出装置、１１１４…差分データ算出装置
【図１】
2020189133.tif 000003
【図２】
2020189133.tif 000004
【図３】
2020189133.tif 000005
【図４】
2020189133.tif 000006
【図５】
2020189133.tif 000007
【図６】
2020189133.tif 000008
【図７】
2020189133.tif 000009
【図８】
2020189133.tif 000010
【図９】
2020189133.tif 000011
【図１０】
2020189133.tif 000012
【手続補正書】
【提出日】令和3年8月18日(2021.8.18)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
機械学習処理を実施可能なクラウドサーバと、前記クラウドサーバと通信可能なクライアント装置とを備えるシステムであって、
前記クライアント装置は、
前記機械学習処理に用いられる複数のデータから、前記複数のデータの少なくとも一部の基準となるデータである一又は複数の基準データを生成するとともに、前記複数のデータ各々と、前記一又は複数の基準データのうち対応する基準データとの差分を示す複数の差分データを生成する生成手段と、
前記複数の差分データを、前記クラウドサーバの記憶装置に保存する保存手段と、
を有する
ことを特徴とするシステム。
【請求項２】
前記生成手段は、前記複数のデータ各々を一又は複数のカテゴリに分類し、前記一又は複数のカテゴリ毎に前記基準データ及び前記差分データを生成することを特徴とする請求項１に記載のシステム。
【請求項３】
前記保存手段は、前記複数の差分データを周波数変換圧縮した後に、前記記憶装置に保存することを特徴とする請求項１又は２に記載のシステム。
【請求項４】
前記クライアント装置は、前記クラウドサーバに対し前記機械学習処理を要求する際に、前記一又は複数の基準データを前記クラウドサーバに送信し、
前記クラウドサーバは、前記記憶装置に保存された前記複数の差分データと、前記一又は複数の基準データとから、前記複数のデータを復元する復元手段を有する
ことを特徴とする請求項１に記載のシステム。
【請求項５】
前記クライアント装置は、前記クラウドサーバに対し前記機械学習処理を要求する際に、前記一又は複数の基準データを前記クラウドサーバに送信し、
前記クラウドサーバは、前記記憶装置に保存された前記複数の差分データと、前記一又は複数の基準データとから、前記複数のデータを復元する復元手段を有する
ことを特徴とする請求項２に記載のシステム。
【請求項６】
前記クライアント装置は、前記クラウドサーバに対し前記機械学習処理を要求する際に、前記一又は複数の基準データを前記クラウドサーバに送信し、
前記クラウドサーバは、前記記憶装置に保存された前記複数の差分データと、前記一又は複数の基準データとから、前記複数のデータを復元する復元手段を有する
ことを特徴とする請求項３に記載のシステム。
【請求項７】
機械学習処理を実施可能なクラウドサーバと通信可能なクライアント装置であって、
前記機械学習処理に用いられる複数のデータから、前記複数のデータの少なくとも一部の基準となるデータである一又は複数の基準データを生成するとともに、前記複数のデータ各々と、前記一又は複数の基準データのうち対応する基準データとの差分を示す複数の差分データを生成する生成手段と、
前記複数の差分データを、前記クラウドサーバの記憶装置に保存する保存手段と、
を備えることを特徴とするクライアント装置。
【請求項８】
機械学習処理を実施可能なクラウドサーバと、前記クラウドサーバと通信可能なクライアント装置とを備えるシステムにおけるデータ処理方法であって、
前記クライアント装置において、前記機械学習処理に用いられる複数のデータから、前記複数のデータの少なくとも一部の基準となるデータである一又は複数の基準データを生成するとともに、前記複数のデータ各々と、前記一又は複数の基準データのうち対応する基準データとの差分を示す複数の差分データを生成し、
前記複数の差分データを、前記クラウドサーバの記憶装置に保存する
ことを特徴とするデータ処理方法。
【請求項９】
コンピュータに、データ処理方法を実行させるコンピュータプログラムであって、
前記データ処理方法は、機械学習処理を実施可能なクラウドサーバと、前記クラウドサーバと通信可能なクライアント装置とを備えるシステムにおけるデータ処理方法であって、
前記クライアント装置において、前記機械学習処理に用いられる複数のデータから、前記複数のデータの少なくとも一部の基準となるデータである一又は複数の基準データを生成するとともに、前記複数のデータ各々と、前記一又は複数の基準データのうち対応する基準データとの差分を示す複数の差分データを生成し、
前記複数の差分データを、前記クラウドサーバの記憶装置に保存する
コンピュータプログラム。
【国際調査報告】
2020189133.tif 000013
2020189133.tif 000014
2020189133.tif 000015
2020189133.tif 000016