
プログラムでトレーニングデータを構築および管理します
シュノーケルチームは、シュノーケルの背後にあるコアアイデアに基づいたエンドツーエンドのAIアプリケーション開発プラットフォームであるシュノーケルフローに努力を集中しています。
シュノーケルプロジェクトは、機械学習プロジェクトが成功したか失敗したかどうかを決定したモデル、アルゴリズム、またはインフラストラクチャではなく、ますますトレーニングデータになるという単純な技術的賭けで2015年にスタンフォードで開始されました。この前提を考慮して、ユーザーがプログラムでトレーニングデータのラベル付け、構築、管理を強化することから始めて、数学とシステムの構造を乱雑で完全に完全に完全に手動でトレーニングデータの作成と管理のプロセスにもたらすことができるという急進的なアイデアを探ることに着手しました。
シュノーケルプロジェクトが成功し、拡大したと言うことは、これまで予想していたものを超えて控えめな表現になるでしょう。シュノーケルのような研究リポジトリの基本的な目標は、仮説をテストおよび検証するための最小限の実行可能なフレームワークを提供することです。 4年後、私たちはこれだけでなく、Google、Intel、Stanford Medicineなどの世界有数の組織のいくつかと協力して、シュノーケルの初期バージョンを開発および展開することができて幸運でした。シュノーケルと、弱い監督モデリング、データ増強、マルチタスク学習などの関連する革新に関する調査結果に関する60以上の査読付き出版物。一流の大学のコースに含まれます。過去数時間で使用される可能性が高いシステムでの生産展開をサポートします。産業産業、医学、政府、学界などの研究者や実践者の驚くべきコミュニティと協力しています。
しかし、シュノーケルプロジェクトは最初のステップに過ぎないことを、毎週の営業時間、ワークショップ、オンラインディスカッション、および業界パートナーでユーザーとの会話からますます気付きました。シュノーケルの背後にあるアイデアは、トレーニングデータのラベル付け方法だけでなく、MLの構築、展開、管理のライフサイクルとパイプライン全体の多くのラベルを変更します。ユーザーが知識を注入する方法。モデルの構築、訓練、検査、バージョン、および監視方法。パイプライン全体がどのように繰り返されるか。また、主題の専門家からMLエンジニアまで、MLの展開における利害関係者の完全なセットがプロセスにどのように組み込まれていますか。
昨年、AIアプリケーションを開発および展開するためのエンドツーエンドの機械学習プラットフォームであるSnorkel Flowという、この広範なビジョンをサポートするためのプラットフォームを構築してきました。シュノーケルフローには、シュノーケルプロジェクトの概念の多くが、弱い監督モデリング、データの増強、マルチタスク学習、データのスライスと構造化、監視と分析など、すべてが統合されている方法で統合されているさまざまなテクニックを組み込みます。その部分の合計よりも大きく、MLがこれまで以上により速く、より柔軟で、より実用的になると考えています。
今後、シュノーケルの流れに努力を集中します。シュノーケルプロジェクトに貢献してくれた皆さんに非常に感謝しており、次の章をご覧ください。
シュノーケルライブラリに慣れる最も簡単な方法は、Snorkel WebサイトのGet Start Pageを歩き、続いてSnorkelチュートリアルリポジトリのフルレングスチュートリアルを進めることです。これらのチュートリアルは、独自のアプリケーションにシュノーケルを適用する際にテンプレートとして機能するさまざまなタスク、ドメイン、ラベル付け手法、および統合を示しています。
シュノーケルにはPython 3.11以降が必要です。シュノーケルをインストールするには、 pipを使用することをお勧めします。
pip install snorkelまたはconda :
conda install snorkel -c conda-forgeソースからのインストールとシュノーケルへの貢献については、貢献ガイドラインを参照してください。
次の例コマンドは、 condaを使用してインストールする際にさらに色を与えます。これらのコマンドは、 condaインストールがPython 3.11であり、 snorkel-envと呼ばれる仮想環境を使用することを想定しています。
# [OPTIONAL] Activate a virtual environment called "snorkel"
conda create --yes -n snorkel-env python=3.11
conda activate snorkel-env
# We specify PyTorch here to ensure compatibility, but it may not be necessary.
conda install pytorch==1.1.0 -c pytorch
conda install snorkel==0.9.0 -c conda-forgeWindowsを使用している場合は、Dockerを使用することを強くお勧めします(チュートリアルリポジトリで例を見つけることができます)またはLinuxサブシステムを使用できます。 Windowsで限られたテストを行ったので、指示や改善を提供したい場合は、PRを自由に開いてください!
GitHubの問題を使用して、バグや機能リクエストを投稿します。コード関連のすべて。最初に関連する問題を検索し、問題のテンプレートを使用してください。迅速な修正がコア開発チームの即時ロードマップに適合しない場合、貢献を求めることができます。
シュノーケルコミュニティからの貢献を歓迎します!これは、ライブラリに見たい変更を得るための最速の方法である可能性があります。
小さな寄付は、プルリクエスト(PR)で直接行うことができます。より大きな機能を提供したい場合は、最初に議論のために提案されたデザインで問題を作成することをお勧めします。何に取り組むべきかについてのアイデアについては、特定の問題をhelp wantedとラベル付けしました。
シュノーケルに貢献するための開発環境を設定するには、私たちの貢献ガイドラインを参照してください。すべてのPRSは、継続的な統合テストに合格し、シュノーケル開発チームのメンバーがマージされる前に承認を受ける必要があります。
より広範なQ&Aについては、シュノーケル、チュートリアルリクエストなどの使用についての議論で、Spectrumでホストされているシュノーケルコミュニティフォーラムを使用します。これがあなたが他のシュノーケルのユーザーと交流する会場になることを願っています - 投稿することを恥ずかしがらないでください!
シュノーケル関連のアナウンス(バージョンリリース、今後のワークショップなど)を最新の状態に保つには、シュノーケルメーリングリストを購読してください。私たちはあなたの受信トレイを尊重することを約束します - 通信はまばらです!
Twitter @snorkelaiでフォローしてください。