Kaggle歴1年で「Kaggle Expert」を持つしぃたけ氏

里洋平氏(以下、里):みなさんこんにちは、里洋平です。今回はKaggle Expertで、メーカーでデータ分析業務をされている、しぃたけさんに、Kaggleとその魅力についてお話を聞いていきたいと思います。しぃたけさん、本日はよろしくお願いします。

しぃたけ氏(以下、しぃたけ):よろしくお願いいたします。

:では、さっそくですが、まず自己紹介をお願いできますか。

しぃたけ:某日系メーカーでデータ分析系の業務をしている、しぃたけと申します。Kaggle歴はここ1年ぐらいで、先ほどのご紹介のとおり、「Kaggle Expert」という称号を持っております。このたびは呼んでいただいて、ありがとうございます。よろしくお願いします。

:よろしくお願いします。今聞いていると、Kaggle歴自体は1年ぐらいなんですね。

しぃたけ:そうですね。

:もっとやられているのかなと思っていました(笑)。

しぃたけ:いえ、コロナ禍ぐらいで始めましたので。

:そうなんですね。

大学時代はマシンラーニング系を研究

:Kaggleを始めたきっかけなどがあれば教えてください。

しぃたけ:Kaggleを始めたきっかけは、友人の紹介です。もともとデータ分析系の仕事とか、大学の時にちょっとだけマシンラーニング系の研究もしていたので、そういったAIとかの分野に興味がありました。もっと自分の知識を深めたいなと思っている時に、友人にその話をしたら、Kaggleというプラットフォームがあると聞きまして。最初の登竜門と言われている「タイタニック」を提出して、そこから本格的に始めたという流れです。

:ちなみにどんな研究をされていたんですか?

しぃたけ:簡単に言うと歩行障害を持っている患者さんへの歩行障害の原因の特定みたいな、いわゆる多クラス分類みたいな研究と、あと画像処理を使った人体検出みたいな研究を当時やっていました。

:けっこうやっていますね、機械学習のところですね。

しぃたけ:ただ当時は、SVM(サポートベクターマシン)とか(が主流で)、ディープラーニングとかがあまりなかったような、まだそこまで発展していなかったので、本当にゴリゴリ手動で特徴量を作るみたいな時代でしたね。ニューラルネットワークとかは本当に初めてです。

:ちなみに何年ぐらい前ですか?

しぃたけ:研究していた時ですかね?

:はい。

しぃたけ:それは5年ぐらい前ですかね。

:確かにそれぐらいだと、ディープラーニングはそこまでって感じでしたよね。

しぃたけ:「すごいのが出たらしい」程度でまだ止まっていた時代。

:確かに(笑)。ちなみに友人の方は何関係なんですか? 研究室とか?

しぃたけ:友人はぜんぜん関係ない高校の友人なんですが、IT系に詳しい人で。AtCoderとかKaggleとか、そういうのがあるよって、そこで教えてくれた感じです。

:その友人さんがいらっしゃって、すごく良かったですね。

しぃたけ:そうですね。1つのきっかけになりましたね。

:もしいなければ、始めていないかもしれないですもんね(笑)。

しぃたけ:そうですね。今、インタビューは受けられていないですね(笑)。

:感謝ですね、僕も感謝します(笑)。

しぃたけ:そうですね(笑)。

Kaggleはデータ分析をする上でこれ以上にない場所

:では続けて、しぃたけさんが考えるKaggleの魅力と、実際の業務にどう活かされているのか、そういったことのお話をいろいろ聞きたいなと思います。

しぃたけ:ありがとうございます。魅力はやはり、ふだんの生活では絶対に関われないような強い方というか、頭のいい方のコードや分析の手法が見られて、自分自身のレベルアップにつながるというのが一番だと思います。

:なるほど、スキルアップ。

しぃたけ:そうですね。最新の論文もそこで紹介されていたり、実装も実際にされていたりするので、実際のデータを使いながら最新の論文にも触れられます。データ分析をする上では、本当にこれ以上にない場所なんじゃないかなと自分は思っています。

:データ分析とか、なかなか他の人のコードを見る機会とかはあまりなかったり、データがなかったりしますよね。

しぃたけ:そうですよね。

:かつては、教育は難しいところがあったなと僕自身も思っていますが、最近はKaggleとかを中心に、今おっしゃっていたことが本当に手軽にできちゃいますよね。

しぃたけ:そうですよね。練習というか、なんですかね。データもあるわ、コードもあるわで、マシンラーニングをやっている人からしたら、こんなにすばらしいことはないんじゃないかなって。

