Pythonで何ができるの?
Pythonでできること、できないことが知りたい…
こんな疑問に答えます。Pythonを使ってできることとできないことについて以前から調べていてわかったことをまとめていきます。
この記事をつくった目的としては私の学んだことの備忘録的意味が大きいですが、Pythonを学び始めた初心者の方にも調べたことを共有できたらなという意図もあります。
記事を読むメリットは、以下2つ。
・Pythonでできることがわかる
・Pythonを学ぶ上での注意点
ではさっそく見ていきましょう!
■Pythonでできること
Pythonでできることについて、調べて分かったことをまとめていきます。
学び始めで、具体的、明確な目的をまだ持ってない方は、こちらを読んで自分のやりたいことを具体化していただければと思います。
・機械学習(Machine Learning)
Pythonでは機械学習を行うことができます。機械学習という言葉は聞いたことがありますか?
機械学習はその言葉通り、「機械に学習」させることができます。ここでいう学習の例としては以下のような例が挙げられます。
・猫と犬の画像を見て見分けることができる
・文章を読んで翻訳できる
・足し算、引き算ができる
「機械学習=何かを学んでできるようにすること」って理解で大丈夫です。
Pythonは機械学習ができる点がほかの言語と比べて優れています。
ライブラリと呼ばれる誰でも利用のできる先人の知恵があるので、初心者の方でも文法さえ学べば誰でも簡単に機械学習ができるようになっています。
機械学習についてもっと詳しく知りたい方は以下のキーワードを調べてみてください。
教師あり学習、教師なし学習、強化学習、TensorFlow、Kelas、DeepLearning
・データ収集の高速化
Pythonはデータ収集を高速に行えます。データ収集の一例としてWebスクレイピングという技術をご紹介。
Webスクレイピングとは、ネット上のWebページにアクセスして情報を収集することを指します。
具体例を挙げると、以下のようなことができます。
・日経平均株価を一定時間おきに取得する
・Web上のネコの画像を100000枚取得する
このように人の手でもできることを人のできる範囲を超えて行うことができるんですね。
Webスクレイピングができるとデータの解析ができるようになるので、様々なことを調べることができるようになります。
Webスクレイピングで取得した株価を、先ほど説明した機械学習を使って学習させれば、株価が上がるか下がるかを予測することもできます。
・アプリ、Webサービスの開発
最後に紹介するPythonでできることは、アプリ・Webサービスを開発できることです。
以上で説明した機械学習やWebスクレイピングを使ったアプリやサービスをつくることができます。
既に実用化されている例に、「Googleの検索エンジン」があります。Googleの検索エンジンは、検索した人が求めている情報に合った結果を表示します。
「犬 画像」で検索されば犬の画像を表示するようにできていますよね。
アプリやサービスを実際につくるためには、フレームワークというものが必要になります。Pythonのフレームワークで有名なのが「Django」です。
Djangoを学べばWebサービスやアプリをつくれるようになるので、作りたいものが決まったら挑戦してみましょう。
■Pythonを学ぶためのおすすめ学習方法
Pythonを学ぶための学習方法について簡単に紹介しておきます。
ここでお伝えしたいのは、「目的を持って学習すべき」ということです。
・Pythonおすすめの書籍
Pythonといったら機械学習ですよね。
そこで、Pythonで機械学習を基礎から学びたい方におすすめなのが、「ゼロから作る Deep Learning」です。この本はPythonを学ぶ人の中では良著として挙げられているので評価は高いです。
この本を読むことで、DeepLearning自体を構築することができます。
基礎を固めておくとエラーが起きたときに修復部分がわかるので、学んで損はないと断言できます。
しかし、この本、数学の知識など予備知識が大量ではっきり言って難しい。
まず初めに簡単に機械学習をしてみたいという方には、「PythonによるAI・機械学習・深層学習アプリのつくり方」がおすすめです。
機械学習を使って画像判別、手書き文字認識などを実際に行えるようになります。私はこの本に書いてあるコードを応用して1か月足らずで顔認識や、画像認識ができるようになりました。
Pythonのコードがどう動いているかがわかるので初心者向けだといえます。
すぐに使える! 業務で実践できる! Pythonによる AI・機械学習・深層学習アプリのつくり方
・PythonをWebサービスを活用して学ぶ
Pythonを学べるWebサービスはたくさんあるので、その一部をご紹介。
基礎だけ学びたい方→Progate
応用まで学びたい方→Aidemy
Progateは、月額980円でPythonを含む15のプログラミング言語を学ぶことができます。スライド、演習ともにわかりやすいので、プログラミング初心者の方にはおすすめ。
しかし、ProgateではPythonの基礎の文法部分しか学ぶことができませんでした。
Pythonといったら機械学習なので、機械学習も学びたい方には、Aidemyをおすすめします。Aidemyは、Pythonに特化したWebサービスなので、機械学習、自然言語処理、数値予測まで広い範囲を学ぶことができます。
以上のサービスで、一通り学習出来たら、あとは自分のやりたいことに取り組めるようになります。
エラーがでた際は、Stack overflowで調べてみたり質問してみたりできます。
実際にエラーが出た際は、エラー文をコピペして検索すれば、同様のエラーが起きた人の対処法を知ることができるので、まず調べてみましょう。
下手に日本語で検索するよりも早く解決できますよ
■まとめ
Pythonでできること
・機械学習
・高速かつ大量のデータ収集
・アプリ・サービスの開発
でした。
Pythonをはじめとするプログラミング言語を学ぶ上では、目的を持っているとモチベーションが保ちやすいので、初めは文法などを学びつつ、何を作りたいかを考えておくと気持ち的に楽かと思います。
私のブログではPythonで~やってみた系の記事がそこそこあるので、そちらも参考にしていただけたらなと。
あとStackoverflowで必ずエラー文を調べることを忘れずに。日本の何たら袋と比べても、ほんっとに便利ですよ。
最後まで読んでいただきありがとうございました。