佐藤 由佳さんのインタビュー

機械学習講座受講
佐藤 由佳さんのインタビュー

佐藤 由佳

佐藤 由佳

仮想通貨取引所Liquid by Quoineを運営するQUOINE(コイン)株式会社にてData Scientist。
新卒ではシンプレクス株式会社に入社し、金融機関向けのデリバティブトレーディングシステム、リスク管理システムの開発や保守運用に従事。
その後、野村證券株式会社にてデリバティブ取引やレポ取引の担保管理の領域でユーザーサイドとしてシステム要件定義等に従事し、グローバル金融規制対応における業界活動でのファシリテーションなども担当した。
2017年12月よりAIジョブカレの機械学習講座で機械学習を学び始め、2018年6月より現職。

AIジョブカレについて

佐藤 由佳さんのインタビュー

AIジョブカレに学びに来た背景

前職の証券会社の中でもAIの技術を使って業務効率化を図る案件が社内で出てくるようになったり、自身の関わる業務領域でもそういったサービスを提供するベンダーが出始めたりして、ユーザーとしても学ばなければいけないなと思ったのがきっかけです。

証券会社では日々大量の顧客とのメールを捌きます。
その際、結果としてやり取りする内容は似ていても顧客によってメール本文での言葉の使い方や表現が微妙に異なったりします。
これまでは人が読んで返信していましたが、そういったことも学習して社内システムへ反映して自動返信できるようなソリューションであったり、あるいは、金融商品のやり取りは契約書に基づいて行われますが、そういった契約書も古いものはスキャンされた画像で保存されていたりしており、人が目で見て判断していたものを、デジタル化のためにAI技術を活用して内容を読み取るような話も聞くようになりました。

そういった流れの中で、私は基本的に人に任せるよりも自分でやる方が好きなので、せっかくなら自分でAIの分野も勉強しようと思って、データサイエンティストについて調べ始めました。

(自然言語処理に興味があってなろうと思ったのか)正直なところ、当時は自然言語処理が何なのかとか機械学習やデータサイエンスが何なのかすらも何も知りませんでした。
ただ、調べていくうちに興味が湧いてきて、AIジョブカレの初回授業を受けて、これは面白い!と思ってすっかり虜になってしまいました。

なぜ他のスクールではなくAIジョブカレを選んだのか、同時に問い合わせたスクール

インターネットで調べてみると、データサイエンティストを養成しているスクールがあることを知り、実は最初にお話を聞きに伺ったのはデータミックスさんでした。
しかし、データミックスさんは金額が数十万と高めで、確か毎週講義+宿題で働きながら通うのは厳しいかな、という印象を受けました。
その後、AIジョブカレを見つけて、授業料が10万円程で、初回の講義を受けて合わなければ返金対応可能、隔週の講義でペース的にもちょうど良いかなと思えました。

AIジョブカレの良かったところ、今後期待するところ

当時はまだこの業界のことを何も知らなかったのですが、今思えばAIジョブカレの講師陣は相当凄い方々が揃っているなと思います。
私が受講した中澤先生もこの業界でずっとキャリアを積まれており、授業の中でも実際の業務での勘所や実践的なお話をいただけて、とても参考になりました。
また、AIジョブカレの機械学習コースでは、一通りの理論と実装を学べるところが良かったと思います。
ただ、Pythonが初めての方には慣れるまで少しハードルが高い感じられるところもあるかもしれませんが、今はPython+数学の講座なども整備されているので、Pythonが不安な方なども大丈夫かと思います。

