はじめに
まずはじめに何故、僕がPythonを書こうと思ったかについて話していきます。僕がPythonを書こうと思った理由は以前から機械学習やデータ分析に興味を持ってたからです。そしてタイムリーなことに大学の後期の授業の一つが今年からPythonに変わることになったからです。この情報は、もう僕にPythonを書けと言っている様な気がしました笑。
僕がPythonで4ヶ月勉強したこと
- Webスクレイピング
- ちょっとした機械学習
並べるとこんな感じです。Webスクレイピングと前から興味のあった機械学習の勉強を結構やってたなと書いてみて思ってます。
Webスクレイピングについて
僕がWebスクレイピングというものを知ったのは退屈なことはPythonにやらせようというPythonを書いている人ならほとんどの人は知っている有名な本からです。以下退屈なことはPythonにやらせようより
コンピュータ上を使う作業の多くがインターネットに関係するので、プログラムもオンラインに対応できれば便利です。Webスクレイピングとは、プログラムを使ってWebからコンテンツをダウンロードして処理することを意味します。例えばGoogleは多数のWebスクレイピングプログラムを実行して、検索エンジン用にWebページの索引を作っています。
上記よりWebスクレイピングがどんなものか分かったと思います。自分もWebスクレイピングをやっていてWebページからいろんな情報取ってこれてすげーおもしれーと感じました。僕がWebスクレイピングでやったことは、学校のHPから学科ごとの研究室の情報を取ってきてその情報をJSONファイル書き出すっていうのをやりました。やってて躓いたりもしましたが一応なんとか形にはなったので良かったです!
正規表現とWebスクレイピングについて
Webスクレイピングをやっていて気になったのはHtMLを解析するのに正規表現と組み合わせたらもっと良くなるんじゃないかと思ったんですけど実はあまり良くないみたいです。以下退屈なことはPythonにやらせようより
HTMLを解析するのに正規表現を使わない
文字列に格納されたHTMLからの特定の分野を見つけるのは、正規表現にうってつけのように思えます。けれども筆者は正規表現の使用をお勧めしません。HTMLの書き方には様々な方法があり、いずれも正しいHTMLと見なされるので、可能なバリエーション全てに対応しようとするのは厄介で間違いが起こりやすいのです。Beautiful SoupのようなHTMLを解析するモジュールを使えば、バグになりにくくなります。
上記よりWebスクレイピングをする際は、正規表現を使うんじゃなくてBeautifil Soupを使うのがいいということが分かります。自分もWebスクレイピングをやっている時はこのモジュールを使用していました。
ただし正規表現を全く使うなということではなくBeautiful Soupと組み合わせて使うこともできるみたいです!
以下に僕が参考にした記事を載せます。
ちょっとした機械学習の勉強について
僕がPythonで機械学習を勉強するために選んだツールは下記になります。
僕が機械学習を勉強する上で使用したツールが上記になります。TensorFlowで学ぶディープラーニング入門は機械学習とは少し違いますが興味あったのでこれもやりました。Tenosrflowの勉強では、Tensorflowチュートリアルと上記のTensorflowで学ぶディープラーニング入門を平行させて勉強してました。機械学習で便利な画像データセット『MNIST』を使っての手書き数字文字の認識など初心者にとっては結構難しかったです。
CouseraMachineLerningでは、講義ビデオを見てそのあとテストを解いていくっていう流れでやってました。プログラミング問題が自分的には難しく、Octaveを扱ったことがなかったのでこちらも苦戦しました。
最後に
僕はまだPythonを書き始めて時間が少なく理解度も浅いですが、Pythonを書いてて楽しいと思っているのでこれからも書き続けていきたいと思っています!
今後はデータ分析の方にも手を出したいと思っているのでそちらの方も勉強して行きたいと思っています。
最後にこの記事を見てくれてありがとうございます。