私は最近、機械学習を学び始めました。 私の意見では、Andrew Ngの美しいコースから始めました。 そして、忘れないように、そして学んだことを繰り返すために、彼はOctaveリポジトリにMachine Learningを作成することにしました。 その中で、仮説、勾配降下、「コスト関数」、シグモイド、および機械学習の基本であるその他の「ピース」の数式を収集しました。 また、MatLab / Octaveの一般的なアルゴリズム(ニューラルネットワーク、線形/ロジスティック回帰など)の実装の単純化および改善された例を追加しました。 この情報が、機械学習の学習を開始する予定のある人に役立つことを願っています。
機械学習のトピックは非常に広範囲であり、たとえば、vas3kのすばらしい記事から私が取った(翻訳した)次のスキームから判断することができます。
現時点では、リポジトリ内のこのような多様性のうち、5つの監視ありアルゴリズムと監視なしアルゴリズムの例があります。
- 家の価値を予測する例による線形回帰 。
- 障害のあるチップの判別例、および「1対すべて」の原則を使用した手書き認識によるロジスティック回帰 。
- 3つのクラスターへのデータ分散の例を含むK-meansアルゴリズム 。
- 過負荷のサーバーを判別する例とともに、 ガウス分布を使用して異常を検索します。
- 手書き数字認識の例を備えた多層パーセプトロンに基づくニューラルネットワーク 。
各アルゴリズムには、1つのアルゴリズムの分析を開始できるdemo.m
ファイルがあります。 Octaveコンソール(またはMatLab)からこのファイルを実行すると、アルゴリズムの動作を示すサービス情報が表示され、作業がどのトレーニングセットで行われているかを把握するのに役立つグラフが作成されます。
このリポジトリがあなたにとって有用であり、機械学習への次の一歩を踏み出すのに役立つことを願っています。
リポジトリ内のPS サンプルは、 MatLab / Octave用に作成されます。 これは現在、Pythonのようにそれほど人気のあるオプションではないかもしれませんが、トレーニング、ラピッドプロトタイピング、および追加のプラグインとライブラリなしのマトリックスの同じ乗算に適しています。 コーディングが再び成功しました!