nikkie-ftnextの日記

イベントレポートや読書メモを発信

nikkieのGW 2024

はじめに

ジェイソン土曜日へ1、nikkieです。

今年のゴールデンウイークのログを綴ります。
ライフログ的な記事となります(ブログだけに!)

目次

GWに達成したこと

GWは暦通りを選択しました。

  • MILLION C@STING 01 & 02 合同朗読イベントを楽しんだ!
  • ミリシタのREFRAIN REL@TIONを走った!(プラチナランカー達成🙌)
  • エンジニアニメの登壇準備をした!

MC01 & 02 合同朗読イベント

5/5(日・祝)に夜公演に行ってきました。

私の溺愛しているエミリーちゃん2目当てで行ったわけではなく、運よく当選したので楽しんできました。

ミリアニ先行上映を機に仕掛け人に復帰し3、「解夏傀儡」「エンダーエンダー」の2つのイベントも楽しく参加。
1時間を超えるドラマを魅力に思い、CDも購入(積んではいないです!!)
応募は1通だけなのですが、ただただ運がよかったです

イベントは、めちゃ楽しかったですね。
わちゃわちゃしていて劇場の雰囲気が現実に!
高橋ミナミさんや原嶋あかりさんの弾けっぷりが印象に残っています(急に魂分けだすし、高橋さんは色々通りすがってたww)

参加するにあたって、詰んでいたコミュを関連分だけ全部消化しました。
イベントのコミュだけでなく、ブログ、メール、カード、留守番電話、一通り見ました(1日1イベペース)

ドラマCDも詰んでしまっていたのですが、こちらも1日1本で完走しました。
解夏傀儡」は1回ではよく分からず、当日に2回目を見て参加しています。

事前のインプットのおかげで、当日はそれはそれは楽しかったですね

REFRAIN REL@TIONイベント

4/30(火)から始まった、最後のミリアニ連動イベント。
「REFRAIN REL@TION」は本当にいい曲で4、映画館(豊洲)に何回も聞きにいきました。
ミリシタに実装されたとなったら、気がついたら遊んじゃってるんですよ(UR にっP5)。
フィーチャーされるTeam 8thの5人もとりわけ人気だし、GWと重なって走る人多そうでボーダーも高いんだろうな〜と諦める理由もあったんですが、ここで走らなかったら後悔すると思って吹っ切って走りました。

ボーダーが高い予想に加えて、最終日の7日はエンジニアニメで登壇中であり、最後巻き返せない状況だったんですよ。
なので、バッファを確保すべくひた走りました(朗読イベント開始前に席でもやってた6。周囲を見た感じ多分私だけです)

ここまでのミリアニ連動イベントの感触ですが、

  • 2500位ボーダーは最後24時間で倍になる感じ
  • 21時終了で17時以降が1時間あたり万の増加ペース7

今回は後者に備えるバッファということで、ボーダーから+10万(3桁順位)をキープ。
終了24時間前が22万ptだったので、40万pt前半まで進め、人事を尽くして天命を待ちました(アイうたの布教に専念してました)

イベランとドラマCDは相性がいいと思います。
お仕事×6 -> プレミアステージ(3000pt) を繰り返しながらドラマCDを聞いていました

エンジニアニメ

登壇準備をしました。

発表時間に収まりそうにないことが分かり、以下2本を執筆

当日は楽しかったですね〜!!
レポートは別で書きたいと思っています。

終わりに

ミリオンライブを楽しんだGWでした。
登壇準備とも両立できて、私としては大満足です!

ためていたコミュを進めてみて、「見ていけば終わるな〜」という当然のことが分かったので、ちょこちょこと見ていこうと思っています。
制作陣も愛を注入しまくっていると思うので、受け取っていきたい!

今回のゴールデンウイークは、仕掛け人業に少し深くハマる経験でした。

P.S. 技術面のアウトプット

サブカルと技術面、割合としては半々くらいだと思います



  1. すきすき
  2. 間違ってなかったよ!
  3. よい... 特別な一曲となったインタビュー
  4. 前回のUR
  5. 後方の席から名刺交換やドラマCDの感想交換の声が聞こえてきて、都市伝説じゃなかったという感動と、「コミュ力あるPさんまじですごいな」と思いました
  6. 詳しくはこちらのBotをどうぞ

『響け!ユーフォニアム』における「愛の告白」と、不合理 #エンジニアニメ

はじめに

だってこれは、愛の告白だから。nikkieです。

今回はアニメネタ。
こちらのツイートを解題します

ユーフォニアムについてはTVアニメ2期まで知っている前提です。

目次

エンジニアニメでユーフォのLT

5/7開催、エンジニアニメ(エンジニアがアニメから得た学び)
https://engineers-anime.connpass.com/event/314672/

野良LTがありました。

