この資料について

 弊研究室(ito lab)では毎週金曜日に輪読会を実施している。そこで「2026年度の後半(秋ごろ)からは福島くんの知識を教えてほしい」と言われたのでBlogを新しく作成してみることにした。本来であれば輪読会は出版された本を印刷して皆に配り、一週間のうちに読んでもらうのがセオリーなのだけど、それをWebで完結させてみる。

 各章は大体11万字の分量を目指して作成するし、演習問題も用意するつもりである。もちろんAI(LLM)は可能な限り利用するが、ここでの目的は、僕の脳内にある知識を必要十分に書き起こすことなので冗長な文章にはならないようにかなり削って書こうと思っている。

 2026年現在において必要とされる能力は検索クエリを覚えることで、LLMが登場した今はクエリに加えて簡単なセンテンスを覚えることであると思っている。その最小要件は一単語、一センテンスである。例えば機械学習について知りたければ「機械学習」と検索窓やchat interfaceに打てばいい。しかし、そこで出てくるのは多くの情報であり、知識ではない。これは弊研究室のボス、井藤彰先生の言葉なのだけど、情報ではなく、知識を身につけるべきなのだ。「では情報と知識の違いは」と哲学的な話になるが、そういう難しいことは置いておいて、ここでは簡単に今の自分に必要な情報のことを知識としてみる。今の自分に必要な情報は自然と直感や直観、センスが働き、「なるほど」と勝手に脳内が覚えてくれる。そこに必要なのはただのセンスなのだ。膨大な音楽の中から今の自分に必要な曲を探す、最高にイケてる曲を探す。膨大な論文の中から今の研究に必要な論文を当てる。何度もいうがそこに必要なのは概ね直観とセンスなのだ。そして、その直観とセンスは磨いていくことができるだろう。

 ここでまとめられるのは僕が(あるいは僕の直観とセンスが)「なるほど」と一度は思い、記憶に留めておいた僕に必要だった情報(知識)になるはずである。むしろ、砂山の中から砂金を見つけるように集めたそれらの知識なら今の時代でもまとめるに足るものになるだろうと僕は考えている。

資料の要約

 以降では今回まとめた資料の要約を作成する。要約は章を完成させる前に書いたり完成させた後に書いたりするので、このページは数ヶ月をかけて動的に変化することになるだろう。内容も自然と変わっていくはずである。

11章:機械学習に至るまでの基礎数学(線形代数と微分)

 この章ではタイトルの通り、機械学習に必要な基礎数学について一番簡単な機械学習の例である単回帰直線を例にとって線形代数(行列)と微分がどう機械学習に使われるのか、また、機械学習が何をしようとしているのかを理解してもらう。

 機械学習ではパラメータと説明変数を積和で表現して目的変数と結び、パラメータの誤差関数を最小化させることに焦点がおかれる。

説明変数 x目的変数 y最小二乗法:各点からの残差(赤点線)を最小化する

結果的にもとまった関数ffに任意の値(しかし内挿に限られる)を代入することによって値を予測する。目的変数が離散値であれば分類タスクと呼ばれ、連続値であれば回帰タスクと呼ばれるが、数学的には離散値か連続値かくらいしか違いはない。

回帰 (Regression)

分類 (Classification)

y1=f(x11,x12,,x1n)y2=f(x21,x22,,x2n)  ym=f(xm1,xm2,,xmn)\begin{aligned} y_1 &= f(x_{11}, x_{12}, \dots, x_{1n}) \\ y_2 &= f(x_{21}, x_{22}, \dots, x_{2n}) \\ &\ \ \vdots \\ y_m &= f(x_{m1}, x_{m2}, \dots, x_{mn}) \end{aligned} y1=w1x11+w2x12++wnx1n+by2=w1x21+w2x22++wnx2n+b  ym=w1xm1+w2xm2++wnxmn+b\begin{aligned} y_1 &= w_1 x_{11} + w_2 x_{12} + \dots + w_n x_{1n} + b \\ y_2 &= w_1 x_{21} + w_2 x_{22} + \dots + w_n x_{2n} + b \\ &\ \ \vdots \\ y_m &= w_1 x_{m1} + w_2 x_{m2} + \dots + w_n x_{mn} + b \end{aligned}

積和を表現・演算するのに最も効率の良い方法が行列であり積和から行列を用いた演算を道具として用いて「空間」を表現し、「変換」を行うのが線形代数である。

X (データ行列)×w=y行ベクトルと列ベクトルの内積が行列積の各要素となる

先ほどの関数は行列を使うと一気に以下のように書き下せる。

(y1y2ym)=(x11x12x1nx21x22x2nxm1xm2xmn)(w1w2wn)+(bbb)\begin{pmatrix} y_1 \\ y_2 \\ \vdots \\ y_m \end{pmatrix} = \begin{pmatrix} x_{11} & x_{12} & \dots & x_{1n} \\ x_{21} & x_{22} & \dots & x_{2n} \\ \vdots & \vdots & \ddots & \vdots \\ x_{m1} & x_{m2} & \dots & x_{mn} \end{pmatrix} \begin{pmatrix} w_1 \\ w_2 \\ \vdots \\ w_n \end{pmatrix} + \begin{pmatrix} b \\ b \\ \vdots \\ b \end{pmatrix} y=Xw+b\mathbf{y} = X\mathbf{w} + \mathbf{b}

