2016.11.12 Sat |
機械学習を行うのに便利な言語について
こんにちは!
今回は機械学習をおこなう上で、便利な言語について紹介したいと思います。
みなさんはプログラミング言語についてどのようなものを知っていますか?
一番有名なものはC言語ですが、他にもRubyやhtml、Javaなどもありますね。
プログラミング言語はその特性によって使い分ける必要があります。例えばhtmlなどは、ホームページを作るのに非常に便利です。
texなども一つのプログラミング言語になるのかもしれませんね。
機械学習をおこなう上で、簡単なものでは、回帰直線、Deep Neural Network、応用的なものではRecurrent Neural Networkなど、幅が広いものを一から自分で実装するのは非常に大変です。
なので、パッケージを用いることでこれらを簡単に実装することができます。
今回はそれについての紹介です。
1. python
近年になって急速に伸びてきた言語です。Wikipediaでは以下のように説明がなされていました。
Python(パイソン)は、汎用のプログラミング言語である。コードがシンプルで扱いやすく設計され、C言語などに比べて、さまざまなプログラムを分かりやすく、少ないコード行数で書けるといった特徴がある。
この言語の特徴は、何よりも「簡単に書ける」という点でしょう。
ただし、C言語と比べると高速性には欠けます。以下のようにfor文とif文を混合させると、少し時間がかかってしまいます。
しかし、現在はGPUという、高速で計算を行ってくれるものも増えています。pythonの利便さと、GPUによる高速計算で機械学習を行うのが2010年以降の流行りのようですね。
2. Julia
この言語の名前は初めて聞いた人が多いのではないでしょうか。
実は巷ではJuliaが流行っていると聞いたことがあります。
Wikipediaで調べると以下のような説明が出てきました。
どうやらC言語と同程度の高速さを可能にしているようです。
またプログラミングの簡単さも兼ね備えています。
それではもうJuliaでいいんじゃないの?という声もありますが、まだパッケージなどは充実していないため、pythonが主流なようですね。興味のある方は是非とも調べてみてください!
今回はプログラミング言語について紹介しました。
次回はこれを使って機械学習を便利に行えるパッケージについて紹介したいと思います!
東京大学工学部4年
H.M