MXNetとは?多言語で使える深層学習ライブラリの概要と導入方法

こんにちは! 侍エンジニア塾ブログ編集部のフクロウです。

侍エンジニアブログで、Deep Learningフレームワークについての記事を以前公開しました。

Tensorflowだけじゃない?ディープラーニングフレームワーク8選!
更新日 : 2020年3月3日

この記事でも紹介した、MXNetというDeep Learningフレームワーク、知っていますか? 最近データ解析コンペティションでじわじわと人気が出てきているMXNet。

データ解析のプロになりたいなら必見のフレームワークです。この記事でMXNetの概要と導入方法を覚えて入門しちゃいましょう!

MXNetとは?

[リンク:https://github.com/apache/incubator-mxnet]

概要

MXNetはPythonを含めた複数のプログラミング言語から利用できる深層学習フレームワークです。ワシントン大学とカーネギーホール大学によって開発されました。

命令的にも宣言的にも(TensorflowのようにもPyTorch/Chainerのようにも)書ける非常に柔軟なライブラリです。様々な深層学習モデルをサポートしており、一般知名度こそTensorflow、PyTorchに及びませんが非常に人気があります。

スケーラブルで計算資源を余すことなく使える

深層学習では非常に膨大な計算リソースを使わないと計算が追いつかないような場合があります。

そういったときに、GPUを増やしたら増やしただけ計算速度が速くなるようなライブラリが求められます。このようなスケーラビリティにおいて、MXNetは優秀です。

GPU数を増やしたときに85%の分散実行の効率性を示している、という報告があります。(AWS Japanのスライドより)

様々な言語に対応している

MXNetは様々な言語に対応している点においても優秀です。

  • Python
  • Scala
  • R
  • Julia
  • Perl
  • C++

に対応しており、本当に様々な言語環境での動作がサポートされています。JuliaやRなどの、Deep Learningフレームワークのデファクトが決まっていないような言語にも対応している点、Perlなどの他のフレームワークがサポートしていない言語も抑えている点などが興味深いです。

もしもPythonを習得しておらず、上の言語のどれかを使っている場合、MXNetは強力な候補の一つになります。

使い方

インストール

MXNetのインストール方法は、公式ドキュメントに丁寧にまとめられています。

[リンク:Installing MXNet]

MXNetのインストール方法は、インストール環境によって様々あるのでここでは割愛します。リンク先のボタンで以下を設定することで、インストールの方法がこのボタン群の下に表示されます。

  • MXNetのバージョン
  • OSや実行デバイス
  • 言語
  • CPUかGPUか
  • インストール方法

MXNetのサンプルコー

MXNetの勉強をするなら公式のtutorialがおすすめです。

[Tutorials]

また、様々な深層学習モデルの実装コードが公開されているリポジトリもあります。

[apache/incubator-mxnet]

MXNetをもっと学習する

MXNetで作る データ分析AIプログラミング入門 

本当に最近出たばかりの本ですが、日本語でもMXNetを使った技術書が販売されています。

まとめ

この記事ではMXNetについて解説しました。

MXNetの特徴

  • これ一つでTensorflow/Keras/Chainerのような様々な書き方ができる柔軟な深層学習ライブラリ
  • 様々な言語で使え、スケーラビリティが高くいろんな規模の深層学習に対応できる

機械学習・深層学習の実装言語は現在、Pythonが最も人気です。ですが新進気鋭のJuliaや、統計の分野で大きなシェアを持っているRなど、様々なライバルがこれから勢いを持つかもしれません。

いろんな言語に対応できてスケールしやすいMXNetがこれからもっと脚光を浴びる日も近いかも!

LINEで送る
Pocket

ITエンジニアへ転職したい方におすすめ

自分を評価してくれる企業に転職して年収を上げたい! 自分のスキルにあった独自案件を知りたい!
エンジニアは今もっとも注目されている職業の1つ。エンジニアになって年収を増やしたい方や、あなたのスキルに見合った企業へ転職したいエンジニアの方も多いですよね。

しかし、大手の転職媒体は扱う求人数が多くても、誰もが登録しているので競争率もかなり高くなっています。そのため、あなたの条件に見合った企業を見つけても転職するためには、相応の努力とスキルが必要となります。

こういった媒体では、未経験からエンジニアを目指す方やエンジニア歴2〜3年で転職を考えている方にとって、最適な転職環境とはいえません。

そこでオススメしたいのが、未経験者や若手エンジニア向けの独自案件を多く掲載している「侍ワークス」です。

侍ワークスは、独自案件を多く掲載しているだけでなく、

・応募から就業まで一貫したサポート

・就業後もアフターフォロー

といった経験の浅い方や初めてエンジニアを目指す方にも安心のフォロー体制が整っています。もちろん登録は完全無料!しかも案件を見るだけなら登録も不要です。

まずは、お気軽にどんな求人があるか見てみてください。あなたにピッタリの企業がきっと見つかりますよ! 侍ワークスの求人情報を見る

書いた人

フクロウ

フクロウ

第一言語はPythonです。
皆さんRustやりましょう。