懇親会の時間にLTしても大丈夫です。野良LT希望者が多かったりなどで発表する時間があるかわかりませんがそれでもよければスライド用意しておいてください!

響け!ユーフォニアムに学ぶ訴求」を聞いていて、私の中でつながったことがあったのです。

響け!ユーフォニアム』のキーワード、愛の告白

響け!ユーフォニアム』は武田綾乃さん原作の小説をアニメ化した作品です。
吹奏楽にかける熱い青春を描いていますが、百合要素もあります。
象徴的な言い回しの1つが「愛の告白」!

麗奈 -> 久美子 (1期8話)

第八回 おまつりトライアングル:STORY | TVアニメ『響け!ユーフォニアム』公式サイト

あがた祭りの日に、2人で大吉山登りながら

久美子って性格悪いでしょ
(もしかしてそれ悪口?)
褒め言葉

やっばり悪口に対して

違う、これは愛の告白

ふおおおおおお!
どういうことなんです!?どういうこと!?

久美子 -> 麗奈 (1期11話)

第十一回 おかえりオーディション:STORY | TVアニメ『響け!ユーフォニアム』公式サイト

香織先輩と麗奈のトランペットソロ再オーディションの前に

ソロは麗奈が吹くべきだって言ってやる!

もしも裏切ったら殺していい。
麗奈ならしかねないもん、それが分かったうえで言ってる。
だってこれは、愛の告白だから

ふおおおおおおおおおおおお!!!!
殺してもいい愛、きゃああああああああ!!
両想いじゃん!!

大胆な告白は女の子の特権!!

野良LTで取り上げられた、2期10話(あすか先輩と久美子)

第十回 ほうかごオブリガート:STORY | TVアニメ『響け!ユーフォニアム2』公式サイト

でも、みんな言ってます。あすか先輩がいいって

みんな? みんなって誰?
だいたい、そのみんなが本心を言っている保証がどこにあるの?

あすか先輩は頑なにフェードアウトしようとするのですが、ここで、

あすか先輩と本番に出たい。私が出たいんです!!

主語が「みんな」ではなく、「私」の話があすか先輩を動かすのです!

LTではここが「訴求」として共有されました。
(見返すと、ここ最初あすか先輩が愛の告白?って茶化すの、意味深)

ここを聞いていて、私の中でつながったのが

  • 主語がみんなのメッセージ -> 合理的
  • 主語が私のメッセージ -> 不合理では

『世界は贈与でできている』より、愛は不合理から

思い出したのがこちらの本1

4章の中に「愛は不合理から」という話があります。
例として出てくるのが、平井堅さんの『君の好きなとこ』

照れた笑顔♪
すねた横顔♪
ぐしゃぐしゃ泣き顔♪

『世界は贈与でできている』より

「好きなところ」として合理的な長所を述べた後に、一見すると不合理な特徴をそれとなく挙げている

「ぐしゃぐしゃ泣き顔」は、合理的な長所とは言えず(本人は長所と思ってないでしょう)、不合理な特徴ですよね。

この考察からのまとめが

愛は不合理からしか生まれない

不合理は、合理性の後にやってくる

(※見事な論の展開は書籍をどうぞ)

これが、ユーフォ2期10話のあすか先輩と久美子のやり取りにもあるな〜と結びついたのでした。

  • まず、主語がみんなで合理的なメッセージ(しかしあすか先輩が突っぱねる)
  • 主語が私(久美子)の不合理なメッセージ

『世界は贈与でできている』ではメタメッセージの話題もあり、この順だからこそ意味があるとも思わされます。
久美子が初手で、主語が私のメッセージを送っても「子供みたいな」と一蹴されたでしょう

終わりに

響け!ユーフォニアム』のあすか先輩と久美子のやり取りは、まさに愛の告白だったなあという気づきを書きました。
愛は、合理性の後の不合理から。


  1. 過去のアニメガタリでも参照しています

