1. 程式人生 > >深度學習1-線性迴歸,邏輯迴歸

深度學習1-線性迴歸,邏輯迴歸

這些天在寫前幾個月學習的三維重建方面的知識的同時,也開始學習著目前比較火的深度學習。學習這個不是跟著潮流,總是在想讀研到底學到了什麼。

我想也就是個自學能力吧。其實感覺自己反而有點不自信了,本科畢業什麼都不擔心,可是現在擔心的越來越多,人也慢慢變得浮躁起來,嗨,不多說了,寫一寫這兩天學到的東西,唯有寫點東西才感覺心裡上的踏實。

主要參考吳恩達cs229課程

作者給出問題的引入是房價的問題,房價跟面積有關

clip_image002

然後將這些資料在下面座標系中列出所有的點。

clip_image004

然後給出問題,就是如果我們來了一個新的面積,而面前已有的資料中沒有,那我們該怎麼辦。

首先我們想到的我們用一個曲線去擬合這些點,得到了曲線的方程,這樣自然就可以解出來。

下面之前我們先給出一些概念。

clip_image006

則我們給出一個學習過程

clip_image008

好,下面言歸正傳,給個說明就是

如果y的值是連續的,這就是一個迴歸問題,如果y的值是離散的,這就是一個分類問題。那下面開始學習線性迴歸。

對於上述問題,房價不僅僅跟面積有關還跟很多其他的因素有關,比如臥室的個數。如下圖:

clip_image010

可能房價還與朝向等等其他特徵有關

我們用X1,X2..Xn 去描述特徵裡面的分量,比如x1=房間的面積,x2=臥室的個數等等,我們可以給出y的一個估計函式:

clip_image012

θ這係數也就是許可權,就是這個特徵的份量。

我們令X0=0,則我們就可以把上述公式寫成

clip_image014

也就是轉換到向量中處理

clip_image016

clip_image018

那我們的目標也就是求出這些θ。

我們採用假設法,先假設θ已經得出,那我們就要考慮給出的θ到底好不好呢,怎麼衡量呢

我們採用下面的式子:

clip_image020

這個函式一般稱為損失函式或者錯誤函式,主要來描述我們估計的函式h到底好不好。

對於上述式子中的1/2主要是為了求導用,假設有m個訓練資料,y為真實值,h為估計值

那我們的目標就是求:

clip_image022

在上述最小的情況下θ的值。最好的情況也就是clip_image022[1]為0,也就是每個y跟h一樣,但一般達不到。那這個怎麼解呢?

首先作者給出的是梯度下降法。

我們對於上述問題可以換個思路,求在clip_image022[2]情況下的θ,也就是要選擇一個θ是J(θ)最小,那怎麼處理呢。

我們先給出θ的一個初始值,然後改變θ的值,使J(θ)沿梯度下降方向進行減小,即:

clip_image024(α稱為學習率,j為所有值0,…,n)

為什麼可以寫成單獨一個,因為標量y對列向量X求導:

對N×1向量求導後還是N×1向量 y = f(x1,x2,..,xn) --> dy/dX = (Dy/Dx1,Dy/Dx2,..,Dy/Dxn)'

對於上式我們要求的也就是J(θ)的偏導數,下面我們假設訓練資料只有一個,則可以得到:

clip_image026

則對於單一的訓練資料有:

clip_image028

對於上述的迭代更新的方式有兩種,批梯度下降,增量梯度下降。

批量梯度下降,就是對所有的訓練資料都計算完之後在對θ更新,即

clip_image030

i是訓練資料,j是維度,不要搞混了。

另外一種是增量梯度下降,就是每訓練一個數據就對θ進行更新,如下:

clip_image032

然後看clip_image034判斷是否繼續還是結束

相關推薦

深度學習1-線性迴歸邏輯迴歸

這些天在寫前幾個月學習的三維重建方面的知識的同時,也開始學習著目前比較火的深度學習。學習這個不是跟著潮流,總是在想讀研到底學到了什麼。 我想也就是個自學能力吧。其實感覺自己反而有點不自信了,本科畢業什麼都不擔心,可是現在擔心的越來越多,人也慢慢變得浮躁起來,嗨,不多說了,寫

機器學習筆記《四》:線性迴歸邏輯迴歸案例與重點細節問題分析

import numpy as np import pandas as pd import matplotlib.pyplot as plt import os path = "data"+os.sep+"creditcard.csv"; pdData =

吳恩達深度學習筆記(7)--邏輯迴歸的代價函式(Cost Function)

邏輯迴歸的代價函式(Logistic Regression Cost Function) 在上一篇文章中,我們講了邏輯迴歸模型,這裡,我們講邏輯迴歸的代價函式(也翻譯作成本函式)。 吳恩達讓我轉達大家:這一篇有很多公式,做好準備,睜大眼睛!代價函式很重要! 為什麼需要代價函式: 為

通過使用各種演算法(線性迴歸邏輯迴歸隨機森林繼承演算法)預測泰坦尼克號上的某個人是否獲救

Python原始碼: #!/usr/bin/env python # encoding: utf-8 """ @Company:華中科技大學電氣學院聚變與等離子研究所 @version: V1.0 @author: Victor @contact: [email protected]

機器學習_最小二乘法線性迴歸邏輯迴歸

