キャラチャット、会話の最小単位は1対1で行われるものだ、という前提で作ってて、複数話者が参加する会話を実装する際には、1対1の会話の集合として定義するつもりだった。
しかし、例えば3人の話者ABC(Aは人間ユーザーでも良い)が参加するだけでも、A-B、B-C、C-Aの3つの組み合わせを要することになってめんどいな。
つまり、設計が良くなかったかもしれない。
https://x.com/Science_Release/status/1859877878701424740
これよく見つけたな、と感心してたが、
e = lim n→∞ (1+1/n)^n
というネイピア数の定義に対して、1~9の数字を1つずつ使って、一番大きくなるnを2つ作ったということなのね。
e≒(1+0.2^(9^7*6))^(5^(3^84))の場合、
n=(1/0.2)^(9^7*6)=5^(9^42)
n=5^(3^84)=5^(9^42)
となる。
https://qiita.com/Yosemat1/items/802a41588e8bffaca992
ふむふむ。O(n^2)をO(n)の計算で近似するというんじゃないんだな。O(n^2)な類似度算出計算を、O(n)な計算に分解する「逆カーネルトリック」なる手法を使うらしい。
ただし、Attention機構で使われるsoftmax関数を分解すると、無限大に発散する関数になってしまい適用できない。だったら逆に、分解先の関数をまず決めて、カーネルトリックにより導出される関数をsoftmax関数の代わりに使えばいいじゃない、という発想のようだ。
人類はほんといろんなことを考えるな。
https://nvlabs.github.io/Sana/
Sana、DiTでTransformerにLinear Attention機構を採用することで、計算量O(n^2)をO(n)に落とし込んだこと、VAEの代わりにDeep compression autoencoderという高圧縮率な変換をかけていること、テキストエンコーダーの前段にLLMによるユーザープロンプト強化を行っていることが新しいみたい。構造としてはシンプルに見える。
このスレッドだとChatGPTと同じ解答があった。安心した(?)
https://stackoverflow.com/questions/181596/how-to-convert-a-column-number-e-g-127-into-an-excel-column-e-g-aa
しかしExcelの列名は結構面白いネタだな。そもそもこれ、bijective numerationという記法で、n進法とは全く違うものらしい。
https://en.wikipedia.org/wiki/Bijective_numeration
https://qiita.com/hibit/items/608b3ffe680be4b91a61