お前、誰よ(2024年5月 #エンジニアニメ 版)

はじめに

それでは「『アイの歌声を聴かせて』をきっかけに考え始めた幸せ」というタイトルで、アニメから得た学びを話していきます。
よろしくお願いします。

最初に自己紹介です。
nikkie(にっきー)と名乗っています。
好きなものは2つあって、Pythonという言語とアニメが好きです。
発表時間を10分いただいているんですが、アニメに絡めて自己紹介すると全然時間内に収まらないので、アニメに振った自己紹介記事を一本書くことにしました。

目次

諸注意

この記事は、5/7(火)開催、エンジニアニメのLTで参照する詳細な自己紹介記事です。

話します予告エントリはこちら

それでは自己紹介を続けます

今期見てるアニメ

Twitterアカウントからバレている1と思うのですが、『響け!ユーフォニアム』がとても好き❤️で、4月から始まった3期を毎週楽しみにしています。

他にはシャニアニがいいですね。
櫻木真乃ちゃんがかわいいです。
鳩食べるらしいけど、かわいいです。

今期は豊作でヒロアカとかゆるキャン△とかあるのを認識しているのですが、なかなか手が回っていない感じです。
でも、オススメがあったらぜひ教えてください!

ドラマやアニメに使う時間は、相変わらずない

最近は『ハイキュー!!』を見返していました

近況報告としては、ゴミ捨て場の決戦を遅ればせながら4月に見まして

音駒との合宿や、これまでの試合(白鳥沢戦、稲荷崎戦)を見返していました(Amazon Prime Videoなどで見放題です!)

機会があったらハイキュー!!から得た学びも語りたいなと思っています2

好きになる作品は、かわいい × 見ていて感情を動かされる

アニメは10年以上(最近はほそーくですが)見てきていて、自分が好きになる作品の要素はこの2つかなと思っています

  • キャラクターがかわいい
  • 見ていて感情を動かされる

上で挙げたユーフォは、この2要素がドンピシャなんですよね。
吹奏楽にかける熱い青春!

経験上この2要素とマッチしやすいのは、京アニさんやP.A.WORKSさんですね。
でも制作会社さんで絞らずに色々見ます。

好きな作品を挙げていきます

アイマス

アイマスアイドルマスター)!
アニマスムビマスで好きになりました。

過去にanibenという勉強会があり、そこで「何かを決めるということ」というLTをしています。
天海春香さんの「私は天海春香だから」からの学びを話した感じです。

もしかしたら、もっといい方法があるのかもだけど でも、私は天海春香だから。

アイマスにはブランドがいくつもありますが、昨年はミリオンライブが10周年 & アニメ化しまして(ミリアニ)、もう本当によくて、劇場に何回も通いました(豊洲の半券が50以上)。
このブログにはいくつもの怪文書が残されています。

ミリオンライブはグリー時代に1年くらい熱烈に遊んでいたのですが、そこでやめて外から見守ってきました。
「ミリアニいいぞ」という声を聞き劇場に観に行ったら本当によくて、呼び戻された感じです。
10年ずっと遊んではないのですが、ミリアニではじめましてでもないので、綿田監督はじめ制作陣が込めた想いの一端が伝わってきて、胸が一杯になりながら鑑賞しています。

