AI・機械学習チームの髙橋です。このブログはAI・機械学習チームブログリレー6日目の記事です。
ここ半年ほどでCopilot→Cline→Claude CodeとAIコーディングツールを乗り換えています。Claude Codeは工夫せずとも高い実装力を発揮してくれますが、特にCustom Slash Commandが非常に便利で、どこまでコーディングを自動化できるのか試行錯誤しています。
さて、Claude Codeの根幹には大規模言語モデル(LLM)があり、その基礎となる事前学習のアイデアは、それまでの文脈に基づいて次の文字(トークン)が何であるかモデルに推測させることです。この推測を通じてモデルは言語の文法的な構造や知識を獲得し、更にRLHF等を通じた学習をすることで、人が求める応答が生成できるようになります。
実はこうした、次の文字を予測する枠組みが提案されたのは1951年と古く、これを提案したのは情報理論の父と呼ばれるClaude Shannonです。彼が1951年に発表した論文『Prediction and Entropy of Printed English』で初めて言語モデル(に相当するもの)が登場します。今回はこの論文で提案された言語モデルのアイデアと、Shannonが行った実験について紹介します。
ちなみに、Claude Codeと同じ名前なのは偶然ではなく、サービス名はShannonの名前から取られています。*1