データサイエンス 勉強法

【初級編】非IT系のためのデータサイエンス勉強方法

2021年3月26日

最近のデータサイエンスやDXの波に乗れてないなー
みんなどうやって勉強しているのだろう?

こんなお悩みを解決します。

 

どうも。こんにちは。
ケミカルエンジニアのこーしです。

本日は、「【初級編】非IT系のためのデータサイエンス勉強方法」について解説します。

私自身、化学工学を専門としており、統計学もパソコンも得意ではありませんでした。

しかし、社会人になってから、データサイエンスを勉強し、今では少しずつデータサイエンスを業務で使えるようになっています。

そこで、これからデータサイエンスを勉強したいと考えている方向けに、体験談を交えて初心者向けのデータサイエンス勉強方法を解説したいと思います。

データサイエンスの「はじめの一歩を踏み出したい」という方は、ぜひ読んでみて下さい!

本記事の内容

・データサイエンスの勉強方法(5つのステップ)
・勉強する目的【超重要!】
・必要な能力とは?
・必要な能力の身につけ方

注意ポイント

本記事は、未経験からデータサイエンティストを目指すことは想定していません。

化学や機械、電気などの技術者が、武器の一つとしてデータサイエンスを身につけるための道しるべと考えています。

データサイエンスイメージ図

 

この記事を書いた人

profileこーし(@mimikousi)

 

【初心者向け】データサイエンスの勉強方法

データサイエンスの勉強方法を下記の5ステップに分解してみました。

5つのステップ

ステップ1 目的を決める【超重要!!】
ステップ2 必要な能力を知る
ステップ3 ビジネス力を身につける
ステップ4 データサイエンス力を身につける
ステップ5 データエンジニアリング力を身につける

それでは、それぞれのステップについて詳しく解説していきます。

 

ステップ1 目的を決める【超重要!!】

統計学やPythonの勉強を始めることは簡単にできます。

今の時代、YouTubeやブログ記事を利用すれば、無料で簡単に勉強できるからです。

しかし、講義を”受けているだけ”では、自力で何か成果(アウトプット)を出すことはできません。

データサイエンスと言っても、いろんな手法やツールがあるので、完璧に基礎を固めようと思えば、一生固め続けることになります

例えば、勉強すべき内容を軽く列挙しただけでもこれだけあります。

勉強すべき内容

・微分・積分
・確率
・線形代数
・仮説検定
・回帰分析
・時系列分析
・因果推論
・判別分析
・機械学習
・深層学習
・Python
・R
・SQL
 などなど

よって、基礎を固めつつも、常に「何がしたいのか」を明確にし、その実現に向けて勉強すべきです。

「何がしたいのか」を具体的にイメージできる状態にしておかないといけません。

ここが、超重要ポイントです!!

 

勉強する目的(具体例)

私が化学プラントで「やりたいこと」を具体例として挙げておきます。

どこまで具体的にイメージできるかによって、挫折するかどうかが決まると思います。

化学プラントにピンとこない方は、ここは読み飛ばしてもらって構いません。

 

①品質のソフトセンサー作成

品質は、オンライン分析計で測定できないものが多く、ラボで手分析しています。

そこで、品質の手分析データと製造データ(計器の測定データ)から、回帰式を作成し、品質をリアルタイムで推測したいと考えています。

製造プロセスが複雑になればなるほど、データ分析の腕に左右されます。

また、手分析データを半自動でデータベースに転送し、常に回帰式の補正を行うことも考えています。(半自動にしているのは、再検査や測定ミスを想定しているからです)

よって、最低でも下記3つのシステムを構築する必要があります。

・手分析データをデータベースに転送するシステム

・データベースから演算ソフト(回帰式の補正、推測値の演算を行う)への転送システム

・演算した推測値をDCSなどに表示するシステム

データ分析だけでなく、ネットワークやサーバー、データベース操作の知識も必要になってきます。

ソフトセンサーが作成できても、実装して運用するまでには、いくつものハードルがあることがわかります。

 

②製造条件の最適化

化学プラントは、大きく分けると「反応」と「精製」工程に分離できます。

ざっくりとした書き方になってしまいますが、「反応」を強くすると純粋な製品ができあがり、「精製」の負荷が下がります。

