Rosetta はプライバシー コンピューティングと AI をどのように結び付けるのでしょうか?

Rosetta はプライバシー コンピューティングと AI をどのように結び付けるのでしょうか?

この記事はAI新メディアQuantum Bit(公開アカウントID:QbitAI)より許可を得て転載しています。転載の際は出典元にご連絡ください。

本日は、Matrix Element の最近の研究結果の一部を皆様にご紹介できることを大変嬉しく思います。主な方向性は、プライバシー コンピューティングと、暗号化ベースのプライバシー オープン ソース フレームワークであるRosetta です

プライバシーコンピューティングの時代が来るのでしょうか?

現在、データに関していくつかの課題があります。デジタル化の発展に伴い、データの量は飛躍的に増加しており、一部の中核的かつ重要なデータの保護だけでは十分ではありません。現在、データの生産要素化に伴い、国内外でデータ関連分野全体への注目が高まっています。もちろん、課題も増えています。多くの課題の中で、最も重要なのはデータのプライバシーであると考えています。

AI の観点から見ると、AI にはデータを「供給」する必要があります。十分なデータまたは多様なデータがあって初めて、比較的優れたモデルをトレーニングして使用できるようになります。そのため、データ量の増加やデータの多様性の増大、データプライバシーへの懸念が高まるにつれて、AIはいわゆる「ジレンマ」に直面します。AIの観点から見ると、データの多様性が高ければ高いほど、モデル全体のトレーニングに有利になり、モデルの精度もそれに応じて高まります。

したがって、これは AI にとってさまざまな問題を引き起こします。データのプライバシーを保護しながら、さまざまなソースや企業からのデータを統合して活用するにはどうすればよいでしょうか?この問題は現在の伝統的な技術的方法では解決が難しいため、AI が直面する大きな問題点となっています。これにより、「プライバシー コンピューティング」という概念も生まれました。

プライバシーコンピューティングとは、簡単に言えば、単なる技術ではなく、データの利用や統合の際にプライバシー保護を確保する総合的な技術です。プライバシー コンピューティングは、大きく分けて 3 つのカテゴリに分類できます。

1 つ目は暗号化、2 つ目は機械学習技術である Federated Learning 、3 つ目はハードウェア セキュリティ技術であるTrusted Execution Environment (TEE) です。もちろん、テクノロジーに絶対的な良し悪しはありません。それぞれのテクノロジーには長所と短所があるため、多くの総合的なソリューションでは、多くのテクノロジーを組み合わせて使用​​します。

簡単に言えば、暗号化とは、さまざまな状況でデータのプライバシーを保護する方法を研究する分野です。最も重要な特徴は、すべての暗号化の方向において、アルゴリズムとスキームに関しては、まずセキュリティ モデルを定義し、セキュリティを構成する要素を定義する必要があるということです。次に、この定義に基づいて、この方式がセキュリティ定義を満たしていることを証明するためにいくつかの数学的手法と技術が使用されるため、暗号理論に対する比較的完全な数学的理論的根拠が得られます。もちろん、暗号化の利点は、非常に幅広いシナリオを考慮に入れることです。そのため、さまざまなシナリオに適合したり適応したりすることができます。シナリオによっては、より効率的になる場合があります。

もちろん、暗号化にもボトルネックがあります。シナリオによっては、パフォーマンス、計算時間、通信の複雑さにボトルネックが発生することがあります。もちろん、より大きなボトルネックは、暗号化の知識がない人に暗号化の原理を説明するのが非常に難しいことです。

したがって、この共有では、暗号化の歴史と主要なテクノロジーを含め、暗号化について紹介することに重点を置きます。その後、安全なマルチパーティコンピューティングの基本原則について簡単に紹介します。

暗号化はどのようにしてプライバシー保護を実現するのでしょうか?

暗号におけるプライバシーコンピューティング技術は、大きく分けて 3 つのカテゴリに分けられます。これらは、安全なマルチパーティコンピューティング準同型暗号化ゼロ知識証明です

セキュア マルチパーティ コンピューティング (略して MPC) は、1982 年に Yao Qizhi 氏によって提案され、「百万長者の問題」から生まれました。この質問は、2 人の億万長者がどちらも非常に裕福で、どちらがより裕福であるかを比べたいと思っているが、お互いの資産について教えたくないし、比較を手伝ってくれる第三者を見つけたいとも思っていないというものです。では、自分の富を明かさずに誰がより裕福であるかをどうやって知ることができるのでしょうか?こうして、安全なマルチパーティ コンピューティングの分野が開拓されました。

抽象的に言えば、複数のローカル参加者が存在し、それぞれが私的収入を持ち、f と呼ばれる共通の関数または共通のモデルを計算したいと考えていることがわかります。この f は各入力に関連付けられ、それぞれに結果が与えられます。そこで抽象化します。f が比較関数で、モデルに 2 人しかいない場合は、典型的な億万長者問題になります。

