キーワードは「キャリアの掛け算」。
この記事には広告が含まれています。
薬学博士のPython入門
「Python:パイソン」とはプログラミング言語のひとつですが、ディープラーニング界隈でよく使われるので最近勢いがあるそうです。(僕も聞いただけです)
突然ですけど、そんなPythonを勉強してみようと思い立ちました。なんで…?という疑問にはこの記事でお答えします。
「薬学博士のPython入門」というシリーズでは、その過程を報告していければと思っています。1回目の今回は、
- なぜ薬学博士がPythonを勉強するの?
- とりあえず何から始めようか?
という初歩の初歩について。
なぜ薬学博士がPythonを勉強するの?
まずは、薬学の専門家である僕が「なぜ他分野の技術に手を出すのか?」ということについて。
前提として、ここ数年ディープラーニングを用いた人工知能(AI)の台頭が凄まじいのはご存じの通り。その技術は日に日に進歩していて、毎日誰もが少なからずAIの恩恵を受けているはずです。
このような「ディープラーニング」「AI」の技術は、医薬品や医療機器の開発にも使われるようになってきました。
たとえば医薬品を開発するときは膨大な化合物候補をスクリーニングして、効果がありそうな物質に目星をつけます。それを動物実験や臨床試験を通して科学的に証明していく。簡単に言えばこんなプロセスで進みます。
その初期段階における化合物のスクリーニングは、これまで「1個ずつ調べる人海戦術」や「研究者の長年の勘」に頼ってきました。
しかし、医薬品として世に出る確率が3万分の1、開発に10〜20年かかるのもザラという世界の中で、非常に効率が悪いというのは言うまでもありません。
そんな中、2018年には、DeNA、旭化成ファーマ、塩野義製薬が「化合物ライブラリを用いたAI創薬」を構築することを目的に実証試験を行うという発表がなされました。
→ 【インタビュー】DeNAが「AI創薬」でやろうとしていること | AnswersNews
もちろんこの3社だけではなく、他の製薬企業もAI創薬の研究を行っています。現在研究者が手作業で行っている実験の結果をAIで推測できるようになるのであれば、医薬品の開発効率が格段に上がるからです。
そうなると、今いる研究者は職を追われる——というのは悲観的すぎるけれども、少なくとも科学実験だけでなく、AIの面倒も見る必要が出てくるのではないか。
だから、もはや機械学習の技術は、コンピューターサイエンス分野だけのものではないのです。
となると、「薬学にもディープラーニングにも詳しい人」に対する需要が、今後ますます増えるのではないかと思うのです。
エンジニアとして修行を積んで、ディープラーニングのわかる薬学博士ってこれから需要ある気がするんだけど、どうだろう?
知らない世界に飛び込んでみるのもアリかもしれないな。
— みけめろ@starnote* (@info_starnote) June 4, 2019
僕は薬学のPhD(と薬剤師免許)を持っているので、薬学の専門家という立ち位置は揺るぎません。つまり「薬学」という柱が1本立っている。でもそんな人はたくさんいます。
そこに「ディープラーニング」という柱をもう1本立てることができれば、かなり希少な人材になることができるのではないでしょうか。いわゆるキャリアの掛け算というやつです。
そのためには、ディープラーニングでよく使われる「Python」という言語を勉強する必要があるという結論に達しました。
自分のキャリアプランを考えると、プログラミングを学ぶべき。 – starnote*
→ 自分のキャリアプランを考えると、プログラミングを学ぶべき。
とりあえず何から始めようか?
Pythonを学ぶといっても、何から手をつければいいのかわからない。でも広く浅く情報を集めてみると、なんとなくこんな順序かなと思っています。
- ドットインストールを参考に開発環境を構築
- Progate を使って手を動かす
- 本で深める
- 実践あるのみ
最近は無料で学べるコンテンツも多く、その代表格が「ドットインストール」と「Progate」です。ただし、Pythonに関する回はどちらも課金しないと受講できませんのでご注意を。
ドットインストールを参考に開発環境を構築
Macを持っている時点で開発環境は手に入れているようなものなので、あとはきれいに整えるだけです。そのやり方はドットインストールの動画を参考にしました。これは無料です。
ローカル開発環境の構築 [macOS編] (全14回)
→ ローカル開発環境の構築 [macOS編] (全14回) – プログラミングならドットインストール
Progateを使って手を動かす
実際に手を動かしながらプログラミングを学べる「Progate」というサイトがあります。HTMLやCSSをはじめとして、さまざまな言語を学ぶことができます。
Progate(プロゲート) | Learn to code, learn to be creative.
→ Progate | プログラミングの入門なら基礎から学べるProgate[プロゲート]
その中のPythonコースを、今日1日で一気に終わらせました。これまで意味不明な文字の羅列だったのが、ちゃんと読めるようになった気がします。
ProgateのPythonコースをひととおり終わらせました。
プログラミングに対するハードルを勝手上げてた節がありましたが、やってみたら案外わかりやすいと感じました。
まだまだこれから勉強することばかりだと思うので、引き続き学習を進めます。
— みけめろ@starnote* (@info_starnote) June 10, 2019
ただ、このまま放置していたら忘却曲線まっしぐらなので、短いスパンで繰り返した方がいいですね。今週はこれで特訓します。
本で深める
動画やオンラインの講座だと「困ったときに参照しにくい」というのが難点です。なので、バイブルとなるような本も買おうと思っています。
今考えているのはこの本だけど、他にもこれいいよ!っていうのがあったらTwitterで教えてもらえると嬉しいです。
実践あるのみ
結局のところ、試行錯誤しながらプロダクトを1つ作ってみるのが近道だと思うんですよ。具体的なイメージはまだできてないけど、早いとこ何か作ってみよう。
まとめ
今まで後回しにしてきたプログラミング学習ですが、やっとこさ重い腰を上げることができました。やると決めたからにはやるので、このまま前に進みます。
次に読むなら:プログラミング必修化について
→ プログラミング必修化がやってくる。楽しんで学んでもらうために大人にできることは?
小学校で必修化されるので、今後プログラミングがわかる人口は増える一方です。だからある程度わかっておかないと、これからの社会ではついていけなくなると思うんですよね。