今後期待することとしては、Exploratory Data Analysis(探索的データ解析)やFeature Engineering(特徴量エンジニアリング)に特化したコースとかができると良いかもしれません。
もしかしたら、統計+Rがそれに近いのかもしれませんが、現実世界では機械学習するためのデータが綺麗に揃っていることはまずありません。
そのため、まずはそういったデータを準備するところから始まります。今の機械学習講座は既に機械学習のモデルを回すのに必要なデータは予め揃っており、それを欠損値補完等の前処理などをして、モデルに学習させていくような流れになっています。
もちろんこの部分が機械学習をまさに行なっている部分なので重要ではあるのですが、実際、業務の中でも一番時間をかけるのは、私たちがどんなデータを持っていて、そのデータをどういう課題を解決するためにどのように使えるのかを考える部分になります。
よく前処理が8割などというお話を聞きますが、まさにこの部分だと思います。

また、Kaggleをやっている方々の中でもよく耳にするのは、「どうやって強い特徴量を作るか」という点です。Kaggleも主催者よりデータが提供されるので、データが揃っているといえば揃っていますが、Top Kagglerたちはより良い精度を出すために、その既存の特徴量から新たな特徴量を作り出すようなことをしています。
強い特徴量が作れてしまえば、あとは予測モデルのパイプラインに処理を流すだけといえば流すだけなので、予測したいことについてどういう特徴量を準備できるかは最も重要な点の1つだと思います。

現実世界に即したデータを用意する必要があるので、講座の準備自体かなり大変かもしれませんが、各業界、各分析テーマで核となるようなデータの作り方のようなものも学べるといざ実戦になった際にもすぐに活躍できるようになるのではないかと思います。(例えば、マーケティングであれば顧客行動予測、HRであれば退職予測、製造業での異常検知、等)

MLを学ぶ上でのTips等あれば(データサイエンティスト職を目指す方向け)

鶏が先か卵が先かという話になってしまいそうですが、未経験からデータサイエンティストを目指す上での一番良い学習方法は、行きたいと思える会社を探して、見つけたらすぐに職務経歴書を送って採用面接を予約することだと思います。
そうすればお尻に火がついて、いやがおうにもAIジョブカレで習ったことを必死に復習したり、本を読んで勉強したりしますので(笑)。
私はお尻に火がつかないとなかなか前のめりに取り組めないので、実際この通りやって、ある日から突然家族そっちのけで部屋にこもって必死に勉強しました。理解してくれた奥さんには大変感謝しています。

一応元のご質問に真面目にお答えすると、順当に機械学習を学ぶのであれば、AIジョブカレで習う際に使ったデータセット以外のデータでも習ったことを試してみるのが良いと思います。
やはりデータセットが異なれば前処理やチューニング等、行うべきことは異なってきますので、その分学びがあると思います。
あとは、自分で分析してみたいテーマなどがあって、ある程度データが集まるのであれば、そういったものでやってみるのも良いと思います。
とにかく実際に自分の頭で考えて、自分の手でコードを書いて動かすことが一番大切だと思います。
また、機会があれば人に教えたりするのもよいと思います。
家族や身近な友達とかでも良いと思います。やはり自分で勉強して自分で実装するのと、人に理解してもらえるように説明するのは異なります。
それまで自分の中でもあいまいにしか理解できていなかった部分など、人に教えることを機に改めて自分でも調べ直したり、アウトプットすることで理解を深めたりすることもできると思います。
今、私もAIジョブカレのもくもく会でメンターをさせていただいていますが、やはり私も全てを理解しているわけではありませんので、一緒に調べながらご質問に答えさせていただくこともあります。
そうした経験をすることで、理解が強固なものになりますので、私にとってもとても大切な学習の場になっています。

(数学についてどう思うか)私自身文系出身で数学は今復習中ですが、初める上では必ずしも数学ができなければいけないわけではないと思います。
今はscikit-learn等のモデルが実装されたライブラリがありますので、それをどのように使いこなすかを正しく把握できていればやり始めることはできると思います。
もちろんモデルの中身をチューニングしたりするような段階になってくると、自分で数式を解いて実装したりすることもあるとは思います。
私もこの部分について、とあるデータサイエンティストの方にお話を伺った際に、その方は「車を運転するのにメカニックの知識は必ずしも必要ないですよね。
運転の仕方と守るべきルールを正しく把握できていれば、目的地までたどり着けますよね。機械学習における数学はまさにメカニックの部分だと思います。」とおっしゃられていました。
もちろん、チューニングしてF1レースで戦えるような性能が必要であればメカニックの知識も必要だと思いますが、まずは身近な分析課題においては、最初はゆっくりでもいいので、きちんと目的地にたどり着けることを意識した分析をしていくのが大切だと思います。