さらに、関数の最小化には微分を用いる。微分とは何かと聞かれて即興で答えられるだろか。微分とは中学で習う「傾き」に極限値の概念を導入したものである。

xx + Δx接線 (Δx → 0)微分の定義:割線から接線への極限
微分の定義:f(x)=limΔx0f(x+Δx)f(x)Δx微分の定義: f'(x) = \lim_{\Delta x \to 0} \frac{f(x+\Delta x) - f(x)}{\Delta x} ある点での微分係数の定義:f(a)=limxaf(x)f(a)xaある点での微分係数の定義: f'(a) = \lim_{x \to a} \frac{f(x) - f(a)}{x - a}

 極限な傾き、要は傾きなのだ。そして、行列(積和の表現方法)は連立方程式と一対一で対応している。つまり、機械学習とは中学レベルの基礎数学の集まりであり、その原理を理解するのはほとんど難しくない。この章ではそのことがわかってもらえたらありがたい。

22章:機械学習

ここでは機械学習(ニューラルネットワーク以前)の各種手法とその原理について解説する。

現代はディープラーニングの台頭により、人工知能といえばニューラルネットワーク(NN)という認識が広まりつつある。しかし、実務の現場やデータ分析の最前線において、NN「以前」に確立された古典的な機械学習手法は決して過去の遺物ではない。むしろ、特定の領域においては今なお最強の武器として君臨している。本章では、これらの伝統的かつ強力なアルゴリズムの原理を紐解き、データ分析における多様なアプローチを学ぶ。

まず触れるべきは、機械学習の最も基礎的な分類手法である「ロジスティック回帰」である。名前に「回帰」と付くが、実態は目的変数が離散値を取る分類タスク(例:スパムメールか否か)を解くためのモデルである。入力特徴量とパラメータの線形結合(積和)を計算し、その結果をシグモイド関数と呼ばれる非線形関数に通すことで、出力を0から1の間の「確率」として解釈する。

x₁x₂xₙΣSigmoidy ∈ [0, 1]ロジスティック回帰 = 単一のニューロン構造

特筆すべきは、この「入力の積和を取り、非線形な関数で変換して出力する」という数学的構造が、後に登場するニューラルネットワークを構成する最小単位(単一の人工ニューロン)と完全に一致している点である。つまり、ロジスティック回帰の原理と誤差関数(交差エントロピー)の最小化プロセスを深く理解することは、巨大で複雑な深層学習モデルの根源的なメカニズムを理解することに他ならない。ロジスティック回帰はNNの出発点であり、計算コストが極めて低く解釈性が高いため、結果の理由説明が求められる医療や金融の現場では現在でも第一選択として重宝されている。

続いて、線形モデルでは捉えきれない複雑な境界線を引くための強力なアプローチとして「決定木(Decision Tree)」をベースとしたモデル群を解説する。単体の決定木は条件分岐を繰り返して予測を行う直感的な手法だが、訓練データに適合しすぎる「過学習」を起こしやすいという致命的な弱点を持つ。この弱点を克服し、劇的な性能向上をもたらしたのが、複数のモデルを組み合わせる「アンサンブル学習」である。

アンサンブル学習の代表例として、データの抽出方法や使用する特徴量をランダムに変えながら多数の決定木を構築し、それらの多数決で予測を行う「ランダムフォレスト(Random Forest)」が挙げられる。これは非常に堅牢で、細かいパラメータ調整を行わずとも高い精度が出やすいため、分析の初期段階におけるベースラインとして極めて優秀である。

さらに、ランダムフォレストとは異なるアプローチで精度を極限まで追求したのが「勾配ブースティング(GBDT: Gradient Boosting Decision Tree)」である。これは、前の決定木が間違えた予測誤差(勾配)を、次の決定木が順番に修正していくという直列的な学習プロセスを取る。

多数決Random Forest (並列)
誤差を学習さらに修正GBDT (直列)

本章では、このGBDTの計算を並列化して高速かつ高精度に実装し、世界中を席巻した「XGBoost」、カテゴリ変数の扱いに特化しチューニングの手間を大幅に削減した「CatBoost」、そしてMicrosoftが開発し、より軽量で大規模データに適した「LightGBM」などの派生手法についても、そのアルゴリズムの思想の違いを交えて詳解する。

ここで一つの疑問が生じるかもしれない。「ディープラーニングが発展した現代において、なぜこれらの手法を学ぶ必要があるのか」と。その答えは、データの性質による明確な「棲み分け」が存在するからである。

表形式データ (Structured)GBDT / 古典的MLXGBoost, LightGBM…vs非構造化データ (Unstructured)画像言語深層学習 (NN)CNN, Transformer…

画像、音声、自然言語といった非構造化データにおいては、特徴量を自ら抽出するNNが圧倒的な優位性を持つ。しかし、年齢、価格、商品カテゴリなどがエクセルのように整然と並んだ「表形式データ(テーブルデータ)」においては状況が全く異なる。テーブルデータにおいては、特徴量同士の複雑な条件分岐を捉えることに長けたGBDT系アルゴリズム(XGBoostやLightGBMなど)が、計算コスト、予測精度、そして扱いやすさの両面において、NNと同等あるいはそれ以上のパフォーマンスを叩き出すことが珍しくないのだ。

