• Home
  • ニュース
  • 松尾研リサーチインターン体験記 vol.2 【アルゴリズム】Transformerのアーキテクチャ改善に関する研究
  • 松尾研リサーチインターン体験記 vol.2 【アルゴリズム】Transformerのアーキテクチャ改善に関する研究

    松尾・岩澤研究室では,「知能を創る」というミッションのもと、世界モデルをはじめとした深層学習やそれを超える基礎技術の開発、ロボティクスや大規模言語モデル、アルゴリズムの社会実証といった幅広い研究領域で活動しています。

    こうした活動を更に拡大するため、リサーチインターンシップを開催し、15名の方にご参加いただきました。

    ▼リサーチインターンシップ概要
    https://weblab.t.u-tokyo.ac.jp/news/20240417/

    ▼インターンテーマ/メンターの紹介記事
    https://weblab.t.u-tokyo.ac.jp/2024-04-26/https://weblab.t.u-tokyo.ac.jp/2024-04-26/

    本記事では、リサーチインターンに参加いただいたメンバーの体験記をご紹介します。


    • 自己紹介
       今回のインターンに参加させていただいた清水篤です。普段は企業に勤めており、インターンはフルタイムと比べて週の稼働時間半分、期間2倍というかたちで対応いただきました。2023年にコンピュータサイエンスの修士号を取得しその時はactive learningの研究をしたのですが、LLMやtransformerにも関心があったのでいい機会だと思い応募しました。ICLR 2024で松尾研の人と知り合う機会がありいろいろ話をさせていただいたことも後押しになりました。私のように企業勤めで他とはバックグラウンドが違う人間も柔軟に受け入れてくれる懐の深さは松尾研の特徴のひとつだと思います。
    • 研究内容
       谷口特任研究員のもと、「Transformerのアーキテクチャ改善に関する研究」をテーマに取り組みました。具体的にはpositional encodingの工夫によるlength generalizationの改善を研究しました。
       Chat-GPTをはじめとするLLMはモデルに入力できる文章(コンテキスト)の長さがあらかじめ決まっており、まずは小さいコンテキスト長に対して学習を行った後、fine-tuningで長めのコンテキストにも対応できるようにするのが一般的です。想定以上の長さのコンテキストを入力することも不可能ではないですがモデルの精度が劣化することが知られており、positional encodingにその原因があると指摘されていました。
       一方でモデルをより役に立つものにするという観点では長年アーキテクチャやデータセットなど学習の課程に焦点を当てた研究がなされてきましたが、近年inference time computeという言葉が表すように学習済みのモデルからいかに能力を引き出すかという切り口からも様々な成果が報告されています。そしてinference time computeではLLMにたくさんの情報を与えたい(≒長いコンテキスト入力したい)場面も多いことから、positional encodingの改善によってLLMがより長いコンテキストを処理できるようになればインパクトも大きいだろうというのがこの研究のモチベーションでした。
       ”Attention is All You Need”の論文では三角関数を用いたpositional encodingが使われていますが、コンテキスト長やタスクに関わらず一定の周波数からサンプルすることでposition情報を表現しており、私たちはここに改善の余地があると考えました。どの周波数が最適かについては事前に推定することが難しいため、周波数を学習可能なパラメータとしモデルの学習時に周波数も学習させるというアプローチを取りました。これにposition interpolationという既存手法を掛け合わせることで、先行研究よりも優れたlength generalizationの結果を得ることができました。Position interpolationとはtokenのpositionを連続した自然数で表現するのではなく、例えば[0, 1]など決まった区間を等間隔に区切ることで得られる値を使用する手法です。
    • 最後に
       
      私の場合はメンターとは週に1回キャンパス内の研究室にて30-60分のミーティングをしていました。基本的には関連論文やシミュレーション結果について私から報告し、それを元にディスカッションすることで次の週の方向性を決めるという形で研究を進めていきました。私が行き詰まった際には大枠の方向性からコードのデバッグに至るまでメンターが打開してくれたので非常に頼もしく感じていました。
       私の学生時代と比較して松尾研がいいなと思ったことのひとつにcollaborativeな雰囲気があることがあります。学生の皆さんからは、HPCの使い方に困った際にすぐ気づいてサポートしていただいたり、先行研究をまとめたスライドを共有いただいたりしました。また研究室内のポスターセッションでは「こちらの課題を一緒に考える」というスタンスの研究員の方々から様々な意見をいただくことができ、とても有意義なディスカッションができました。
       最後になりましたがこのような貴重な機会をいただきまして本当にありがとうございました!

    いかがでしたでしょうか?
    松尾研では研究員を積極的に募集しております。気になる方は下記をご覧ください!
    https://weblab.t.u-tokyo.ac.jp/joinus/career/