しかし、「反応」を強くすることで、収率が低下したり、溶媒のロスが多くなったり、消費エネルギーが増加したりします。

一方、「反応」を弱くすると、「精製」の負荷が増加します。

つまり、「反応」と「精製」は、トレードオフの関係にあります。

よって、どこかに最適なポイントがあるはずなんです。

様々な制約条件を整理しつつ、原単位が最小になるように最適化計算を行いたいと考えています。

 

③製造データの可視化

現状、Excelで製造データや品質データをグラフ化しています。

報告資料を作成するたびに、データを抽出し、イチからグラフを作るため、とても非効率だと感じています。

過去に作ったグラフとフォントやサイズ、レンジが合わなかったりして、また全て一つ一つ修正することもあります。(自分が統一できていないだけですが汗)

そこで、インタラクティブなグラフ(拡大したり、範囲ずらしたり、変数を変更したり、簡単にいじれるグラフ)を作成し、データの可視化を効率化したいと考えています。

BIツールを使えば、ある程度効率化できますが、Pythonを使って平均値や標準偏差を自動で計算させたり、自分好みにカスタマイズしたいですね。

 

ステップ2 必要な能力を知る

データサイエンスを勉強する目的が定まったら、次はデータ解析に必要な能力を確認しましょう。

データサイエンティストに求められるスキルについて、データサイエンティスト協会が図解してくれていますので、下図を参考にします。

求められるスキル(出典:一般社団法人 データサイエンティスト協会)

 

データサイエンティスト協会は、下記3つの力が必要だと述べています。

3つの力

①ビジネス力

②データサイエンス力

③データエンジニアリング力

 

また、課題解決の各フェーズにおいて、要求されるスキルセットが異なります。

これもデータサイエンティスト協会がわかりやすい図を作成してくれています。

フェーズ毎の要求されるスキル

(出典:一般社団法人 データサイエンティスト協会)

 

製造現場にて実際に、課題設定⇒データ解析⇒実装⇒効果検証とやってきましたが、まさに上図のような役割分担となりました。

 

それでは、それぞれの力について具体的に考えていきます。

①ビジネス力

最も大事なのは、ビジネス力です。

ビジネス力とは、「ビジネスの課題を整理し、解決する力」のことです。

データサイエンス関係なく、必須の能力ですね。

データサイエンスは課題解決のためのツールのひとつであり、「課題は何か」を教えてくれるものではありません。

 

また、ビジネス力の根幹となるのは、その分野の専門知識です。
 
分析対象の専門知識が無いと、データサイエンスも役に立ちません。

 

これまでデータサイエンティストが何社も営業に来て、データ分析をしてくれましたが、基本的にトンチンカンな結果(外気温による擬相関や因果関係が逆など)を出してくるので、完全に幻滅期に入っていると思います。

「AIには完璧も、完成もない。継続的な改善しかない」
そのため開発プロジェクトは外部に丸投げせず、社内に人材を抱えたり、育てたりする必要がある。

「データサイエンス(AI)で何かやってくれるだろう」という受け身の姿勢ではダメなことがわかりました。

我々は、データサイエンス(AI)を使いこなすことで、ビジネス課題を解決しないといけないのです。

 

参考記事を紹介しておきます。

【参考記事】幻滅期に突入したAI、個人の技術者がチャンスな理由

ハイプサイクル

出典 日刊工業新聞2019年4月16日

 

②データサイエンス力

データサイエンス力とは、情報科学系の知恵を理解し、使う力です。

大きく分けて、下記の学問知識が必要です。

必要な学問

①数学(微分・積分、線形代数、確率)
②統計学(統計検定2〜準1級レベル)
③プログラミング(Python,Rなど)
④英語

なんで英語??と思うかもしれませんが、最新技術の情報を得ようとすると、世界共通語の英語で読み書きする必要があります。

日本語に訳されるのは、限られた情報だけであり、しかもだいぶ時間が経った後になります。

また、Pythonライブラリの公式ドキュメントやデータサイエンスの論文など、欲しい情報は英語ばかりになってきます。

とはいえ、初心者は翻訳された情報で十分なので、英語は後回しで大丈夫です。

 

③データエンジニアリング力

先ほど、ソフトセンサー実装のところでも記載しましたが、データはきれいに並んで待っている訳ではありません。

欲しいデータを選定、分析、計算したのち、データベースにまとめてやる必要があります。