実際、世界中の優秀なデータサイエンティストが精度を競い合う世界最大のデータ分析コンペティション「Kaggle」において、画像やテキストを含まない純粋なテーブルデータのコンペティションでは、上位陣の解法は未だにXGBoost、LightGBM、CatBoostといった勾配ブースティングの巧妙なアンサンブルで占められている。彼らは「最新の手法が常に最良の手法ではない」ことを熟知しており、データの性質に合わせて最も切れ味の鋭い道具を選択しているのである。

本章を通して、ロジスティック回帰による線形・確率的なアプローチから、アンサンブル学習による非線形・階層的なアプローチまで、機械学習の多様な枠組みとその背景にある数学的工夫を学ぶ。これらの原理と「強み・弱み」を正確に把握することは、単なるライブラリの利用者から脱却し、現実世界の複雑な課題に対して最適なアプローチを設計できる真のデータサイエンティストへと至るための不可欠なステップとなるはずである。

33章:深層学習

 この章で解説したロジスティック回帰や決定木ベースのアルゴリズムは、確かに強力な機械学習の手法である。しかし、人工知能の歴史において「ある致命的な壁」にぶつかり、長らく冬の時代を迎えることになった。それが「線形分離不可能」な問題、最もシンプルな例で言えば「XOR(排他的論理和)問題」である。XORとは、2つの入力が「同じなら 00、違うなら 11」を返す論理演算である。これを 22 次元座標上の点として配置すると、以下のようになる。

(0,0)0(1,1)0(1,0)1(0,1)1\begin{aligned} (0, 0) &\rightarrow 0 \\ (1, 1) &\rightarrow 0 \\ (1, 0) &\rightarrow 1 \\ (0, 1) &\rightarrow 1 \end{aligned}
0,01,11,00,1XOR問題:直線1本では分離不可能

 この 44 つの点を、00 のグループと 11 のグループに分けるように「直線を 11 本」引いてみてほしい。……どうやっても不可能なはずだ。単一のニューロン(パーセプトロン)や単純なロジスティック回帰は、数学的に「空間に直線を引いて分類する(線形分離)」ことしかできないため、このような斜めに交差する非線形な関係を絶対に解くことができなかったのである。

 この壁を突破したのが「隠れ層(中間層)」の導入、すなわちニューラルネットワーク(多層パーセプトロン)の誕生である。入力を直接出力に繋ぐのではなく、中間に別の層を挟んで空間そのものを歪め(非線形変換をかけ)、曲がりくねった複雑な境界線を引けるようにしたのだ。

非線形変換 (隠れ層)「空間を歪める」ことで、直線での分類を可能にする

層を深く重ねる(Deepにする)ことで、原理的にはいかなる複雑な関数・境界線も近似できることが数学的に証明されている(普遍近似定理)。これが「深層学習(Deep Learning)」の根本的な原理である。

 しかし、深層学習が世界を根底から覆した真の理由は、複雑な関数を近似できることだけではない。最大の功績は「特徴量抽出の自動化(表現学習)」を実現したことにある。

 ニューラルネットワーク以前の機械学習では、データの「どこに注目すべきか(特徴量)」を人間が手作業で設計する必要があった。これを特徴量エンジニアリングと呼ぶ。例えば画像認識であれば、「ここにエッジ(輪郭)がある」「ここに丸い模様がある」といったルールを職人芸のようにプログラムで定義し、それをアルゴリズムに入力していた。深層学習は、この常識を破壊した。生ピクセルデータをそのまま入力するだけで、ネットワーク自身が誤差を最小化する過程で「何に注目すれば分類できるか」を自動的に学習し、最適な特徴量を自ら獲得するようになったのである。人間のドメイン知識やバイアスに依存せず、データから直接「表現」を学習するこの仕組みをEnd-to-End学習と呼び、これが画像・音声・自然言語といった非構造化データの処理において人間を凌駕するブレイクスルーをもたらした。

従来の手法 (Traditional ML)画像手動の特徴量抽出学習アルゴリズム「犬」深層学習 (End-to-End)画像Deep Neural Network (特徴量も自動学習)「犬」人間の「職人芸」が、データからの「自動獲得」へ

 この深層学習の恐るべきポテンシャルが世界に衝撃を与えた歴史的転換点がいくつか存在する。最初の特異点は 20122012 年の画像認識コンペティション「ImageNet(ILSVRC)」である。ここでトロント大学のチームが開発した「AlexNet」と呼ばれる深層畳み込みニューラルネットワーク(CNN)が、従来の手法に圧倒的な大差をつけて優勝し、第 33 次AIブームの火蓋を切った。

 そして 20162016 年、世界中が熱狂したのがDeepMind社による囲碁AI「AlphaGo」の登場である。囲碁は将棋やチェスに比べて盤面が圧倒的に広く、場合の数は宇宙の原子の数よりも多いとされる。そのため「コンピュータが人間に勝つにはあと 100100 年かかる」とすら言われていた。しかし、AlphaGoは盤面を画像のように捉える深層学習と、自己対局で学習する強化学習を融合させることで、世界トップ棋士であるイ・セドルを打ち破った。人間の「直感」や「大局観」と呼ばれていた高度な認知能力を、深層学習が数式によって再現してのけた瞬間であった。

 日本の将棋界においてもその波は波及した。「Ponanza」や「elmo」といった探索アルゴリズムの工夫によって人間を超えたAIの時代を経て、現在ではAlphaGoの系譜である深層学習ベースのAI(AlphaZeroなど)が、評価関数の精度において圧倒的な強さを誇っている。藤井聡太を筆頭とする現代のトップ棋士たちは、もはやAIを「倒す相手」ではなく「真理を探究するための教師」として活用し、数百年続いた将棋の定跡(セオリー)がディープラーニングによって次々と書き換えられる時代に突入している。

 このように、非線形問題の解決から始まり、特徴量抽出の自動化によって人間の認知能力を模倣・超越するに至った深層学習は、単なる技術の進化ではなく、知的作業のあり方そのものを再定義する歴史的なパラダイムシフトとなったのである。

