【MATLABとは?】ディープラーニングで人気の言語を初心者向けに解説

ディープラーニングで利用 される言語MATLABとは?


深層学習に挑戦したいんだけどMATLABって何?
そもそもどんな言語なの?
これとPythonのどちらを学習すればいいのかな?

こんにちは、文系出身ながらもプログラマになり現在も現役エンジニアの佐藤です。

皆さんは「MATLAB」という言語、製品についてご存知でしょうか? 深層学習(ディープラーニング)、人工知能(AI)などのキーワードで調べた時に「MATLAB」を見かけた。という方もいらっしゃるかもしれません。

この記事では「MATLABにちょっと興味がある」「まずはどんな言語か知りたいな」という方に向けてMATLABとは何か?をできるだけ分かりやすく、簡潔にまとめていきます。学習用のサイトや書籍も後半では紹介していきますので、合わせてご覧ください。

それでは早速言語の特徴から見ていきましょう。

MATLABとは

この章ではMATLABの特徴について分かりやすい言葉でまとめていきます。

データ分析が得意な言語

MATLAB(マトラボ)は、MathWorks社が開発している数値解析ソフトウェアで、その中で使うプログラミング言語の名称でもあります。販売を行う日本法人があり、日本語の公式ページもかなり充実しています。

工学、理学、経済学などの分野で使われており、世界でのユーザー数は300万を超えていると言われています。人気プログラミング言語ランキングでは14位と、専門的な処理を行うための言語としてはかなり上位に食い込んできている言語なんです。

MATLABには標準で分析用のツールがたくさん用意されています。追加で導入することができる「Toolbox」と呼ばれる拡張パッケージがあります。

これらは「MATLABプロダクトファミリ」と呼ばれ、様々な分野の分析に対応可能なため広く支持を得ています。また注目を浴びているディープラーニングやロボット工学でも利用されていて人気を後押ししています。

その他の特徴としては

  • C言語などの汎用言語と違い、変数の型を宣言しなくて良いなど簡単な文法で書くことができる
  • グラフ等を描く関数が用意されているので複雑で長いコードを書かなくて良い

という点が挙げられます。

変数の型を宣言しなくて良いというのは、ほかのプログラミング言語を知っている人からすると驚きですよね。専門的で難しい内容をこなすために、コードだけはなるべく簡潔に書けるように進化していった言語といえます。

特徴について簡単につかむことができたでしょうか? 次にどんなことができるのかを紹介していきます。

MATLABでできること

この章ではMATLABでできることについて紹介していきます。まずはMATLABでできることの一つであり大事な要素「ディープラーニング」について少し解説します。

ディープラーニングとは?

先程の特徴紹介でディープラーニングという単語が出てきました。日本語では「深層学習」と呼ばれますが、どのような事柄かみなさんはご存知でしょうか?

深層学習(ディープラーニング)は、人間が自然に行う動作や思考をコンピュータに学習させる機械学習のひとつです。人工知能の急速な発展を支える非常に大切な技術なんです。

こちらの記事でもっと詳しく解説していますので、興味がある方はぜひご覧下さい。


これならわかる!ディープラーニングとAIって何が違うの?
更新日 : 2019年2月14日

MATLABではこのディープラーニングを行うことができるため、人工知能の分野でも非常に注目されています。また、ディープラーニングで利用されるものとしてPythonが有名ですが、2つの言語の比較は後ほど詳しく紹介します。

他にできること

公式ページでも紹介されていますが、MATLABでは単純なデータ分析以外にもこんなこともできます。


いくつか詳しく解説していきます。

コンピュータービジョン

これは画像に関する分野です。人が見たときと同じようにコンピューターでも自動で画像を解析できるようにするために行われている研究分野です。

例えばりんごを見た時に、人なら「リンゴだ」と反応できますよね。それと同じことをコンピューターが自動で行えるようにしようというのがコンピュータービジョンという分野なんです。これも人工知能のひとつですよね。

ロボット工学

これはロボットのアルゴリズムに関する分野です。センサー反応またはカメラの映像で、こんな動きをして──といったロボットを制御するシステムを作ることがMATLABではできます。

データの分析だけではなく、機械学習に関する様々な分野でMATLABが使われているということがわかりますよね。

こんな企業で使われている

データ分析、ディープラーニングができるMATLABですが、具体的にはどのような企業で使われているのでしょうか? ここでは具体定的な導入事例を見ていきましょう。

  • 村田製作所(エネルギー管理システムの制御)
  • トヨタ(エンジン制御システム)
  • 日産(車載システム)
  • 三菱重工(核燃料デブリ除去用ロボットアーム)
  • マツダ(エンジン制御システム)

…etc

非常に有名な企業で、続々と使われているんです。公式のサイトでもユーザー事例がたくさん紹介されているので、気になる方はぜひご覧ください。

次は、MATLABとよく混同されがちな「simulink」について、関係性と違いについて見ていきます。

simulinkとの関係性とは?

Simulink」は、MATLABとよく混同されてしまいがちなので、ここで違いと関係性について少し解説していきます。実際にMATLABを使うようになった時、間違えないようにしましょう。

Simulinkは、MathWorks社(MATLABの開発会社)が開発と販売をしている別のソフトウェアです。MATLABプロダクトファミリのひとつでもないので、完全に別物になっています。