:そうですよね。実際1年ぐらいで、どれぐらい自分の中でレベルアップできた印象ですか?

しぃたけ:当時はニューラルネットワークもよくわかっていませんでした。活性化関数、誤差逆伝播法など、基礎的なところはだいたいわかってきたので、あとは強い方のコードを見て、少し応用めいたモデルの理解もちょっとずつできるようになってきたかなというところですね。

知識を深めることで「できないことはできない」と言えるようになった

:業務へのところでなにかありますかね? もちろんレベルが上がっているので、当然活かされているとは思うんですけど(笑)。

しぃたけ:そうですね(笑)。そこで自信がついたというのが、正直一番だとは思います。仕事のデータをもらって自分で分析をするんですが、これまでは自分が知らないだけで、もっとすごい分析の方法とか、答えを出す方法があるんじゃないかなという不安を持ちながら、分析できるか見ていたんですけど。

Kaggleをすることで、こういうデータの時はこういう分析をすればいいというパターンがなんとなく見えてきたので、「できないことはできない」と、「No」と言えるようになったのが、自分としてはすごく良かったことかなと思っています。

:その自信というところ、すごくいいなと思いました。「できないことをできないと言う」のは、最初のうちは絶対難しいじゃないですか。

しぃたけ:そうですね(笑)。

:もしかしたら、別の方法でできるんじゃないかとか、なんとなくできると思って取り組んだらできなかったとか、そういうパターンはけっこうあるかなと思っています。これはもう経験を積むしかないのかなと思っていましたが、それがKaggleをやることでできるということですもんね。

しぃたけ:そうですね。こういうデータの時は、こういうのがあるというのは、知っていないとできないことだと思います。これだけデータを見ていてもできない、パターンがないということは、実務上では、このデータでは答えが出せないとまで言えるんじゃないかなと。

実務だと、いわゆる「ゴミデータ」が混ざる時もけっこうあるんですよね。そういう時に自信を持って「No」と言えるようになったのは、本当に良かったです(笑)。

:もちろん、言える範囲でいいですが、今まで出会った中で、これはきついなと思ったデータはどんなデータですか? 

しぃたけ:例えば、Excelに手入力されたデータが数千行存在していて、そこからパターンの傾向を導き出せみたいなことを言われたんですけど、手入力なので誤字脱字だらけなんですよね。これは分析手法とか、それ以前の問題なんですけど、前処理をするだけでも丸1日かかってしまいそうだったので、早々にお断りしたことはあります(笑)。

:手入力だとミスがいっぱいありますからね。

しぃたけ:そうですね。例えば数値も、半角もあれば全角もあればで、ぜんぜん統一されていないとかも、実務分析の現場ではけっこうあるので、なかなかつらくなります。せめてフォーマットを統一してほしいな、というところだけをお伝えして、事なきを得ました(笑)。

:やはり、けっこう苦労されているんですね。

しぃたけ:そうですね。まだこういう分野についてメーカーの理解は少ないですね。

コミュニティに対して貢献ができることも魅力

:魅力だったり、あるいは活用だったりというところのテーマで、他にもありますか?

しぃたけ:あとはいろいろな分野の方と関われて、自分の知見というか、人脈も広がったかなと少し思っています。

:コミュニティ的なところですね。

しぃたけ:はい。このKaggler界隈は、Twitterとかにけっこういるんですが、そういった方とコミュニケーションが取れますし、他の業種の知識とかも、そういったところで話が聞けたりするので。(Kaggleを)始めていなかったらこういったところの話を聞けないんだろうなと思うので、自分としては非常に良かったなと思っています。

:勉強会とも近い感じがありますね。自分は「Tokyo. R」という勉強会をやっていましたが、そこにはいろいろな業種の人が参加されていて、その業界ならではの知見とかをいっぱい聞けて、かなりスキルアップできたなという実感もあるので、それにかなり近い感覚ですよね。

しぃたけ:そうですね。まさにそのとおりだと思いますね。

:あとはコミュニティに対して、自分自身がなにか貢献できたり、あるいは、お互いにできるというところはいいですよね。

しぃたけ:そうですね。「Notebook」とか、この「Discussion」とかに投稿すると、「いいね」が付いたりコメントももらえるので、確かにコミュニティへの貢献というところは自分もすごく大きいなと思っています。

最終提出ソリューションのNotebookを紹介