44章:大規模言語モデル

 第3章で見たように、深層学習は画像認識やゲームの分野で人間を超越する成果を挙げた。しかし、人間の知性の根幹である「自然言語」の完全な理解と生成は、依然として人工知能にとって最大の難所であった。本章では、世界を根底から変革し、現在進行形の革命を起こしている「大規模言語モデル(LLM: Large Language Model)」の誕生と、その中核にあるブレイクスルーについて解説する。

 2010年代半ばまで、言語のような「系列データ(順番に意味があるデータ)」を処理する深層学習の主役は、RNN(リカレントニューラルネットワーク)やLSTMといったアーキテクチャだった。これらは文章を「先頭から1単語ずつ順番に」読み込む仕組みであった。しかし、この方式には致命的な弱点があった。長い文章になると文頭の情報を忘れてしまう「記憶の限界」があり、何より単語を順番に処理するためGPUによる並列計算が効かず、モデルの規模を大きくすることができなかったのである。

 この限界を完全に破壊したのが、2017年にGoogleの研究者らが発表した歴史的論文『Attention Is All You Need』で提唱された「Transformer(トランスフォーマー)」というアーキテクチャである。 Transformerの最大の発明は、「Self-Attention(自己注意機構)」にある。これは、文章中のある単語を処理する際、文中の「他のすべての単語」に同時に注意を向け、どの単語同士が強い結びつきを持っているかを一瞬で計算する数学的メカニズムである。これにより、文章を先頭から順に読む必要がなくなり、文全体を一括で並列処理できるようになった。

RNN / LSTM (Sequential)単語1単語2単語3文頭の情報を忘れやすいTransformer (Parallel + Attention)Self-Attention:全単語が相互に「注意」を向ける

結果として、計算速度が飛躍的に向上し、膨大なデータを巨大なスーパーコンピュータで一気に学習させることが可能となった。

 Transformerの登場により、AI研究者たちはある暴力的な、しかし美しい法則に気がついた。「スケール則(Scaling Law)」である。モデルのパラメータ数(脳のシナプスの数に相当)、学習データの量、そして計算資源(GPUの数)の3つを単純に増やせば増やすほど、モデルの性能が予測可能な数学的法則に従ってどこまでも向上し続けるという事実だ。これにいち早く賭けたのがOpenAIであり、インターネット上の膨大なテキストを読み込ませた巨大なモデル「GPT」シリーズを開発していくことになる。

計算量 (Compute) [log scale]誤差 (Loss) [log scale]Scaling Lawスケール則:投資した分だけAIは賢くなる

 大規模言語モデルの根本的な原理は、実は拍子抜けするほどシンプルである。それは「入力された文章の次にくる確率が最も高い単語(トークン)を予測し続ける」こと、ただそれだけである。 しかし、数千億というパラメータを持つ巨大モデルが、人類の全知の結晶であるインターネット上のテキストを使って「次の単語予測」を極限まで学習した結果、奇跡のような現象が起きた。AIが単なる確率的オウム返しの枠を超え、文法、論理的推論、事実知識、さらにはプログラミングコードの記述能力までも自ら獲得し始めたのである。量的な拡大が質的な変化を生むこの現象は、AIの「創発(Emergence)」と呼ばれる。

 だが、極めて賢くなっただけの言語モデルは、ネットの海に漂う偏見や嘘も含めて「ただ続きの文章を書く機械」に過ぎなかった。これを人間にとって使いやすく、かつ安全な「対話型アシスタント」へと昇華させた最後のピースが「RLHF(人間からのフィードバックによる強化学習)」である。人間の評価者がAIの回答に対して「有益か」「無害か」という基準で採点を行い、その価値観(アライメント)をモデルに後付けで学習させたのである。この技術を実装し、2022年末に公開された「ChatGPT」は、史上最速で1億人以上のユーザーを獲得し、人類社会に「生成AI革命」を引き起こした。

プロンプト入力AIの回答群人間による比較ランキング・報酬モデルRLHF:人間の「好み」をAIに教え込む

 かつて、翻訳には翻訳専用のモデルが、感情分析には感情分析専用のモデルが必要であった。しかし現在では、たった一つの巨大な「基盤モデル(Foundation Model)」に対し、自然言語で指示(プロンプト)を与えるだけで、ありとあらゆる知的なタスクを汎用的にこなせるようになった。

 大規模言語モデルは、単なる自然言語処理の便利なツールではない。機械学習の歴史のすべてを飲み込み、汎用人工知能(AGI)へと続く扉をこじ開けた人類史上の特異点として、今もなお凄まじいスピードで進化を続けている。