お仕事について

佐藤 由佳さんのインタビュー

現在のご職業(データサイエンティスト、アナリスト、機械学習エンジニア)に就かれた経緯

もともと、金融機関向けのシステムエンジニアからキャリアをスタートさせて、その後は金融機関でユーザーサイドとしてシステム要件定義などやっていましたので、やはり金融の領域で考えていました。
特にブロックチェーンなどもよく話題に上がっていましたので、そういったことも学べるようなフィンテックの会社がいいなと思っていました。

そんな中、偶然ブロックチェーン企業合同採用説明会というものが開かれているのを見つけて、行ってみて今の会社をそこで初めて知りました。
そうしたら、本当に偶然そのタイミングでデータサイエンティストの募集があったのと、幸いその場にデータサイエンティストとして活躍されている方もいらっしゃっていて、直接お話を伺うこともできてビジネスも働いている方々も魅力的だったので、すぐに応募したという感じになります。

転職活動をどのように行なったのか

まずは業界のことを全然知らなかったので、AIスタートアップの特集記事や転職サイトなどからどのような企業があるのかを調べました。
あとは、AIスタートアップの方々が自社のソリューションについて説明してくださるようなミートアップに参加したり、AIジョブカレで開いていただいた採用説明会などに参加したりして情報を集めました。

特に参考になったのは、AIスタートアップの方々とミートアップで直接お話させていただけたことや、AIジョブカレの採用説明会から後日会社に招いていただいて、現場の方々のお話を直接聞けたことです。
第一線でデータサイエンティストとして働いていらっしゃる方々からお話を伺うことでどのようなことが求められているのか、といったことや、実際にどのような業務を行うのかといったこともイメージが湧くようになりました。

転職成功時に先方に評価されたと思うところ

未経験からであることは伝えていましたが、面接ではやはり機械学習のことや統計のことなど質問されました。
ただ、その時もAIジョブカレで一連の機械学習の流れを学べていたので、ある程度答えることができました。
また、わからないところも説明してもらった内容を理解できるぐらいの知識は身につけられていたので、そういった部分は評価していただけたのかなと思います。

また、サンプルのデータを使って予測モデルを作るプログラミングテストも課されたのですが、そこでもAIジョブカレで一通り習ったことを元に最低限予測結果を返すところぐらいまでは行きました。
ただ、やはりデータの意味であるとか、精度がうまく上がらない部分などあったので、わからない点は素直に質問しました。
正直、こんなこと質問したら落とされてしまうのではないかとか不安もあったのですが、大変親身に回答していただけたので、今の自分の力量でできる限界のところまで繰り返し質問させていただいて粘りました。
もしかすると、こういったやり取りも実際に働き出したらこれが日常になりますので、素直に質問して、新たに理解できたことを元にまたトライアンドエラーを繰り返し、またわからなければ質問する、ということ自体も評価していただけたのかもしれません。

最後に、なんとかやり切れるところまでやりきってソースコードを提出したあと、タイミング的にAIジョブカレの最終課題のコンペがあり、こちらで運よく優勝できたので、それを伝えたら、次の日に内定をいただけました。
この優勝が内定に影響したのか真偽のほどは不明ですが、時系列的にはこのような形になっています。