それは今日私たちが話している内容とどう関係しているのでしょうか? f がロジスティック回帰や CNN などのモデルまたは機械学習モデルである場合、3 つの当事者がそれぞれ何らかのデータを持ち、共同でモデルをトレーニングしたいと考えることに相当します。

これは今日のトピック「プライバシーを保護した AI モデリングをどのように実施するか」に対応しています。

言い換えれば、安全なマルチパーティ コンピューティングは、実際には非常に広範な概念です。暗号化の観点から見ると、機械学習や AI で MPC を使用することは非常に特殊なアプリケーションです。では、アプリケーションは具体的にどのような方法を使用するのでしょうか?これが Rosetta が解決しようとしている問題です。

Rosetta はプライバシー コンピューティングと AI をどのように結び付けるのでしょうか?

これまで、誰もが大きな問題に遭遇したことがあると思います。つまり、暗号を使って問題を解決したいのですが、数学の基礎がしっかりしていなかったり、暗号を勉強したことがなかったりすると、関連するアルゴリズムを習得するのが難しすぎます。しかし、AI 分野の専門家や学者の中には、AI、ディープラーニング、機械学習フレームワークの応用についてすでに詳しい人もいます。したがって、異なる専門スキルを持つこれら 2 つのタイプの人々の間には大きな隔たりがあります。現実の世界では、これら 2 つの技術を統合する必要性が高まっていますが、暗号化の技術的ハードルが比較的高いため、業界全体の発展だけでなく、プライバシー コンピューティングやプライバシー AI 全体のコンピューティング技術の問題や理論的進歩にも影響が及びます。

そのため、機械学習には精通しているが暗号化には精通していないユーザーにもプライバシー コンピューティング テクノロジーを利用できるようにしたいと考えています。さらに、TensorFlowやPytorchなどのAIや機械学習フレームワークに精通している開発者であれば、開発習慣を変えることなくプライバシーAI技術を利用することができます。暗号に詳しくない、あるいは暗号をまったく理解していないAI開発者や専門家でもプライバシーコンピューティング技術を利用できるようなプラットフォームやオープンソースフレームワークを構築する必要があります。これがRosettaを設計した当初の意図、あるいはRosettaを設計する際の基本原則です。

したがって、Rosetta には、使いやすさ高効率性スケーラビリティという特徴があります。

使いやすさ。現在、TensorFlow インターフェースは完全に再利用されています。モデルをプレーンテキストと暗号テキストで記述する場合、TensorFlow インターフェースは同じであり、変更されていません。 AI エンジニアがプライバシー コンピューティング テクノロジを使用するコストを大幅に削減します。

高い効率性、ネイティブ TensorFlow がデータフロー グラフに対して自動的に実行するさまざまなランタイム最適化と完全に互換性があります。アルゴリズムの実装には C++ を使用し、基礎となるアルゴリズムの効率性を維持できます。当社は業界の暗号学者とも協力し、一部の機械学習やディープラーニング モデルに適応する効率的で最先端の MPC テクノロジーを設計しています。

スケーラビリティ: MPC 分野には多くのアルゴリズムとプロトコルがあり、さまざまなシナリオが関係しているため、異なるアルゴリズムの方がより良い結果をもたらす可能性があります。新しいアルゴリズムが出てきたら、Rosetta をフレームワーク全体に素早く統合できます。

以下に例を示します。

ここには A、B、C の 3 人の参加者がいて、それぞれが行列 Ma、Mb、Mc を持っています。次に、Ma × Mb × Mc を計算します。3 人は結果しか知らず、その間のプロセスは知りません。このようなシナリオでは、Rosetta を使用してそれを実現するにはどうすればよいですか? TensorFlow をプレーンテキストで使用する場合との違いは 2 つあります。1 つはパッケージをインポートしてアルゴリズムを選択すること、もう 1 つは単純にプライベート入力を処理することです。つまり、Rosetta パッケージをインポートし、アルゴリズムを選択してからプライベート入力を定義する必要があります。

Rosetta のアーキテクチャは次のとおりです。

一般的に、Rosetta のフレームワーク図は上記のとおりです。これには、ユーザーの利便性のために Rosetta がサポートしている機能である Python フロントエンド API が含まれています。その後、TensorFlow のフロントエンドとバックエンドに適応します。同時に、さまざまな暗号化プロトコルに適応できる統一された暗号化プロトコル管理レイヤーを開発しました。

私たちの目標は、暗号を理解している開発者がフレームワーク全体で既存のものを再利用できるようにし、暗号を理解していない AI 開発者が障壁なしまたは非常に低い障壁でプライバシー コンピューティング技術を使用できるようにすることです。これは、暗号と機械学習を有機的に組み合わせることに相当します。これが Rosetta の目的です。