その際に必要となるのが下記の知識です。(一例です)

必要な知識

①SQL
②ネットワーク
③サーバー(データベース)
④プログラミング(PythonやC、VBAなど)

この辺の知識は、IT系のエンジニアに任せることができると思います。

非IT系技術者でも、いずれは勉強すべきですが、初心者は後回しで良いでしょう。

あと、化学プラントでは、何かとDCSに絡めたりするので、DCSの知識もあった方が良いですね。

 

ステップ3 ビジネス力を身につける

ビジネス力を身につける方法を簡単に紹介します。

ビジネス力を身につける方法

①課題解決に特化しているコンサルタントが書いたビジネス本を参考にする
 ⇒著名人がおすすめする本を片っ端から読んでみましょう。

 例えば、私の場合は下記を読みました。
 ・企業参謀(著者:大前研一)
 ・イシューからはじめよ(著者:安宅和人)
 ・仮説思考(著者:内田和成)
 ・ゼロ秒思考(著者:赤羽雄二)
 ・自分のアタマで考えよう(著者:ちきりん)

②自分の業界の偉人の本を読む
 業界によって仕事のやり方が異なりますし、自分の業務と近い分野の方が、自分事と捉えることができ、オススメです。

 例えば、私の場合は下記を読みました。
 ・答えは必ずある(マツダ)
 ・東レ前田勝之助の原点(東レ)
 ・常在戦場(信越化学)

③自分の専門分野の専門書で学ぶ
 今の業務に関わる専門書を片っ端から読みましょう。

 例えば、私の場合は下記を読みました。
 ・化学工学 解説と演習
 ・絵とき蒸留技術基礎のきそ
 ・PID制御の基礎と応用

④あとは実践と改善あるのみ!

本は、「仕事で必要」というモチベーションの高いうちに読むべきですね。
(モチベーションコントロールの視点も大事です)

役に立たなかったとしても、この積み重ねが自分の価値を高めてくれるハズです。

 

ステップ4 データサイエンス力を身につける

データサイエンス力を身につける方法を紹介します。

前述の通り、必要な学問は下記の通りです。

必要な学問

①数学(微分・積分、線形代数、確率)
②統計学(統計検定2〜準1級レベル)
③プログラミング(Python,Rなど)
④英語

①数学

マセマ出版社のキャンパス・ゼミを読めば、ある程度のレベルまではカバーできます。

数学の基礎を固めるだけでも時間がかかってしまうので、まずは②統計学から勉強しましょう。

いずれ数学のレベルが足りなくなりますので、それから数学を勉強しても遅くないでしょう!

微分積分キャンパス・ゼミ 改訂7

線形代数キャンパス・ゼミ 改訂8

確率統計キャンパス・ゼミ 改訂6

私の場合、統計検定2級を取得した後、重回帰分析を勉強している際に、線形代数の復習を始めました。

偏微分がわからない方は、微分・積分もキャンパス・ゼミなどで復習しておいた方が良いでしょう。

気軽に始めたいのであれば、YouTubeを見るのもアリですね。(無料です!)

【オススメ】予備校のノリで学ぶ 「大学の数学・物理」

 

②統計学

数学に比べると、統計学はガッツリ勉強することになります。

統計学の教科書を何冊も読破しないといけません。

初心者向けのおすすめの本は、下記記事にまとめました。

マンガで全体像をつかみ、少しずつ難しい教科書に挑戦する道筋を示しています。

統計学本5選
【初心者向け】統計学のおすすめ本5選(特徴も解説!)

続きを見る

 

基礎固めのために「統計検定」を受験するのもアリだと思います。

「資格試験」という締切を強制的につくることで、勉強を一気に加速させます。

まずは、統計検定2級に挑戦してみましょう!

体験談はこちらの記事にまとめてあります。

統計検定2級
【初心者向け】統計検定2級の難易度は?【合格体験談】

続きを見る

統計検定 参考書
【失敗しない】統計検定2級のオススメ参考書(無料あり)

続きを見る

最終的には、統計検定準1級レベルは欲しいところですね。(1級までは必要ない気がします。。)

 

基礎固めが終わったら、次は「何がやりたいのか」によって学ぶ内容を決めましょう。

例えば、下記のようなイメージです。

何がやりたいか

