タグ

2026年3月10日のブックマーク (3件)

  • LLMのキモい算術 - ジョイジョイジョイ

    LLMは「226-68=」のようなプロンプトを与えると「158」と計算してくれますが、この計算は我々が想像するよりも奇妙な方法で行っていることを紹介します [Nikankin+ ICLR 2025]。 まずは前提条件を確認します。思考の連鎖は使わず、「226-68=」のようなプロンプトに対して「158」のように答えを直接出力する場合を考えます。 一例として Llama3-8B を考えます。Llama3 のトークナイザは 0 から 1000 までの数に 1 つのトークンを割り当てるので、「226-68=」を入力すると、次のトークン「158」が「0」「1」...「157」「158」「159」...「1000」などのトークンの中から、最も確率が高いものとして選ばれます。 ヤニフ・ニカンキンらの発見 [Nikankin+ ICLR 2025] は、Llama3-8B は答えや入力についての粗い条件

    LLMのキモい算術 - ジョイジョイジョイ
    rydot
    rydot 2026/03/10
  • 高階トレイト境界と少し仲良くなってみた

    序 以前、Stack OverflowにてRustにおけるトレイト実装を用いた関数の多重定義とコンパイラの振る舞いに関してこのような質問をしたとき、高階トレイト境界(High-Rank Trait Border a.k.a HRTB)なる概念が存在していることを頂いた解答によって理解していたがこれが一体何者なのかいまいち理解できずに居た。 今般、何となくこいつが何者なのか理解できたのでまとめておこうかなって。 ここではライフタイムの基礎には踏み込まないので、その点ご了解の程何卒 助走 さて、題に入る前に、以下のような関数を考えてみよう。 pub fn select_long(a:&str,b:&str)->&str{ if a.len()>b.len(){a}else{b} } error[E0106]: missing lifetime specifier --> src\main.r

    高階トレイト境界と少し仲良くなってみた
    rydot
    rydot 2026/03/10
  • Rustのライフタイムにつく謎のforの解説 -HRTB- - Qiita

    トレイト境界のfor rustには公式入門書に載っていない深淵の構文がいくつかあります。 (2025年5月現在)その一つが、関数のトレイト境界に記載するfor文です。 HRTB (Higher-Rank Trait Bounds) といいます。高階トレイト境界と訳すようです。 以下にその動作をライフタイムの基的な知識がある前提でご説明します。 概要 このforは、単純にいえば『どれでも』という意味です。どんなライフタイムでも問題なく動く'aを想定した定義が、このHRTBです。 明示的に利用するタイミングとしては、『コールバック関数を定義する際、コールバック関数にライフタイムを指定する必要がある時』等です。(他の場合にも使いますが、ここでの使い方が理解できれば大体大丈夫です) 通常ライフタイムを関数等のジェネリクスとして指定する際、そのライフタイムの実体は呼び出し元の文脈に依存しますよね。

    Rustのライフタイムにつく謎のforの解説 -HRTB- - Qiita
    rydot
    rydot 2026/03/10