こんにちは。倉内です。
Pythonは文法がシンプルで初めてプログラミングを学ぶ方も取り組みやすく、また、近年はビッグデータ分析やAI・機械学習の分野で利用され人気の高いプログラミング言語です。
2020年1月に公開された『AI崩壊』という映画の中でもAIのプログラムはPythonで書かれていました。(画面にコードがよく映るので学習したことがある方はすぐ分かると思います。見る機会があれば注目してみてください)
人気があるので学習コンテンツや書籍も充実していますが、たくさんありすぎて逆に「どれで勉強するといいだろうか…?」と悩むこともあるかもしれませんね。
そこで今回は目的別にPythonを学べるオンラインコンテンツと書籍をご紹介したいと思います。
Pythonの基本を学ぶ
初めてプログラミングに触れる、Pythonはやったことがないという方は、まずは基本を抑えましょう。
オンライン実行環境がある学習サービス
「オンライン実行環境」とは、Webブラウザ上でコードを書いてプログラムの実行ができる環境のことをいいます。自分のPCに開発環境を作らなくてもよいので、初めてプログラミングをする方でもすぐに書いたコードの動作を確認することができます。
【 Progate 】
Pythonコースはこちら
Progateはブラウザ上でスライドを見て学習し、そのまま演習もできるためとても分かりやすいのが特徴です。基礎文法(繰り返し文・条件文、関数、クラスなど)を無理なく学ぶことができます。
ちなみにWindowsのPCにPythonをインストールする手順も別途掲載されているため自分のPCに開発環境を作ることも可能です。
【 paizaラーニング 】
Python3入門編はこちら
paizaラーニングはブラウザ上で動画を見て学習を進めていく形式です。音声は声優さんが担当していますので聞き取りやすいのが特徴です。
また、演習問題も解くことができるため、初心者の方でも取り組みやすくなっています。
【 PyQ 】
Pythonに特化した学習サイトで、プログラミング未経験からPythonを学ぶ人のためのコース「未経験からのPython文法」を最初に受講するのがよいでしょう。
初心者向けコースはもちろんですが、Webアプリ開発やスクレイピング、数学・アルゴリズム、統計分析を学べるコースまで非常に充実しています。
ローカル環境で学習するサービス
実際に業務で開発する場合、会社の開発用マシンなどに環境構築をしなければならないことが多いと思います。オンラインと対比して「ローカル環境」と呼んだりします。ここでは自分のPCに開発環境を作ってそこで学習を進めていく形式のサイトをご紹介します。
【 ドットインストール 】
Python3入門レッスンはこちら
ドットインストールはPython3入門のレッスンはローカル環境を使った学習となります。講師の方が操作をしている画面を動画で見て真似しながら進めていけるので初心者の方も安心です。
【 Python-izm 】
Python-izmでは、入門編・基礎編といった初心者向けの内容から、画像処理やデータ解析、Pythonのフレームワークの中でも人気のDjangoを使ったアプリ開発など幅広い内容を学ぶことができます。
ローカル環境構築の手順もしっかり説明されていますのでぜひチャレンジしてみてください。
【 Python公式ドキュメント 】
初心者の方がいきなり見るのはちょっとハードルが高いかもしれませんが、リファレンス的に使えるので公式ドキュメントの存在は知っておいて損はありません。
Pythonのインストール手順のページもあります。また、チュートリアルページも充実しています。
おすすめ書籍3選
他のプログラミング言語の経験がなく、Pythonで初めてプログラミングに触れるという方におすすめしたいのがこの本です。
非常に親切に書かれており、初心者の方が1冊目に選ぶのにとてもよい本だと思います。基本はもちろんですが人工知能についても触れているため、人工知能に興味がある方にもおすすめです。
入門書として評価が高いスッキリシリーズ。親切で分かりやすい声も多く、初心者が挫折せず学習を続けられるような内容になっています。
インストールや環境構築の手順については記載のWebページを参照しておこなう形になっており、バージョンが新しくなっても対応できるよう工夫されているのもよい点でしょう。
1冊目に選ぶには難しいかもしれませんが、2・3冊目の参考書としておすすめしたいのがこの本です。
Pythonを学ぶだけではなく開発者として必要なスキル全般を習得するというのが目的として掲げられており、独学である程度のレベルに到達したい人向けと言えます。
Webフレームワークでアプリ開発をする
PythonのWebアプリケーションフレームワークには、人気が高い「Django(ジャンゴ)」、軽量で扱いやすい「Flask(フラスク)」などがあります。
paizaラーニングでも上記2つの学習講座を公開しています。いずれも簡単なアプリケーションを実際に開発しながら学習でき、成果物が目に見えるので楽しみながら学ぶことができます。
機械学習を始める
Pythonといえば…やはり機械学習をやってみたいですよね。ここではオンラインで学習できるコンテンツを集めてみました。
【 Aidemy 】
学習コース一覧はこちら
Aidemyは人工知能プログラミング学習に特化したサービスで、事前知識がなくてもブラウザですぐに学習がスタートできるのが特徴です。
機械学習の基礎・応用、画像認識、自然言語処理、データクレンジング、スクレイピング…とさまざまなコースが用意されています。
【 Python×AI・機械学習入門 】
paizaラーニングが提供する「Python×AI・機械学習入門」の講座では、スヴェータ先生(CV.上坂すみれさん)と一緒に画像処理の実践演習に取り組むことができます。
グラフ描画や数値計算、画像処理など機械学習でよく使われるPythonのライブラリを使って実際にコーディングしながら学んでいきましょう。
【 AI Academy 】
AI Academyも人工知能プログラミングに特化した学習コンテンツを提供しているサービスです。初心者向はPythonの基礎から学べます。
登録後に簡単なアンケートに回答し、何をゴールと定めるかを選ぶとそこに到達するまでの道のり(何を学べばいいのか)が生成されるため順番に学習することができます。
環境はローカルに構築するか、Googleが提供しているブラウザでPythonプログラミングができる「Google Colaboratory」という環境を使います。
【 Elements of AI 】
フィンランド発の無料でAIを学べる学習サイトです。海外サイトなので英語になりますが、内容は初心者にも分かりやすいものとなっています。
「AIってなんだろう?」から始まり、実際どのような場面でAIが使われているのかを知ることができます。もちろん機械学習やニューラルネットワークの学習コースもあります。
【 Learn with Google AI 】
学習コンテンツ一覧はこちら
Googleが無償で提供している機械学習コンテンツで、機械学習の基本概念から実践的な機械学習の利用まで広く学ぶことができます。
機械学習の初心者向けからAI研究をしている人向けまでさまざまなコースがあるのでご自分に合ったものを見つけてみてください。
なお、Googleの従業員向けの教育コンテンツ「Machine Learning Crash Course with TensorFlow APIs」も無償公開していますのでより発展的な内容を学びたい方はそちらもチェックしてみるとよいでしょう。
(番外編)【 メディカルAIコース オンライン講義資料 】
これまで紹介してきたものと少し異なりますが、医療分野で人工知能技術を使う際に必要な知識や実践方法を学ぶことができるコンテンツをご紹介します。
機械学習に必要な数学の基礎、機械学習ライブラリやニューラルネットワークの基礎あたりまでは一般的な内容ですが、そのあと実践編として「MRI画像のセグメンテーション」「血液の顕微鏡画像からの細胞検出」など医療に特化した活用事例をコードも合わせて学ぶことができます。
こちらも「Google Colaboratory」を使っていますのでブラウザ上で動かすことができます。
ちなみに「機械学習エンジニアになりたい場合、どんな知識が必要になってくるのか?」というのが気になった方はこちらの記事も参考にしてみてください。
おすすめの書籍もこちらで紹介しています。
データ分析・解析をする
これまで紹介してきた学習サービスにも、スクレイピングやデータ分析を学べるものがありましたが追加でご紹介します。
【 データサイエンスコース | Udemy 】
プログラミング以外にもさまざまなジャンルの動画コンテンツを提供しているUdemyにはデータサイエンスコースが用意されています。
基礎から応用、実践的な内容までなんと1486コースもあります!(数学の基礎学習、AI・機械学習などのコースも含みます)
【 データサイエンスコース | Coursera 】
スタンフォード大学のコンピュータサイエンスの教授らによって創立された教育団体であるCourseraは、大学で学べるコースのいくつかをオンライン上に無償公開しています。
その中にある「データサイエンス」カテゴリではデータ分析、確率と統計が学べるオンライン講座があります。
【 Data science courses on edX 】
edXはマサチューセッツ工科大学とハーバード大学によって創立された無償のオンライン学習サービスです。
「データサイエンス」コースでは両大学の授業で扱われている内容はもちろん、IBMやMicrosoftが提供しているものもあります。
おすすめ書籍3選
現場で活用するための実践的な内容が学べる1冊となっています。
「RとPythonで学ぶ」とありますが、Rの割合が少し多めなのでRを学んでから取り組むとより効率的に学ぶことができるかもしれません。
こちらもデータ分析をビジネスの中でどう活用するかに主眼を置いています。
著者にデータ分析をうまく活用している企業・組織の方を迎えており、実務担当者からマネージャ・経営者層が持つべきデータ分析のノウハウを学ぶことができます。
2018年に新版が出たO'Reillyの「Pythonによるデータ分析入門」です。
初心者の方が1冊目に手にするには重めですが(ページ数的にも)、読み込むというよりは分からないことをWebで軽く調べたあと、理解を深めるためにリファレンスとして活用するとよいでしょう。
まとめ
Pythonの基本からWebアプリケーション開発、話題の機械学習やデータ分析といった内容まで学べるコンテンツをご紹介してきました。
今回取り上げたもの以外にもPythonや機械学習に関するサービスや書籍はたくさんあります。無理なく学習を続けられるように、自分に合うものを見つけてみてくださいね。
Pythonは基本だけであればプログラミング初心者にも理解しやすい言語ですが活用の幅が広く、数学やコンピュータサイエンスの理解が必須になってくる場合もあります。
paizaラーニングでは、Pythonが学べる講座だけでなくDB(SQL)やWeb技術、アルゴリズムなど動画で分かりやすくプログラミングが学べる講座を多数公開していますのでぜひ活用してください。
詳しくはこちら
「paizaラーニング」では、未経験者でもブラウザさえあれば、今すぐプログラミングの基礎が動画で学べるレッスンを多数公開しております。
そしてpaizaでは、Webサービス開発企業などで求められるコーディング力や、テストケースを想定する力などが問われるプログラミングスキルチェック問題も提供しています。
スキルチェックに挑戦した人は、その結果によってS・A・B・C・D・Eの6段階のランクを取得できます。必要なスキルランクを取得すれば、書類選考なしで企業の求人に応募することも可能です。「自分のプログラミングスキルを客観的に知りたい」「スキルを使って転職したい」という方は、ぜひチャレンジしてみてください。
詳しくはこちら