正直、最終コンペの準備はほとんどできておらず、AIジョブカレの講義と並行して転職活動をしていたので、ほぼそっちにかかりきりになっていました。
しかし、プログラミングテストで課されて、当時の自分として限界までチューニングを施した予測モデルのパイプラインがそのまま活用できそうだったので、データセットの違いだけ実装し直して、AIジョブカレの最終コンペに臨みました。
そうしたら優勝できたので、採用活動をしていなければ優勝することもできなかったでしょうし、優勝していなければ採用していただけなかったかもしれません(笑)。そう思うと本当に奇跡と思えるような偶然が重なったなぁと思います。

今後目指すキャリア

私はもともとビジネス側で課題解決をしていたので、それに加えてデータサイエンスもうまく活用してビジネス課題の解決にコミットしていけるような人材になりたいと考えています。
また、私は文系で数学も復習中ですが、いずれは機械学習モデルの中身のチューニングや、arXivなどに上がっている最新の研究論文の実装なども自力で行えるようになっていきたいと思います。

(目指すデータサイエンティスト像について、データサイエンティスト寄りか、機械学習エンジニア寄りか)データサイエンティストや機械学習エンジニア等の役割分担のお話もよくでますが、私はまだ駆け出しですし、どっちが自分の進むべき道かとか考えるよりは、広く学ばせて頂く段階だと思いますし、最終的にもあまり自分はどっち寄りですというラベルは貼りたくないなと思っています。
あとよく議論に上がるのは、ビジネス寄りなのか、分析者・エンジニア寄りなのかというのもありますが、私はデータ分析に関わる全ての総合力で勝負したいと思っているので、その点についてもラベルを貼るつもりはありません。
前職まではビジネス課題を解決することをずっとやってきていましたし、数学も復習中なので今はビジネス寄りのつなぎ役的な部分が強いていえば強みかなとは思いますが、目指すところは数学や理論等も含めて自分で作れるようにもなりたいと思っています。

(中長期のキャリアについて)正直、先のことはあまり考えられていません。
1年前にAIジョブカレで講義を受け始めた時に、半年後にデータサイエンティストの職について、1年後にこういったインタビューを受けさせて頂くようなことは想像もできなかったですし、これから先のこともどうなるかは全くわからないですね(笑)。
今は、幸いやりたい事が山ほどあるので、それをひたすらやり続ければ、そこに私の道ができると信じて進んで行こうと思っています。

スキルアップや情報収集について

佐藤 由佳さんのインタビュー

お仕事以外でスキルアップのために行なっていること

まずは、カンファレンスやミートアップなどに参加をして、この業界をリードしている方々のお話を直接聞いて学ぶことは非常に良い刺激になりますし、どのような領域でどのようなことが課題になっていて、それをどのように解決してきたかなどお話を伺えるので、大変参考になります。

あとはAIジョブカレのインタビューで触れたら怒られそうですが、今は東京大学松尾研究室の寄付講座のDeep Learning 基礎講座にも通っています。
無料で受けられて、GPUの環境も一人一つ割り当てられて、Deep Learningにも色々と分野がありますが、その道の最新の研究をしている方から理論や実装を学べるので、とても贅沢だなと思います。

自学自習の面では、自宅でも簡単なアプリケーションをPythonで実装する練習をしてみたりしています。
読書もしていますが、読書は読んでいるときはわかったつもりになっても、いざやろうとすると理解できていなかったりすることがよくありました。
そのため、今はアウトプットの比重を高めにして、読書等でインプットしたらそれを使って何か手を動かしてやれることを見つけて、実装するということをしています。

定期的に閲覧しているブログやメディア

あまりこれと決まって閲覧しているものは無いです。主に使っているメディアはTwitterで、この業界をリードしているような方々やTop Kagglerをフォローして、そういった方々が日々どういったことを考えているのかや、どういった情報に反応しているのかなどを見たり、話題に上がっている記事を読んでみたりしているような感じです。
あとは、個別の分析テーマごとに検索をかけて勉強になりそうな記事や論文を見つけてきて読んだりしています。

参加している勉強会やコミュニティ

