AIは「GitHub危機」を乗り越えられるか?

AIは「GitHub危機」を乗り越えられるか?

機械学習は現在、この分野の急速な発展を妨げるいくつかの危機に直面しています。これらの危機は、より広範なジレンマ、つまり科学研究の再現性から生じています。ネイチャー誌が1,500人の科学者を対象に行った調査によると、研究者の70%が他の科学者の実験を再現しようとして失敗しており、50%以上が自身の研究結果を再現できなかったという。再現性は、複製可能性とも呼ばれ、特定の研究の結果が一回限りのものではなく、再現可能な観察結果であることを保証する科学的方法の中核となる原則です。

コンピュータ サイエンスでは、再現性の定義はより狭義です。つまり、計算を再度実行して同じ結果が得られるように、すべてのデータとコードを公開して結果を文書化する必要があります。残念ながら、人工知能 (AI) と機械学習 (ML) の進歩は、透明性と再現性に関しては順調ではありませんでした。例えば、31人の科学者がネイチャー誌に、乳がんの兆候を検出するために人工知能を「うまく」利用したことを示すGoogle Healthの実験研究を厳しく批判する記事を発表しました。

この実験に懐疑的な科学者たちは、Google の研究では AI モデルがどのように構築されテストされたかについての詳細があまりに少なく、自社の独自技術の宣伝にさえなっていると主張している。このモデルがどのように作成されたかについての適切な情報がなければ、科学界がその結果を検討し、再現することはほぼ不可能でしょう。これにより、AI には透明性が欠けているという認識が高まり、人間と AI システム間の信頼の問題が悪化しています。

機械学習の継続的な進歩を維持し、人工知能での成功を可能にするには、この分野の再現性と透明性の問題に対処することが重要です。この記事では、AI の再現性危機の重要性と、機械学習専用に構築された GitHub の新バージョンが、その解決にどのように役立つかを説明します。

機械学習専用に構築されたGitHubが必要な理由

GitHub はクラウドベースのコード開発および管理サービスです。このプラットフォームはソフトウェアのバージョン管理に使用され、開発者が開発ライフサイクル全体にわたってコードの変更を追跡するのに役立ちます。これにより、プロジェクトを安全に分岐およびマージできるようになり、コードが再現可能になり、誰が実行しても同じ動作をすることが保証されます。 AI および機械学習アプリケーションはコードで記述されるため、それらを管理するための自然な選択肢は GitHub です。残念ながら、AI と従来のソフトウェア プロジェクトの間にはいくつかの違いがあるため、GitHub は AI に適しておらず、機械学習の再現性危機につながっています。

GitHubはデータをプロジェクトの中核コンポーネントとして設計されていません

従来、ソフトウェア アルゴリズムは、開発者が頭の中にあるアイデアを決定論的、数学的、チューリング完全な言語でコードとして記述することによって作成されます。これにより、ソフトウェアの再現性が高まります。特定のソフトウェアを再現するために必要なのは、そのタスクに最適化されたコードとライブラリだけです。

機械学習アルゴリズムは、開発者の頭の中で作成されるのではなく、データから「抽出」されるという点で異なります。つまり、従来のソフトウェア開発で記録されたコードやランタイム環境変数が変更されていなくても、データが変更されると機械学習アルゴリズムも変更されることになります。これが GitHub for AI の問題の核心です。AI アルゴリズムの開発に使用されるコードとライブラリが追跡されたとしても、コードだけでなくデータに依存しているため、再現することはできません。

この問題を克服するには、いくつかの方法があります。

  • 自動データ バージョン管理: トレーニング データセットの不整合によって発生する再現性の問題を回避するには、データ バージョン管理が AI/ML プロジェクトを管理するあらゆるプラットフォームの重要な機能である必要があります。これにより、チームはデータに加えられたすべての変更を自動的に追跡できるようになり、結果を対応するトレーニング データセットの特定のバージョンに関連付けることができるようになります。現在、GitHub はコードの変更を追跡できますが、データを追跡することはできません。これを克服することが、AI における再現性の危機を解決する上で重要な役割を果たすことになります。
  • 不変のデータ リネージ: 不変のデータ リネージは、データに関連する機械学習ライフサイクル内のすべてのアクティビティとアセットの変更不可能な記録を提供します。これにより、機械学習チームはコード、モデル、データのすべてのバージョンを追跡できるようになります。トレーニングから本番環境まで、機械学習モデルに関連するすべてのアクティビティの不変の記録を提供することで、再現性が保証され、履歴データセット間の関係がより適切に管理されます。

