ALGO ARTIS プログラミングコンテスト2024 夏(AtCoder Heuristic Contest 035)

順位 172nd / 1743 パフォーマンス 1854 レーティング 1992 → 2003 (+11) Highest更新! 段級位 1 級 → 初段 上手く出来たという感触はなく、ギリギリなんとか乗っかった。そもそも2回前のAHCまで調子がよくレートが伸びて黄色まで残り+9になっていたが、AHC…

AWSIM西新宿データでstreet-gaussians-nsで動かす

前回で空モデルが直ってある程度の推論が回せるようになった。なのでrosbag形式のデータから学習を回していけるように整えていく。 データとしてはいつものAWSIMて取った西新宿データを使う。まだカメラが信号機認識用の前方1台分しかないのであまりちゃんと…

WayveScenes101データセットをstreet-gaussians-nsで動かす(3)

前回は歪み補正の問題を解消して10シーン分の検証を行い、まず空モデルの回転方向のバグ修正に取り組む方針を決めた。 空モデルの修正 前回のシーン008がわかりやすかったので再掲。 主に空部分を担当する空モデルが、自車の回転に伴って変な方向に回転して…

WayveScenes101データセットをstreet-gaussians-nsで動かす(2)

前回は一つのデータで動かせたものの、歪み補正の扱いが間違っていたり、それに伴ってPSNRの計算が正常でないなどの問題があった。 今回は歪み補正の問題を修正し、10シーン分について動かした。 歪み補正 WayveScenes101データセットの画像は基本的に歪みが…

WayveScenes101データセットをstreet-gaussians-nsで動かす