1. 線性迴歸  線性迴歸是利用數理統計中迴歸分析,來確定兩種或兩種以上變數間相互依賴的定量關係的一種統計分析方法。  直觀地說,在二維情況下,已知一些點的X,Y座標,統計條件X與結果Y的關係,畫一條直線,讓直線離所有點都儘量地近(距離之和最小),用直線抽象地表達這些點,然後對新的X預測新的Y。具體實現一般

線性迴歸_邏輯迴歸_廣義線性模型_斯坦福CS229_學習筆記

前言 之前學習過視訊版本的吳恩達老師CS229的機器學習課程,但是覺得並不能理解很好。現在結合講義,對於之前的內容再次進行梳理,仍然記錄下自己的思考。圖片來源於網路或者講義。話不多說,進入正題吧。 Part I Regression and Linear Regression

資料學習(1線性迴歸和Logistic迴歸

本系列是作者上課時記錄的筆記整理,同時有對應的作業習題,自學的同學參考部落格同步即可。郵箱聯絡[email protected] Preview: 監督學習(第一部分) 線性迴歸 Logistic迴歸 Softmax迴歸

機器學習 --- 線性迴歸邏輯迴歸

線性迴歸和邏輯迴歸在機器學習上是一種監督式學習。在預測類問題上,我們希望能通過一個對映關係  ,當給定變數  ,能得到一個較為滿意的預測結果  ,迴歸方法旨在找到能表示樣本空間分佈的對映關係。   一、線性迴歸的基本形式

深度學習線性迴歸(一)原理及python從0開始實現

文章目錄 線性迴歸 單個屬性的情況 多元線性迴歸 廣義線性模型 實驗資料集 介紹 相關連結 Python實現 環境 編碼

深度學習線性迴歸(三)使用MXNet深度學習框架實現線性迴歸

文章目錄 概述 程式碼 概述 這篇文章使用MXNet深度學習框架中的Gluon包實現小批量隨機梯度下降的線性迴歸問題。可以參考我的上一篇文章【深度學習】線性迴歸(二)小批量隨機梯度下降及其python實現。 主要包

深度學習線性迴歸(二)小批量隨機梯度下降及其python實現

文章目錄 概述 小批量隨機梯度下降 解析解和數值解 小批量隨機梯度下降 python實現 需要的先驗知識 程式碼和實驗 概述 本文

機器學習cs229——(三)區域性加權迴歸邏輯迴歸、感知器、牛頓方法、廣義線性模型

 首先,我們先來討論一下欠擬合(underfitting)和過擬合(overfitting)問題。比如我們同樣採用線性迴歸來對一組房屋價格和房屋大小的資料進行擬合,第一種情況下我們只選取一個數據特徵(比如房屋大小 x)採用直線進行擬合。第二種情況下選取兩個資料特徵(比如房屋大

機器學習1——線性迴歸

一、參考 二、 線性迴歸 基本表示: x:特徵/輸入變數/自變數 y:目標變數/觀測值 h(x):假設/模型/函式 對於特徵x,xi表示該特徵的第i個樣本輸入,xj表示在多特徵迴歸中的第j個特徵,xij表示第j個特徵的第i個樣本輸入。i<=m(樣本

機器學習邏輯迴歸函式的簡單使用

比如,現在要解決這樣一個問題。現在有5組資料,已知有一個20歲年收入3W的人不會買車,有一個23歲年收入7W的人會買車,有一個31歲年收入10W的人會買車,有一個50歲年收入7W的人不會買車,有一個60歲年收入5W的人不會買車,試求一個28歲年收入8W的人,買車的概率是多少? 我們用sk

線性迴歸邏輯迴歸、各種迴歸的概念學習

原文為:http://blog.csdn.net/viewcode/article/details/8794401 迴歸問題的條件/前提: 1) 收集的資料 2) 假設的模型,即一個函式,這個函式裡含有未知的引數,通過學習,可以估計出引數。然後利用這個模型去預測/分

動手學深度學習(一)——線性迴歸從零開始

文章作者:Tyan 部落格:noahsnail.com  |  CSDN  |  簡書 注:本文為李沐大神的《動手學深度學習》的課程筆記! 參考資料 # 匯入mxnet的ndarra

機器學習演算法總結--線性迴歸邏輯迴歸

1. 線性迴歸 簡述 在統計學中,線性迴歸(Linear Regression)是利用稱為線性迴歸方程的最小平方函式對一個或多個自變數和因變數之間關係進行建模的一種迴歸分析。這種函式是一個或多個稱為迴歸係數的模型引數的線性組合(自變數都是一次方)。只有一

動手學深度學習(一)——線性迴歸(gluon)

文章作者:Tyan 部落格:noahsnail.com  |  CSDN  |  簡書 注:本文為李沐大神的《動手學深度學習》的課程筆記! 建立資料集 # 匯入mxnet import

Spark中元件Mllib的學習27之邏輯迴歸-多元邏輯迴歸較大資料集帶預測準確度計算

2.程式碼: /** * @author xubo * ref:Spark MlLib機器學習實戰 * more code:https://github.com/xubo245/SparkLearning

Pytorch學習筆記(三)線性迴歸邏輯迴歸

在瞭解了Pytorch的一些機制後,當然要進行一些例項的學習,畢竟實踐出真知嘛。 對於所有的機器學習愛好者來說,第一個要學的模型無疑是線性迴歸 所謂線性迴歸,指的就是用對輸入資料的每個維度進行線性組合擬合Label-y。最簡單的線性迴歸即是二維平面內的直線擬