Rosetta アーキテクチャについてお話ししましょう。まず、TensorFlow アーキテクチャについてお話しする必要があります。簡単に言うと、TensorFlow アーキテクチャはグラフ変換とグラフ実行です。パスワード適応には TensorFlow フレームワークを最大限に活用します。

TensorFlow がグラフを下図の左側の標準的な従来のグラフに変換するときに、静的パスを作成し、各操作を SecureOp に変換します。この一般的な用語は、後で暗号化アルゴリズムをサポートするためのものです。

2 番目のステップはグラフ実行です。グラフ実行には、動的パスを使用しました。左側のグラフは、変換後のグラフです。その後、データが処理されると、各グラフに基づいて、動的パスが動的に適応し、特定の種類の暗号化プロトコルを使用してグラフを実行できます。

TensorFlow フレームワークをフル活用できます。同時に、基盤となる暗号化アルゴリズム全体を使用できるため、動的パスは TensorFlow などのオプティマイザー間の並列処理もフル活用でき、実行速度が向上します。

以下は、実際のシナリオにおける Rosetta の適用に関するケース スタディです。金融シナリオでの適用です。 A銀行とB銀行はそれぞれ独自のデータを持っており、インターネット企業Cもデータを持っています。皆がRosettaを通じてモデルを構築したいと考えており、例えばロジスティック回帰をトレーニングした後、リスク管理モデルをトレーニングし、より効率的なモデルをトレーニングしたいと考えています。同時に、各当事者 abc のデータが相手方に取得されないようにします。このシナリオでは、Rosetta を使用すると、問題を簡単に解決できます。

上記のように、Rosetta をインポートし、プロトコルを選択してから、対応する入力を選択します。以下は TensorFlow を使用した標準的な回帰なので、暗号化の知識はまったく必要なく、完全に記述できます。マルチデータ融合のトレーニング シナリオでは、データを処理するために Rosetta パッケージのみが必要です。ロジスティック回帰コード全体は元のコードとまったく同じように記述されており、コードを直接コピーすることもできます。ここで質問です。暗号文方式であるMPC方式を使用する場合、平文方式との精度の違いはどのくらいでしょうか?

上図のように比較してみると、ほとんど違いはなく、基本的には同等であることがわかります。したがって、十分なパラメータと十分な精度を設計すれば、モデル全体の精度は完全に保証できます。もちろん、いわゆるモデル予測サービスという別のシナリオもあります。

ついに、Rosetta が始動し、バージョン 0.2.1 がオープンソース化されました。 GitHub リンクはこちらです:

https://github.com/LatticeX-Foundation/ロゼッタ

<<:  「理解する」シナリオ + 「理解する」テクノロジー: スマート交通で旅行が予測可能になる

>>:  2020 年のトップ産業人工知能アプリケーション

ブログ    
ブログ    
ブログ    

推薦する

無人タクシーが登場します。準備はできていますか?

[[243616]]地図: 小魚クラウド コンピューティングやビッグ データなどのアプリケーション...

ロボットと自動化技術は、パンデミックの新たな常態の中でどのように新しい雇用を生み出すのでしょうか?

AI テクノロジーと自動化ソリューションは、仕事を奪う諸悪の根源なのでしょうか、それとも新しいプラ...

...

...

AIが不動産業務を簡素化する方法

最近、不動産会社は人工知能ソリューションへの投資を増やしており、この傾向は2024年にさらに強まるで...

AIとロボット工学でオフショア業務を効率化する方法

長い間、肉体的に過酷で危険な仕事が特徴とされてきた石油産業は、変革を遂げつつある。この変化は、通信技...

iOS の位置決めと座標系アルゴリズム

この話題を始める前に、もう一度皆さんの無知を解明させてください。私が解明したいのは、座標系についての...

オタクのためのオープンソースドローンプロジェクト4つ

[[178638]] [51CTO.com クイック翻訳]過去数年間で、民間および商用ドローンへの関...

4つの基本的なソートアルゴリズムのPHPコード実装

アルゴリズムはプログラムの核であり、アルゴリズムの品質がプログラムの品質を決定すると多くの人が言いま...

公正な AI システムを構築するにはどうすればよいでしょうか?

人工知能はあらゆる業界の企業で急速に導入されており、企業は今後 3 年間で AI システムへの支出を...

URLベースのクライアント監視と分析における機械学習の最適化と実践

従来のクライアント監視および分析シナリオでは、特定の URL に基づく統計分析方法が使用されます。た...

AIはクラウドコンピューティング大手の次の競争の焦点となる

人工知能が今日の情報技術分野で最もホットな話題であることは疑いの余地がなく、情報産業を豊かにし、改善...

Transformer BEV を使用して自動運転の極端な状況を解決するにはどうすればよいでしょうか?

実際のアプリケーションでは、自動運転システムはさまざまな複雑なシナリオ、特にコーナーケース(極端な状...