この流れでシャニアニも楽しみにしています。
また今期はシンデレラガールズの再放送もあって、薄く追っています(S(mile)ING、いいよね...3

ラブライブ

ラブライブも好きです!
μ'sから知ってますが、ハマったのは虹ヶ咲スーパースターです。
虹ヶ咲は2期の再放送がいまあって、とてもよいですね。

虹ヶ咲からは結構影響を受けてるんです。

楽しんだ語り・熱のこもった語りのロールモデルは、優木せつ菜ちゃんです。

好きの深さ(徹底的に好きっ)という点でのロールモデルが、上原歩夢ちゃんです。

スーパースターはこちら

他にも

それでは、本題の方に入っていきましょう(※LTに合流します)

終わりに

アニメに振った自己紹介記事でした。
かわいい × 感情を動かされる、「アイドルアニメはまさにここだなあ」と書いていて思いましたね

本題で扱う『アイの歌声を聴かせて』にも「かわいい × 感情を動かされる」はあるんです!
また、アイうた以降も劇場に足繁く通う作品があるのですが、この2要素に希望が結びつくと「繰り返し見たい!」と私はなるのかなと思いました(他の例としては『かがみの孤城』)。

映画を観る行為は、希望の表明(「人生は幸せかもしれない!」)

P.S. エンジニアニメ 2期決定!

6/28!


  1. イコン画https://movie.anime-eupho.com/special/icon/euph_icon41.png
  2. 過去にハイキュー!!が取り上げられた勉強会がありました。 川口さん、お好きだったのか!

大規模言語モデルって、だいぶ『#アイの歌声を聴かせて』のシオンさんじゃね?(アイうたのネタバレあり)

はじめに

リリイベありがとうございました! nikkieです。

直近でエンジニアがアニメから得た学びをLTします。
このブログで何度も取り上げている『アイの歌声を聴かせて』の話になるのですが、話したいことが多すぎて持ち時間に収まりきりません。
そこで、ボーナスコンテンツとして、機械学習の技術周りで現実とアイうたがクロスオーバーしていて、個人的にとてもおもしろいぞという話をお届けします。

目次

『アイの歌声を聴かせて』

景部高等学校に転入してきた謎の美少女、シオン(cv土屋太鳳)は抜群の運動神経と天真爛漫な性格で学校の人気者になるが…実は試験中の【AI】だった!
シオンはクラスでいつもひとりぼっちのサトミ(cv福原遥)の前で突然歌い出し、思いもよらない方法でサトミの“幸せ”を叶えようとする。(ストーリーより)

最後にきっと、笑顔になれる」、生涯推していく作品です。

過去にテックなポッドキャストでも話していて

今回はもっと技術に突っ込んだ話をしていきます。
ただし、「大規模言語モデル=アイうたのシオンさん」という見方は、(技術者界隈で確立した見方では決してなく、)私の夢想です。

アイうたに関してはネタバレありでお送りします。
見放題配信をやっているので、未見の方はまずはぜひ見てから先に進んでください(もしくは引き返すのを推奨)

プロンプト

この記事では、ChatGPT・Claude・Gemini(や同じくらいの賢さのオープンソースのモデル)を指して、大規模言語モデル(LLM)と呼びます。

LLMには言葉でお願いしますよね。
技術的には「プロンプト」と言います。

ファインチューニングでタスク専用モデルを作らずに、1つのモデル+プロンプトで済ませられるというのは便利です。
しかも、プロンプトは自然言語で済むという!

吉浦監督の過去作の『イヴの時間』ではAIへのお願いは(シェルの)コマンドっぽさがありました。
アイうたでは自然言語でお願いしていて、現実世界のプロンプトに通じる要素を感じます。
「そいつ(シオン)に(キスするように)命令したんでしょ」とか、プロンプトがあってAIが動いている前提ですよね。

現実には、プロンプトを知ろうとする攻撃「プロンプトインジェクション」があります1
劇中ではシオンをAIと知っても、インジェクション攻撃はしていないんですよね。
ストーリー展開の都合があるかもなんですが、プロンプトインジェクションって「やらないのがマナー」みたいな感じで規制するしかないのかなと妄想します

なお、シオンさんは「プロンプトインジェクション」を遠回しに拒んだ2と解釈しています。賢い!

エージェント

アイうたの世界ではAIがシオンさんだけでなく、身の回りの至るところにいます。
例えばキッチンにも。
冒頭でサトミが朝ご飯の準備をしていました。

コンロAIや炊飯器AIは「エージェント」っぽいなあと思います(もちろん、シオンさんも)

(エアコンの自動温度調整の延長で数段賢くなった感)

そして、朝ご飯の準備では、コンロAIと炊飯器AIは協調動作する必要があります。
複数のAIの協調動作!

極めつけはシオンの歌唱シーン!
シオンが歌うだけでなく、音楽や照明など多数のAIが協働しているんですよね!!(スピーカーAIや街灯AI)
シオンの歌唱はシオンだけじゃなくて、たくさんのAIのセッションとして見ています。

なお、シオンさん、他のAIには自然言語でお願いするらしいです(吉浦監督への質問の中で聴いた記憶)。
プロンプトを使っている!
つまり、こういうことじゃん

Copilot

副操縦士という意味のCopilot。
GitHub Copilotのように、AI(LLM)が副操縦士として人間とペアになるわけです

おそらくなのですが、作中でもAIと人はペアになっていると見ています。
そしてAIとペアになることで、より人間の能力が引き出されているんじゃないかと思われるのです。

  • トウマ先生の高校生離れしたプログラミング能力
  • ゴッちゃんが運転するバイク
  • バスで流れるCM、「(あの靴)うちらモニタしてたやつじゃん」「タイムよくなったんだよ」。AIシューズさんサポートしていそう
  • サトミの料理シーン(ここまでいくと人を含めたセッションですね)

モデルマージ

アイうたで予言されていたと思われます(※過激派。異端の言説)

モデルマージはこちらで知りました。

アイうたにおいて、転校生AIシオンさんは、モデルマージで誕生していると思われます。

  • 美津子さんたちが実証実験に用意していた女子高生AI"シオン"があった(もともとハードウェアに入っていた)
  • ネットワーク上にいる元はAIトイのAIが、サトミを幸せにしたい一心で女子高生AIのハードの中に入り込む
  • 美津子さんたちが開発していた"シオン"と、元はAIトイのAIが合体 👉 サトミを幸せにしようとするAIシオン爆誕

(これは監督への質問で、「もともとハードウェアに入っていたAIはどうなったのか?」への答えの記憶に基づきます)

最後の合体のところが、モデルマージです!!(荒い鼻息)

元はAIトイのAIってハードウェアを制御する能力はほとんどないと思うんですよ(ネットワークを漂っていたわけで)。
ですが、シオンさんは軽快に身体を動かしているわけで(例:ユー・ニード・ア・フレンド)、これは美津子さんたちが開発したAIの力によるのかな3と私は見ています

要は、サトミを幸せにしようとする転校生AIシオンさんは、以下のようなモデルの足し算で誕生した(と私は考えている)ということです

ロボットと「サトミを幸せにする!」のマージなんじゃ〜!
(これはアイうたを見た方と話したいトピックです)

終わりに

アイうたファンの私からすると、大規模言語モデル周りの技術トピックがアイうたで描かれていたように思えてならないと一本書きました

アイうた世界には至るところにエージェントとしてのAIがいます。
人は自然言語(プロンプト)でAIたちとやり取りしますし、複数のAIと協調動作も可能です。
そんな世界で人はAIをCopilotとして活用しているように思われます。
そして、シオンさんの誕生はモデルマージだったのです...!

2021年時点では「アイうたの世界、2020年代ではどうやっても実現しないだろう」と思っていました。
ところが、ここ1年のLLMの発展を見ると、未来は意外と近くにある感がしてなりません。

2022年にはシオン・プロジェクトと銘打って、シオンさんのソフトウェア v0.0.1を作りました。
LLMを見て、人間を幸せにするシオンさんのようなAI(※ソフトウェア)が作れる可能性が大きくなっていることにワクワクしますし、(仕事でコードを書ける環境であれば、なにがなんでも機械学習を仕事にしたかったわけではない私が)今は仕事でもプライベートでも機械学習をがっつりやりたいと思えています。


  1. ジェイルブレイクとも言われるかも(私の中ではあまり整理できていない用語群です)
  2. 「その質問、命令ですか?」
  3. なんとこの点でも「無駄じゃなかったのね、私のしてきたこと」だ...

基本に立ち戻る:LLMのプロンプト

はじめに

すべてのエンチャントを破壊する。 nikkieです

4月末に複数の勉強会でLLMのプロンプトについてインプットしました。
復習またハーケンとして、今回アウトプットします

目次

プロンプトってなんだったっけ?『大規模言語モデル入門』にあたる

「4.2 プロンプトによる言語モデルの制御」を参照します

モデルの大規模化にともなって、従来はファインチューニングを行わないと解けないと思われていた多くのタスクが、モデルにプロンプトと呼ばれるテキストを入力して後続するテキストを予測するという単純な方法で解けることがわかってきました。(Kindle版 p.121)

そうそう!数年前のBERTが主流だった頃はタスク専用にファインチューニングしていた1んですよ!
ところが(今から振り返ると)GPT-3が契機で、後続テキストを予測させる形で解けるようになったんですね。

後続テキストを予測させる形で解くとは、例えば日本の首都を知りたいときに

  • プロンプトとして「日本の首都は」と入力し
  • 後続テキストに「東京」と来ることを期待する

ようなやりかたです。
例えば、以下の記事に見られます2

ファインチューニングでタスク専用モデルを作らずに、1つのモデル+プロンプトで済ませられるというのは便利です。
しかも、プロンプトは自然言語で済むという!
いやー、これはゲームチャンジャーですね。

なお、GPT-3の先のChatGPT(GPT-3.5)などは、プロンプトをチャット形式で質問しても機能するように調整されています3(またの機会に)

hoge-shotというのは、文脈内学習!

『大規模言語モデル入門』4.2の中に「文脈内学習」の解説があります。

プロンプトを使ってタスクを解く際に有効な方法の一つに例示を与える方法があります。(Kindle版 p.123)

この例示の与えるプロンプトが、hoge-shotと言われるやつです。

  • one-shot learning:1例与える
    • アメリカの首都はワシントン。日本の首都は(きしださんブログ)
    • 翻訳を解かせたい場合、翻訳例を1例与える
  • few-shot learning:数例与える
    • 翻訳例を数例与える
  • zero-shot learning:例を与えない
    • 「翻訳してください」だけ

one-shot / few-shot learningは推論時に学習させる方法というわけですね(モデルの重みを更新しない点で、ファインチューニングと異なる)。
few-shot learningは文脈内学習(in-context learning)とも言われるそうです。

このfew-shot learningまでが、GPT-3の論文で提案されていたのです!

For all tasks, GPT-3 is applied without any gradient updates or fine-tuning, with tasks and few-shot demonstrations specified purely via text interaction with the model.

ChatGPT以後注目を浴びている印象ですが、最近できたばかりの技術ではないのですね

多段階の推論とchain-of-thought

『大規模言語モデル入門』4.2には別の話題として「多段階の推論」があります(推論はreasoningの訳語)。
言語モデルは多段階推論が苦手と導入されます。

こうした複数の段階の推論が必要な際に、推論過程の例示を与えるchain-of-thought推論(chain-of-thought reasoning)を用いると性能が改善することが報告されています (Kindle版 p.129)

文脈内学習のように例を与えるわけですが、推論過程を例として示すことでうまくいくという!

提案論文はこちら

In particular, we show how such reasoning abilities emerge naturally in sufficiently large language models via a simple method called chain of thought prompting, where a few chain of thought demonstrations are provided as exemplars in prompting.

そして、chain-of-thought promptingにはzero-shot learning版が存在するのです!4
それがよく言われる「ステップ・バイ・ステップで考えましょう(Let's think step by step)」。
これだけプロンプトに書いて、推論過程の例示は無しで、うまくいくという!

例はからあげさんの登壇から(松尾研 Beginning LLM Level.1)

焼きちゃんぽんの作り方を題材に、文脈内学習・chain-of-thoughtの例が示されます!5

zero-shot learning
(からあげさんのスライドから見やすさのために整形、かつ、「日本語でお願いします」は省略しています)

1人前で水500mlを沸騰させるというレシピがあります。
2人前以上を一緒に作る場合1人前あたり100cc水を減らしてください。と書いてあります。
4人前だと水はどれだけになりますか?

few-shot learning

1人前で水500mlを沸騰させるというレシピがあります。
2人前以上を一緒に作る場合1人前あたり100cc水を減らしてください。と書いてあります。
4人前だと水はどれだけになりますか?

+以下は他の人数の例です。
+2人前だと800ml
+3人前だと1200ml

chain-of-thought reasoning

1人前で水500mlを沸騰させるというレシピがあります。
2人前以上を一緒に作る場合1人前あたり100cc水を減らしてください。と書いてあります。
4人前だと水はどれだけになりますか?

+以下は他の人数の例です。
+2人前だと1人前500mlなので500×2=1000mlで、1人前あたり100ml減らすので100ml×2=200mlで1000ml-200ml=800ml

zero-shot chain-of-thought reasoning

1人前で水500mlを沸騰させるというレシピがあります。
2人前以上を一緒に作る場合1人前あたり100cc水を減らしてください。と書いてあります。
4人前だと水はどれだけになりますか?

+ステップバイステップで考えてください。

焼きちゃんぽんという題材がうまく、文脈内学習やCoT(chain-of-thought)それぞれの差分が分かりやすくて見事でした👏

松尾研 LLM コミュニティ "Paper & Hacks Vol.03"

からあげさんの前週に、少しだけ専門的な形でも取り上げられていました(松尾研 原田さん)

上で挙げた論文も引かれています

終わりに

LLMのプロンプトまわりを基本に立ち戻りました。

  • 自然言語プロンプトを与えて、後続テキストを予測させる形で多くのタスクが解けることがわかった
  • プロンプトに例示を与える(few-shot learning)と、性能が改善する(GPT-3の論文)
    • 文脈内学習と呼ばれる
    • 例示を与えない=zero-shot learning(=単に後続テキストを予測させるだけ)
  • 推論過程の例示を与える(chain-of-thought reasoning)と、性能が改善することがわかった
    • zero-shot chain-of-thought reasoning:「ステップバイステップで考えましょう」

few-shot, CoTといった用語を一次情報の近くまで立ち戻って整理できたので、私としては大満足です!

このあたりは松尾研の大規模言語モデル講座資料にもあります(Day2)。
https://weblab.t.u-tokyo.ac.jp/llm_contents/
なんというかLLMを使う上での基本の知識になってくる(すでになっている?)のかなと思います

『大規模言語モデル入門』ではこの先のプロンプトエンジニアリングのリソースとしてこちらが紹介されていました。

P.S. Chain-of-Thoughtを打ち切る!?

メルカリさんの事例の中で気になっている点です。

工夫した点 4. max_tokensとCoTの活用によるLLM予測の高速化

ChatGPT 3.5 turbo + 精度向上のためのCoT

ChatGPTに説明を行わせるとずっと喋り続けることもあり、処理時間が問題となりました。そこで、max_tokensパラメータを利用して長い話を途中で打ち切ることで処理時間の短縮に努めました。

打ち切って生成されるJSON

{"item_category_id": 1, "reason": "商品名に「ぬいぐるみ」が含まれ"}

ここでやっているのはzero-shot chain-of-thought reasoning寄りだと思います(推論過程の例示を与えていないので)。
「ステップ・バイ・ステップで考えましょう」って、推論過程 -> 結論の順でLLMが出力するので精度が上がり、それには出力トークンが必要なので処理時間や料金の増加はやむを得ないと私はとらえていました。
メルカリさん記事によると「ステップ・バイ・ステップで考えましょう」で結論からまず返すようにプロンプトできるってことなのかな(本当に精度は上がっている??)



  1. ファインチューニングの例 2022年6月のみんなのPython勉強会でもファインチューニングまでを話しました(振り返り記事
  2. を書く中で見ていたのを思い出しました
  3. ChatGPTなどは、Ng先生講座によると「Instruction tuned LLM」です
  4. 論文のタイトルがGPT-3論文を意識しているのが個人的にポイント高いです(背景を知っていると狙ってやったなと分かる)
  5. ご本人によるブログ
  6. こちらの講座が参考文献として挙がっていますね

論文「Instruction Matters, a Simple yet Effective Task Selection Approach in Instruction Tuning for Specific Tasks」の研究上の位置づけを調べたメモ

はじめに

シャニアニ5話、イルミネがギスギスにならなくてホントよかった😭 nikkieです。

今回は、Instruction Tuningに関する論文を読んだメモです。
通読ではなく、研究上の位置づけが知られそうな箇所を読み進めました。

目次

「Instruction Matters, a Simple yet Effective Task Selection Approach in Instruction Tuning for Specific Tasks」

先日Instruction Tuningをまとめたときに「この先知りたいこと」に挙げた論文です

論文の研究上の位置づけを調べる(by ロボ太さん)

以下のスライドをやっていきます。

「Instruction Matters」論文ですが、Abstractを一読したところ、何について話しているか理解できずにいました。
Instruction Tuningをまとめる中でうっすら流れを見出し、「Introductionは読めそう & 私がまだ知らない論文も知れそう」と読んでみることにしました。

「Instruction Matters」論文に至る研究の流れ

  • 「はじまり」
    • Instruction Tuningを提案したFLAN論文(zero-shot性能の向上)
  • 様々なアプローチがなされるが(後述
  • その中で、未見の特定タスクの性能を向上させるというアプローチがあり1
    • (未見のタスクたちへの汎化性能を向上させるというアプローチではなく、)
  • この論文では、INSTAという手法を提案した
    • Instruction-based Task selector
    • (いんすた?🤔)

提案手法 INSTA

INSTAに至るまで

  • 未見の特定タスクの性能を向上させるアプローチの中で、(Instruction Tuningに含まれる)すべてのタスクが特定タスクに有用とは限らないことがわかった2
    • あるタスクによって性能低下をもたらされることもある
  • 課題:訓練時に関連するタスクを選びたい(selecting relevant tasks for training
    • Instruction Tuningのデータセットは大きく、人手でのレビューは現実的でない3
    • 訓練データセット中で、あるタスクと対象タスクとの関連性は、しばしばあいまいに理解される4
  • 先行研究は2つのカテゴリに分かれる
    1. 2つのタスクのうち片方のタスクでモデルを訓練し、他方で性能を評価して、移転可能性を判断する5
      • (訓練と評価のために)時間がかかり、計算リソースも使う6
    2. テストデータセットの小さなサンプルを使ってタスク間の類似度を計算する7
      • 未見の対象タスクのデータインスタンスをやむなく構築させるために、Instruction Tuningにおけるzero-shotの条件と矛盾する8

先行研究と比較したINSTA

先行研究のカテゴリ2への提案と理解しています。

We introduce INSTA which simplifies task selection for instruction tuning by using only instruction similarity scores, obviating the need for instances.

  • instructionの類似度にのみ基づいたタスク選択手法
  • データインスタンス不要

これはIntroductionの「In summary, our contributions are as follows:」(要約箇所)にある3点のうちの1点です。
他は

  • INSTAはinstructionのニュアンスを理解
    • (meta-datasetのスタイルや形式にアラインさせて達成? まだよくわかっていません)
  • 先行研究と同様の複雑さなく、先行研究に匹敵
    • (-> 優れてるよねとアピールしているという理解)

ここまで追って、冒頭の論文紹介ツイートの論文について、「聞いたことある」から「ちょっと理解したな」に進んだ感覚です

言及される論文メモ

「はじまり」として挙げられた論文(抜粋)

なされてきた様々なアプローチ

improving a model’s generalization capabilities to unseen tasks by training on diverse tasks accompanied by instructions

automatically generate a substantial volume of instruction tuning data using Large Language Models (LLMs) instead of human creation.

未見の特定タスクの性能を向上させるというアプローチ

すべてのタスクが特定タスクに有用とは限らないことがわかったのあたりの論文(抜粋)

FLANに端を発してInstruction Tuningのデータセットは巨大化していっている流れに対して、巨大化が正義ではないという発見は実に興味深いです

先行研究は2つのカテゴリに分かれるの部分の論文

  1. 2つのタスクのうち片方のタスクでモデルを訓練し、他方で性能を評価
  2. テストデータセットの小さなサンプルを使ってタスク間の類似度計算

終わりに

「Instruction Matters, a Simple yet Effective Task Selection Approach in Instruction Tuning for Specific Tasks」について、ロボ太さんのフォーマットでまとめました。

  • Instruction Tuningという流れの中で
  • 未見の特定タスクの性能を向上させるというアプローチがあり
  • そこには「訓練時に関連するタスクを選ぶ」という課題があるが
  • この論文では、instructionの類似度にのみ基づいたタスク選択手法、INSTAを提案した
    • サンプルを取るカテゴリ側で提案
      • 時間がかからないし、計算リソースも使わない
    • テストデータセットの小さなサンプルを使ってタスク間の類似度を計算するのとは異なり、instructionのみ

流れを知る中で興味を持った論文は、このあたりですね11

今までも論文は読んでましたが、紹介された論文に飛びつくという感じでした(ここ3ヶ月〜半年くらいかな)。
飛びつきまくってきたわけですが、今回の試み(研究の流れを押さえる)では、これまで感じなかったような"読んだ感"があります。
知っていることが結びついたからかな?

ただこの方法で理解するのに時間はかかりますね。
その時間は必要経費な気もしますが、ここを楽にしてくれるLLMさんとは協働してみたいですね

がんばりましょう


  1. 原文「there is also growing interest in instruction tuning as a methodology to improve the performance of specific unseen tasks
  2. 原文「not all tasks are helpful to specific tasks, and some tasks could even lead to performance degradation
  3. 原文「First, manually reviewing through the vast array of datasets for instruction tuning is not feasible.
  4. 原文「Additionally, discerning the relevance of certain tasks in the training dataset to the target task is often ambiguous.
  5. 原文「The first is assessing pairwise task transferability by training models on one task and then evaluating their performance on another
  6. 原文「the former approach, which measures pair- wise transfer for every task, can be exceedingly time-consuming and compute-intensive
  7. 原文「The second is calculating sim- ilarity scores between tasks using a small sample of the test dataset
  8. 原文「the latter approach has limitations in that it necessitates constructing data (instances) for unseen target tasks, contradicting the zero-shot setting condition in instruction tuning.
  9. UIEという文字は、ストックマークさんの勉強会(LLM時代の情報抽出)で見た覚えがありますね
  10. 参照しているバージョンが Retrieval of Soft Prompt Enhances Zero-Shot Task Generalization12 のようでした
  11. 過去に手を動かしたInstruction Tuningについて、「さらにデータを加えるとしたらどうする?」への暫定的な回答を得たいと思っています
  12. 「Soft Prompt」とはSoft Prompt Tuningのことだと思っています。embeddingに加えて、訓練可能なtensorを入力にくっつけるらしい

お前もプロポーザルを出さないか? カンファレンスカレンダー(自分用備忘録)2024春時点

はじめに

しゃああああああああああああ!! nikkieです。

オンサイトのカンファレンスが完全に戻ってきた感覚です。
国内だけでも相当数控えており、自分用に気になるカンファレンスをまとめます(バイアスかかりまくり😎)

目次

大吉祥寺.pm(5/10(金)まで)

7/13(土)開催1

テーマは「いままでと、これから

「連続性のある変化」を感じられるテーマにしました。

公募期間:2024/4/26(金) - 2024/5/10(金) 23:59:59
トーク枠は、30分枠と、20分枠があり、30分 x 3本、20分 x 4本の計7本です

LT枠は、5分 x 7本

一人でトーク枠と、LT枠にそれぞれ一つずつ応募可能です

PyCon JP 2024(5/31(金)まで)

※5/31(金) AoEなので、JSTでは6/1(土)の21時までのはずです

9/27(金)-9/29(日) 有明開催2

今年のイベントテーマは「from everyone import PyConJP」です。参加者、発表者、運営みんなでPyCon JPをつくりあげよう、という思いを込めています。

トーク (30分)とミニトーク (15分)、そしてポスター

個人的に大きく変わったなあと感じたのは以下です。

発表テーマに厳密なルールはありません。Pythonistaにとって面白い内容だと思えば応募してください。必ずしもPythonに関する内容である必要はありません。

必 ず し も P y t h o n に 関 す る 内 容 で あ る 必 要 は あ り ま せ ん。

スタッフ経験者からすると、方向性の180°転換と感じます。
YAPCみたいな方向性ってことかあ

枠数も出ています

  • トークは「現時点では発表枠は40枠を想定しています
  • ミニトークは「現時点では発表枠は12枠を想定しています

そしてレビュアー募集中

XP祭り2024

開催日が9/28(土)に決まり、もう少しするとプロポーザル募集が始まると思われます。
XP祭りは懐がとっても深く、来たプロポーザルは基本的に受け入れです

YAPC::Hakodate 2024

10/5(土)開催(年内に2回!?)
緊張感をもって注視しています

脱線:RubyKaigi

この5月に沖縄開催。
ユーザーズカンファレンスではない」、これこそが今の私が求めているものかもなあと思いました

その他

TLで見かけるものをまとめたゾーン

以上です。

P.S. 今のあなたにしか話せないことがある!

nikkieさんがいいこと言ってたので共有3

思うんだ、今のあなたにしか話せないことが絶対ある!って

「全然自信ないけど... このカンファレンスで喋ってみたいって、ちょっとだけだけど思うな〜」という方、もしよければ一緒にプロポーザル出しませんか?(みんなで出したら怖くない、はず)
誰しも今の自分にしか話せないことがあり、カンファレンスでは「あなたの話を聞いてめっちゃよかった!」という素敵な出会いがあると思うのです。

参考:カンファレンスカレンダー


  1. リスさん🐿かわいい
  2. CfPページでは会期が9月26日(木)〜29日(日)。果たして...
  3. まだそーだいさんほど頻度高くはないですが