はじめに
自分はここ半年ほど、RAGパイプラインを組んで社内ドキュメント検索を改善するプロジェクトに関わっている。最初はLangChainのチュートリアルを写経して動かしていたが、いざ本番に載せようとすると壁だらけだった。検索精度が安定しない、データの前処理が属人化する、モデルの評価基準が曖昧——そんな課題にぶつかるたび、断片的なブログ記事では解決できない根本的な理解の不足を痛感した。
そこで頼ったのが、体系的にまとまった技術書だ。YouTubeやブログも悪くないが、「なぜそう設計するのか」というレイヤーの知識は、ちゃんと構成された書籍のほうが圧倒的に吸収しやすい。
今回紹介するのは、自分がRAG開発の過程で実際に手を動かしながら参照した3冊。データ基盤の設計から統計的な評価の考え方、そしてMLシステム全体のインタビュー的な俯瞰まで、段階的にカバーできる構成にした。いずれもコードや図が豊富で、日本語で読めるか、英語でも平易な文体で書かれている本を選んでいる。
① データエンジニアリングの基礎 — Joe Reis, Matt Housley
Joe ReisとMatt Housleyはデータエンジニアリング領域のコンサルタント兼教育者で、実務と教育の両面で長年活動してきた人物だ。
この本はデータのライフサイクル全体——取り込み、保存、変換、オーケストレーション、サービング——を一冊で俯瞰する。RAGを組むとき、多くの人はベクトルDBや埋め込みモデルに目が行きがちだが、実際に本番で詰まるのはその手前のデータ層であることが多い。ドキュメントのクローリング、チャンク分割の戦略、メタデータの管理、更新頻度の設計。これらはすべてデータエンジニアリングの基礎知識があるかどうかで品質が変わる。
自分がこの本で特に助かったのは、ストレージとサービングの設計パターンの章だ。RAGの検索精度はインデックスの貼り方やデータの鮮度に直結する。そのあたりの判断軸をこの本で得られたことで、パイプライン設計の議論がスムーズになった。
日本語訳が出ているので、英語に抵抗がある人でもすぐに取りかかれる点もありがたい。
こんな人に: RAGの精度問題がデータ起因だと薄々感じているが、どこから手をつけていいか分からないエンジニア
② データサイエンスのための統計学入門 第2版 — Peter Bruce, Andrew Bruce, Peter Gedeck
Peter BruceはStatistics.comの創設者、Andrew Bruceは統計コンサルタントとして長いキャリアを持つ。第2版からPeter Gedeckが加わり、Pythonコードが大幅に充実した。
扱う範囲は確率、回帰、リサンプリング、ベイズ推定など統計の王道トピックだ。一見RAGと無関係に思えるかもしれないが、検索結果の評価やA/Bテストの設計、特徴量エンジニアリングの妥当性検証には統計的思考が欠かせない。Retrieverの精度をどう測るか、チャンクサイズを変えたときの有意差をどう判定するか——こうした問いに答えるための土台がこの一冊にある。
書き方が平易で、数式に溺れずに直感をつかめる構成になっている。RとPythonの両方でコード例が載っているため、手を動かしながら理解できる。自分は検索パイプラインの評価指標を設計するときに何度も参照した。
こんな人に: モデルや検索の精度を「なんとなく良さそう」で済ませてしまっている人、定量的な評価基準を自分で設計したい人
③ Machine Learning System Design Interview — Ali Aminian, Alex Xu
Alex Xuは「System Design Interview」シリーズで知られる著者で、Ali Aminianと共にML特化のシステム設計本を書いた。
タイトルに「Interview」とあるが、内容は面接対策に留まらない。推薦システム、検索ランキング、不正検知など多様なMLシステムのケーススタディが収録されており、それぞれ特徴量設計、モデル選定、スケーラビリティ、モニタリングまでを一気通貫で扱う。RAGやエージェントのシステムを設計するとき、「全体をどう構成するか」というアーキテクチャレベルの思考力が求められる。この本はまさにその訓練になる。
自分はマルチエージェント構成を検討する際、この本のフレームワークを応用してコンポーネント間のトレードオフを整理した。図が豊富で、各ケースの設計判断が視覚的に理解しやすい。英語だが文体は簡潔で、技術英語に慣れている人なら問題なく読めるレベルだ。
こんな人に: 個別の技術は分かるがシステム全体の設計判断に自信がない人、RAGやエージェントのアーキテクチャを俯瞰的に考えたい人
まとめ
| ステップ | 読む本 | 得られるもの |
|---|---|---|
| 1. データ基盤を固める | データエンジニアリングの基礎 | パイプライン設計の判断軸 |
| 2. 評価力を身につける | データサイエンスのための統計学入門 第2版 | 定量的な精度評価・実験設計の力 |
| 3. 全体設計を俯瞰する | Machine Learning System Design Interview | アーキテクチャレベルの設計思考 |
今抱えている課題別に1冊選ぶなら:
- RAGの精度が不安定でデータ周りを見直したい → 「データエンジニアリングの基礎」
- 改善施策の効果を数値で示せない → 「データサイエンスのための統計学入門 第2版」
- コンポーネントは動くがシステム全体の設計に迷う → 「Machine Learning System Design Interview」
3冊とも、読んで終わりにせず手元のプロジェクトと並行して参照するのが一番効果的だ。壁にぶつかったタイミングで該当章を開く——そのサイクルが最も知識を定着させてくれる。