どすえのブログ

ソフトウェア開発ブログ

計算機科学の基本的概念 チューリングマシン

目次 はじめに チューリングマシンの歴史 チューリングマシンの基本概念 チューリングマシンの応用 チューリングマシンとコンピュータの関係 チューリングマシンの限界と問題 はじめに 計算機科学の基本的な概念である「チューリングマシン」についてまとめ…

低ランク行列近似によるLLMの計算効率化手法

LoRA: Low-Rank Adaptation of Large Language Models 元論文 arxiv.org 公式実装 github.com 目次 はじめに LoRAの概要 LLMへの適用方法 実験と評価 LoRAの利点と応用例 まとめと今後の展望 はじめに LLMの課題 近年、LLM(大規模言語モデル)が多くの自然言…

Amazon ECSタスクでのGPUの使用

AWS

ECSでGPUを使う機会があったので、やり方をメモする。 2022.09.22時点ではFargateがGPUに未対応だったため、ECSをEC2(GPU)上に展開する方針をとった。 (このIssueを見ると、まもなくFargateがGPUに対応しそう。) ポイントは ECSに最適化されたAMIを使うこと …

PythonでGoogle SpeechToText REST API を呼び出す

Pythonで Google Cloud SpeechToText を使用する場合、SpeechToTextクライアントライブラリを使うのが一般的だと思うが、REST API から呼び出す機会があったのでメモ。 REST API の公式仕様はこちらに載っている。 cloud.google.com 準備として、APIキーの取…

時系列モデリング手法 HiPPO を読み解く(2)

本記事では、時系列モデリング手法HiPPOの理解を目指し、著者実装をstep-by-stepで動かす。 参考にする著者実装はこちら。 github.com なお、HiPPOの理論は第一部の記事にまとめたのでそちらも参照されたい。 dosuex.com 必要モジュールのインポート from fu…

時系列モデリング手法 HiPPO を読み解く(1)

ICLR2022で発表された、新しい時系列モデリング手法としてS4(Structured State Space Sequence model)というものがある。S4は長距離ベンチマークで従来手法を圧倒的性能で破って話題となった。 S4の論文はいくつかの研究の集大成となっており、核となる技術…

Pythonの辞書の欠損キー操作:setdefaultとdefaultdict

Pythonで辞書に存在しないキーで操作する際は、get()、setdefault()、defaultdict()などのメソッドを用いると良い。 get()による欠損キーへのアクセスは以下を参照。 Python辞書に存在しないキーでの代入 - どすえのブログ setdefault()とdefaultdict()はよ…