55章:Pythonで機械学習

 本章では、22章から44章の理論編で紹介した機械学習および深層学習の各種手法を、プログラミング言語Pythonを用いて実際に実装する方法について学ぶ。

 PythonがAI・機械学習の分野で世界的な覇権を握っている理由は、言語自体の構文がシンプルであることに加え、世界中の研究者やエンジニアが開発した強力な「ライブラリ(拡張機能のパッケージ)」がエコシステムとして完璧に整備されているからである。本章では、車輪の再発明を避け、これらのライブラリを適切に組み合わせて効率的にモデルを構築する「現代のデータサイエンスの作法」を身につける。

深層学習 / LLMPyTorch, Transformers (Hugging Face)古典的機械学習Scikit-learn, XGBoost, LightGBMデータ処理基盤NumPy, pandas

 まず、テーブルデータを対象とした古典的な機械学習やデータ前処理において、絶対に避けて通れないのが「NumPy」と「pandas」である。NumPyは第22章で触れた行列演算や積和をC言語に迫る速度で高速処理する土台であり、pandasはエクセルのような表計算データをプログラム上で柔軟に操作・加工するための必須ツールである。 そして、これらで整えたデータを学習させるための最大の武器が「Scikit-learn(サイキットラーン)」である。ロジスティック回帰、決定木、ランダムフォレストといった主要なアルゴリズムのほぼすべてが網羅されており、たった数行のコード(fit で学習し、predict で予測する)を記述するだけで、複雑な数学的処理を裏側で実行してくれる。

X, ymodel.fit()学習 (Training)データから法則を学ぶ
未知のXpredict()予測値 y予測 (Inference)

さらに、Kaggleなどのコンペティションで猛威を振るう「XGBoost」や「LightGBM」といった勾配ブースティング手法も、専用のPythonパッケージを導入することで簡単に実装が可能である。

 次に、第33章で解説した深層学習(ニューラルネットワーク)の実装フレームワークへと進む。現在、研究から産業応用まで最も広く使われているのが、Meta社が主導して開発した「PyTorch(パイトーチ)」である。 深層学習の実装では、モデルのパラメータを更新するために誤差関数を「微分」するステップが不可欠だが、PyTorchは「自動微分(Autograd)」という強力な機能を備えている。これにより、開発者は複雑な微分の計算式を自ら導出する必要がなくなり、レゴブロックを組み立てるようにネットワークの層(全結合層や畳み込み層)を定義するだけで、モデルの学習ループを直感的に記述することができる。また、行列計算をGPU(グラフィックボード)上で実行するための記述も極めて容易であり、計算速度を劇的に引き上げることが可能である。

 最後に、第44章で触れた大規模言語モデル(LLM)やTransformerといった最先端のAIを扱うための実装アプローチを紹介する。 数億〜数千億のパラメータを持つLLMを個人が一から学習させることは、計算資源の観点から不可能に近い。そのため現代の開発では、Hugging Face社が提供する「Transformers」というライブラリを活用するのが標準となっている。このライブラリを使えば、世界中の研究機関が莫大なコストをかけて事前学習した強力なモデル(基盤モデル)をインターネット経由で簡単にダウンロードし、自身のPythonコードに組み込むことができる。開発者は、用意されたモデルに対して自社特有の少量のデータで「ファインチューニング(微調整)」を行ったり、適切なプロンプトを与えてタスクを解かせたりする手法(API経由での推論)を学ぶことで、最新のAI技術を即座にアプリケーションへと実装できる。

事前学習 (Pre-training)巨大な知能膨大なデータ・莫大なコスト微調整 (Fine-tuning)専門知識特定のタスクに特化「巨人の肩」に乗り、自分好みのAIへ

 本章を通し、データの加工からモデルの学習、そして最新の基盤モデルの呼び出しに至るまで、Pythonエコシステムがいかに強力かつ洗練されているかを体感してほしい。理論と実装の両輪を回すことではじめて、機械学習の真の価値を引き出すことができるはずである。

66章:AI-CLI入門

55章までは、Pythonを用いて機械学習モデルを実装する方法を学んできた。しかし、現代の開発者がLLMの恩恵を受ける場所は、エディタの中だけにとどまらない。日常的に最も多くの時間を過ごすターミナルにAIを直接統合する「AI-CLI(Command Line Interface)」ツールが、開発体験を劇的に変えている。

なぜAI-CLIが必要なのか

ブラウザのチャットUIでは、エラーログやコードをコピー&ペーストするたびに「文脈(コンテキスト)」が断絶し、集中力が削がれる。一方、AI-CLIは実行中のターミナルの出力をリアルタイムで読み取り、修正案を即座にファイルへ反映させることができる。AIは単なる相談役ではなく、ターミナル内で共に作業を行う「自律型エージェント」へと進化した。

ブラウザ UI (従来)コピペの往復・文脈の断絶vsAI-CLI (シームレス)$ gemini “fix error”ターミナル内で完結

