澁谷直樹

機械学習を勉強するためのノート「キカベン」では、「わかりやすく、具体的に」をモットーに、アルゴリズム、機械学習、ディープラーニング、画像処理、自然言語処理、強化学習、人工知能、量子コンピュータ、プログラミングなどの情報発信をしています。

澁谷直樹

機械学習を勉強するためのノート「キカベン」では、「わかりやすく、具体的に」をモットーに、アルゴリズム、機械学習、ディープラーニング、画像処理、自然言語処理、強化学習、人工知能、量子コンピュータ、プログラミングなどの情報発信をしています。

メンバーシップに加入する

メンバーシップに参加すると、すべての記事とマガジンが読み放題になります。

  • キカベン・読み放題

    ¥1,000 / 月
    初月無料

マガジン

  • 論文を読んで学ぶ

    論文を読みながら学ぶスタイルの記事を書きます。

  • 巨大言語モデル(LLMs)の衝撃

    巨大言語モデル(LLMs)関連の記事を集めました。

  • 自然言語AI

    自然言語AIの進化史を辿り、大型言語モデルの成功に至るまでの道のりを探ります。

  • 古典機械学習を学ぶ

    線形回帰、ロジスティック回帰、正則化、決定木、サポートベクトルマシン、クラスタリング、次元削減などの機械学習の仕組みを解説していく予定です。

  • G検定総まとめ

    JDLAのG検定のシラバスにそって項目を要約しまとめました。また、各キーワードから関連サイトや関連記事へのリンクを貼っており、公式テキストの内容を復習する際にすぐに調べられるようになっています。 シラバスはこちらからダウンロードできます。 https://www.jdla.org/certificate/general/

最近の記事

GPT-3を読む③導入(その1)

