機械学習 チュートリアル
線形回帰

スクラッチで最小二乗法と最急降下法をPythonでコーディング

初心者〜中級者対象
受講人数 101名 | 学習期間目安 1日 〜 5日
★★★★☆  4.5 (2件)

icon-check 対象:初心者〜中級者 icon-check 環境:オンライン / ローカル
icon-check 受講期限:無制限 icon-check 受講料金:500円

コース概要

  • ブラウザとインターネットで実行可能(Google Colab利用)
  • Jupyter Notebookを利用したプログラミング演習
  • 線形回帰の基本的なコンセプト
  • 線形回帰の数学的理解
  • 最小二乗法を使って線形モデルを構築(単回帰分析)
  • 最急降下法を使って線形モデルを構築(単回帰分析)
  • テキスト量はA4で約40ページ相当
  • Python実習コード約100行

学べる内容

機械学習には数多くの手法がありますが、線形回帰はその中でも基本的な手法です。本チュートリアルでは、線形回帰のコンセプトや基本的な数学理解、さらに単回帰分析の問題を機械学習ライブラリーを使わず、スクラッチでモデルを構築していきます。

チュートリアル序盤では、具体的な実例を見ながら線形回帰のコンセプトと用語を紐解いていきます。また2つのプログラミング実習では、全く一緒のデータセットを使い「最小二乗法」と「最急降下法」を比較を行います。

本チュートリアルの特徴

ブラウザーとインターネットで実行が可能

Google Colab(グーグル・コラボ)を利用することにより、特別な環境構築やインストールなどの作業を行うことなく、ブラウザのみで実行が可能です。チュートリアルでは、Google Colabの基本的な使い方、また自身のPCに環境構築を行う方法の2種類を説明しています。

Pythonを使ってスクラッチでモデルの構築

Pythonで機械学習を行う際に、非常に便利な「機械学習ライブラリー」が複数あり、それらを利用することで線形回帰のモデル構築が驚くほど簡単に実装することが可能です(例:Scikit-LearnやTensorFlowなど)。

これらの機械学習ライブラリーを使うことに問題はありませんが、本コースでは線形回帰の基礎から理解を深める目的として、あえてこれらのライブラリを使用しておりません。数値計算を公立的に行うNumpyや、データを扱いやすくしてくれるPandasなどの基本ライブラリは使いますが、線形モデルの構築はスクラッチで行います。

最小二乗法と最急降下法

線形モデルの構築方法ですが、複数存在します。本コースではより深い理解を得るため、2つの方法で線形モデルの構築を行います。一つ目の手法は、「最小二乗法」と呼ばれる実際の値と予測値との誤差を最小にしてモデル式を求める方法です。2つ目は「最急降下法」と呼ばれる、機械学習で頻繁に使用される最適化アルゴリズムを使ってモデルを構築します。

このコースの対象者
  • これから機械学習を学ぼうと考えている方
  • 線形回帰をより詳しく学びたいと考えている方

受講資格

icon-check (必須)Pythonの基礎知識

icon-check (推薦)線形代数及び統計の初歩的な知識

icon-check (推薦)Numpy、Pandas、Matplotlibの初歩的な知識

原則として、Pythonの初歩的な知識がある前提となっています。「推薦」の項目は必須ではありませんが、基礎知識があると、よりスムーズに受講が可能です。下記の「機械学習 準備編」の無料コースをご参照下さい。

コース詳細

機械学習 チュートリアル 線形回帰
 icon-pencil Chapter 1 環境構築
  【Windows編】Minicondaを利用した環境構築 約2,200文字
  【Mac】Minicondaを利用した環境構築 約1,900文字
  Google Colabを利用した環境構築 約2,100文字
 icon-pencil Chapter 2 線形回帰の基本的なコンセプト
  線形回帰とは? 約1,700文字
  線形回帰で出てくる用語/名称 約1,700文字
  線形回帰の実例 約1,300文字
 icon-pencil Chapter 3 線形回帰の数学的理解
  例題 - スウェーデンの自動車保険データ 約850文字
  線形モデル 約1,700文字
  最小二乗法の概要と使い方 約2,200文字
  最急降下法の概要と使い方 約2,300文字
 icon-code Chapter 4 最小二乗法を使って線形回帰モデルを構築
  ライブラリーのインポート 3行
  データセットの準備と確認 9行
  最小二乗法を使ってみよう 14行
  モデルを使って予測と評価 14行
 icon-code Chapter 5 最急降下法を使って線形回帰モデルを構築
  ライブラリーとデータの準備 7行
  コスト(誤差)を算出する関数 15行
  最急降下法 35行
  RMSEで評価してみよう 6行

レビュー

icon-user 
【良かった点】
・環境構築が不要でGoogle colab使えばすぐに勉強が始められる
・数学的な理解の説明が事例を交えてあり分かりやすい
・最小二乗法と最急降下法がかなり理解できた

【改善点】
・日本語の言い回しが少しくどい
・テキストのサイズが若干小さい(ブラウザ機能で拡大した)

icon-check-circle-o 講師からの返答
とても詳細なフィードバックありがとうございます!ご指摘いただきました改善点も早急に修正致します!

icon-user 500円と安かったので試しに購入をしてみました。現職でWEB系エンジニアやっています。普段はPHP+MySQLがメインですが、機械学習に興味がありPythonを使い始めました。機械学習は独学で入門書籍を2冊読みましたが、いまいち専門用語やら数式が多くて理解できませんでした。こちらのチュートリアルも数式は多かったですが、書籍で見た解りにくかった数式や用語が事例を使って解説してあり非常に解りやすかったです。ロジスティック回帰とランダムフォレストも購入させて頂きましたので、そちらも勉強を進めています。

icon-check-circle-o 講師からの返答
フィードバックありがとうございます!現在、他のチュートリアルの制作も進めていますので、是非そちらのコースもご受講頂けますと幸いです。

講師紹介

codexa ロゴ

本コース「Pandas 入門」はcodexa(コデクサ)の機械学習エンジニアチームにて監修・作成を行いました。機械学習チームの最大の特徴は様々なレベルの機械学習エンジニアが共同でコースの作成を行っています。人工知能先進国のアメリカで機械学習エンジニアとして活躍してきたエンジニアもいれば、日本でPHPを中心としてWebアプリケーション開発から一から機械学習を学んだエンジニアも所属しています。機械学習上級者が一方的に教えるコンテンツよりも、機械学習初心者が主体となり、初心者「が」理解しやすく、学習が継続的に行えるようなコースを提供することを目的としています。「初心者の、初心者による、初心者のための機械学習」をモットーにチーム一丸となってコンテンツを制作しています。

このコースを取っている方は次のコースも取っています