手写梯度下降实现线性回归

import numpy as np
import matplotlib.pyplot as plt 
%matplotlib inline
class LinearModel(object):
    #初始化参数
    def __init__(self):
        self.w=np.random.randn(1)[0]
        self.b=np.random.randn(1)[0]
    #定义预测函数,即模型
    def model(self,x):
        return self.w*x+self.b
    #定义损失
    def loss(self,x,y,y_pred):
        cost=(y-y_pred)**2
        #梯度,即求导
        dwg=2*(y-y_pred)*(-x)
        dbg=2*(y-y_pred)*(-1)
        return cost,dwg,dbg
    #进行梯度下降
    def gradient_descend(self,dwg,dbg,learning_rate):
        self.w-=dwg*learning_rate
        self.b-=dbg*learning_rate
    #训练
    def fit(self,X,y):
        count=0
        length=len(X)
        while True:
            if count>1000:
                break
           
            cost=0
            gradient_w=0
            gradient_b=0
            for i in range(length):
                y_pred=self.model(X[i,0])
                cost_,wg_,bg_=self.loss(X[i,0],y[i,0],y_pred)
                cost+=cost_/length
                gradient_w+=wg_/length
                gradient_b+=bg_/length
            print('执行次数为%d,损失为%0.2f'%(count,cost))
           
            count+=1
            last_w=self.w
            last_b=self.b
            self.gradient_descend(gradient_w,gradient_b,0.01)
    def result(self):
        return self.w,self.b
        
X=np.linspace(2,10,20).reshape(-1,1)

y=np.random.randint(1,10,size=1)*X+np.random.randint(-10,10,size=1)
plt.scatter(X,y)
<matplotlib.collections.PathCollection at 0x2492c4d05c0>

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-aJVFFB22-1585129017602)(output_2_1.png)]