:実際にどんな感じなのか、軽く見せてもらったりできますか?

しぃたけ:2021年に参加したコンペの最終提出ソリューションのNotebookを、昔ちょっと提出したので、良かったらそちらをお見せします。

:ぜひぜひ。見ている方も実際の画面を見たほうがイメージできるかなと思うので。

しぃたけ:ありがとうございます。これは1〜2ヶ月ぐらい(※動画収録当時)前に終わった「CommonLit」という自然言語処理のコンペです。どういうモデルを使ってどういう方法で提出したのかをまとめて、Notebookに提出したものがこれです。

これはその友人と組んでやったやつなんですが、こうやってモデルを5つぐらい作って、スタッキングしたり、アンサンブルしたり、エンベッティングを取ってきてSVMで回帰したりしたのをブレンドして、最終サブにしました。これを図示して、自分がどういう努力をしたのかを見える場所に置いておきたいなと思い、オープンにしてみました。

こうすると、自分の作ってきたものがまとまるので、自分の頭の整理にもなりますし、他の方に見せることで、その方の勉強にもつながるんじゃないかなと思って、ちょっと時間はかかったんですけど、絵を描いて。

:かなりがっつり描かれていますね。

しぃたけ:当時はNotebookにソリューションを公開してやろうと思って、絵を描きながらずっと参加していました。

:(Table of Contentsを見て)「Our idea」とかがあって。

しぃたけ:そうですね。

:で、「reference」。

しぃたけ:そうですね。参考にした方には、こうやって「Thank you」という意味ですね。

:お~、いいですね。このreferenceがあるのはかなりいいですね。大事だと思います。

しぃたけ:公開Noteをされている方は、本当に頭のいい方ばかりなので、こういった方々の知見をちょっとずつ自分のモデルに入れながら今はやっています。最終的にすべて提供する側にまわりたいのですが、例えばこの「BERT」を使ってモデルをゼロから作ったりとか、まだしっかりできなかったりするので、今のところはみなさまの知見をお借りしています(笑)。

:なるほどですね(笑)。

しぃたけ:ちなみにこうやって出すと、いろいろな方からコメントや「いいね」をもらえて、銅メダルをもらえたりするので、こういったところで貢献している感じも出るのかなと、自分的には本当におもしろいなと思っています。

ちなみにこの「Japan~」は、「日本人は最近すごいな」みたいなことを言われていて、Kaggler界隈でも「日本人が最近強くなっているよ」とか。

:そうなんですね(笑)。ちょっとそこまでは知らなかったですね。なるほど(笑)。へぇ〜、いいですね。

しぃたけ:最近(コメントが)来るようになって。

:そんな感じで機械学習をやる方が増えたり、スキルアップにどんどん活用されたりするといいですよね。

しぃたけ:そうですね。そういったところに少しでも自分が貢献できている感じが出せたら、いいなと思っています。

:どんどん出していってください(笑)。

しぃたけ:ありがとうございます(笑)。

賢く周りを頼って知見を借りながら進めていけば成長していける

:次が最後のご質問です。この動画を見て、今からKaggleにチャレンジしようと思っている人へのアドバイスなどあれば、ぜひお願いします。

しぃたけ:Kaggleを始めたばっかりの時だと、本当にわからないことだらけで、挫折する方がすごく多いと思うんですよね。モチベーションがすごく下がってしまって挫折することが多いと思いますが、Kaggle内で仲間をつくったり、勇気を出して「チームを組んでください」と言ったりすることで、そういったモチベーションの低下はなくしていけると思います。

賢く周りを頼って、みんなの知見を借りながらKaggleを進めていけば、きっと徐々に成長していけると思うので、これから始めていかれる方はがんばっていただきたいなと思っています。

:ありがとうございます。チームを組むとか、最初はちょっとハードルが高そうですけどね(笑)。

しぃたけ:そうですね。でも、あれは勇気を出して言うしかないので(笑)。

:あとは似たような話かもしれませんが、Twitterとかでそういう方をフォローしたりして、コミュニケーションを取ってみるのも良さそうですよね。

しぃたけ:そうですね、日本人はTwitter界隈にいるので、そういった方と仲良くなれれば情報も入ってきやすくなると思います。おすすめです。

:そうですよね。ということで、じゃあ今からKaggleをやろうと思っている方は、勇気を出してチームを組んだり、コミュニケーションを取ってみてください。ということで、今回は以上です。しぃたけさん、ありがとうございました。

しぃたけ:ありがとうございました。