・画像認識がやりたい ⇒ ディープラーニング

・株価の分析がしたい ⇒ 時系列分析

・ソフトセンサー作りたい ⇒ 多変量解析

また、統計学とプログラミングのどちらを先に学ぶべきかという問題があります。

結論としては、「統計学」が先です。

統計学がわからないのに、PythonやRを使ってデータ解析しても意味のある結果は出ません。

一方、統計学がわかっていれば、PythonやRが使えなくても、業務で活かすことができます。

データサイエンティストに外注した分析結果の意味が分かりますし、指示を出すこともできます。

よって、統計検定2級レベルの統計学の知識を身につけた後、PythonやRを勉強しつつ、並行して統計学の知識を深めていきましょう!

 

③プログラミング

データサイエンスで用いられるプログラミング言語は、Pythonが主流です。

統計解析ソフトのRを使って解説している教科書が多いので、Rを勉強するのもありだと思います。

しかし、深層学習を使う場合は、ライブラリ(便利なコード集)が豊富なPythonがオススメです。

また、PythonではWebアプリを作成できたり、APIと連携できたりと汎用性が高いのも特徴です。

よって、初心者はまずPythonを勉強すべきです。

【参考記事】PythonとRはどっちを使うべき?

【参考記事】データサイエンティストになるにはRかPythonか【結論:PythonでOK】

 

Pythonの勉強方法は、プログラミング完全初心者であれば、動画講座をオススメします!

プログラミングとはどういうものか、イメージができない状態で、本を読んでも理解が進まないからです。

 

最近は、YouTubeで無料で見れるものもあります。

もう少し高度な内容であれば、Udemyという動画学習サイトの講座はクオリティが高くて良いですね。

世界最大級のオンライン学習サイトUdemy

月に1回くらいセール(1200〜1700円くらいになる)をしていますので、その時に購入すると良いと思います。(しかも1ヶ月以内なら返品可能!)

本当にいろんな講座があるので、ぜひUdemyサイトをのぞいて見てください。

 

④英語

データサイエンスを勉強するだけであれば、「読み」と「聴き」ができれば大丈夫です。

よって、はじめはTOEICを活用して基礎を固めましょう。

【TOEIC800目指す】理系社会人のためのTOEIC効率的勉強法

続きを見る

基礎を固めたら、あとは英語を実際に使っていきましょう!

統計学の教科書やPython公式ドキュメントを英語で読んだり、YouTubeやUdemyの英語講座を聴講して、データサイエンスを英語で勉強しましょう

ただし、最初から英語で勉強するのではなく、一度は母国語で勉強した方が理解が早いと思います。

よって、母国語(日本語)で勉強した後に、英語の教材でデータサイエンスを復習するのがオススメです。

 

ステップ5 データエンジニアリング力を身につける

非IT系の方が、データエンジニアリング力を身につけるのは、若干ハードルが高いです。

よって、こちらについては中級編の記事で解説したいと思います。

データの取得・整理、解析結果の実装作業については、はじめはITエンジニアに依頼するべきだと思います。

もし、データ解析ができて、PythonやSQLを駆使して自分で実装できるようになったら、完全に「データサイエンティスト」ですね。

 

まとめ

まとめ

1.まずは「何がしたいのか」勉強する目的を明確にしましょう!(超重要!!)

2.課題を見つけ、データ解析をするためには、ビジネス力とデータサイエンス力が必須です。

3.既存データだけでは、求めている結果が得られない場合もあるため、その際はデータエンジニアリング力が必要になります。

4.目的を明確にし、要求される3つの力を高めていきましょう!
 ①ビジネス力
 ②データサイエンス力
 ③データエンジニアリング力

 

 

\この記事はどうでしたか?/

  • この記事を書いた人
  • 最新記事

こーし

ケミカルエンジニア|化学メーカー勤務| 現場配属の生産技術|30代| 【取得資格】化学工学技士、エネルギー管理士(熱)、高圧ガス製造保安責任者(甲種化学)、公害防止管理者(大気、水質、DXN)、危険物取扱者(甲種)、統計検定2級、TOEIC 880 |化学工学 × データサイエンス × 技術ブログ| 統計検定準1級の勉強中!

-データサイエンス, 勉強法

© 2021 雷電風雨のエンジニア Powered by AFFINGER5