代表的なAI-CLIと基盤モデル

  1. OpenAI Codex OpenAIのコーディング特化型モデル。現在も独立した基盤モデルとして進化を続けており、多くのツールのバックエンドとして「エージェントスタック」の核となっている。
  2. OpenCode (opencode.ai) 15万以上のGitHubスターを誇る、今最も勢いのあるOSS系エージェント。Go言語で書かれた高速なバイナリと、直感的なTUI(Terminal User Interface)が特徴だ。LSP(Language Server Protocol)との連携により、コードの型情報まで理解した高度な編集が可能。特定のベンダーに依存せず、後述のGeminiやClaude、ローカルのOllamaなどを自由自在に切り替えて「ペアプロ」ができる。
  3. Claude Code Anthropic社による公式CLI。自律的なファイル検索やテスト実行の精度が高く、複雑なリファクタリングにおいて圧倒的な信頼感がある。
  4. Gemini CLI (@google/gemini-cli) GoogleのGeminiを活用するCLI。無料枠が非常に充実しているのが最大の特徴。マルチモーダル機能により、ターミナルに画像をドラッグ&ドロップして「このデザイン通りに実装して」といった指示も可能。

インストールと初期設定(Gemini CLIの例)

現在のモダンなツールは、APIキーの手動設定よりも「Webアカウント統合」が主流だ。ここでは高速なパッケージマネージャ pnpm を使った導入手順を紹介する。

1. ツールのインストール ターミナルで以下のコマンドを実行し、グローバルにインストールする。

pnpm add -g @google/gemini-cli

※OpenCodeの場合は pnpm add -g opencode-ai で導入可能だ。

2. Webブラウザでのログイン統合 インストール後、ターミナルで以下のコマンドを打つ。

gemini login

自動的にWebブラウザが立ち上がり、Googleアカウントの認証画面が表示される。「許可」を押すだけで、ローカル環境に認証情報がセキュアに統合される。APIキーを環境変数に書き込む手間もリスクもなく、数秒でAIとの対話が開始できる。

過去 (複雑・リスク)APIキーをコピペ.envファイルを編集環境変数の読み込み×現在 (シンプル・安全)$ gemini login許可 (Authorize)

AI-CLIの主な活用場面

  • プランニングと実装の分離: OpenCodeなどでは「Planモード」で修正案を検討し、「Buildモード」で一括適用するといった使い分けができる。
  • エラーの自動解決: プログラムがクラッシュした際、「今のエラーログを見て原因を修正して」と打てば、AIがログを解析し、コードを直し、テストを再実行して確認する。
エラー発生ログ解析コード修正テスト検証解決!自律型エージェントによる修正ループ
  • インフラの自然言語操作: 「ポート3000を専有しているプロセスを特定して終了させて」といった、覚えにくい複雑なUNIXコマンドの組み立てをAIに代行させる。

おわりに

AI-CLIの導入は、開発効率を数倍に引き上げるだけでなく、「退屈な作業はAIに任せ、人間は設計や創造的な意思決定に集中する」という新しい開発スタイルへの入り口となる。まずは無料で強力なGemini CLIや、OSSの雄であるOpenCodeから、その破壊的な利便性を体感してみてほしい。

77章:GithubやNvim、Nix、uv、pnpmについて。

本章では、ソースコードの管理からエディタ、パッケージ管理に至るまで、現代のエンジニアが「標準」として採用している強力なツール群について紹介する。これらは直接AIを作る道具ではないが、AI開発のスピードを引き上げるための重要な基盤である。

1. GitHub:ソースコードの「保管庫」と「SNS」

GitHub(ギットハブ)は、プログラムの変更履歴を記録する「Git(ギット)」という仕組みを、オンライン上で管理できるサービスである。 単にファイルを保存するだけでなく、過去の状態にいつでも戻したり、世界中の開発者とコードを共有したりするためのプラットフォームだ。エンジニアにとっては実績の集積地でもあり、現代の開発プロセスにおいてGitHubを使わない選択肢はほぼ存在しないと言ってよい。

mainfeature-branchGitHub:歴史の分岐と統合を管理する

2. Neovim (Nvim):自分専用に改造できる「高機能エディタ」

Neovim(ネオヴィム)は、マウスを使わずキーボードだけで全ての操作を完結させることを目的としたテキストエディタである。 一見、古いソフトウェアのように見えるが、中身は無限に近い拡張性を備えている。自分の使いやすいように機能を改造でき、本稿で触れたAIツールをエディタ内に統合することで、思考を妨げない究極の執筆環境を構築できる。

3. Nix:環境構築の「再現性」を担保する仕組み

「自分のパソコンでは動くのに、他の人のパソコンでは動かない」という問題は、開発現場で頻繁に発生する。Nix(ニックス)は、必要なツールとそのバージョンを一つの設定ファイルに記述することで、どんなマシン上でも「全く同じ開発環境」を一瞬で再現する仕組みを提供する。 いわば「環境の設計図」を共有することで、環境構築に費やす無駄な時間をゼロにするための道具である。

設計図 (flake.nix)Machine AMachine BMachine CNix:1つの設計図から「全く同じ環境」を再現

4. uv & pnpm:高速・軽量なパッケージ管理

プログラムを作る際、一からすべてを書くのではなく、他人が作った便利な部品(パッケージ)を利用するのが一般的だ。それらを管理するツールが「パッケージマネージャ」である。

  • uv(ユーヴイ): Python専用の管理ツール。Rustという言語で書かれており、従来のツール(pipなど)に比べて圧倒的に高速に動作する。近年、Python開発の新しい標準になりつつある。
  • pnpm(ピーエヌピーエム): JavaScript/TypeScript用の管理ツール。パソコンのディスク容量を節約しつつ、非常に高速に部品をインストールできる。
