#author("2023-10-29T09:20:01+00:00","default:ibisforest","ibisforest") * 第26回 情報論的学習理論ワークショップ (IBIS 2023) [#p1d166b8] COLOR(#00AA00){このページはしましまが [[IBIS2023>IBIS#IBIS2023]] に参加してとったメモです.私の主観や勘違いが含まれていたり,私が全く分かってなかったりしていますので,その点を注意してご覧ください.誤りがあれば,指摘してください.} - 日程:2023-10-29 〜 2023-11-01 - ホームページ: http://ibisml.org/ibis2023/ - 会場: 北九州国際会議場 & オンライン #contents * 10月29日(日) [#n02017b1] * チュートリアル1:大規模言語モデル活用技術の最前線 [#d59a7dd6] 稲葉通将(電気通信大学) - 大規模言語モデル (LLM):モデル,データ,計算環境のいずれもが大規模 LLMのできること - LLMによるアノテーション -- MTurk と張り合える(?) - LLMに基づく推薦対話システム -- 対話型の推薦システム → 映画など関連文書の多い分野では良い - マインクラフトのゲームプレイ -- マインクラフトの文書を読み込んでいるので可能だった - ロボットの制御 -- 文書そのものや,コードを生成させるものは難しい → 強化学習の報酬を与えるのは可能だった - 論文査読 -- 不採録論文の一致率は高いが,採録論文は低い プロンプト:LLMに対する入力 - In-Context Learning:少数の例を与えることで,追加学習なしでタスクを実行可能に - Chain-of-Thought:問題をLLMに回答させるときに,回答に至る思考過程も同時にあたえたプロンプトを使う -- Zero-shot CoT:"Let's think step by step" とする -- CoT で違う思考経路を与えて,答えを多数決させる - Plan-and-Solve:問題の解き方を回答させてから,その解き方で解かせる - Auto-CoT:データをクラスタリングしておき,違うクラスタからえた事例でプロンプトを作る -- 多様な事例をプロンプトで与えるとよい - 長期的や多段階の問題は苦手 → 途中経過を出力させるように指示 - Program of Thought:問題を解くプログラムを生成させる -- Faithful CoT:プログラムだけじゃなく,プランニング記述言語 PDDL などの任意の形式言語 - CoTで思考の段階数が多い方がよい,多数決の場合も段階数が多いものを優先すると良い - Tree-of-Thought:複数のプランを生成させ,さらにそれを自身に評価させる - ReAct:次に必要な行動を,その理由と共に生成させる -- 外部検索を使う行動を含めさせることで,ハルシネーション問題を緩和 - Least-to-Most:部分問題への分解 - Self-Refine:ダメだしをして,自身の回答を変更させる - "Let's think step by step" のような性能向上が見込めるインストラクションを最適化(この場合は,「深呼吸をして」を加えることだった) - 重要な情報は,最初や最後に与えるようにする - プロンプトを2回与えると,CoT を上回る - 複数の役割・ペルソナを与えて議論させる -- 非倫理的なペルソナも生成できてしまう問題 - 複数のLLMに回答と共に,確信度を生成 → 他のLLMの回答をフィードバックとするループを繰り返す - 推薦のときに,アイテムの説明を生成させる≒特徴量を生成させる - 話者の少ない言語は,非倫理的な回答が出やすい - LLMのパラメータを量子化するのは4bitまでは性能が変わらない - ウォーターマーク:LLMのトークンを二つのリストに分けて,一方のリストのトークンを使わないようにすると,統計分析で分かる * チュートリアル2:物理シミュレーションのための機械学習入門 [#f338d626] 田中佑典(NTT) - 物理現象と微分方程式 -- 物理シミュレーション:計算機上での物理現象の再現 - 常微分方程式 (ODE)=独立変数が一つ,状態・方程式・初期条件を定める - 偏微分方程式 (PDE)=独立変数が二つ以上,状態・方程式・初期条件・境界条件を定める - 順問題=方程式や初期条件などから,これを満たす関数を求める -- 離散化して数値的に解く(ルンゲクッタ法など) - 逆問題=解の観測値と,方程式などから,関数のパラメータを推定 - データ駆動型のアプローチ:NNで関数を表すように -- 物理学の知識を制約・バイアスとして利用 physics-informed machine learning -- 制約は,損失関数に制約項を加えるソフトなものと,関数形・NNアーキテクチャに導入(baked という) - ダイナミクスの推定:求める関数をブラックボックス関数で近似する問題 -- ニューラルODE:状態関数 u の時間的な差分をNNでモデル化 --- 小規模なら誤差逆伝播で解く,中規模以上なら随伴変数法を使う(数値誤差は大きい) --- ハミルトニアンPDE:ハミルトニアン密度を全空間に対して積分して表したエネルギーを利用する - 方程式の解の推定:特定の初期条件・境界条件に対する状態関数を求める -- 初期状態や境界条件を制約項に入れて損失関数を定義 - 解作用素の推定:初期条件などから状態関数uへの写像をNNでモデル化 -- 関数間の写像は解作用素と呼ばれる -- 関数をNNに入れられないので,実際には関数の格子点上の値を入れる -- end-to-end の考え方で解作用素を推定 * チュートリアル3:ゼロから作る深層学習理論 [#oa31785a] 今泉允聡(東京大学/理化学研究所) - 複雑なモデルほど汎化誤差が減る理由は? -- 汎化誤差 = 近似誤差(NNの表現力)+ 複雑性誤差(予測の安定性)+ 最適化誤差(学習がうまくいくか) -- 普遍近似定理(NNは任意の関数を誤差ε以内で近似できる)に着目 - 層が少ないNNで1次元入力 -- 2層NN(M個のReLU関数の加重和)で近似可能 - 任意の関数を区分定数関数で近似 → 区分定数関数をNNで近似 -- 区分定数関数を,急激に変化するReLUで近似すれば,NNで表せる - 層が少ないNNでd次元入力 -- 3層NNで近似可能 -- d次元関数を,d次元空間の区分定数関数で近似 → 各次元ごとに区間に入っているかを調べ,それらを次の層で選んで区分定数関数を近似 - 多層で幅が小さなMのNNで多次元入力 -- 層が少なく幅のおおきなNNを,等価な多層で幅の小さなNNに変換 --- 入力を保存する部分,係数を掛ける部分,演算結果を保存する部分と各層でのノードの役割を分ける * チュートリアル4:逐次的意思決定におけるリグレット解析と適応的アルゴリズム [#k9e9a253] 伊藤伸志(NEC) - オンライン学習の分類:フィードバックの違い × 目的関数・実行可能領域の構造 × 確率的・敵対的 - 一般のオンライン学習:解の生成と関数値の観測を反復 - オンライン組合せ最適化=経路の選択とその重みの観測を反復 - エキスパート問題:N人のエキスパートがいて各反復でエキスパートの回答を得て,その後に全エキスパートの成績が分かる -- 最も成績の良かったエキスパートに対するリグレットを最小化 -- 確率的(定常的):エキスパートの利得は独立同分布から得られる -- 敵対的(非定常的):こちらの方策を知っている敵対者が最悪の利得を決める,確率的環境を包含 - Follow the Leader:そこまでの成績が一番良かった人を選ぶ → 確率的な場合は良いが,敵対的な場合はよい - 乗算型重み更新 (MWU, Hedge):信頼度に応じて確率的にエキスパートを選択し,観測した利得に乗算的に信頼度を更新 → 敵対的な場合に良い -- 信頼度のエントロピーを正則化項とする最適化に等しい - 適応的MWU=確率的・敵対的の双方に優れる -