薬学博士のPython入門 01|プログラミングを始めよう。

キーワードは「キャリアの掛け算」。


薬学博士の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の面倒も見る必要が出てくるのではないか。

だから、もはや機械学習の技術は、コンピューターサイエンス分野だけのものではないのです。


となると、「薬学にもディープラーニングにも詳しい人」に対する需要が、今後ますます増えるのではないかと思うのです。

僕は薬学のPhD(と薬剤師免許)を持っているので、薬学の専門家という立ち位置は揺るぎません。つまり「薬学」という柱が1本立っている。でもそんな人はたくさんいます。

そこに「ディープラーニング」という柱をもう1本立てることができれば、かなり希少な人材になることができるのではないでしょうか。いわゆるキャリアの掛け算というやつです。

そのためには、ディープラーニングでよく使われる「Python」という言語を勉強する必要があるという結論に達しました。

自分のキャリアプランを考えると、プログラミングを学ぶべき。 – starnote*
手始めにPythonから勉強してみようかな。 自分のキャリアプランを考える 僕は薬学の博士号を持っているので、薬学の専門家と見なされます。それは全く問題ないんだけれど、これからの世の中では、大きな柱を1本立てただけではいつ倒れるかわからないというのも事実。 倒れにくくするためには、 1本柱を太くする 複数本立てる このような2つの選択肢があります。 「飽きっぽくていろんなものに興味が向きがち」という自分の性格を考慮すると、後者の方が向いていると思うのです。だから最近は「もう1本の柱を構築しないといけないなー」と思うようになってきました。 では、その柱をどうするか。 選択肢のひとつとして「ブログ」というのが思いつきます。しかし、ブログはあくまでも趣味の範囲に留めておきたいので、キャリアプランには含めにくい。 僕は「ブログ = すべてのハブになるもの」という感覚で書いているので、自身のキャリアよりももっと深いところにあります。 柱を複数本立てるにあたって昔からずっと思っているのは、「複数の分野が融合することで新たなイノベーションが生まれる」ということです。 → 「広める」という任務|論文を投稿するだけの時代から、その先へ。 なので、これまで身を置いてきた(今も置いてるけど)薬学の分野からは少し離れて、それでいて相乗効果があることを勉強したい。 これまで学んできたことを捨て去るわけではなくて、「すでに習得した知識」と「新たに学ぶこと」をうまく組み合わせることができる可能性を模索していました。 ヒントを見つけた たまたま目に留まったのが、DeNAの採用ページです。 MYCODEという遺伝子検査のサービスを提供しているDeNAでは、ヘルスケア事業の研究職を募集しています。 その必須要件として「医歯薬・生物学系専攻での博士卒」「研究の立案または、実行を主体的に行ったことがある」「筆頭著者論文1報以上」などがあります。このあたりは当てはまる。 そのうえで、尚可要件として「バイオインフォマティクスに関わるプログラミング経験」というのがありました。具体的には、Linux、Python、Rのプログラミング経験だそうです。

自分のキャリアプランを考えると、プログラミングを学ぶべき。


とりあえず何から始めようか?

Pythonを学ぶといっても、何から手をつければいいのかわからない。でも広く浅く情報を集めてみると、なんとなくこんな順序かなと思っています。

  • ドットインストールを参考に開発環境を構築
  • Progate を使って手を動かす
  • 本で深める
  • 実践あるのみ

最近は無料で学べるコンテンツも多く、その代表格が「ドットインストール」と「Progate」です。ただし、Pythonに関する回はどちらも課金しないと受講できませんのでご注意を。

ドットインストールを参考に開発環境を構築

Macを持っている時点で開発環境は手に入れているようなものなので、あとはきれいに整えるだけです。そのやり方はドットインストールの動画を参考にしました。これは無料です。

ローカル開発環境の構築 [macOS編] (全14回)
macOS上にローカル開発環境を構築していく方法について見ていきます。

ローカル開発環境の構築 [macOS編] (全14回) – プログラミングならドットインストール

Progateを使って手を動かす

