昨今話題になっているデータサイエンス。
興味はあるけど、どんなことから勉強を始めればいいかわからない。
そもそもデータサイエンスを行ってるデータサイエンティストって何?って人も多いかと思います。
本記事では、そう言う人に向けてデータサイエンティストとは何か、そしてデータサイエンスを行うにあたり必要なスキルとその勉強方法をお伝えしていきます。
データサイエンティストとは?
データサイエンティストとは、一言で言えば、大量に貯蓄されたデータを処理し、ビジネスに応用できる人材です。
技術の進歩により、データが容易に取得保管ができるようになりました。
現在様々な企業に様々なデータが貯蓄されています。
しかしながら、この大量のデータを利益に繋げられている企業はごくわずかです。
そこでデータサイエンティスト出番です。
データサイエンティストは、この企業に眠った大量のデータを使用して、企業にビジネス的な価値を生み出すために試行錯誤していく職です。
データサイエンスに必要なスキル
データサイエンスに必要なスキルは、無数にありますが、その中でも大切なのは、エンジニアリングのスキル、データを処理するスキル、知見を収集するスキルの3つです。
一つ一つ説明していこうと思います。
まず、エンジニアリングのスキルとは、プログラミングのコードを書くスキルです。
このエンジニアリングのスキルは、データ分析の手法を自分の思い描くとおりに実現するために必要となってきます。
最近では、Adobe Analyticsやtableauなど、データ分析と可視化のツールが出てきましたが、それでも自分の求めている分析を100%行うためには、エンジニアリングのスキルが必須です。
次に、データを処理するスキルとは、データから特徴量を抽出したり、特定の値を予測したりするスキルのことです。
データサイエンスでは、大量のデータの中から意味のあるビジネス的に意味のある特徴量を抽出、または予測する必要があります。
最後に、知見を収集するスキルとは、日々開発されるデータサイエンスのスキルに置いて行かれないよう常に最新の技術を学び続けるスキルです。
これは、データサイエンスに限ったことではないですが、IT業界の知識は日々更新されていきます。
昨日は当たり前だったことが、今日は否定されているなんてこともザラにあります。
このような流れに取り残されないように日々最新技術を学ぶことは、とても重要です。
では、ここからエンジニアリングのスキル、データを処理するスキル、最新技術を収集するスキルの3つについて、詳しく何を学べば良いのか解説していきます。
エンジニアリングのスキル
Python
もし、言語に特にこだわりがなく、何を学べばいいかわからないと迷っているのであれば、まずはPythonを勉強しましょう。
現在Pythonでは、データサイエンスに必要な様々なライブラリが実装されています。
ですので、Pythonを学ぶことで、エンジニアリングスキルも身につけることができ、そしてさらに実務で使用するライブラリの使い方なども同時に学ぶことができるのです。
具体的にPythonって何?って人は以下の記事も参考にしてみてください。
データを処理するスキル
統計学
統計学は、データサイエンスを行うために欠かせない技術です。
様々なデータ分析、及び処理がこの統計学に基づいています。
統計学を使用しない分析はこの世にはないと言っても、過言ではないです。
簡単な例で言うと、みなさんが日々使っている平均も統計学です。
平均を使わずに物事を語ることはできないですよね?
これがビジネスの世界になってくると、平均以外にも知らないと難しい分析を行なっていくことはできません。
ですので、必ず学びましょう。
何から学習したらいいかわからないと言う人は、以下の2つの本がおすすめです。
一つ目の「統計学入門」は、数式の出てこない統計の本で、統計に関して全くの初心者であると言う人は、この本から勉強していくのが良いと思います。
二つ目の「データ解析のための統計モデリング入門」は、数式を使用して丁寧に統計の原理を説明してくれている本で、データサイエンティストを本気で目指すのであれば、必ず学んでおきたい一冊です。
以下記事で、詳しい勉強方法を説明しているので、興味のある方はこちらも参考にしてみてください。
SQL
SQLは数多くのデータから効率的に欲しい特徴量を抽出するために必要です。
ビジネスに使用する大量のデータは、普通データベースというものに格納されています。
ここからデータを自在に取り出すのがSQLという言語です。
この言語は簡単なデータを取り出すだけなら、あまり勉強する必要はなく簡単に使用できます。
しかしながら、データサイエンスを行うのであれば、自分の欲しいデータを簡潔な処理で取り出したいと思う日がきます。
こういう特徴量が取り出したいけど、簡単なSQLしかかけないから取り出せない、なんてことは避けたいですね。
SQLを勉強するのであれば、個人的には以下の二冊がおすすめです。
一つ目の「これからはじめるMySQL入門」は、SQLを全く触ったことがないという人におすすめです。
データベースがどのようにできていて、そこからどのようにすればデータが取り出せるのかということを学べます。
二つ目の「ビックデータ分析・活用のためのSQLレシピ」は、実業務レベルでSQLを学びたい人におすすめです。
実際の現場では、どのようなデータが使われていて、そのデータはどのようなSQLを書けば取得できるのかということがわかりやすく書かれています。
「これからはじめるMySQL入門」は、入門書であれば自分の好きな本を選べば良いと思いますが、この「ビックデータ分析・活用のためのSQLレシピ」に関しては、データサイエンスを行うのであれば、必読書だと思うので、是非読んでみてください。
もっとSQLの勉強方法を詳しく知りたいという方は、以下の記事も参考にしてみてください。
機械学習
機械学習は、ビジネス的に意味のある値を予測するために必要です。
機械学習では、上記のスキルで作成した特徴量を元に予測を行います。
アルゴリズムは、強化学習、決定木、ニューラルネットワークなどたくさんあります。
そして、それぞれどういう仕組みで動いているのか、きちんと学ぶ必要があります。
しかしながら、最初のうちにこのアルゴリズムの勉強から初めてしまうと、挫折することが多いので、個人的には手を動かして機械学習のプログラムをまず作ってみることをお勧めします。
ぶっちゃけ精度を気にしないのであれば、機械学習は原理がわかっていなくとも使えます。
最初はできるだけ数式を気にせずに、実践していき、ある程度理解してから数学的に機械学習を理解していくアプローチが良いと思います。
実践的に使いながら勉強する方法を以下の記事で具体的に解説しているので興味のある方は参考にしてください。
最新技術を収集するスキル
Twitterは、膨大な最新情報を取得するために、必要です。
現代は、本や論文を読むだけでは追いつかないぐらいに情報が溢れています。
これをリアルタイムかつ有益な情報を手に入れるためには、個人の力だけでは限界があります。
Twitterなどのソーシャルネットワークは、他人が調べた内容などを共有してくれるので、データサイエンスで有名な人物をフォローしておけば、最新の技術の情報は入ってきます。
一つデータサイエンス用のアカウントを作って、大量にデータサイエンス分野の人をフォローしていくのが、個人的にはおすすめです。
まとめ
データサイエンスに必要なスキルについて、想像がついたでしょうか?
データサイエンスを行うのであれば、まずエンジニアリングのスキル、データを処理するスキル、最新技術を収集するスキルの3つが必要です。
今回は、その具体的なスキルとして、Python、統計学、SQL、機械学習、Twitterを紹介しました。
上記のスキル以外にも、データサイエンティストに必要なスキルはまだまだたくさんあります。
上記のスキルを足がかりに、色々なことを勉強してくださいね。