もちろん、MATLABと連携して使うことができるシミュレーションおよびモデルベース デザインのソフトウェアです。連携して使われるため混同されがちですが、一緒に使える別のソフトなので混同しないようにしましょう。次の章では、比較されがちなPythonとの違い等を解説していきます。

Pythonとの比較

どうしてPythonとMATLABが比較されるかと言うと、どちらの言語でもディープラーニング、データ解析を行うことができるためです。

ディープラーニングなどを目的とする場合、どちらを学習するか迷ってしまいますよね。じつはMATLABとPythonは連携できます、二つの言語の知識が無駄にならないようになっています。

ただ、MATLABはかなり専門的な用語で、購入しなければ使用できないものになっています。MATLABはパッケージになっているため、導入は簡単で専門的な計算も簡単にできるようになっていますが、そこそこの費用を必要とする買い物になります。

Pythonなら、自分で環境を整備する必要がありますが、無料でコードを書いて実行することができます。いきなりMATLABを使って機械学習等の学習を始めるより、いちどPythonで仕組みややり方等を学習してからMATLABの検討をお勧めします。

次に製品について詳しく紹介します。

MATLABの製品情報

この章では、MATLABの価格などについて簡単に解説していきます。

製品の価格とプラン

MATLABはフリーソフトではなく、プランによって価格の違う製品になります。現在(2019/5)でのプランと価格は以下の通りです。


産業分野:¥290,000(見積も可能)
学生:¥9,990
個人:¥15,500

個人で開発するなら「個人」ライセンスで問題ないでしょう。

インストール方法

購入してしまえば、インストール等は一回で済みます。ほかのオープンソースの言語と違い、いろいろなソフト等を別々にインストールする必要がないため、インストールをすればすぐに使うことができます。

簡単な使い方を紹介

MATLABは言語であり、開発ツールなので使う時も付属の開発環境を使えば直ぐに使用することができます。

この開発環境で次のようなコードを記述し実行するとグラフが表示されます。

「実際にやってみたい!」と興味が湧いてきた方は次の章から学習に役立つ本やサイトを紹介していきますので合わせてご確認ください。

学習に役立つ情報紹介

ここでは書籍等について紹介します。まずは本とサイトからです。

お勧めの学習本とサイト

実は、MATLABの日本語サイトはかなり充実しているんです。

無料でユーザーIDを作成することができるので、こちらからアカウントを取得することで無料のチュートリアルを受けることができます。右上の人型のアイコンから、アカウント登録ができます。

引用:MathWorks https://jp.mathworks.com/

チュートリアルは動画もありますので、興味のある方は是非ご覧ください。なんとディープラーニングについての学習も可能です。

お勧めの書籍は次の一冊です。

MATLABプログラミング入門|Amazon

初めてデータ分析について学ぶ方にとってもおすすめの一冊です。MATLABを使おうと決めた方はぜひ購入を検討してみてください。

スクールを検討してみる

機械学習をやってみたいけど、どの言語を選んで
どのような勉強をしたらいいのかわからないな……

そう悩みがありMATLABについて調べている。という方もいらっしゃるかもしれませんね。そんな方にはスクールもおすすめします。

侍エンジニア塾では「AIコース」というコースもあり、スクールでも人工知能などの技術を学ぶことができるんです。

侍エンジニア塾では無料体験レッスンを行っています。事前にどんな感じで学習できるのか、どんなコースがあるのか、あなたの悩みや不安をプロのコンサルタントに相談することができます。

自分に合っているかどうか体験レッスンで一度確認してみてはいかがでしょうか。

まとめ

人工知能の盛り上がりとともに、人気上昇中の言語「MATLAB」を紹介しました。人工知能にも興味が出た、という方はぜひそちらの分野のことも検索してみてくださいね。

それではまた次の記事で!

未来に繋がるプログラミング学習、できていますか?

エンジニアと一口にいっても、フロントエンド、サーバーサイド、アプリ開発、AI関連など様々な業界や職種があり、業務内容や働き方、年収は変わります。

どんな働き方をしたいのか、どのくらい年収が欲しいのかなど具体的なキャリアパスを考えて、それを達成できる学習カリキュラムを考えていかないと、希望する方向性とは違うエンジニアになってしまったり、遠回りの学習に時間を費やしてしまう可能性があります。

侍エンジニア塾では目的から逆算する形で、まずあなたの目指すキャリアをヒアリングさせて頂いてからそれを達成するためのオリジナルの学習カリキュラムを作成しています。

今学んでいることが理想のエンジニアになるために繋がっているか不安でしたら、下記の無料体験レッスン予約カレンダーよりお気軽にご相談ください。

LINEで送る
Pocket

書いた人

佐藤

佐藤

文系大学出身、なんとか自力で頑張りプログラマー歴今年で8年目。
自力で頑張って勉強した経験を生かし、読者の皆様に分かりやすく親しみやすい記事を書けるよう日々邁進中です。
出来る言語はC#,VB,Java,Delphiなどなど、幅広く触っています。

おすすめコンテンツ

あなたにぴったりなプログラミング学習プランを無料で診断!

プログラミング学習の効率を劇的に上げる学習メソッドを解説