実際に手を動かしながらプログラミングを学べる「Progate」というサイトがあります。HTMLやCSSをはじめとして、さまざまな言語を学ぶことができます。

Progate(プロゲート) | Learn to code, learn to be creative.
Progateはオンラインでプログラミングを学べるサービスです。プログラミングを学んでWEBアプリケーションを作ろう。

Progate | プログラミングの入門なら基礎から学べるProgate[プロゲート]

その中のPythonコースを、今日1日で一気に終わらせました。これまで意味不明な文字の羅列だったのが、ちゃんと読めるようになった気がします。

ただ、このまま放置していたら忘却曲線まっしぐらなので、短いスパンで繰り返した方がいいですね。今週はこれで特訓します。

本で深める

動画やオンラインの講座だと「困ったときに参照しにくい」というのが難点です。なので、バイブルとなるような本も買おうと思っています。

今考えているのはこの本だけど、他にもこれいいよ!っていうのがあったらTwitterで教えてもらえると嬉しいです。

実践あるのみ

結局のところ、試行錯誤しながらプロダクトを1つ作ってみるのが近道だと思うんですよ。具体的なイメージはまだできてないけど、早いとこ何か作ってみよう。


まとめ

今まで後回しにしてきたプログラミング学習ですが、やっとこさ重い腰を上げることができました。やると決めたからにはやるので、このまま前に進みます。

次に読むなら:プログラミング必修化について

プログラミング必修化がやってくる。楽しんで学んでもらうために大人にできることは? [PR] – starnote*
大前提は「時代の流れについていくこと」かな。 Z世代による本気のコンテスト 2019年4月末に開催されていた、「全国高等専門学校ディープラーニングコンテスト(DCON)2019」。ディープラーニング×ハードウェアをコンセプトにした、高専生による事業創出コンテストです。 → About DCON – DCON 高専出身者を含む起業家有志が各1名ずつメンターとして参画し、開発した作品の「事業化」を支援し、作品の発表は、起業をイメージし事業を紹介するプレゼンテーションで行っていただきます。 ロボコンで有名なように、高専生といえばハードウェアの知識は抜群。そこにディープラーニングのアイデアと技術が加われば鬼に金棒…!ということで大きな期待を受けて開催されているそうです。 技術を競うだけじゃなくて、そこからビジネスへと展開できるかという視点も必要になる「本気の」コンテスト、というのがまたアツい。 聞くところによると、メンターや審査員の方々もディープラーニングのプロフェッショナルばかり。技術審査員の中には、人工知能(AI)研究で有名な東京大学大学院の松尾教授のお名前も。 押し寄せるプログラミング思考 このように、最近メディアでよく見かける〈ディープラーニング〉や〈人工知能(AI)〉という単語。 果たしてどれだけの人がその意味をわかって使っているのか? その価値をわかって議論しているのか?——こんなことを考えさせられます。言葉だけが独り歩きしてない? とはいえ、2020年には小学校でもプログラミング教育が必修となるし、ますます身近にせざるを得ない分野です。もはやITアレルギーとか言ってる場合じゃない。 必修化の目的は「プログラミング思考」を育んで論理的思考力を鍛えることだけど、そんな教育を受けてこなかった大人側はどのようなスタンスで臨めばいいのでしょうか? 思い切り挑戦できる環境 ここで、中国のAIベンチャーに関する話をひとつ。 中国の深セン(Shenzhen)は「猛スピードで変わる巨大都市」とも称され、急速な発展を遂げているのはご存じの通り。続々と若い人材が集まり、多くのテクノロジーベンチャーで活躍しています。

プログラミング必修化がやってくる。楽しんで学んでもらうために大人にできることは?

小学校で必修化されるので、今後プログラミングがわかる人口は増える一方です。だからある程度わかっておかないと、これからの社会ではついていけなくなると思うんですよね。


フォローしてもらえると嬉しいです

Twitter でみけめろ@starnote*をフォロー

Feedlyでstarnote*を購読 follow us in feedly

関連記事はこちらです

 

Leave A Reply

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

Navigate