人工知能は大規模な非構造化データセットを使用する

AI に GitHub を使用する場合の問題は、データの変更を追跡できないことだけではありません。従来のソフトウェアと人工知能が依存するデータの種類はまったく異なります。従来、ソフトウェアはコードで記述され、コードはテキストで表現されます。一般的に言えば、テキスト ファイルはそれほど大きくありません。しかし、AI は音声、画像、ビデオなどの非構造化データに大きく依存しており、これらのデータはテキスト ファイルよりもはるかに大きいため、データの追跡と管理において追加の課題に直面しています。

複数のデータ ソースからのデータを単一のデータ ストアに結合するプロセスは、抽出、変換、ロード (ETL) と呼ばれます。これは、ソース システムからターゲット システムにデータをコピーする一般的なプロセスであり、これにより、異なるタイプのデータを一緒に処理できるようになります。データ サイエンティストとエンジニアには、AI アプリケーション開発のためにデータを抽出、変換、ロードするためのデータ バージョン管理、データ リネージ、大容量ファイルの処理能力、データ処理用のスクリプトとライブラリの管理が必要です。

この記事では、この問題に対するいくつかの新しい解決策について説明しますが、この機能は現在 GitHub のコアに組み込まれていないため、機械学習アルゴリズムに供給されるデータをプラットフォーム上で適切に管理できないことに注意することが重要です。

機械学習モデルのパラメータにより複雑さが増す AI の再現性の課題、そして機械学習に GitHub を使用することを困難にする要因は、データの変更を追跡したり、大規模な非構造化データセットを管理したりできないことだけではありません。 AI アルゴリズムの開発に使用されるコード、ライブラリ、データが同じままであっても、モデルパラメータの変動性により、同じ AI システムを使用して同じ結果を再現することは不可能です。前述のように、機械学習アルゴリズムはデータによって形成されます。ただし、これがシステムに影響を与える唯一の要因ではありません。パラメータは、特定のアルゴリズムの動作にも影響します。モデル パラメータには、ハイパーパラメータと通常パラメータの 2 種類があります。ハイパーパラメータは、学習プロセスの高レベルの制御、つまり特定のモデルの結果に影響を与えるパラメータと考えることができます。機械学習モデルがトレーニングされた後、パラメータはモデル自体の表現になります。ハイパーパラメータは、トレーニング中に学習アルゴリズムによって使用されますが、最終モデルの一部ではありません。

定義上、ハイパーパラメータは機械学習モデルの外部にあり、その値をデータから推定することはできません。ハイパーパラメータを変更すると、機械学習モデルの最終的なアルゴリズムも変更されます。コードが人間の脳を構築するための設計図に例えられるとすれば、ハイパーパラメータとモデルは特定の脳を構築するための実装計画です。これは、モデルのトレーニングに使用される同じコード ベースで、数百または数千の異なるパラメーターが生成される可能性があるため重要です。

実験結果の追跡とコードレビュー

機械学習モデルをテストするときは、実験の結果を追跡することが重要です。これらの結果は、どのモデルを使用するのが最適かを判断するのに役立ちますが、もちろん、GitHub はこれらの詳細を記録するようには設計されていません。カスタムの回避策を構築することは可能ですが、このソリューションはスケーラブルではなく、時間とリソースの制約により多くの開発者が利用できません。

もちろん、機械学習モデルの管理にはコードレビューとバージョン追跡も含まれており、GitHub はこの点で優れています。ただし、GitHub はコードや環境変数の追跡には適していますが、機械学習ではデータ、パラメーター、メタデータ、実験結果などを追跡する必要が生じます。 Git プラットフォームはこのレベルの複雑さに対応するように構築されていませんが、幸いなことに、AI と機械学習を使用して GitHub の制限を克服しようとするソリューションが登場しています。

AIと機械学習のためのGitHubの代替手段

