|
開発者の皆さんは、人工知能(AI)関連のオープンソースプロジェクトが数多く存在し、GitHubにも豊富なリソースが提供されていることを既にご存知でしょう。しかし、今日ご紹介するのはGitHubではなく、テクノロジーの巨人Googleが開発した、機械学習、ディープラーニング、ニューラルネットワークを網羅した高品質なオープンソースAIプロジェクトです。皆さんの学習にぜひお勧めしたいプロジェクトをいくつか厳選しましたので、早速見ていきましょう。 1. アダネット: 高速で柔軟なAutoMLは自己学習が可能です。AdaNetはTensorFlowをベースとした軽量フレームワークで、専門家の介入を最小限に抑えながら高品質なモデルを自動学習します。CortesなどのAdaNetアルゴリズムを採用しています。2017年には、サブネットワークに重点を置き、ニューラルネットワーク全体の構造を学習しました。重要なのは、AdaNetがニューラルネットワークアーキテクチャの学習だけでなく、アンサンブル学習によってより優れたモデルを得るための汎用的なフレームワークを提供していることです。 2. デバイス上での自動MLビデオ: このサンプルコードは、Google Cloud AutoML 動画オブジェクト追跡モデルをモバイルシーケンスに読み込み、動画クリップから取得した一連の画像に対して推論を実行する方法を示しています。対象デバイスは CPU と EdgeTPU です。 3. ぶどう: Budouは、中国語、日本語、韓国語(CJK)の自動改行ツールです。CJKの文章を、意味のあるブロックを含む整理されたHTMLコードに自動変換し、Web上で美しいフォントを実現します。 4. 弾丸物理SDK: Bullet Physics SDKは、ポータブルC++で記述されたプロフェッショナル向けオープンソースライブラリです。VR、ゲーム、ビジュアルエフェクト、ロボティクス、機械学習などにおけるリアルタイム衝突検出とマルチフィジックスシミュレーションを実現します。主にゲーム、ビジュアルエフェクト、ロボットシミュレーションに使用されます。このライブラリは、zlibライセンスに基づき、商用利用のために無料でご利用いただけます。 Pybulletは、物理シミュレーション、ロボティクス、機械学習のための使いやすいPythonモジュールです。URDF、SDF、その他のファイル形式の多関節ボディを読み込むことができます。Pybulletは、順動力学シミュレーション、逆動力学計算、順運動学および逆運動学、衝突検出、レイ交差クエリなどの機能を提供します。物理シミュレーションに加えて、Pybulletはレンダリング、CPUレンダラー、OpenGLビジュアライゼーション、そしてバーチャルリアリティヘッドセットのサポートもサポートしています。 5. 因果関係: 計画された介入の時系列における因果関係を推定するための統計ライブラリです。CausalImpactRパッケージは、計画された介入の時系列における因果関係を推定する手法を実装しています。例えば、広告キャンペーンによって1日あたりどれだけの追加クリックが生成されたかなどです。このような質問は、ランダム化実験が実行できない場合、回答が困難です。本パッケージは、構造ベイズ時系列モデルを用いてこの課題に取り組み、介入が行われなかった場合、介入指標が介入後にどのように変化していたかを推定することを目的としています。 6. ダーウィン神経進化フレームワーク: 神経進化と進化アルゴリズムのためのフレームワーク。Darwinは、神経進化の実験をシンプル、高速、そして楽しく行えるように設計されたフレームワークです。構成要素、例、そしてツールを提供することで、新しいアイデアの探求に必要な反復的な(そして複雑になりがちな)足場構築を回避します。 7. ディープマインドラボ: エージェントベースAI研究のためのカスタマイズ可能な3Dプラットフォーム。DeepMind Labは、汎用人工知能(AI)および機械学習システムの研究開発向けに設計された一人称視点の3Dゲームプラットフォームです。深層強化学習に特に役立つ、難易度の高いナビゲーションタスクとパズル解決タスクを提供しています。シンプルで柔軟なAPIにより、革新的なタスク設計や斬新なAI設計を迅速に検討・反復することが可能です。
8. ドーパミン: Dopamineは、強化学習アルゴリズムのためのラピッドプロトタイピングフレームワークです。TensorFlowをベースに、強化学習アルゴリズムの迅速なプロトタイピングを目的として設計されています。ユーザーが奇抜なアイデア(投機的研究)を自由に実験できる、小規模で管理しやすいコードベースを求めるニーズに応えることを目指しています。 9. gemmlowp: 低精度行列乗算。gemmlowpは行列乗算用のライブラリで、各項は8ビット整数として量子化されます。モバイルニューラルネットワークアプリケーションで使用され、IntelとARMから強力なサポートを受けており、様々なモバイルCPUでの効率性が保証されています。 10. クラウド上の生成ML: 機械学習と合成画像の生成を容易にするクラウドベースのツールです。エンドツーエンドのシステム設計により、ユーザーはカスタム画像データセットを使用して、Cloud ML上でVariable Autoencoder Generative Adversarial Network(VAE-GAN)モデルを学習できます。モデルはクラウドにデプロイされ、ユーザーは埋め込み情報を入力してデータセットから合成画像を生成したり、画像を入力して埋め込みベクトルを取得したりできます。このツールは、Google Cloud Machine Learning APIとTensorFlowを使用しています。 11. グラフ蒸留: 行動検出のためのグラフ蒸留。本研究では、「グラフ蒸留」と呼ばれる手法を提案する。この手法は、大規模なマルチモーダルデータセットから豊富な特権情報をソースドメインに取り込み、トレーニングデータやモダリティが不足しているターゲットドメインでの学習を改善する。 12. キューブフロー: Kubeflow は、Kubernetes 向けの機械学習ツールキットです。Kubeflow プロジェクトは、Kubernetes 上での機械学習 (ML) ワークフローのデプロイをシンプルかつ移植性が高く、スケーラブルなものにすることを目的としています。私たちの目標は、車輪の再発明ではなく、クラス最高の ML オペレーティングシステムを様々なインフラストラクチャに簡単にデプロイできる方法を提供することです。Kubeflow は、Kubernetes が稼働している環境であればどこでも実行できるはずです。 13. マゼンタ: 音楽とアートの創作における機械学習の活用。Magentaは、アートと音楽の創作プロセスにおける機械学習の役割を探求する研究プロジェクトです。まず、楽曲、画像、描画、その他の素材を生成するための新しいディープラーニングと強化学習アルゴリズムの開発が含まれます。さらに、アーティストやミュージシャンがこれらのモデルを用いて、自身の制作プロセスを拡張(置き換えるのではなく!)できるインテリジェントなツールとインターフェースの構築についても探求しています。 14. MentorNet:ノイズの多いデータでのディープラーニング。このサンプルコードは、Google Cloud AutoMLビデオオブジェクトトラッキングデバイスにモデルを読み込み、ビデオクリップから取得した一連の画像に対して推論を実行する方法を示しています。対象デバイスはCPUとEdgeTPUです。 15. TensorFlow プレイグラウンド: ブラウザベースのニューラルネットワーク可視化。TensorFlow Playgroundは、TypeScriptとd3.jsで記述されており、ニューラルネットワークのインタラクティブな可視化を可能にします。教育現場での可視化ニーズを満たすミニチュアニューラルネットワークライブラリも搭載されています。ユーザーはブラウザ内で小規模なニューラルネットワークをリアルタイムでシミュレーションし、結果を確認できます。 これら15のプロジェクトはすべてGoogleのオープンソースプロジェクトから生まれたもので、開発者にとってまさに宝の山です。さらに、これらのオープンソースの無料リソースを活用することで、開発者はTitan AIXを使って独自のAIプロトタイプを実践・開発することも可能です。Titan AIXミニPCは音声インタラクションと視覚認識に対応し、Intel Movidius Myraid Xコンピューティング・アクセラレーション・チップ、世界で最も人気のあるオープンソースハードウェアRaspberry Pi、そして様々なセンシング技術を搭載しています。AIXはAIの学習と開発のハードルを大幅に下げ、AI愛好家や開発者が、聞く、話す、見るといった機能を備えたAIアプリケーションやソリューションを迅速に構築できるよう支援します。 |