post
修士生活を振り返る(早期修了 / 学振 / CVPR / 未踏)
· ☕ 8 min read
修士課程での主要な活動 修士課程での主要な活動 (2023/04/01 〜 2024/09/05) 早期卒業(飛び級) 1.5年で修士を卒業し,9月から博士課程へ 論文 主著 CVPR 2024, CoNLL23 採択 (上位3.6%のCVPR Highlightへ選ばれる) 共著 CVPR WS 2023, IEEE/RSJ IROS 2023, ACCV 2024 採択 国内論文 8本 グラント関連 2025年度 JSPS 日本学術振興会特別研究員(DC1)採用 2024年度 JST BOOST 採用 未踏 2024 採択 (落合陽 ...

MambaをPoetryで管理する
· ☕ 1 min read
リンク集 Mamba: Linear-Time Sequence Modeling with Selective State Spaces https://github.com/state-spaces/mamba https://github.com/Dao-AILab/causal-conv1d 備忘録 mamba-ssmやcausal-conv1dがPEP517に準拠していないのでpoetry add <package-name>だとインスコできない poetry add <path>でもsetup.py読んでくれないからムリ → 無理やりローカルでwheelを作ってpoetry addすれば ...

bfloatとは何か
· ☕ 1 min read
double vs fp32 vs fp16 vs bfp16 double (64bit) 1/11/52 = 64 fp32 -> float (32bit) 1 / 8 / 23 = 32 fp16 -> float (16bit) 1 / 5 / 10 = 16 IEEEで規格化 bfloat16 1 / 8 / 7 = 16 指数部をfp32に合わせている 仮数部は実質的な有効数字 (粒度) を決めて,指数部は値のrangeを決めるので,仮数部を減らして指数部を増やすことで,取りうる値のrangeを最大化してあげる (仮数部) x 2^(指数部) 2^() ...


【poetry】poetry updateが終わらない(気がする)とき
· ☕ 1 min read
pyproject.tomlで変な制約を付けていると,poetry updateで依存関係の解決が終わらないことがある. とりあえず poetry update -vvvでverbose mode (mode 3)で出力しましょう. 大抵は無限にバージョンを遡って行っているパターンが多い. 目で追っていくと,やたらとバージョンを探索しているライブラリだったり,頻出するライ ...

CPU = ALU + Register + L{1..3} Cache + etc
· ☕ 1 min read
CPUの主な構成要素は以下の通り: ALU(Arithmetic Logic Unit,算術論理演算装置): ALUは,レジスタから読み出されたオペランド(操作対象のデータ)とオプコード(操作を指示するコード)を用いて,算術計算や論理演算を行う. レジスタ: レジスタは,高速な小容量の記憶装置で,CPU内で直接アクセスされるデータや指令を ...

【Computer Science】知っておくべき数字一覧
· ☕ 1 min read
分岐予測の失敗 → 5ns L1 / L2キャッシュ→ 0.5ns / 7ns L1 cache reference 0.5 ns Branch mispredict 5 ns L2 cache reference 7 ns Mutex lock/unlock 100 ns Main memory reference 100 ns Compress 1K bytes with Zippy 10,000 ns 0.01 ms Send 1K bytes over 1 Gbps network 10,000 ns 0.01 ms Read 1 MB sequentially from memory 250,000 ns 0.25 ms Round trip within same datacenter 500,000 ns 0.5 ms Disk seek 10,000,000 ns 10 ms Read 1 MB sequentially from network 10,000,000 ns 10 ms Read 1 MB sequentially from disk 30,000,000 ns 30 ms Send packet CA->Netherlands->CA 150,000,000 ns 150 ms Where 1 ns = 10-9 seconds 1 ms = 10-3 seconds 引用: “Numbers Everyone Should Know” from Jeff Dean. doubleのbit数 MSB・指数・仮数で1 ...


【k8s・DDP】クラスタ上でのtorch.loadが遅い
· ☕ 3 min read
概要 巨大なembeddingをチャンクで外部に保存し,DDP(Distributed Data Parallel)を使った学習時に各GPUで読み込みたい そんなときtorch.load(path, map_location=f"cuda:{rank}")にかかる時間の分散が大きい場合がある 前提: torch.loa ...

ABCIで任意のDockerイメージを使用する
· ☕ 3 min read
前提: ABCIとは AI橋渡しクラウド(AI Bridging Cloud Infrastructure、以下「ABCI」という)は、国立研究開発法人 産業技術総合研究所が構築・運用する、AI技術開発・橋渡しのためのオープンな計算インフラストラクチャです。ABCIは、2018年8月に本格運用を開始し、2021年5月にABCI 2.0にアップグレードされ ...


【ECDH・aes128gcm】MissCatの通知システムについて
· ☕ 8 min read
こんにちは.論文執筆真っ最中のYuWdです. 最近,研究および論文執筆のタスクが落ち着いてきたのでMissCatの改修をボチボチ行っています. (MissCatとはiOS向けのMisskeyクライアント) 改修に着手するにあたって,まずは通知システムを直すところに目星をつけたのですが,昔の自堕落(ドキュメントを書かない性分) ...

ReduxとSwiftUIについて
· ☕ 3 min read
Redux 状態は複数のView, Controllerが相互に依存するので管理が難しい そこで,相互にイベントを発火させるのをやめて,単一方向にのみ状態が流れるように ユーザ操作で変数が変更→変更を検知したらレンダリング → flux さらに,変数変更とレンダリングの間に更新ロジックを挟むのがRedux Reduxはグローバルな状態を管理するのが ...

【LangChain】Agentの仕組みを理解して, 任意のLLMを使用する
· ☕ 3 min read
OpenAIの提供するGPT-3には何種類かある text-davinci-003 / text-curie-001 / text-babbage-001 / text-ada-001 特にLangChainでは最も性能の良いtext-davinci-003が使用されている. だが,APIは金が掛かるのでなるだけフリーのLLMが使いたい → transformers-openai-api等で偽サーバを建てて,APIのオリジンをすり替えると任意のL ...

【合格体験記】1週間程度で応用情報に受かるコツ
· ☕ 8 min read
はじめに この記事は慶應理工アドベントカレンダー2022の25日目の記事です. ← 24日目 (アドカレが全て埋まってくれて非常に嬉しい!!!) 導入 はじめましての方、はじめまして。2019年に慶應理工へ入学し、その後情報工学科に進学して今現在B4、無事ストレートでの卒業ができそうなYuWdと申します。 この度、なぜか10日程度の ...