AI および機械学習プロジェクトを管理するための包括的なソリューションを提供する GitHub に代わるものは存在しません。理想的なシナリオは、人工知能や機械学習に取り組むデータ サイエンティストやエンジニア向けにカスタマイズされた GitHub を提供することです。ただし、これが完了するまでは、上記のさまざまな問題に対処できる解決策があります。

  • Neptune は、機械学習オペレーティング システム用のメタデータ リポジトリ サービスであり、すべての機械学習モデル ビルドのメタデータを記録、保存、表示、整理、比較、およびクエリするための単一の場所を提供します。 Neptune を使用してデータ バージョンをアーカイブする方法についての情報を提供します。これには、モデル トレーニング実行内のデータセットのバージョン管理、実行間のデータセットの比較、データセット バージョンの整理と共有が含まれます。
  • Pachyderm は、機械学習のライフサイクルを強化するためのデータ レイヤーです。このシステムは、自動データバージョン管理と不変のデータ系統のためのソリューションを提供します。
  • DVC は、機械学習プロジェクト用に構築されたオープンソースのバージョン管理システムです。このツールにより、データ サイエンティストやエンジニアは、実験結果、バージョン管理モデル、データを保存および再現し、展開およびコラボレーション プロセスを確立できます。
  • Git Large File Storage (Git LFS) は、オーディオ サンプル、ビデオ、データセット、グラフィックなどの大きなファイルを Git 内のテキスト ポインターに置き換え、ファイルの内容をリモート サーバーに保存します。このツールは、オーディオやビデオ データセットなどの大きなファイルをバージョン管理するためのオープン ソースの Git 拡張機能です。開発者が大容量ファイルやバイナリファイルをより効率的に処理するのに役立ちます。
  • DoIt は、Git とまったく同じ方法でデータのフォーク、クローン、ブランチ、マージ、プッシュ、プルが可能な SQL データベースです。 DoIt は「データ用の Git」として位置付けられており、さまざまな他のユースケースで一貫したモデルの再現性を確保するためにバージョン追跡によく使用されますが、データ管理に関しては、前述の GitHub の欠点を克服できます。
  • LakeFS は、2 つのオープン ソースの有料 SaaS (Software-as-a-Service) バージョンで利用できるデータ管理ツールです。このソリューションは、データとコードの完全な再現性、高速なデータ復元、PB レベルのバージョン管理を重視しています。
  • DeltaLake は、S3、ADLS、GCS、HDFS などの既存のストレージ システム上に Lakehouse アーキテクチャを構築するオープン ソース プロジェクトです。機械学習に最適なソリューションの機能には、データ共有のためのオープン プロトコル、スケーラブルなメタデータ処理、データのバージョン管理、データに加えられたすべての変更の監査履歴を表示する機能などがあります。

<<:  適切な機械学習アルゴリズムを簡単に選択

>>:  AIが産業のデジタル変革をどのように促進するか

ブログ    
ブログ    

推薦する

顔認証の過去と現在の徹底分析

​​ [[211140]]​​人工知能は、まず知覚段階、次に認知段階の 2 つの段階に分かれています...

...

...

AI時代の南北格差を埋める

[[427918]]周其浦松陽人工知能(AI)の発展は世界に変革をもたらしましたが、同時に発展途上国...

日常生活における人工知能の応用トップ 10

[51CTO.com クイック翻訳]経済社会の発展に伴い、テクノロジーはますます複雑になっています...

アルゴリズムの練習とプログラミング学習に最適な 6 つの Web サイト

Google や Facebook のアルゴリズムを理解しなければ、面接に合格することはできません。...

...

PyTorch はどのようにしてデータ並列トレーニングを高速化するのでしょうか?分散型チートが明らかに

[[333298]]現在、チップのパフォーマンスの向上は限られているため、分散トレーニングは超大規模...

『Thinking Chain: Six Intuitions about Big Models』の著者、ジェイソン・ウェイ氏

ジェイソン・ウェイを覚えていますか?思考連鎖の創始者は、命令チューニングに関する初期の研究を共同で主...

OpenAIはMicrosoftに対し、Bingチャットボットのリリースを急がないよう警告したと報じられている

6月14日のニュース:最近、人工知能の新興企業OpenAIとMicrosoftが人工知能の分野で協力...

人工知能はデジタルマーケティング革命において否定できないトレンドとなっている

人工知能 (AI) は、現在、デジタル マーケティング革命における否定できないトレンドとなっています...

ワイヤレス ネットワークと人工知能が出会うと何が起こるでしょうか?

人工知能(AI)は未来の技術ではなく、すでに存在している技術です。機械学習のイノベーションにより A...

ニューラル ネットワークが適切に機能するには、なぜ十分なパラメータが必要なのでしょうか?

従来、パラメータの数が満たすべき方程式の数より多い場合は常に、パラメータ化されたモデルを使用してデー...

顔認証決済を使用する理由は何ですか?顔認証決済は安全ですか?

顔認証決済に顔認識を使用する理由は何ですか? [[439417]]外で何かを買いたいのに、財布を持っ...

AIとコネクテッドデバイスの急成長が新たなデジタル格差を生み出している理由

接続デバイスと AI 言語モデルの急速な成長により、私たちの生活、仕事、コミュニケーションの方法が変...