ディープラーニングのオープンソースプロジェクト【TensorFlowからTransformersまで】

Uncategorized

オープンソースのプロジェクト

オープンソースのプロジェクトでは、

  • ライブラリやフレームワーク
  • アプリケーションソフトウェア
  • OS

などの開発に参加することや、ソースコードや資料を使って学ぶことが可能です

  • UbuntuやCentOSなどのLinuxのOS
  • MariaDBやPostgreSQLなどのデータベース管理システム
  • Ruby on RailsやVue.jsなどのフレームワーク

はオープンソースとして広く知られています。

ディープラーニング関連技術のオープンソースも多数あります
ここでは、そのいくつかを

  • 基本ライブラリ / フレームワーク
  • 応用分野別のプロジェクト

という観点から紹介します。

多様化しているディープラーニング技術のオープンソースプロジェクト

基本ライブラリ / フレームワーク

TensorFlow

TensorFlowは、Googleが公開しているオープンソースのライブラリです

機械学習やディープラーニングのライブラリとして、広く使用されています。
TensorFlow上で動作するKerasというフレームワークも広く知られています。

TensorFlowは、C++やPythonを用いて開発が進められており、2021年2月時点で約2,900人の開発者(contributors)がいます。

PyTorch

PyTorchは、 Facebookの人工知能研究グループ(FAIR)が公開したオープンソースのライブラリです

TensorFlowと並び、機械学習やディープラーニングのライブラリとして知られています。

C / C++やPythonを用いて開発が進められているPyTorch開発には2021年2月時点で約1,700人が参加しています。

Apache MXNet

Apache MXNetは、オープンソースのディープラーニング用フレームワークです。

Apache MXNetを使用することで、ディープラーニングモデルの訓練、デプロイに、

  • C++
  • Python
  • Java
  • Scala
  • Julia
  • Go
  • R

などの様々なプログラミング言語で取り組むことができます

C++やPythonを用いてApache MXNetの開発が進められており、2021年2月時点で約900人の開発者(contributors)がいます。

分野別のプロジェクト

画像処理や画像の生成など

torchvision

torchvisionは、PyTorchライブラリの画像処理向けパッケージです

torchvisionでは、ディープラーニングの画像処理に使用することが多い、

  • データセット
  • モデル
  • 画像変換処理

などを取り扱うことができます。

CycleGAN and pix2pix in PyTorch

CycleGAN and pix2pix in PyTorchは、ディープラーニングを用いた画像変換技術を、PyTorchライブラリに組み込むプロジェクトです

この技術を活用することで、

  • 馬 → シマウマ
  • 風景写真の夏 → 冬

というような高度な画像変換を実現できます

OpenCV

OpenCVは、Intelが公開したコンピュータビジョン用ライブラリです。

ディープラーニングでの画像関連処理の場合は、PyTorchをはじめとするディープラーニングライブラリと組み合わせて使用することが多いです

ほかにも

このほかにも、

など興味深いプロジェクトが多数あります。

自然言語処理

Transformers

Transformersは、PyTorchやTensorFlow用の自然言語処理のディープラーニングライブラリです

近年、注目されている

などのディープラーニングの自然言語処理のモデルが実装されており、2021年2月時点で既に約750人の開発者(contributors)がいます。

Camphr

Camphrは、PKSHA Technology社が公開している自然言語処理のライブラリです。
PythonのライブラリspaCyのプラグインとして使用できます。

Camphrを使用することで、ディープラーニング×自然言語処理に取り組むことができます。
ドキュメントが用意されています。

そのほか

画像処理や自然言語処理以外にもディープラーニングのオープンソースプロジェクトはあります。

fastai

fastaiは、ディープラーニングのライブラリです。

ディープラーニングの普及を目指すfast.aiという非営利団体により公開されたライブラリです。

fastaiを使用することで比較的容易にディープラーニングを試すことができます

fast.aiは、fastaiライブラリ開発をけん引している他に、

  • ディープラーニングやAIを中心としたWeb記事
  • ディープラーニング講座

などを公開しています。

fastaiのプロジェクトには、2021年2月時点で約600人の開発者(contributors)がいます。

OpenAI Gym

OpenAI Gymは、世界的なAI研究開発組織であるOpenAIが公開しているオープンソースのツールキットです。

OpenAI Gymには、ディープラーニングを含む強化学習の研究、開発に活用できるツールがあります

始め方の資料が充実しています。

活用できるオープンソースのプロジェクト

最初から開発に参加するのはハードルが高いという場合にも、

  • ドキュメントの確認
  • サンプルコードを試してみる
  • チュートリアルの確認

などを通して、オープンソースプロジェクトで学習していくことは可能です

ディープラーニングや機械学習に興味が出た、という人は
プログラミング学習×オープンソースのプロジェクトの組み合わせ、を活用してみてはいかがでしょうか。

ここで紹介したプロジェクトの他にもGitHubでは多くのオープンソースプロジェクトを見つけることができます
例えば自然言語処理が気になる人は、「natural language processing github」といったようなキーワードで検索して、オープンソースプロジェクトを見てみるのも良いかもしれません。

コメント

タイトルとURLをコピーしました