- Webエンジニア
- DX・AIコンサルタント
- コンサルティング
- 他17件の職種
- 開発
- ビジネス
- その他
先週より、ABEJAのインーン参加者による体験談をお届けしています。
IoT,Bigdata,AI時代に、最高の仲間と過ごしたインターン
インターン体験談:自分の正しい道を探して/京都大学工学部G.K
今回は、Labsコース参加者の声をご紹介します。
Who am I
豊橋技術科学大学 情報・知能工学課程に在籍する蓑手智紀と申します。 大学では行動知能システム学研究室に所属し、主に知能ロボットの研究を行っています。Deep Learningを用いることで、より高度なロボット制御が実現できるのではないかと考え、試行錯誤することで学習を行うDeep Reinforcement Learning(深層強化学習)の分野が主な研究範囲です。
この研究内容に至る背景は、ゲーム好きだった幼少期に遡ります。遊ぶだけでなく、次第に自分で作ってみたいと考え始め、小学生の頃にインターネットを使ってゲームの作り方を調べました。このときに初めてプログラミングを知り、様々なサイトを参考にして実際にプログラミングの仕方を学び始めました。学ぶうちに、自分で作ったプログラムなのに、想像もつかない結果を出す人工知能の存在を知り、強い憧れを抱きました。
そして転換期は高専5年生の卒業研究のテーマ決めです。丁度、Deep Learningがあちこちで話題になっていた頃であり、私はDeep Learningの性能の高さに魅せられて、本テーマを決定しました。
インターン参加目的
大学進学後もDeep Learningの勉強を続けていたものの、身近に、豊富な知識を持つ方となかなか出会うことができずにいました。インターネットで論文を調べては読んでいたものの、思うように進めることができずに、もどかしい気持ちで日々を過ごしていました。そんな時に出会ったのが、Deep Learningを中心としたビジネス展開をおこなうABEJAさんです。ABEJAさんなら優秀なDeep Learning研究者のもとで勉強ができると思い、インターンに参加させていただきました。
インターンでの取り組み
インターンではLabsコースに参加をさせていただき,2012年のABEJA創業時からDeep Learningの研究をおこなっているCRO緒方さんの下でDeep Learningを用いた異常検知の調査、作成に取り組みました。
まず沢山の英論文を読み、異常検知の仕方を調査して手法を理解し、実際にプログラムに起こしてみることにしました。取り組み始めるまでは不安でしたが、いざ調べてみると高専5年のときに取り組んだ研究と似ている部分が多いことに気づきました。
具体的には、Deep Learningを用いた異常検知では、基本的にはDeep Learningの実現手法のひとつであるAutoencoderと呼ばれるアルゴリズムを用います。このAutoencoderが、私が高専のときの卒業研究で用いた手法でした。Autoencoderは入力層と中間層、出力層がそれぞれ1つずつある2層ネットワークで、出力データが入力データを復元するように学習します。中間層の表現力が入力・出力層よりも低い場合に、このネットワークは少ない情報からできる限り入力データを再現しようと学習するため、入力データの特徴を学習するようになるのです。
異常検知では、このAutoencoderの特性を利用します。通常の場合、異常とは滅多に起きない事象のため、全体のデータに比べてデータ数が圧倒的に少なくなります。そのため、Autoencoderに入力データをうまく復元するように学習させると、正常データの特徴はうまく学習して復元できますが、異常データの特徴は平滑化されてしまい、うまく復元することができなくなるのです。すなわち、異常データを含む入力データを学習済みのAutoencoderに入力すると、出力は異常データが除去されたものとなり、当然復元率も下がるわけです。
私はこれを手書き文字のデータセットで行いました。まず、入力データと復元データの差分をヒストグラムであらわすと綺麗な正規分布になりました。ここから信頼区間99%に含まれないデータを可視化し、信頼区間50%に含まれるデータと比較します。信頼区間99%に含まれないデータの手書き文字は人の目でも正しく判別できるか怪しいものが多々あるのに対して、信頼区間50%に含まれるデータは比較的綺麗な筆跡であることが確認できました。
復元エラー率の分布を可視化した際は、実は最初は二条誤差のヒストグラムを可視化したために、どんな分布かを明言できませんでした。そこで社員さんと議論をしたところ「二乗しなければ正規分布になるのではないか?」という結論になりました。そこで、そのとおりに計算式を変更してみると、正規分布にかなり近い形になりました。感激しながら、試しに平均と分散を計算して正規分布の曲線を重ねるとほぼぴったり重なり、さらに感激して非常に心が躍り、議論しあった社員さんとともに歓び合いました。その感激をLabsチームにも共有したいと思い、LaTeXでレポートを作成して共有しました。
行き詰ったときは何が悪いのかがわからず、とても頭を悩ませましたが、どうしてもわからないところは社員さんに相談したり、議論をしたり。ときには一緒に頭を悩ませて、打開案が出れば祈るような気持ちでプログラムを修正したりする日々は、とても刺激的でした。最終的に問題を解決できたときは、大きな達成感を得ることができました。
自分の価値観をとことん突き詰める
インターンでの取り組みは、技術的な課題への挑戦だけではありません。自分の価値観そのものや、それが形成された経緯、そしてこれからの道を考え続けることが求められました。この、「自分の強みは何か」「自分は何がしたいのか」を突き詰めることが、インターン中の最も大変だったことです。そんな中で、ある時社員さんから私のインターンテーマについて尋ねられる機会がありました。その方はセールスや事業開発を担当され、自分とは異なるバックグラウンドの方だったので、できるだけ専門用語を使わないように説明をしようと考えました。すると、「君は専門的な事柄を、その分野に精通していない人に対しても、うまく説明する力を持っているね。」と言ってくださりとても嬉しかったです。自分の強みがひとつ見つかったなと思い、自信に繋がりました。
インターンでの学び
技術力よりも技術に対する姿勢が大事
社員さんとの話の中で、自分の成長に向き合うために心理学に興味を持ち、普段から心理学の本を読み実生活に活かしていることを何気なく話した際に、いいねと評価されることがありました。ここで気づいたことは、今どんな技術力や専門的知識を有しているかよりも、どんな姿勢で技術力や専門的知識を身につけるかが大事だということです。
特にIT技術の進化は非常に早く、最先端技術と呼ばれたものが、すぐに時代遅れになってしまいます。今のスキルが大事なのではなく、大切なことは、目的を持って最先端技術を身につけようとする真摯な姿勢だと感じました。 求められる能力は,時代や立場で移り変わりますが,能力を身につける能力は時代によらず必要なことです。意外と軽視されてしまいそうな点ですが、とても重要なことだと改めて学ぶことができました。
新しいことに挑戦しているのだから不安なのは当たり前
インターンに来る前の自分は、将来これからどのような道に進むべきかと不安な気持ちがありました。今自分が取り組んでいることは、自分が目指すべき未来や、なりたい自分になるための道として正しいのだろうか。今までの取り組みに一貫性がなく、自分にはこれといった強みがないのではないかと、漠然と不安な気持ちを抱えていました。
ABEJAさんのインターンでは、様々なバックグラウンドの社員さんや、周りのインターン生と話をする機会をはじめ、自分の将来を真剣に考える機会、人生目標をメンターや役員陣の前で発表する機会があります。そうした機会を通じて自分の価値観をとことん突き詰めた結果、その不安を晴らすことができました。
つまり、正しい道なんて誰にもわからないこと、まだ誰もやったことのないこと自分が目指しているのなら不安になって当たり前だということ、
そして私がしたいことは,自分の興味が赴くことを追い求めていきたいことであり、子供の頃からずっと変わらず、この気持ちを持ち続けていることに気づきました。「自分の好奇心が向く方へひたすら突き進み,人々をワクワクさせるようなことがしたい」これが、自分が本当にやりたいことです。
What is ABEJA
世界を変えようと本気で思っている、各分野のプロフェッショナルが集まってできた会社だと思います。一人ひとりの長所を活かし合い、ひとつのことをやり遂げようとする熱意があります。一言でいうなら、ABEJAは「世界を変えようとするテクノプレナー集団で構成されている会社」だと思います。各個人が明確な意思と誇りを持って働いています。自分の専門分野に凝り固まらず、広い視野を持って夢に向かって努力していく人の集まりなので、ABEJAなら必ずイノベーションを起こせると確信しています。
蓑手さん、ありがとうございました。
インターンを通じ、研究における目標達成と、自分の人生ビジョンに向き合い、これからの道を決めるスタートラインに立つ経験が、今後のより大きな意思決定の糧になりますよう、心から応援しています。
ABEJAではインターン生、正社員採用を通年でおこなっております。記事をご覧になりご興味をお持ちいただけた方は、どうぞお気軽にご連絡ください!
ピザを食べながら、最新技術や人工知能ビジネスの情報交換をする会(11月29日20:00~)
Spark/Scala/AWSでPaaS構築に興味のあるエンジニア募集!