前回は、OpenAIが2020年に発表した論文「Language Models are Few-Shot Learners」(GPT3)の構造をざっくり見渡して読むための方針を決めました。 この方針に従って、今回は「導入」を丁寧に読み進めていきます。気になっていた「メタ学習」や「文脈内学習」などといったキーワードを探しながら理解を深めていきましょう。

    • 言語AIの進化史⑮LSTM(Long Short-Term Memory)

      前回は、再帰型ニューラルネットワーク(RNN)の誤差逆伝播法(BPTT、Backpropagation Through Time)の解説をしました。 その中で、単純なRNNの仕組みにおいて、2つの問題点が浮き彫りとなりました。 長期の依存関係の学習が困難 勾配消失と勾配爆発 これらの問題に対処するために、LSTM(Long Short-Term Memory)が開発されました。 RNNとLSTMの構造上の違いRNNの構造 以下は、RNNのあるステップ$${t}$$

      • scikit-learn機械学習㉛DBSCANクラスタリング

        前回は、scikit-learnを使って、k-meansの実験を行いました。k-meansは単純明快で計算量も比較的少ない便利なアルゴリズムです。簡単な例では良い結果を出していました。 しかし、k-meansにもいくつか難点があります。例えば、クラスタ数$${k}$$を指定する必要があったり、境界の形状や外れ値などによってはクラスタリングの結果が悪くなる弱点があります。 そこで今回扱うのは、DBSCANです。クラスタリングの一種ですが、クラスタ数を指定する必要がありません

        • GPT-3を読む②構造と方針

          前回は、OpenAIが2020年に発表した論文「Language Models are Few-Shot Learners」(GPT3)の要約と結論を読みました。 要約と結論から、いくつかの疑問も湧き起こりました。これから読み進むにつれてその解答合わせもできることを目指しています。 今回は、疑問に思っていることなどを踏まえて、どのあたりに注力して読むかを決めます。まずは、論文の全体構造をざっくりと見渡しながら、軽く図や表に触れていきます。 ところで、この論文は、GPT1

        マガジン

        • 論文を読んで学ぶ
          34本
        • 巨大言語モデル(LLMs)の衝撃
          36本
        • 自然言語AI
          17本
        • 古典機械学習を学ぶ
          32本
        • G検定総まとめ
          31本
        • ディープラーニングを理解するための基礎数学
          18本

        メンバーシップ

        • GPT-3を読む③導入(その1)

        • 言語AIの進化史⑮LSTM(Long Short-Term Memory)

        • scikit-learn機械学習㉛DBSCANクラスタリング

        • GPT-3を読む②構造と方針

        • GPT-3を読む③導入(その1)

        • 言語AIの進化史⑮LSTM(Long Short-Term Memory)

        • scikit-learn機械学習㉛DBSCANクラスタリング

        • GPT-3を読む②構造と方針

        メンバー特典記事

          GPT-3を読む③導入(その1)

          前回は、OpenAIが2020年に発表した論文「Language Models are Few-Shot Learners」(GPT3)の構造をざっくり見渡して読むための方針を決めました。 この方針に従って、今回は「導入」を丁寧に読み進めていきます。気になっていた「メタ学習」や「文脈内学習」などといったキーワードを探しながら理解を深めていきましょう。

          GPT-3を読む③導入(その1)

          言語AIの進化史⑮LSTM(Long Short-Term Memory)

          前回は、再帰型ニューラルネットワーク(RNN)の誤差逆伝播法(BPTT、Backpropagation Through Time)の解説をしました。 その中で、単純なRNNの仕組みにおいて、2つの問題点が浮き彫りとなりました。 長期の依存関係の学習が困難 勾配消失と勾配爆発 これらの問題に対処するために、LSTM(Long Short-Term Memory)が開発されました。 RNNとLSTMの構造上の違いRNNの構造 以下は、RNNのあるステップ$${t}$$

          言語AIの進化史⑮LSTM(Long Short-Term Memory)

          scikit-learn機械学習㉛DBSCANクラスタリング

          前回は、scikit-learnを使って、k-meansの実験を行いました。k-meansは単純明快で計算量も比較的少ない便利なアルゴリズムです。簡単な例では良い結果を出していました。 しかし、k-meansにもいくつか難点があります。例えば、クラスタ数$${k}$$を指定する必要があったり、境界の形状や外れ値などによってはクラスタリングの結果が悪くなる弱点があります。 そこで今回扱うのは、DBSCANです。クラスタリングの一種ですが、クラスタ数を指定する必要がありません

          scikit-learn機械学習㉛DBSCANクラスタリング

          GPT-3を読む②構造と方針

          前回は、OpenAIが2020年に発表した論文「Language Models are Few-Shot Learners」(GPT3)の要約と結論を読みました。 要約と結論から、いくつかの疑問も湧き起こりました。これから読み進むにつれてその解答合わせもできることを目指しています。 今回は、疑問に思っていることなどを踏まえて、どのあたりに注力して読むかを決めます。まずは、論文の全体構造をざっくりと見渡しながら、軽く図や表に触れていきます。 ところで、この論文は、GPT1

          GPT-3を読む②構造と方針

          言語AIの進化史⑭BPTT(Backpropagation Through Time)

          前回は、再帰型ニューラルネットワークを一般化した形で解説しました。 主に以下のRNNの構成パターンを紹介しました。 回帰・分類:最後の隠れ状態から予測を行う 時系列処理:各ステップから予測を出力する Seq2Seq:エンコーダ・デコーダ機械翻訳 積み重ねる:多層化による複雑な特徴量抽出 RNNでは、これらの組み合わせが可能であり、複雑にもなりがちですが、同時に非常にフレキシブルになっています。 そこで今回紹介するのは、すべてのRNNの構成パターンにおける学習を支

          言語AIの進化史⑭BPTT(Backpropagation Through Time)

          1層と2層のニューラルネットワークで誤差逆伝播法を詳しく説明してみる

          こちらの記事で説明した誤差逆伝播法をもう少し現実的なフィードフォワード型のニューラルネットワークに適用して解説してみます。 1層のニューラルネットワークまず1つの層からなる単純なニューラルネットワークで誤差逆伝播法を考えます。 フィードフォワード処理 まずは、順方向の処理を解説します。 水色の箱は変数で、入力によって値が変ります。緑色の箱は操作で、変換や関数を意味します。 まず、入力$${\bm{x}}$$は一般にベクトルを想定しています。 $$ \bm{x} =

          1層と2層のニューラルネットワークで誤差逆伝播法を詳しく説明してみる

        記事

          言語AIの進化史⑭BPTT(Backpropagation Through Time)

          前回は、再帰型ニューラルネットワークを一般化した形で解説しました。 主に以下のRNNの構成パターンを紹介しました。 回帰・分類:最後の隠れ状態から予測を行う 時系列処理:各ステップから予測を出力する Seq2Seq:エンコーダ・デコーダ機械翻訳 積み重ねる:多層化による複雑な特徴量抽出 RNNでは、これらの組み合わせが可能であり、複雑にもなりがちですが、同時に非常にフレキシブルになっています。 そこで今回紹介するのは、すべてのRNNの構成パターンにおける学習を支

          言語AIの進化史⑭BPTT(Backpropagation Through Time)

          1層と2層のニューラルネットワークで誤差逆伝播法を詳しく説明してみる

          こちらの記事で説明した誤差逆伝播法をもう少し現実的なフィードフォワード型のニューラルネットワークに適用して解説してみます。 1層のニューラルネットワークまず1つの層からなる単純なニューラルネットワークで誤差逆伝播法を考えます。 フィードフォワード処理 まずは、順方向の処理を解説します。 水色の箱は変数で、入力によって値が変ります。緑色の箱は操作で、変換や関数を意味します。 まず、入力$${\bm{x}}$$は一般にベクトルを想定しています。 $$ \bm{x} =

          1層と2層のニューラルネットワークで誤差逆伝播法を詳しく説明してみる

          誤差逆伝播法を簡単に説明してみる

          簡単な例を使って誤差逆伝播法をおさらいします。 モデルを更新する目的 体重から身長を予測することを考えます。そのための訓練データとして、次のように入力値と正解値がペア(対)として与えられているとします。 $$ (\text{体重}_1, \text{身長}_1), (\text{体重}_2, \text{身長}_2), \ldots, (\text{体重}_N, \text{身長}_N) $$ 数式にしやすいように、これらの値を$${(x_i, y^*_i) = (\

          誤差逆伝播法を簡単に説明してみる

          scikit-learn機械学習㉚k-means実践編

          前回は、k-meansの仕組みを紹介しました。 今回は、scikit-learnのKMeansを使った実験を行います。 このようのデータを生成し、k-meansでクラスタリングを行います。 また、最適なクラスタ数$${k}$$を決めるために、エルボー法やシルエット係数を試してみます。 さらに、k-means が苦手なケースとして複雑な境界線を持つデータを試します。 そして、k-means に対する外れ値の影響も調査します。 どんな結果になるでしょうか。さっそく始め

          scikit-learn機械学習㉚k-means実践編

          ベクトルと行列の微分

          機械学習や物理学の理論では、微分がよく使われるので簡単にまとめました。 スカラーとベクトルと行列スカラー スカラー(Scalar)は日常で我々が数値と呼ぶものです。 $$ 1.5\ , \ \frac{1}{3}\ , \ 10^3 \ \text{など} $$ なお、この記事では実数のみを考えます。虚数は扱いません。 ベクトル ベクトル(Vector)はスカラーを並べたものです。 $$ \bm{x} = \left(1.2\ , \ \frac{1}{3} \

          ベクトルと行列の微分

          GPT-3を読む①要約と結論

          前回までに、GPT-1とGPT-2の論文を読み終えました。今回からGPT-3の論文「Language Models are Few-Shot Learners」(言語モデルは少数ショットの学習者)を読み始めます。 前回まで読んできた方なら、これはGPT-2の「ゼロショット」から「少数ショット」へとアプローチを変えたのだと気づくでしょう。また、GPT-1の「ファインチューニング」とどう違うのかも気になるところです。 とろこで、この論文の著者リストは以前よりずっと長いです。こ

          GPT-3を読む①要約と結論

          GPT-2を読む⑫議論

          前回は、関連研究(Related Work)のセクションを読みました。 GPT-2が既存の研究と比べてどこで一線を画しているか明確するという内容でした。また、「関連研究」セクションが論文の後半に配置されている理由についても触れ、その意図を考察しました。 今回は、議論(Discussion)を読み進めます。 GPT-2では、ゼロショット能力の可能性が非常に興味深いのですが、実験の結果によってその限界も浮き彫りになりました。そこで、このセクションではGPT-2が抱える課題や

          GPT-2を読む⑫議論

          scikit-learn機械学習㉙k-meansクラスタリング

          前回までは、scikit-learnの「教師あり学習」モデルに焦点を当ててきましたが、今回は「教師なし学習」の世界に一歩踏み込みます。取り上げるのは、クラスタリングのアルゴリズムの中でも広く使われている k-means(k-平均法) です。 kーMeansは1967年に発表されたアルゴリズムですが、基本的なアイデア自体はさらに前から存在していました。 当時の機械学習の進歩は目覚ましく、例えば1958年にはパーセプトロンとロジスティック回帰、1963年には決定木(Decis

          scikit-learn機械学習㉙k-meansクラスタリング

          言語AIの進化史⑬再帰型ニューラルネットワーク

          前回は、ジョーダン・ネットワークとエルマン・ネットワークを紹介しました。 中でも、エルマン・ネットワークは、基本的な再帰型ニューラルネットワーク(RNN)であり、その後のRNNの原型となっています。 隠れ状態を使ってシーケンスの文脈を保持する 隠れ状態が再帰的に次のステップに伝達される構造がある 時間軸に沿った誤差逆伝播法(Backpropagation Through Time、BPTT) これを(単純な)RNNと捉えることもできます。 ただし、RNNは異なるタ

          言語AIの進化史⑬再帰型ニューラルネットワーク

          GPT-2を読む⑪関連研究

          前回は、セクション4「一般化 vs 暗記」を読み終えました。 GPT-2の一般化能力の評価が訓練データにどれほど依存しているのかについて検証されていました。訓練データと各データセットのテストデータにどれほどかの重複があるかをブルーム・フィルターを使って調査した結果を確認する内容でした。 これによって、GPT-2のアプローチが正当化されました。つまり、大容量の言語モデルを巨大なデータセットであるWebTextで「教師なし学習」を行うことことは「単なる暗記」ではないということ

          GPT-2を読む⑪関連研究

          scikit-learn機械学習㉘パイプラインと便利ツール

          前回は、ニューラルネットワークを解説しました。これまで分類タスクを中心として、よく知られた教師あり学習のモデルを紹介してきました。 これらのモデルを使って実験をすると、scikit-learnのモデルはどれも似たようなインターフェースを持っているのがわかります。また、どのモデルを使っても同じような訓練から評価への流れがあります。 # 訓練データとテストデータの準備X_train, X_test, y_train, y_test = ....# モデルの準備model =

          scikit-learn機械学習㉘パイプラインと便利ツール

          言語AIの進化史⑫ジョーダン・ネットワークとエルマン・ネットワーク

          前回は、ホップフィールド・ネットワークの紹介をしました。 ホップフィールド・ネットワークは、すべてのニューロンが互いに結びついた全結合型のニューラルネットワークで、内部に「状態」を保持し、反復的な処理を通してその状態を更新していきます。この仕組みにより、与えられた入力パターンに最も近い記憶されたパターンを見つけ出し、欠損部分を補完することができます。こうした機能は連想記憶と呼びます。 順伝播型ニューラルネットワーク(Feedforward Neural Network、F

          言語AIの進化史⑫ジョーダン・ネットワークとエルマン・ネットワーク