今は松尾研究室のDeep Learning 基礎講座に参加しており、ここでもコミュニティ作りが行われていて、提出し終わった宿題について受講生同士でも活発に議論が行われたりしています。
実際に自分も宿題で取り組んだ内容だったりするので、そういう切り口があったのか、とか新しい発見がたくさんあるので本当に勉強になります。

また、Kaggler-ja(https://kaggler-ja.herokuapp.com/)というコミュニティ(Slack)にも参加しています。
私は全然発言できていないのですが、過去の議論などを読むだけでもものすごく勉強になります。Kaggler-jaでは上級者が初学者の質問に懇切丁寧に答えてくれます。
百戦錬磨のTop Kagglerの方々はあらゆる分析手法に精通しているので、初学者にとっては素晴らしい学びの場になっていると思います。

あと先日、Kaggle Tokyo MeetupというTop Kagglerが一同に集結して、過去のコンペの解法やつらみなどを発表する会があったのですが、これは本当に衝撃的でした。
世界の頂点で戦っている方々の情熱や気迫は凄かったです。最新のDeep Learningの手法を使うのは当たり前で、GPUも何百枚使って予測したとか、想像を絶するような世界でした。
この会はGrandmaster/Master、Expert、経験者で枠が決まっており、私のような初心者向けの経験者枠は募集開始から数十分で埋まってしまうので、参加するのは至難の技ですが、いずれはExpert以上の枠で参加したり、LTでも良いので何か発表できるぐらいになりたいなと思っています。

他にもデータ分析系のミートアップは色々開催されているので、著名な方が登壇されるようなものを中心に見つけて、行くようにしています。

これから学ぶ方へのおすすめ書籍

現滋賀大学データサイエンス学部教授の河本先生が大阪ガスに勤められていた頃に書かれた『会社を変える分析の力』を挙げたいと思います。
この本ではデータ分析がビジネスにどのようなインパクトを与えることができるのか、また、データ分析者としてビジネスの意思決定に貢献するためにどのような働きをしなければならないのかなどが詳細に書かれており、データ分析をこれから仕事にしようという方にオススメしたいと思います。
私もこの本をAIジョブカレの採用説明会の後に会社訪問をさせていただいた方から教えていただいて読みました。

次に、AIジョブカレの機械学習講座の推薦図書になっている『Python機械学習プログラミング 達人データサイエンティストによる理論と実践』です。
私は正直この本は推薦図書になっていることを知りながらも、なかなか読むところまで行きませんでした。
パラパラめくるだけでも数式や難しい専門用語が目について、初学者にはとっつきにくい印象を受けていました。
しかし、採用プロセスに入った時に重い腰をあげて最初から読み進めていくと、非常にわかりやすくソースコード付きで解説されているのと、AIジョブカレの機械学習講座の流れとリンクしているので、とてもよい復習になりました。
もっと早くから読んでいればよかったなと思います。
採用プロセスで課されたプログラミングテストで行き詰まった時もこの本からヒントを得て実装したところもかなりありました。
あと似た表紙の『Machine Learning実践の極意』もおすすめです。
前者は実装にもかなりの分量を割いていますが、後者の方はソースコードはそれほど多くなく、どちらかというとデータとの向き合い方について教えてくれるような内容になっています。
こういう分布のデータと出くわした時にはこういう風に分析すると良い、というような具合です。
扱っている題材もKaggleのTutorialで使われているデータセットなどが使われているので、AIジョブカレの講義以外でもこういったものを参考にして手を動かして、KaggleでSubmitしてみるのも良いと思います。

最後に、私は未経験だったので、機械学習のプロジェクトがどのように始まってどのようにリリースされ、運用されていくのかなども全く知らなかったので、『仕事で始める機械学習』はとても参考になりました。
機械学習プロジェクトの典型的なライフサイクルが書かれており、これからそれに携わっていく身としてもイメージが掴めたかなと思います。