つい先日、WayveからWayveScenes101データセットというものが出た。 都市、郊外、高速道路など様々な条件での101シーンが含まれており、各シーンでは 5台のカメラ画像がカメラの内部パラメータ・Poseつきである 1シーン20秒 各カメラ画像は10Hz(つまり200枚…

Mamba-2読む Section 2~5

※ このブログ記事筆者の理解・説明には誤りが含まれている可能性があります 以下の論文を読む。今回はSection 3から5あたりの、SSMとAttentionの双対性についての記述を読解する。 特に断りのない限り、式番号や画像番号は上記論文に合わせる。 概要 状態空…

street-gaussians-nsを動かす(2)

前回 今週は自前データで動かそうとしている。AWSIMで取ったデータから、カメラ画像とそのときのPoseを取得し、それをstreet-gaussians-nsに与えている。 結果 画像下部に自車の一部が写り込んでしまっているためか、進行経路あたりのフローターが多い。画像…

street-gaussians-nsを動かす

公開されたばかりの状態で、十分に手順が固まっているとは言い難く、気合いと勘とIssueの情報を使っていろいろやるとなんか動く。 動作結果 レンダリング結果 scripts/shells/eval.shの結果だと'psnr': 31.5と表示された。 今までパッと試せるものをいくつか…

AtCoder Heuristic Contest 033

トヨタ自動車プログラミングコンテスト2024#5(AtCoder Heuristic Contest 033) 暫定288位。「最近ヒューリスティックコンテストちょっとやれるようになってきたかな〜」という浮かれ気分を完全に破壊される凶悪な問題だった。なにもアイデアが出てこないの…

Stein Variational Gradient Descentのざっくり理解

パーティクルベースで6DoFの姿勢推定をするMega Particlesを読むために、前提となっているStein Variational Gradient Descent (SVGD) を調べる。細部については全然理解できていないが、ざっくりとした理解を記す。間違いがある可能性もかなり高いので、気…

Tree-Structured Parzen Estimatorの気になる式変形整理

参考 自分なりの理解として、重要そうだと感じたのは TPEでのPIやEIで考える基準値はそこまでの最良値ではなく分割基準のの方 で分割してモデル化するという性質からそこで積分を分けて式変形すると綺麗になる 前提 Tree-Structured Parzen Estimator (TPE)…

Mamba探訪(3)

前回はParallel Scanの逆伝播と状態空間モデルの離散化について確認した。今回は残りの細かい部分として Mambaの高速化工夫 実はBはオイラー法 Gated RNNとの関係 について確認する。 訂正 前回の記事で Mambaの論文ではメモリ使用量を抑えるために、値を保…

Mambaの周辺知識(2) Parallel Scanの逆伝播・状態空間モデルの離散化

前回はParallel Scanのforwardについてある程度確かめた。今回はParallel Scanの逆伝播と状態空間モデルの離散化について確認する。 Parallel Scanの逆伝播 【2024/05/04】理解に誤りがあった部分の記述を訂正。 mamba.pyにおいてParallel Scanの逆伝播はpsc…

MambaのInduction Heads再現

Mambaが気になったので触ってみることにした。大規模な実験を回すのは大変なので、元論文で使われていた人工的なタスクのInduction Headsをやる。 元論文 https://arxiv.org/abs/2312.00752 p.6 Figure 2 Mamba とりあえず動かしてみることを優先してMamba自…

Can large language models explore in-context?を読んだメモ

前書き 多腕バンディット問題は強化学習のとても基本的な設定だが、そこにはすでに探索と知識利用のトレードオフが存在しており、そのバランスをいかに取るかを見ることができる。MCTSなども各ノードでの行動選択はほぼ多腕バンディット問題そのものなので、…

small_gicpトライアル

まだソースコードはほとんど読んでおらず、とりあえずexampleの通りに利用する形で、速度と精度を簡単に検証する。 データ AWSIM西新宿v1.2.0を用いて、シミュレータのGTつきデータを取得した。経路は以下の通り。 点群マッチングには関係ないが、様子を把握…

MC Digital プログラミングコンテスト2024(AtCoder Heuristic Contest 031)

昨日見た時点では160位とかだった。 方針概要 シード0000 領域を縦線 or 横線で2つに分断していくこと繰り返すような操作を考える。途中まではKDTreeみたいな気持ちで、Depthが奇数のときは縦、偶数のときは横みたいにすることを意識していた。それを全日で…

転一

転職して一年経ったので振り返り。もちろん書けないことは書かないので、公開情報(つまりGitHub)を主に参照する。 まず、GitHubのアカウントはそのままのものを使っているので、だいぶContributionsに色が付くようになった。 https://github.com/SakodaShi…

Levenberg-Marquardt法あたりの実装練習

非線形最小二乗問題を解く上で、 1次近似を使う最急降下法 2次近似を使うニュートン法 ニュートン法のヘッセ行列をヤコビ行列の積で近似するガウスニュートン法 ガウスニュートン法と最急降下法を上手く混ぜるLevenberg-Marquardt法 と整理できて、これらを…

ガウス過程の実装練習

ベイズ最適化に興味がありガウス過程を学びたいと思ったので以下の本を読んだ。 ガウス過程と機械学習 (機械学習プロフェッショナルシリーズ)作者:持橋大地,大羽成征講談社Amazon 一周目なので細かい式変形は追っておらず、まず大枠の導出の流れを理解するこ…

Gaussian Splattingを試す

概要理解 流石に中身を全く理解しないままに動かして結果だけ得るのもつまらないと思って、簡単なガウス球3つをレンダリングする部分だけ簡単に実装して原理を確認した。 実装と結果 サンプル実装 from dataclasses import dataclass import torch import ro…

Emergent Communication through Metropolis-Hastings Naming Game with Deep Generative Modelsを読んだメモ

メトロポリス・ヘイスティングス名付けゲームが気になったので読んだ。 概要 まずは図1を見て概要を把握する。 二者間でだいたい同じものを見ている(共同注意)という前提のもと、明示的なフィードバックなしでサインの授受だけをして、メトロポリス・ヘイ…

AHC030復習

やったこと 解説ページにあるものを読んだ 特にwriter解を参考にして(細かい高速化などは省いて)自分なりにRustからC++に書き直し、自分の本番時より良いスコアを得る提出を実装した 理解内容 解説ページが充実しているのであえて繰り返すまでもないが、自…

AtCoder Heuristic Contest 030

暫定64位。 0086 考えたこと ソフトマックス分布を使いたい 個ある各油田について、それぞれ左上のマス位置がである確率を保持してみたい。これはについてlogitを持つSoftmax分布として表現したくなった。 この分布を持って、マップ全域について期待値を取っ…

STL-10データでFSQを試す

最近の世界モデル系手法ではVQ-VAEが当たり前のように使われているので試してみたいが、生のVQ-VAEだとcommitment lossとかentropy lossとか、様々な工夫を入れなければいけないことが気になり、そういう工夫が要らないと主張されていて内容もシンプルなFSQ…

BBFで連続的に2つのゲームを実行する

強化学習エージェントが環境の変化に対応できるかどうか、という点に興味があるため、atariゲームを連続的に切り替える設定での学習を試せるようにした。 デフォルトのatari環境では各ゲームによって有効な行動数が異なる。たとえばBreakoutだと4種類(NOOP…

読書メモ 西田洋平『人間非機械論』

西田洋平『人間非機械論 サイバネティクスが開く未来』 人間非機械論 サイバネティクスが開く未来 (講談社選書メチエ)作者:西田洋平講談社Amazon 著者多数『未来社会と「意味」の境界: 記号創発システム論/ネオ・サイバネティクス/プラグマティズム』 未来…

Bigger, Better, Faster: Human-level Atari with human-level efficiencyを読んだメモ

実験の結果が Atari 100k ベンチマークで、Human Normalized ScoreのIQM(26ゲーム中の上位25%と下位25%を除いた中間50%ゲームについての平均スコア)が1.045 学習時間は6 hours on single GPU とのことであり、魅力的。 Max Schwarzer氏(Google DeepMind)…

Bigger, Better, Fasterのコードを動かす

コードが公開されているので動かしてみる。 venvで行ったので、おおよその手順は git clone https://github.com/google-research/google-research cd bigger_better_faster python3 -m venv .env source .env/bin/activate pip3 install -r requirements.txt…

Transformer系世界モデル手法IRISとTWMの比較

以下の2つの論文を比較する。 Transformers are Sample-Efficient World Models Transformer-based World Models Are Happy With 100k Interactions 共通点としてどちらも Transformerベースで世界モデルを学習するタイプの強化学習手法である Atari 100kベ…