第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定

Python實(shí)現(xiàn)線性回歸

難度初級(jí)
時(shí)長(zhǎng) 1小時(shí) 5分
學(xué)習(xí)人數(shù)
綜合評(píng)分8.77
32人評(píng)價(jià) 查看評(píng)價(jià)
9.0 內(nèi)容實(shí)用
8.8 簡(jiǎn)潔易懂
8.5 邏輯清晰
  • 12345

    查看全部
  • 那么總的來說梯度下降是為了優(yōu)化線性回歸運(yùn)行代碼的運(yùn)算性能和簡(jiǎn)潔化來實(shí)現(xiàn)的,那線性回歸的最終效果對(duì)于算法,機(jī)器學(xué)習(xí),甚至是人工智能會(huì)起到怎樣的作用?

    線性回歸在算法和機(jī)器學(xué)習(xí)里所占比重是多少?還是說線性回歸是機(jī)器學(xué)習(xí)不可或缺的一個(gè)算法?為了提高嚴(yán)謹(jǐn)性么?


    查看全部
    0 采集 收起 來源:梯度下降

    2019-06-16

  • dfjdifjdifjidjif


    查看全部
    0 采集 收起 來源:梯度下降

    2019-06-16

  • 線性回歸的數(shù)學(xué)表示:

    https://img1.sycdn.imooc.com//5d020b4f00018ac506100234.jpg

    查看全部
  • y=kx 線性回歸,通過訓(xùn)練得到k的過程,就稱為線性分析
    查看全部
  • 最小二乘法模型

    A=(seta*x-y) (A為一維列向量)

    L=1/2*A^2 = (seta*x-y)^T (seta*x-y)=x^T*seta^T*seta*x-x^T*setaT*y-y^T*seta*x+y^T*y

    L對(duì)seta求偏導(dǎo):1/2*{x^T*x*[seta+(seta^T)^T] - x^T*y - (y^T*x)^T}=1/2[2*x^T*x*seta - 2*x^T*y] =?x^T*x*seta - x^T*y

    令L'=0有seta = (x^T*x)^-1*(x^T*y)

    所以當(dāng)seta = (x^T*x)^-1*(x^T*y)時(shí)L最小

    查看全部
    0 采集 收起 來源:最小二乘法

    2019-01-13

  • import numpy as np

    from numpy.linalg import inv——(矩陣的逆)

    from numpy import dot——(矩陣的點(diǎn)成)

    from numpy import mat——(矩陣)


    A=np.mat([1,1])——(1x2 的矩陣)

    print('A:\n',A)

    #A=np.array([1,1])——(數(shù)組)

    B=mat([1:2],[3:4])——(2x2的)

    print('B:\n',B)

    print(''A.B:',dot(A,B))——結(jié)果是錯(cuò)的,因?yàn)?*2和2*2矩陣是不能想乘的

    那么就需要給A矩陣轉(zhuǎn)置:print('A.T:\n',A.T)

    還有對(duì)矩陣B求逆:print('B的逆:\n',inv(B))

    print(B[0,:1])——表示取出0行一列

    print(B[:,0])——表示取出的是所有行第一列,就是第一列

    print(A.reshape(2,1))——就是重新改變A矩陣的大小的,變成2*1的了;它不僅可以像轉(zhuǎn)置一樣還可以將3*2的變成1*6的,這是轉(zhuǎn)置辦不到的!

    以上矩陣的基本操作:

    接下來是線性回歸的計(jì)算:

    imort numpy as np

    from numpy.linalg import inv

    from numpy import dot

    from numpy import mat

    #計(jì)算y=2x

    x=mat([1,2,3]).reshape([3,1])

    y=2*x


    #再計(jì)算theta=(x'x)^-1x'y

    theta=dot(dot(inv(dot(x.T,x)),x.T),y)

    print(theta)

    接下來是梯度下降的算法:

    (就是根據(jù)Y與X的關(guān)系不斷的進(jìn)行迭代計(jì)算)

    #theta=theta-alpha*(theta*X-Y)*X——alpha在(0,1)之間取值,保證下降的梯度不會(huì)太快,是函數(shù)迅速收斂,是很重的學(xué)習(xí)內(nèi)容

    theta=1.

    alpha=0.1

    for i in range(100):

    ????theta=theta+np.sum(alpha*(Y-dot(X,theta))*X.reshape(1,3))/3.——bp.sum()可以進(jìn)行加權(quán)平均,因?yàn)閄是3組數(shù),而結(jié)果theta就是一個(gè)數(shù),所以加權(quán)平均一下,結(jié)尾出“/3.”是除以其組數(shù)

    (梯度下降是逐步逼近那個(gè)值的)

    接下來完成一個(gè)復(fù)雜的線性回歸l:

    import random

    def Y(X1, X2, X3):

    ?return 0.65 * X1 + 0.70 * X2 - 0.55 * X3 + 1.95

    def Produce():

    ?filename = 'data.csv'

    ?with open(filename, 'w') as file:

    ? file.write('Unnamed: 0,Y,X1,X2,X3\n')

    ? for i in range(150):

    ? ?random.seed()

    ? ?x1 = random.random() * 10

    ? ?x2 = random.random() * 10

    ? ?x3 = random.random() * 10

    ? ?y = Y(x1, x2, x3)

    ? ?try:

    ? ? file.write(str(i)+','+ str(y)+ ',' +str(x1) + ',' + str(x2) + ',' + str(x3)? + '\n')

    ? ?except Exception as e:

    ? ? print ('Write Error')

    ? ? print (str(e))


    Produce()


    查看全部
  • 梯度下降方法(第二種代碼)可以很好地解決向量方法(第一種)面對(duì)大量計(jì)算無法計(jì)算的弊端

    而梯度下降更重要的是進(jìn)行同步更新

    所以需要一個(gè)temp來進(jìn)行緩存

    注意矩陣的形式可能需要變形——

    ????????????????????????reshape( )(如果出錯(cuò),改成values.reshape( ))


    查看全部
    0 采集 收起 來源:課程總結(jié)

    2018-12-08

  • >>> import numpy as np

    >>> from numpy.linalg import inv

    >>> from numpy import dot

    >>> from numpy import mat

    >>> import pandas as pd

    >>> dataset=pd.read_csv('data.csv')

    >>> print(dataset)


    查看全部

舉報(bào)

0/150
提交
取消
課程須知
1、有機(jī)器學(xué)習(xí)基礎(chǔ) 2、有一定的python基礎(chǔ)
老師告訴你能學(xué)到什么?
1、線性回歸的概念 2、最小二乘法的python實(shí)現(xiàn) 3、梯度下降的python實(shí)際 4、編程處理線性回歸分析的一般方法

微信掃碼,參與3人拼團(tuán)

微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)

友情提示:

您好,此課程屬于遷移課程,您已購(gòu)買該課程,無需重復(fù)購(gòu)買,感謝您對(duì)慕課網(wǎng)的支持!