グローバルストアProject AProject Bpnpm/uv:実体は1つ、参照は複数(省スペース)

まとめ

本章で紹介したツール群は、いずれも「自動化」「高速化」「再現性」をキーワードに進化してきた。AIという高度なソフトウェアを扱うからこそ、その足場となる開発環境をこれらのモダンなツールで整えることが、結果として最も効率的な学習・開発への近道となる。

88章:プロテオミクス

プロテオミクス(タンパク質網羅的解析)の世界には、遺伝子解析における「標準的なパイプライン」のような体系的にまとまった決定版の書籍や論文が未だ存在しない。各研究者が独自の手法で解析を行い、それぞれの解釈で論文を作成しているのが現状である。

本章では、著者が実際の解析現場で数多くの試行錯誤を経て確立した、統計学的な基礎から最新の深層学習を用いた高度な解析までの実践的なワークフローをまとめる。

1. 統計的有意性の可視化:t検定とVolcano Plot

解析の第一歩は、膨大な数のタンパク質の中から、比較群間で「有意に変化しているもの」を抽出することである。 まず、各タンパク質の発現量に対してt検定を行い、統計的な有意確率(p値)を算出する。この結果を視覚的に把握するために用いられるのが**Volcano Plot(ボルケーノプロット)**である。

Volcano Plotは、横軸に発現量の変化率(Fold Change)、縦軸に統計的有意度(log10(p)-\log_{10}(p))をプロットした散布図である。その形状が火山の噴火(Volcano)に見えることからこう呼ばれる。この図を用いることで、「変化量が大きく、かつ統計的にも信頼できる」タンパク質を一目で特定することが可能になる。

2. パターン認識と階層化:clustermapによる俯瞰

個別のタンパク質の変化を追った後は、サンプル全体の傾向を俯瞰する必要がある。ここで威力を発揮するのが、Pythonのライブラリseabornを用いた**clustermap(クラスターマップ)**である。

これは単なるヒートマップではなく、発現パターンの類似度に基づいてサンプル(列)とタンパク質(行)を自動的に並べ替え、階層的な樹状図(デンドログラム)を付加したものである。これにより、特定の疾患群だけで共通して増減しているタンパク質の「塊(モジュール)」や、サンプル間の予期せぬ類似性を視覚的に発見することができる。

ソート前 (Random)clustermap (Sorted)並べ替えにより「意味のある塊」を抽出

3. 独自開発手法:PO(Protein Ontology)解析

従来の解析フローにおける最大の難所は、統計的な絞り込み(Volcano Plot)を行った後、有意に増減したタンパク質が数百から数千に及び、その一つひとつを人間が精査するには限界がある点だ。この情報の氾濫を打破し、解析者の意図に沿った「意味のあるターゲット」を論理的に抽出するため、著者はGene Ontology解析の概念をタンパク質構造レベルにまで拡張した**「PO(Protein Ontology)解析」**を開発した。

① 「量」から「意味(Ontology)」への転換

PO解析の根幹は、タンパク質を単なる「数値の変動」としてではなく、アミノ酸配列が内包する「機能的・構造的意味」として捉えることにある。タンパク質言語モデルESM-2を用い、アミノ酸配列を多次元の埋め込みベクトルに変換することで、タンパク質それぞれの「意味」を数学的な空間上の座標として定義する。

② 構造的近縁関係の可視化:UMAP & HDBSCAN

次に、数千次元に及ぶ情報をUMAPによって低次元に圧縮し、空間内の分布を可視化する。さらに、HDBSCANによるクラスタリングを行うことで、発現量の増減とは無関係に、機能や構造が類似したタンパク質のグループ(Ontology群)を自動的に定義する。これにより、Volcano Plotでヒットした膨大なリストを、意味のある「塊」として整理することが可能になる。

代謝系グループ免疫系グループUMAP & HDBSCAN:機能で「島」を形成する

③ 恣意的なアンカー設定と類似度スコアリング

PO解析の核心は、解析者の関心対象である特定のタンパク質を「アンカー(錨)」として設定し、そのタンパク質との「機能的な近さ」を定量化する点にある。

アンカーのベクトルと他の全タンパク質のベクトルとの間でコサイン類似度を算出する。

similarity=cos(θ)=ABAB\text{similarity} = \cos(\theta) = \frac{\mathbf{A} \cdot \mathbf{B}}{\|\mathbf{A}\| \|\mathbf{B}\|}

このスコアにより、「Volcano Plotで有意に変化したタンパク質群」の中から、さらに「アンカータンパク質と機能的に類似している順」にランキングを作成する。

アンカー (Anchor)高スコア (似ている)低スコアアンカーからの「意味の近さ」で標的を一本釣りする

④ 解析の意義:膨大なヒットリストからの脱却

PO解析を用いることで、Volcano Plotの「有意なタンパク質が多すぎて選べない」という問題が解消される。解析者は自身の仮説に基づいたアンカーを設定するだけで、膨大なデータの中から「構造的・機能的に自身の興味に最も近い候補」を優先的に抽出できる。 いわば、統計的な「正しさ」に、生物学的な「意味」の軸を導入することで、次の実験標的をピンポイントで射抜くための強力なガイドとなるのである。