lr=LinearModel()
lr.fit(X,y)
执行次数为0,损失为590.31
执行次数为1,损失为13.70
执行次数为2,损失为1.60
执行次数为3,损失为1.34
执行次数为4,损失为1.32
执行次数为5,损失为1.32
执行次数为6,损失为1.31
执行次数为7,损失为1.30
执行次数为8,损失为1.29
执行次数为9,损失为1.29
执行次数为10,损失为1.28
执行次数为11,损失为1.27
执行次数为12,损失为1.27
执行次数为13,损失为1.26
执行次数为14,损失为1.25
执行次数为15,损失为1.25
执行次数为16,损失为1.24
执行次数为17,损失为1.23
执行次数为18,损失为1.23
执行次数为19,损失为1.22
执行次数为20,损失为1.21
执行次数为21,损失为1.20
执行次数为22,损失为1.20
执行次数为23,损失为1.19
执行次数为24,损失为1.19
执行次数为25,损失为1.18
执行次数为26,损失为1.17
执行次数为27,损失为1.17
执行次数为28,损失为1.16
执行次数为29,损失为1.15
执行次数为30,损失为1.15
执行次数为31,损失为1.14
执行次数为32,损失为1.13
执行次数为33,损失为1.13
执行次数为34,损失为1.12
执行次数为35,损失为1.12
执行次数为36,损失为1.11
执行次数为37,损失为1.10
执行次数为38,损失为1.10
执行次数为39,损失为1.09
执行次数为40,损失为1.08
执行次数为41,损失为1.08
执行次数为42,损失为1.07
执行次数为43,损失为1.07
执行次数为44,损失为1.06
执行次数为45,损失为1.06
执行次数为46,损失为1.05
执行次数为47,损失为1.04
执行次数为48,损失为1.04
执行次数为49,损失为1.03
执行次数为50,损失为1.03
执行次数为51,损失为1.02
执行次数为52,损失为1.02
执行次数为53,损失为1.01
执行次数为54,损失为1.00
执行次数为55,损失为1.00
执行次数为56,损失为0.99
执行次数为57,损失为0.99
执行次数为58,损失为0.98
执行次数为59,损失为0.98
执行次数为60,损失为0.97
执行次数为61,损失为0.97
执行次数为62,损失为0.96
执行次数为63,损失为0.96
执行次数为64,损失为0.95
执行次数为65,损失为0.95
执行次数为66,损失为0.94
执行次数为67,损失为0.93
执行次数为68,损失为0.93
执行次数为69,损失为0.92
执行次数为70,损失为0.92
执行次数为71,损失为0.91
执行次数为72,损失为0.91
执行次数为73,损失为0.90
执行次数为74,损失为0.90
执行次数为75,损失为0.89
执行次数为76,损失为0.89
执行次数为77,损失为0.88
执行次数为78,损失为0.88
执行次数为79,损失为0.87
执行次数为80,损失为0.87
执行次数为81,损失为0.87
执行次数为82,损失为0.86
执行次数为83,损失为0.86
执行次数为84,损失为0.85
执行次数为85,损失为0.85
执行次数为86,损失为0.84
执行次数为87,损失为0.84
执行次数为88,损失为0.83
执行次数为89,损失为0.83
执行次数为90,损失为0.82
执行次数为91,损失为0.82
执行次数为92,损失为0.81
执行次数为93,损失为0.81
执行次数为94,损失为0.81
执行次数为95,损失为0.80
执行次数为96,损失为0.80
执行次数为97,损失为0.79
执行次数为98,损失为0.79
执行次数为99,损失为0.78
执行次数为100,损失为0.78
执行次数为101,损失为0.77
执行次数为102,损失为0.77
执行次数为103,损失为0.77
执行次数为104,损失为0.76
执行次数为105,损失为0.76
执行次数为106,损失为0.75
执行次数为107,损失为0.75
执行次数为108,损失为0.75
执行次数为109,损失为0.74
执行次数为110,损失为0.74
执行次数为111,损失为0.73
执行次数为112,损失为0.73
执行次数为113,损失为0.72
执行次数为114,损失为0.72
执行次数为115,损失为0.72
执行次数为116,损失为0.71
执行次数为117,损失为0.71
执行次数为118,损失为0.71
执行次数为119,损失为0.70
执行次数为120,损失为0.70
执行次数为121,损失为0.69
执行次数为122,损失为0.69
执行次数为123,损失为0.69
执行次数为124,损失为0.68
执行次数为125,损失为0.68
执行次数为126,损失为0.67
执行次数为127,损失为0.67
执行次数为128,损失为0.67
执行次数为129,损失为0.66
执行次数为130,损失为0.66
执行次数为131,损失为0.66
执行次数为132,损失为0.65
执行次数为133,损失为0.65
执行次数为134,损失为0.65
执行次数为135,损失为0.64
执行次数为136,损失为0.64
执行次数为137,损失为0.63
执行次数为138,损失为0.63
执行次数为139,损失为0.63
执行次数为140,损失为0.62
执行次数为141,损失为0.62
执行次数为142,损失为0.62
执行次数为143,损失为0.61
执行次数为144,损失为0.61
执行次数为145,损失为0.61
执行次数为146,损失为0.60
执行次数为147,损失为0.60
执行次数为148,损失为0.60
执行次数为149,损失为0.59
执行次数为150,损失为0.59
执行次数为151,损失为0.59
执行次数为152,损失为0.58
执行次数为153,损失为0.58
执行次数为154,损失为0.58
执行次数为155,损失为0.57
执行次数为156,损失为0.57
执行次数为157,损失为0.57
执行次数为158,损失为0.57
执行次数为159,损失为0.56
执行次数为160,损失为0.56
执行次数为161,损失为0.56
执行次数为162,损失为0.55
执行次数为163,损失为0.55
执行次数为164,损失为0.55
执行次数为165,损失为0.54
执行次数为166,损失为0.54
执行次数为167,损失为0.54
执行次数为168,损失为0.54
执行次数为169,损失为0.53
执行次数为170,损失为0.53
执行次数为171,损失为0.53
执行次数为172,损失为0.52
执行次数为173,损失为0.52
执行次数为174,损失为0.52
执行次数为175,损失为0.51
执行次数为176,损失为0.51
执行次数为177,损失为0.51
执行次数为178,损失为0.51
执行次数为179,损失为0.50
执行次数为180,损失为0.50
执行次数为181,损失为0.50
执行次数为182,损失为0.50
执行次数为183,损失为0.49
执行次数为184,损失为0.49
执行次数为185,损失为0.49
执行次数为186,损失为0.48
执行次数为187,损失为0.48
执行次数为188,损失为0.48
执行次数为189,损失为0.48
执行次数为190,损失为0.47
执行次数为191,损失为0.47
执行次数为192,损失为0.47
执行次数为193,损失为0.47
执行次数为194,损失为0.46
执行次数为195,损失为0.46
执行次数为196,损失为0.46
执行次数为197,损失为0.46
执行次数为198,损失为0.45
执行次数为199,损失为0.45
执行次数为200,损失为0.45
执行次数为201,损失为0.45
执行次数为202,损失为0.44
执行次数为203,损失为0.44
执行次数为204,损失为0.44
执行次数为205,损失为0.44
执行次数为206,损失为0.43
执行次数为207,损失为0.43
执行次数为208,损失为0.43
执行次数为209,损失为0.43
执行次数为210,损失为0.42
执行次数为211,损失为0.42
执行次数为212,损失为0.42
执行次数为213,损失为0.42
执行次数为214,损失为0.42
执行次数为215,损失为0.41
执行次数为216,损失为0.41
执行次数为217,损失为0.41
执行次数为218,损失为0.41
执行次数为219,损失为0.40
执行次数为220,损失为0.40
执行次数为221,损失为0.40
执行次数为222,损失为0.40
执行次数为223,损失为0.39
执行次数为224,损失为0.39
执行次数为225,损失为0.39
执行次数为226,损失为0.39
执行次数为227,损失为0.39
执行次数为228,损失为0.38
执行次数为229,损失为0.38
执行次数为230,损失为0.38
执行次数为231,损失为0.38
执行次数为232,损失为0.38
执行次数为233,损失为0.37
执行次数为234,损失为0.37
执行次数为235,损失为0.37
执行次数为236,损失为0.37
执行次数为237,损失为0.37
执行次数为238,损失为0.36
执行次数为239,损失为0.36
执行次数为240,损失为0.36
执行次数为241,损失为0.36
执行次数为242,损失为0.36
执行次数为243,损失为0.35
执行次数为244,损失为0.35
执行次数为245,损失为0.35
执行次数为246,损失为0.35
执行次数为247,损失为0.35
执行次数为248,损失为0.34
执行次数为249,损失为0.34
执行次数为250,损失为0.34
执行次数为251,损失为0.34
执行次数为252,损失为0.34
执行次数为253,损失为0.33
执行次数为254,损失为0.33
执行次数为255,损失为0.33
执行次数为256,损失为0.33
执行次数为257,损失为0.33
执行次数为258,损失为0.33
执行次数为259,损失为0.32
执行次数为260,损失为0.32
执行次数为261,损失为0.32
执行次数为262,损失为0.32
执行次数为263,损失为0.32
执行次数为264,损失为0.31
执行次数为265,损失为0.31
执行次数为266,损失为0.31
执行次数为267,损失为0.31
执行次数为268,损失为0.31
执行次数为269,损失为0.31
执行次数为270,损失为0.30
执行次数为271,损失为0.30
执行次数为272,损失为0.30
执行次数为273,损失为0.30
执行次数为274,损失为0.30
执行次数为275,损失为0.30
执行次数为276,损失为0.29
执行次数为277,损失为0.29
执行次数为278,损失为0.29
执行次数为279,损失为0.29
执行次数为280,损失为0.29
执行次数为281,损失为0.29
执行次数为282,损失为0.29
执行次数为283,损失为0.28
执行次数为284,损失为0.28
执行次数为285,损失为0.28
执行次数为286,损失为0.28
执行次数为287,损失为0.28
执行次数为288,损失为0.28
执行次数为289,损失为0.27
执行次数为290,损失为0.27
执行次数为291,损失为0.27
执行次数为292,损失为0.27
执行次数为293,损失为0.27
执行次数为294,损失为0.27
执行次数为295,损失为0.27
执行次数为296,损失为0.26
执行次数为297,损失为0.26
执行次数为298,损失为0.26
执行次数为299,损失为0.26
执行次数为300,损失为0.26
执行次数为301,损失为0.26
执行次数为302,损失为0.26
执行次数为303,损失为0.25
执行次数为304,损失为0.25
执行次数为305,损失为0.25
执行次数为306,损失为0.25
执行次数为307,损失为0.25
执行次数为308,损失为0.25
执行次数为309,损失为0.25
执行次数为310,损失为0.24
执行次数为311,损失为0.24
执行次数为312,损失为0.24
执行次数为313,损失为0.24
执行次数为314,损失为0.24
执行次数为315,损失为0.24
执行次数为316,损失为0.24
执行次数为317,损失为0.23
执行次数为318,损失为0.23
执行次数为319,损失为0.23
执行次数为320,损失为0.23
执行次数为321,损失为0.23
执行次数为322,损失为0.23
执行次数为323,损失为0.23
执行次数为324,损失为0.23
执行次数为325,损失为0.22
执行次数为326,损失为0.22
执行次数为327,损失为0.22
执行次数为328,损失为0.22
执行次数为329,损失为0.22
执行次数为330,损失为0.22
执行次数为331,损失为0.22
执行次数为332,损失为0.22
执行次数为333,损失为0.22
执行次数为334,损失为0.21
执行次数为335,损失为0.21
执行次数为336,损失为0.21
执行次数为337,损失为0.21
执行次数为338,损失为0.21
执行次数为339,损失为0.21
执行次数为340,损失为0.21
执行次数为341,损失为0.21
执行次数为342,损失为0.20
执行次数为343,损失为0.20
执行次数为344,损失为0.20
执行次数为345,损失为0.20
执行次数为346,损失为0.20
执行次数为347,损失为0.20
执行次数为348,损失为0.20
执行次数为349,损失为0.20
执行次数为350,损失为0.20
执行次数为351,损失为0.19
执行次数为352,损失为0.19
执行次数为353,损失为0.19
执行次数为354,损失为0.19
执行次数为355,损失为0.19
执行次数为356,损失为0.19
执行次数为357,损失为0.19
执行次数为358,损失为0.19
执行次数为359,损失为0.19
执行次数为360,损失为0.19
执行次数为361,损失为0.18
执行次数为362,损失为0.18
执行次数为363,损失为0.18
执行次数为364,损失为0.18
执行次数为365,损失为0.18
执行次数为366,损失为0.18
执行次数为367,损失为0.18
执行次数为368,损失为0.18
执行次数为369,损失为0.18
执行次数为370,损失为0.18
执行次数为371,损失为0.17
执行次数为372,损失为0.17
执行次数为373,损失为0.17
执行次数为374,损失为0.17
执行次数为375,损失为0.17
执行次数为376,损失为0.17
执行次数为377,损失为0.17
执行次数为378,损失为0.17
执行次数为379,损失为0.17
执行次数为380,损失为0.17
执行次数为381,损失为0.17
执行次数为382,损失为0.16
执行次数为383,损失为0.16
执行次数为384,损失为0.16
执行次数为385,损失为0.16
执行次数为386,损失为0.16
执行次数为387,损失为0.16
执行次数为388,损失为0.16
执行次数为389,损失为0.16
执行次数为390,损失为0.16
执行次数为391,损失为0.16
执行次数为392,损失为0.16
执行次数为393,损失为0.15
执行次数为394,损失为0.15
执行次数为395,损失为0.15
执行次数为396,损失为0.15
执行次数为397,损失为0.15
执行次数为398,损失为0.15
执行次数为399,损失为0.15
执行次数为400,损失为0.15
执行次数为401,损失为0.15
执行次数为402,损失为0.15
执行次数为403,损失为0.15
执行次数为404,损失为0.15
执行次数为405,损失为0.14
执行次数为406,损失为0.14
执行次数为407,损失为0.14
执行次数为408,损失为0.14
执行次数为409,损失为0.14
执行次数为410,损失为0.14
执行次数为411,损失为0.14
执行次数为412,损失为0.14
执行次数为413,损失为0.14
执行次数为414,损失为0.14
执行次数为415,损失为0.14
执行次数为416,损失为0.14
执行次数为417,损失为0.14
执行次数为418,损失为0.13
执行次数为419,损失为0.13
执行次数为420,损失为0.13
执行次数为421,损失为0.13
执行次数为422,损失为0.13
执行次数为423,损失为0.13
执行次数为424,损失为0.13
执行次数为425,损失为0.13
执行次数为426,损失为0.13
执行次数为427,损失为0.13
执行次数为428,损失为0.13
执行次数为429,损失为0.13
执行次数为430,损失为0.13
执行次数为431,损失为0.13
执行次数为432,损失为0.12
执行次数为433,损失为0.12
执行次数为434,损失为0.12
执行次数为435,损失为0.12
执行次数为436,损失为0.12
执行次数为437,损失为0.12
执行次数为438,损失为0.12
执行次数为439,损失为0.12
执行次数为440,损失为0.12
执行次数为441,损失为0.12
执行次数为442,损失为0.12
执行次数为443,损失为0.12
执行次数为444,损失为0.12
执行次数为445,损失为0.12
执行次数为446,损失为0.12
执行次数为447,损失为0.11
执行次数为448,损失为0.11
执行次数为449,损失为0.11
执行次数为450,损失为0.11
执行次数为451,损失为0.11
执行次数为452,损失为0.11
执行次数为453,损失为0.11
执行次数为454,损失为0.11
执行次数为455,损失为0.11
执行次数为456,损失为0.11
执行次数为457,损失为0.11
执行次数为458,损失为0.11
执行次数为459,损失为0.11
执行次数为460,损失为0.11
执行次数为461,损失为0.11
执行次数为462,损失为0.11
执行次数为463,损失为0.10
执行次数为464,损失为0.10
执行次数为465,损失为0.10
执行次数为466,损失为0.10
执行次数为467,损失为0.10
执行次数为468,损失为0.10
执行次数为469,损失为0.10
执行次数为470,损失为0.10
执行次数为471,损失为0.10
执行次数为472,损失为0.10
执行次数为473,损失为0.10
执行次数为474,损失为0.10
执行次数为475,损失为0.10
执行次数为476,损失为0.10
执行次数为477,损失为0.10
执行次数为478,损失为0.10
执行次数为479,损失为0.10
执行次数为480,损失为0.10
执行次数为481,损失为0.10
执行次数为482,损失为0.09
执行次数为483,损失为0.09
执行次数为484,损失为0.09
执行次数为485,损失为0.09
执行次数为486,损失为0.09
执行次数为487,损失为0.09
执行次数为488,损失为0.09
执行次数为489,损失为0.09
执行次数为490,损失为0.09
执行次数为491,损失为0.09
执行次数为492,损失为0.09
执行次数为493,损失为0.09
执行次数为494,损失为0.09
执行次数为495,损失为0.09
执行次数为496,损失为0.09
执行次数为497,损失为0.09
执行次数为498,损失为0.09
执行次数为499,损失为0.09
执行次数为500,损失为0.09
执行次数为501,损失为0.09
执行次数为502,损失为0.08
执行次数为503,损失为0.08
执行次数为504,损失为0.08
执行次数为505,损失为0.08
执行次数为506,损失为0.08
执行次数为507,损失为0.08
执行次数为508,损失为0.08
执行次数为509,损失为0.08
执行次数为510,损失为0.08
执行次数为511,损失为0.08
执行次数为512,损失为0.08
执行次数为513,损失为0.08
执行次数为514,损失为0.08
执行次数为515,损失为0.08
执行次数为516,损失为0.08
执行次数为517,损失为0.08
执行次数为518,损失为0.08
执行次数为519,损失为0.08
执行次数为520,损失为0.08
执行次数为521,损失为0.08
执行次数为522,损失为0.08
执行次数为523,损失为0.08
执行次数为524,损失为0.07
执行次数为525,损失为0.07
执行次数为526,损失为0.07
执行次数为527,损失为0.07
执行次数为528,损失为0.07
执行次数为529,损失为0.07
执行次数为530,损失为0.07
执行次数为531,损失为0.07
执行次数为532,损失为0.07
执行次数为533,损失为0.07
执行次数为534,损失为0.07
执行次数为535,损失为0.07
执行次数为536,损失为0.07
执行次数为537,损失为0.07
执行次数为538,损失为0.07
执行次数为539,损失为0.07
执行次数为540,损失为0.07
执行次数为541,损失为0.07
执行次数为542,损失为0.07
执行次数为543,损失为0.07
执行次数为544,损失为0.07
执行次数为545,损失为0.07
执行次数为546,损失为0.07
执行次数为547,损失为0.07
执行次数为548,损失为0.07
执行次数为549,损失为0.07
执行次数为550,损失为0.06
执行次数为551,损失为0.06
执行次数为552,损失为0.06
执行次数为553,损失为0.06
执行次数为554,损失为0.06
执行次数为555,损失为0.06
执行次数为556,损失为0.06
执行次数为557,损失为0.06
执行次数为558,损失为0.06
执行次数为559,损失为0.06
执行次数为560,损失为0.06
执行次数为561,损失为0.06
执行次数为562,损失为0.06
执行次数为563,损失为0.06
执行次数为564,损失为0.06
执行次数为565,损失为0.06
执行次数为566,损失为0.06
执行次数为567,损失为0.06
执行次数为568,损失为0.06
执行次数为569,损失为0.06
执行次数为570,损失为0.06
执行次数为571,损失为0.06
执行次数为572,损失为0.06
执行次数为573,损失为0.06
执行次数为574,损失为0.06
执行次数为575,损失为0.06
执行次数为576,损失为0.06
执行次数为577,损失为0.06
执行次数为578,损失为0.06
执行次数为579,损失为0.06
执行次数为580,损失为0.05
执行次数为581,损失为0.05
执行次数为582,损失为0.05
执行次数为583,损失为0.05
执行次数为584,损失为0.05
执行次数为585,损失为0.05
执行次数为586,损失为0.05
执行次数为587,损失为0.05
执行次数为588,损失为0.05
执行次数为589,损失为0.05
执行次数为590,损失为0.05
执行次数为591,损失为0.05
执行次数为592,损失为0.05
执行次数为593,损失为0.05
执行次数为594,损失为0.05
执行次数为595,损失为0.05
执行次数为596,损失为0.05
执行次数为597,损失为0.05
执行次数为598,损失为0.05
执行次数为599,损失为0.05
执行次数为600,损失为0.05
执行次数为601,损失为0.05
执行次数为602,损失为0.05
执行次数为603,损失为0.05
执行次数为604,损失为0.05
执行次数为605,损失为0.05
执行次数为606,损失为0.05
执行次数为607,损失为0.05
执行次数为608,损失为0.05
执行次数为609,损失为0.05
执行次数为610,损失为0.05
执行次数为611,损失为0.05
执行次数为612,损失为0.05
执行次数为613,损失为0.05
执行次数为614,损失为0.05
执行次数为615,损失为0.05
执行次数为616,损失为0.05
执行次数为617,损失为0.04
执行次数为618,损失为0.04
执行次数为619,损失为0.04
执行次数为620,损失为0.04
执行次数为621,损失为0.04
执行次数为622,损失为0.04
执行次数为623,损失为0.04
执行次数为624,损失为0.04
执行次数为625,损失为0.04
执行次数为626,损失为0.04
执行次数为627,损失为0.04
执行次数为628,损失为0.04
执行次数为629,损失为0.04
执行次数为630,损失为0.04
执行次数为631,损失为0.04
执行次数为632,损失为0.04
执行次数为633,损失为0.04
执行次数为634,损失为0.04
执行次数为635,损失为0.04
执行次数为636,损失为0.04
执行次数为637,损失为0.04
执行次数为638,损失为0.04
执行次数为639,损失为0.04
执行次数为640,损失为0.04
执行次数为641,损失为0.04
执行次数为642,损失为0.04
执行次数为643,损失为0.04
执行次数为644,损失为0.04
执行次数为645,损失为0.04
执行次数为646,损失为0.04
执行次数为647,损失为0.04
执行次数为648,损失为0.04
执行次数为649,损失为0.04
执行次数为650,损失为0.04
执行次数为651,损失为0.04
执行次数为652,损失为0.04
执行次数为653,损失为0.04
执行次数为654,损失为0.04
执行次数为655,损失为0.04
执行次数为656,损失为0.04
执行次数为657,损失为0.04
执行次数为658,损失为0.04
执行次数为659,损失为0.04
执行次数为660,损失为0.04
执行次数为661,损失为0.04
执行次数为662,损失为0.03
执行次数为663,损失为0.03
执行次数为664,损失为0.03
执行次数为665,损失为0.03
执行次数为666,损失为0.03
执行次数为667,损失为0.03
执行次数为668,损失为0.03
执行次数为669,损失为0.03
执行次数为670,损失为0.03
执行次数为671,损失为0.03
执行次数为672,损失为0.03
执行次数为673,损失为0.03
执行次数为674,损失为0.03
执行次数为675,损失为0.03
执行次数为676,损失为0.03
执行次数为677,损失为0.03
执行次数为678,损失为0.03
执行次数为679,损失为0.03
执行次数为680,损失为0.03
执行次数为681,损失为0.03
执行次数为682,损失为0.03
执行次数为683,损失为0.03
执行次数为684,损失为0.03
执行次数为685,损失为0.03
执行次数为686,损失为0.03
执行次数为687,损失为0.03
执行次数为688,损失为0.03
执行次数为689,损失为0.03
执行次数为690,损失为0.03
执行次数为691,损失为0.03
执行次数为692,损失为0.03
执行次数为693,损失为0.03
执行次数为694,损失为0.03
执行次数为695,损失为0.03
执行次数为696,损失为0.03
执行次数为697,损失为0.03
执行次数为698,损失为0.03
执行次数为699,损失为0.03
执行次数为700,损失为0.03
执行次数为701,损失为0.03
执行次数为702,损失为0.03
执行次数为703,损失为0.03
执行次数为704,损失为0.03
执行次数为705,损失为0.03
执行次数为706,损失为0.03
执行次数为707,损失为0.03
执行次数为708,损失为0.03
执行次数为709,损失为0.03
执行次数为710,损失为0.03
执行次数为711,损失为0.03
执行次数为712,损失为0.03
执行次数为713,损失为0.03
执行次数为714,损失为0.03
执行次数为715,损失为0.03
执行次数为716,损失为0.03
执行次数为717,损失为0.03
执行次数为718,损失为0.03
执行次数为719,损失为0.03
执行次数为720,损失为0.03
执行次数为721,损失为0.03
执行次数为722,损失为0.03
执行次数为723,损失为0.02
执行次数为724,损失为0.02
执行次数为725,损失为0.02
执行次数为726,损失为0.02
执行次数为727,损失为0.02
执行次数为728,损失为0.02
执行次数为729,损失为0.02
执行次数为730,损失为0.02
执行次数为731,损失为0.02
执行次数为732,损失为0.02
执行次数为733,损失为0.02
执行次数为734,损失为0.02
执行次数为735,损失为0.02
执行次数为736,损失为0.02
执行次数为737,损失为0.02
执行次数为738,损失为0.02
执行次数为739,损失为0.02
执行次数为740,损失为0.02
执行次数为741,损失为0.02
执行次数为742,损失为0.02
执行次数为743,损失为0.02
执行次数为744,损失为0.02
执行次数为745,损失为0.02
执行次数为746,损失为0.02
执行次数为747,损失为0.02
执行次数为748,损失为0.02
执行次数为749,损失为0.02
执行次数为750,损失为0.02
执行次数为751,损失为0.02
执行次数为752,损失为0.02
执行次数为753,损失为0.02
执行次数为754,损失为0.02
执行次数为755,损失为0.02
执行次数为756,损失为0.02
执行次数为757,损失为0.02
执行次数为758,损失为0.02
执行次数为759,损失为0.02
执行次数为760,损失为0.02
执行次数为761,损失为0.02
执行次数为762,损失为0.02
执行次数为763,损失为0.02
执行次数为764,损失为0.02
执行次数为765,损失为0.02
执行次数为766,损失为0.02
执行次数为767,损失为0.02
执行次数为768,损失为0.02
执行次数为769,损失为0.02
执行次数为770,损失为0.02
执行次数为771,损失为0.02
执行次数为772,损失为0.02
执行次数为773,损失为0.02
执行次数为774,损失为0.02
执行次数为775,损失为0.02
执行次数为776,损失为0.02
执行次数为777,损失为0.02
执行次数为778,损失为0.02
执行次数为779,损失为0.02
执行次数为780,损失为0.02
执行次数为781,损失为0.02
执行次数为782,损失为0.02
执行次数为783,损失为0.02
执行次数为784,损失为0.02
执行次数为785,损失为0.02
执行次数为786,损失为0.02
执行次数为787,损失为0.02
执行次数为788,损失为0.02
执行次数为789,损失为0.02
执行次数为790,损失为0.02
执行次数为791,损失为0.02
执行次数为792,损失为0.02
执行次数为793,损失为0.02
执行次数为794,损失为0.02
执行次数为795,损失为0.02
执行次数为796,损失为0.02
执行次数为797,损失为0.02
执行次数为798,损失为0.02
执行次数为799,损失为0.02
执行次数为800,损失为0.02
执行次数为801,损失为0.02
执行次数为802,损失为0.02
执行次数为803,损失为0.02
执行次数为804,损失为0.02
执行次数为805,损失为0.02
执行次数为806,损失为0.02
执行次数为807,损失为0.02
执行次数为808,损失为0.02
执行次数为809,损失为0.02
执行次数为810,损失为0.02
执行次数为811,损失为0.02
执行次数为812,损失为0.02
执行次数为813,损失为0.02
执行次数为814,损失为0.02
执行次数为815,损失为0.02
执行次数为816,损失为0.01
执行次数为817,损失为0.01
执行次数为818,损失为0.01
执行次数为819,损失为0.01
执行次数为820,损失为0.01
执行次数为821,损失为0.01
执行次数为822,损失为0.01
执行次数为823,损失为0.01
执行次数为824,损失为0.01
执行次数为825,损失为0.01
执行次数为826,损失为0.01
执行次数为827,损失为0.01
执行次数为828,损失为0.01
执行次数为829,损失为0.01
执行次数为830,损失为0.01
执行次数为831,损失为0.01
执行次数为832,损失为0.01
执行次数为833,损失为0.01
执行次数为834,损失为0.01
执行次数为835,损失为0.01
执行次数为836,损失为0.01
执行次数为837,损失为0.01
执行次数为838,损失为0.01
执行次数为839,损失为0.01
执行次数为840,损失为0.01
执行次数为841,损失为0.01
执行次数为842,损失为0.01
执行次数为843,损失为0.01
执行次数为844,损失为0.01
执行次数为845,损失为0.01
执行次数为846,损失为0.01
执行次数为847,损失为0.01
执行次数为848,损失为0.01
执行次数为849,损失为0.01
执行次数为850,损失为0.01
执行次数为851,损失为0.01
执行次数为852,损失为0.01
执行次数为853,损失为0.01
执行次数为854,损失为0.01
执行次数为855,损失为0.01
执行次数为856,损失为0.01
执行次数为857,损失为0.01
执行次数为858,损失为0.01
执行次数为859,损失为0.01
执行次数为860,损失为0.01
执行次数为861,损失为0.01
执行次数为862,损失为0.01
执行次数为863,损失为0.01
执行次数为864,损失为0.01
执行次数为865,损失为0.01
执行次数为866,损失为0.01
执行次数为867,损失为0.01
执行次数为868,损失为0.01
执行次数为869,损失为0.01
执行次数为870,损失为0.01
执行次数为871,损失为0.01
执行次数为872,损失为0.01
执行次数为873,损失为0.01
执行次数为874,损失为0.01
执行次数为875,损失为0.01
执行次数为876,损失为0.01
执行次数为877,损失为0.01
执行次数为878,损失为0.01
执行次数为879,损失为0.01
执行次数为880,损失为0.01
执行次数为881,损失为0.01
执行次数为882,损失为0.01
执行次数为883,损失为0.01
执行次数为884,损失为0.01
执行次数为885,损失为0.01
执行次数为886,损失为0.01
执行次数为887,损失为0.01
执行次数为888,损失为0.01
执行次数为889,损失为0.01
执行次数为890,损失为0.01
执行次数为891,损失为0.01
执行次数为892,损失为0.01
执行次数为893,损失为0.01
执行次数为894,损失为0.01
执行次数为895,损失为0.01
执行次数为896,损失为0.01
执行次数为897,损失为0.01
执行次数为898,损失为0.01
执行次数为899,损失为0.01
执行次数为900,损失为0.01
执行次数为901,损失为0.01
执行次数为902,损失为0.01
执行次数为903,损失为0.01
执行次数为904,损失为0.01
执行次数为905,损失为0.01
执行次数为906,损失为0.01
执行次数为907,损失为0.01
执行次数为908,损失为0.01
执行次数为909,损失为0.01
执行次数为910,损失为0.01
执行次数为911,损失为0.01
执行次数为912,损失为0.01
执行次数为913,损失为0.01
执行次数为914,损失为0.01
执行次数为915,损失为0.01
执行次数为916,损失为0.01
执行次数为917,损失为0.01
执行次数为918,损失为0.01
执行次数为919,损失为0.01
执行次数为920,损失为0.01
执行次数为921,损失为0.01
执行次数为922,损失为0.01
执行次数为923,损失为0.01
执行次数为924,损失为0.01
执行次数为925,损失为0.01
执行次数为926,损失为0.01
执行次数为927,损失为0.01
执行次数为928,损失为0.01
执行次数为929,损失为0.01
执行次数为930,损失为0.01
执行次数为931,损失为0.01
执行次数为932,损失为0.01
执行次数为933,损失为0.01
执行次数为934,损失为0.01
执行次数为935,损失为0.01
执行次数为936,损失为0.01
执行次数为937,损失为0.01
执行次数为938,损失为0.01
执行次数为939,损失为0.01
执行次数为940,损失为0.01
执行次数为941,损失为0.01
执行次数为942,损失为0.01
执行次数为943,损失为0.01
执行次数为944,损失为0.01
执行次数为945,损失为0.01
执行次数为946,损失为0.01
执行次数为947,损失为0.01
执行次数为948,损失为0.01
执行次数为949,损失为0.01
执行次数为950,损失为0.01
执行次数为951,损失为0.01
执行次数为952,损失为0.01
执行次数为953,损失为0.01
执行次数为954,损失为0.01
执行次数为955,损失为0.01
执行次数为956,损失为0.01
执行次数为957,损失为0.01
执行次数为958,损失为0.01
执行次数为959,损失为0.01
执行次数为960,损失为0.01
执行次数为961,损失为0.01
执行次数为962,损失为0.01
执行次数为963,损失为0.01
执行次数为964,损失为0.01
执行次数为965,损失为0.01
执行次数为966,损失为0.01
执行次数为967,损失为0.01
执行次数为968,损失为0.01
执行次数为969,损失为0.01
执行次数为970,损失为0.01
执行次数为971,损失为0.01
执行次数为972,损失为0.01
执行次数为973,损失为0.01
执行次数为974,损失为0.01
执行次数为975,损失为0.01
执行次数为976,损失为0.01
执行次数为977,损失为0.01
执行次数为978,损失为0.01
执行次数为979,损失为0.01
执行次数为980,损失为0.01
执行次数为981,损失为0.01
执行次数为982,损失为0.01
执行次数为983,损失为0.01
执行次数为984,损失为0.01
执行次数为985,损失为0.01
执行次数为986,损失为0.01
执行次数为987,损失为0.01
执行次数为988,损失为0.01
执行次数为989,损失为0.01
执行次数为990,损失为0.01
执行次数为991,损失为0.01
执行次数为992,损失为0.01
执行次数为993,损失为0.01
执行次数为994,损失为0.01
执行次数为995,损失为0.01
执行次数为996,损失为0.01
执行次数为997,损失为0.01
执行次数为998,损失为0.01
执行次数为999,损失为0.01
执行次数为1000,损失为0.01
w,b=lr.result()
w,b
(4.971908686039483, -1.8044991071811656)
plt.scatter(X,y)
plt.plot(X,X*w+b)
[<matplotlib.lines.Line2D at 0x2492eb1ab00>]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-UYQCzOY5-1585129017608)(output_6_1.png)]

用sklearn中的模型进行验证

from sklearn.linear_model import LinearRegression
lr=LinearRegression()
lr.fit(X,y)
w=lr.coef_[0]
b=lr.intercept_[0]
print(w,b)
[5.] -1.999999999999993
发布了4 篇原创文章 · 获赞 0 · 访问量 268

猜你喜欢

转载自blog.csdn.net/qq_41961189/article/details/105100403
今日推荐