まとめ

プロテオミクス解析は、単なる数値処理の羅列ではない。統計学で確実な変化を捉え、クラスター分析で全体を俯瞰し、そして深層学習によるベクトル解析で機能的な意味を掘り起こす。この多角的なアプローチこそが、混沌としたデータの海から生物学的な真理を導き出すための、著者が導き出した一つの答えである。

99章:AI for Science

2024年から2026年にかけ、大規模言語モデル(LLM)の高度化に伴り、文献調査、仮説立案、実験コード作成、さらには論文執筆に至る「研究のライフサイクル」を自律的に遂行するAIエージェントが次々と台頭した。科学研究におけるAIの役割は、単なるツールから以下の3つの新たなパラダイムへと進化している。

自律性 (Autonomy)スケール (Scale / Parallelism)GoogleAI co-scientistSakana AIThe AI ScientistEdison ScientificKosmosAI for Science の3つの立ち位置

人間との高度な協働(Google「AI co-scientist」) AIを人間の「共同研究者」と位置づける「Human-in-the-Loop」のアプローチである。対戦ゲームの手法(ランクマッチ)を取り入れた仮説評価やマルチエージェントの協働により、創薬やバイオメディカル分野で実用的な新発見をもたらしている。

AI Agentsランクマッチ・評価Human / Labウェットラボでの検証有望な仮説を提示フィードバックAI co-scientist:人間との共創ループ

研究の完全自動化と倫理的波紋(Sakana AI「The AI Scientist」) 人間の介入を極限まで排除し、AI単独で研究から論文執筆までを完結させるフルオートメーションの試みである。AI生成論文が人間の査読を通過する歴史的快挙を達成した一方で、「粗悪なAI論文による学術エコシステムの汚染」や「科学のミーム化」という激しい批判と倫理的議論を巻き起こした。

文献検索アイデア生成実験・コード論文執筆自動査読完全自動:人間が介在しないパイプライン

産業特化型の大規模並列処理(Edison Scientific「Kosmos」) 非営利組織FutureHouseからスピンアウトし、生物・化学分野に特化したエンタープライズ向けの統合プラットフォームである。専門家が数週間かけるデータ解析を数百の並列エージェントが一晩で完遂するなど、巨大製薬企業等における創薬プロセスのタイムラインを根底から覆しつつある。

研究目的Kosmos:数百の専門エージェントによる超並列処理

これらの動向は、AIがもたらす圧倒的な生産性向上を示すと同時に、「真の科学的発見とは何か」「AIと人間の最適な役割分担はどうあるべきか」という、学術界全体を巻き込む新たな課題を突きつけている。

1010章:AI活用関連最新研究(2026年5月現在)

2026年現在、AIを活用した科学研究(AI for Science)は、基礎推論のブレイクスルーから産業界での実用化、そしてインフラ構築に至るまで、多様なトッププレイヤーと最先端ツールによって強固なエコシステムが形成されている。

実産業・物理空間への統合Edison Scientific / PFN (Matlantis)基礎推論・新アルゴリズム探求DeepMind / Sakana AIインフラ・シミュレーション基盤NVIDIA / Optuna / paper-qaAI for Science エコシステムの3層構造

その潮流は大きく以下の3つの領域に分類される。

基礎推論の高度化と新アルゴリズムの探求(Google DeepMind / Sakana AI) Google DeepMindは、AIの純粋な論理的推論能力を強化し、数学的証明や物理法則の発見といった基礎科学の未解決問題に挑み続けている。一方、日本のSakana AIは、LLMと進化的アルゴリズムを融合させた「Shinka-Evolve」など、計算効率に優れ、オープンエンドな科学的発見をもたらす独自のアプローチで急成長を遂げている。

実産業への実装と物理空間(ラボ)の統合(Edison Scientific / PFN) 生物・化学分野に特化したEdison Scientificは、複数の専門AIエージェントと実際の実験室(ウェットラボ)をシームレスに統合するプラットフォームを展開している。また日本のPFNは、汎用原子レベル基盤モデル「Matlantis」などを軸にマテリアルズ・インフォマティクスを牽引し、化学・エネルギー産業におけるAIの実用化を世界に先駆けて推進している。

研究インフラとシミュレーションの標準化(NVIDIA / 最新ツール群) NVIDIAは、気候モデリングや量子シミュレーションにおいて、物理法則とAIを融合させた開発基盤(PINNsなど)を提供し、業界標準を確立している。同時に、厳密な引用を担保する文献RAGツール「paper-qa」や、世界中で利用されるPFNの最適化フレームワーク「Optuna」など、研究プロセスを支えるツール群が、単なるスクリプトから科学研究に不可欠なバックエンド・インフラへと進化を遂げている。

物理空間 (Wet Lab / Reality)応用・産業 (Applied)NVIDIASakana AIDeepMindPFNEdison Scientificプレイヤーの Cyber-Physical マッピング

これらの企業およびツール群の連繋により、AI for Scienceは単一のソフトウェア開発の枠を超え、次世代の科学的発見を自動化・加速させる巨大な統合的プラットフォームへと移行している。

文献調査paper-qa仮説・生成DeepMind/Sakana最適化・シミュNVIDIA/Optuna物理ラボ検証Edison/PFN発見ツール連携による次世代研究パイプライン