From 2d1957b8c78434fa1212772bbc9b2051d4af6b79 Mon Sep 17 00:00:00 2001 From: Wolves Date: Mon, 3 Jun 2024 09:38:49 +0800 Subject: [PATCH] 230603 --- linear regression/1.md | 18 +++ linear regression/1.py | 4 +- linear regression/1_cuda.py | 67 +++++++++++ linear regression/1x.py | 72 ++++++++++++ linear regression/data1.csv | 200 ++++++++++++++++----------------- linear regression/plt_print.py | 3 +- linear regression/print1.png | Bin 36320 -> 35209 bytes 7 files changed, 261 insertions(+), 103 deletions(-) create mode 100644 linear regression/1.md create mode 100644 linear regression/1_cuda.py create mode 100644 linear regression/1x.py diff --git a/linear regression/1.md b/linear regression/1.md new file mode 100644 index 0000000..938f45d --- /dev/null +++ b/linear regression/1.md @@ -0,0 +1,18 @@ +# 1.py + +$$ +y = wx + b +$$ + +## 梯度下降算法 + +$$ +b_gradient += -\frac{2}{N} \left(y - (w_current \cdot x + b_current)\right) +$$ + + + +$$ +w_gradient += -\frac{2}{N} \cdot x \cdot \left(y - (w_current \cdot x + b_current)\right) +$$ + diff --git a/linear regression/1.py b/linear regression/1.py index dc455ef..a7402e6 100644 --- a/linear regression/1.py +++ b/linear regression/1.py @@ -19,8 +19,8 @@ def step_gradient(b_current, w_current, points, learningRate): for i in range(len(points)): x = points[i][0] y = points[i][1] - b_gradient += -(2 / N) * (y - (w_current * x + b_current) + b_current) - w_gradient += -(2 / N) * x * (y - (w_current * x + b_current + b_current)) + b_gradient += -(2 / N) * (y - (w_current * x + b_current)) + w_gradient += -(2 / N) * x * (y - (w_current * x + b_current)) new_b = b_current - (learningRate * b_gradient) new_w = w_current - (learningRate * w_gradient) return [new_b, new_w] diff --git a/linear regression/1_cuda.py b/linear regression/1_cuda.py new file mode 100644 index 0000000..be818aa --- /dev/null +++ b/linear regression/1_cuda.py @@ -0,0 +1,67 @@ +import matplotlib.pyplot as plt +import numpy as np +import torch + +# 线性回归训练代码 +def compute_error_for_line_given_points(b, w, points): + totalError = 0 + N = float(len(points)) + for i in range(len(points)): + x = points[i][0] + y = points[i][1] + totalError += (y - (w * x + b)) ** 2 + return totalError / N + +def step_gradient(b_current, w_current, points, learningRate): + b_gradient = torch.tensor(0.0, device=points.device) + w_gradient = torch.tensor(0.0, device=points.device) + N = float(len(points)) + for i in range(len(points)): + x = points[i][0] + y = points[i][1] + b_gradient += -(2 / N) * (y - (w_current * x + b_current)) + w_gradient += -(2 / N) * x * (y - (w_current * x + b_current)) + new_b = b_current - (learningRate * b_gradient) + new_w = w_current - (learningRate * w_gradient) + return [new_b, new_w] + +def gradient_descent_runner(points, starting_b, starting_w, learningRate, num_iterations): + b = torch.tensor(starting_b, device=points.device) + w = torch.tensor(starting_w, device=points.device) + for i in range(num_iterations): + b, w = step_gradient(b, w, points, learningRate) + return [b, w] + +def run(): + points_np = np.genfromtxt("data1.csv", delimiter=',').astype(np.float32) + points = torch.tensor(points_np, device='cuda') + learning_rate = 0.0001 + initial_b = 0.0 + initial_w = 0.0 + num_iterations = 100000 + [b, w] = gradient_descent_runner(points, initial_b, initial_w, learning_rate, num_iterations) + print("After gradient descent at b={0}, w={1}, error={2}".format(b.item(), w.item(), + compute_error_for_line_given_points(b, w, points))) + return b.item(), w.item() + +# 运行线性回归 +final_b, final_w = run() + +# 绘制图像 +points_np = np.genfromtxt("data1.csv", delimiter=',').astype(np.float32) +x = points_np[:, 0] +y = points_np[:, 1] + +x_range = np.linspace(min(x), max(x), 100) +y_pred = final_w * x_range + final_b + +plt.figure(figsize=(8, 6)) +plt.scatter(x, y, color='blue', label='Original data') +plt.plot(x_range, y_pred, color='red', label='Fitted line') +plt.xlabel('X') +plt.ylabel('Y') +plt.title('Fitting a line to random data') +plt.legend() +plt.grid(True) +plt.savefig('print1.png') +plt.show() diff --git a/linear regression/1x.py b/linear regression/1x.py new file mode 100644 index 0000000..0b1b93a --- /dev/null +++ b/linear regression/1x.py @@ -0,0 +1,72 @@ +import matplotlib.pyplot as plt +import numpy as np +import torch + + +# 线性回归训练代码 +def compute_error_for_line_given_points(b, w, points): + totalError = 0 + N = float(len(points)) + for i in range(len(points)): + x = points[i][0] + y = points[i][1] + totalError += (y - (w * x + b)) ** 2 + return totalError / N + + +def step_gradient(b_current, w_current, points, learningRate): + b_gradient = torch.tensor(0.0, device=points.device, dtype=torch.float32) + w_gradient = torch.tensor(0.0, device=points.device, dtype=torch.float32) + N = float(len(points)) + for i in range(len(points)): + x = points[i][0] + y = points[i][1] + b_gradient += -(2 / N) * (y - (w_current * x + b_current)) + w_gradient += -(2 / N) * x * (y - (w_current * x + b_current)) + new_b = b_current - (learningRate * b_gradient) + new_w = w_current - (learningRate * w_gradient) + return [new_b, new_w] + + +def gradient_descent_runner(points, starting_b, starting_w, learningRate, num_iterations): + b = torch.tensor(starting_b, device=points.device, dtype=torch.float32) + w = torch.tensor(starting_w, device=points.device, dtype=torch.float32) + for i in range(num_iterations): + b, w = step_gradient(b, w, points, learningRate) + return [b, w] + + +def run(): + points_np = np.genfromtxt("data1.csv", delimiter=',').astype(np.float32) + points = torch.tensor(points_np, device='mps') + learning_rate = 0.0001 + initial_b = 0.0 + initial_w = 0.0 + num_iterations = 100000 + [b, w] = gradient_descent_runner(points, initial_b, initial_w, learning_rate, num_iterations) + print("After gradient descent at b={0},w={1},error={2}".format(b.item(), w.item(), + compute_error_for_line_given_points(b, w, points))) + return b.item(), w.item() + + +# 运行线性回归 +final_b, final_w = run() + +# 绘制图像 +points_np = np.genfromtxt("data1.csv", delimiter=',').astype(np.float32) +x = points_np[:, 0] +y = points_np[:, 1] + +x_range = np.linspace(min(x), max(x), 100) +y_pred = final_w * x_range + final_b + +plt.figure(figsize=(8, 6)) +plt.scatter(x, y, color='blue', label='Original data') +plt.plot(x_range, y_pred, color='red', label='Fitted line') +plt.xlabel('X') +plt.ylabel('Y') +plt.title('Fitting a line to random data') +plt.legend() +plt.grid(True) +plt.savefig('print1.png') +plt.show() diff --git a/linear regression/data1.csv b/linear regression/data1.csv index 338b71d..508fd99 100644 --- a/linear regression/data1.csv +++ b/linear regression/data1.csv @@ -1,100 +1,100 @@ -0.0,2.4360562173289115 -0.10101010101010101,2.4288710820592065 -0.20202020202020202,3.677943201375977 -0.30303030303030304,3.5029234515863217 -0.40404040404040403,4.007715980839878 -0.5050505050505051,3.95999321461469 -0.6060606060606061,3.220853916066527 -0.7070707070707071,3.2211460206798623 -0.8080808080808081,4.2516957270374505 -0.9090909090909091,4.311826715084292 -1.0101010101010102,4.153966583608258 -1.1111111111111112,4.224290328721461 -1.2121212121212122,4.551324602105953 -1.3131313131313131,5.157200101408408 -1.4141414141414141,5.199011258508288 -1.5151515151515151,5.248911218901843 -1.6161616161616161,5.789628423512512 -1.7171717171717171,5.126592322934872 -1.8181818181818181,4.546631494636344 -1.9191919191919191,5.7260434379514065 -2.0202020202020203,5.607446671816119 -2.121212121212121,5.401744626671172 -2.2222222222222223,5.568078510495838 -2.323232323232323,6.136817713051054 -2.4242424242424243,5.399802896696589 -2.525252525252525,6.7465591899811415 -2.6262626262626263,6.510002771256968 -2.727272727272727,6.194107987238278 -2.8282828282828283,6.280445605022811 -2.929292929292929,6.413289184504817 -3.0303030303030303,8.178951965980268 -3.131313131313131,7.438933818741419 -3.2323232323232323,8.161193108124682 -3.3333333333333335,6.466487953447159 -3.4343434343434343,7.6815673373443385 -3.5353535353535355,7.412509123916619 -3.6363636363636362,7.712231039046388 -3.7373737373737375,7.512155302443977 -3.8383838383838382,8.169468174953455 -3.9393939393939394,8.201406255891817 -4.040404040404041,9.413915839209679 -4.141414141414141,7.2131607261403 -4.242424242424242,8.244196707034996 -4.343434343434343,8.059400613529792 -4.444444444444445,9.127093042087843 -4.545454545454545,8.232456814994503 -4.646464646464646,9.026988954051767 -4.747474747474747,8.936405824368308 -4.848484848484849,8.838334259675397 -4.94949494949495,9.717080564295035 -5.05050505050505,9.635892324495916 -5.151515151515151,10.802758752616178 -5.252525252525253,9.889268431487773 -5.353535353535354,9.262021983987134 -5.454545454545454,9.905732041295009 -5.555555555555555,9.697006564677089 -5.656565656565657,10.435437946557755 -5.757575757575758,10.257651825530608 -5.858585858585858,11.394734709569004 -5.959595959595959,10.872621683473387 -6.0606060606060606,10.750944058491058 -6.161616161616162,11.375400587831757 -6.262626262626262,11.834436555701465 -6.363636363636363,11.536088544119654 -6.4646464646464645,11.261555999325722 -6.565656565656566,12.529961808490153 -6.666666666666667,12.19345219105891 -6.767676767676767,11.950653180245155 -6.8686868686868685,12.176773142948385 -6.96969696969697,12.055083206520518 -7.070707070707071,13.498633194384489 -7.171717171717171,12.542518727882712 -7.2727272727272725,13.318372269865769 -7.373737373737374,12.542630883166513 -7.474747474747475,12.93490122675753 -7.575757575757575,14.4040220344926 -7.6767676767676765,13.314367294113964 -7.777777777777778,14.061236496574551 -7.878787878787879,12.686346979737731 -7.979797979797979,14.024375221983842 -8.080808080808081,13.7042096336008 -8.181818181818182,13.342730021126272 -8.282828282828282,14.136548357864573 -8.383838383838384,14.619569834949138 -8.484848484848484,14.01453898823226 -8.585858585858587,15.154877807203663 -8.686868686868687,14.081910297898048 -8.787878787878787,14.474564310016353 -8.88888888888889,14.966525346412723 -8.98989898989899,15.526107019435932 -9.09090909090909,14.352357736719853 -9.191919191919192,15.843742065895144 -9.292929292929292,15.787083172159111 -9.393939393939394,15.211828607109144 -9.494949494949495,15.845176532492374 -9.595959595959595,15.622518083688107 -9.696969696969697,15.589081237426006 -9.797979797979798,15.511248085690712 -9.8989898989899,16.27050774059862 -10.0,16.1105549896166 +0.0,3.267264598063918 +0.10101010101010101,3.3715980311448757 +0.20202020202020202,3.624529195538264 +0.30303030303030304,2.2426026435865785 +0.40404040404040403,2.881354128303834 +0.5050505050505051,4.108915299601898 +0.6060606060606061,3.2833072841616344 +0.7070707070707071,3.401314666490608 +0.8080808080808081,3.4471224977820083 +0.9090909090909091,4.597483332850038 +1.0101010101010102,4.1948230194917615 +1.1111111111111112,4.770110614428998 +1.2121212121212122,4.3466984672473545 +1.3131313131313131,4.085374736788284 +1.4141414141414141,4.860667770156386 +1.5151515151515151,5.367460741298345 +1.6161616161616161,5.1076464505556585 +1.7171717171717171,4.517380143483942 +1.8181818181818181,6.028333717306668 +1.9191919191919191,5.268642728341781 +2.0202020202020203,5.2032646463511885 +2.121212121212121,5.776924577040542 +2.2222222222222223,5.914239664440679 +2.323232323232323,6.195294604152318 +2.4242424242424243,6.67461745554651 +2.525252525252525,6.62895898059055 +2.6262626262626263,6.423496434474387 +2.727272727272727,6.520626001853953 +2.8282828282828283,6.252851138402289 +2.929292929292929,7.045662416151556 +3.0303030303030303,7.062687254815803 +3.131313131313131,6.950015155958233 +3.2323232323232323,7.71420449451215 +3.3333333333333335,7.536987534120887 +3.4343434343434343,8.408446293914908 +3.5353535353535355,8.281116903817127 +3.6363636363636362,6.862064335470844 +3.7373737373737375,8.455114086555362 +3.8383838383838382,8.610569256326439 +3.9393939393939394,8.695172603505283 +4.040404040404041,7.987174933011048 +4.141414141414141,8.484042583282307 +4.242424242424242,8.152218590549857 +4.343434343434343,8.810112829362456 +4.444444444444445,9.098520210970904 +4.545454545454545,9.315991463976044 +4.646464646464646,9.266562387635002 +4.747474747474747,8.457655714255173 +4.848484848484849,8.577190426286784 +4.94949494949495,9.992687218959654 +5.05050505050505,9.949888900251127 +5.151515151515151,10.112370557219064 +5.252525252525253,10.250084050804231 +5.353535353535354,9.675169646286898 +5.454545454545454,9.790565255890696 +5.555555555555555,9.91666488079517 +5.656565656565657,10.325538746448835 +5.757575757575758,9.77548528051785 +5.858585858585858,10.55371401462777 +5.959595959595959,10.757696722894282 +6.0606060606060606,10.893354131765726 +6.161616161616162,12.049342074375708 +6.262626262626262,10.936118426966079 +6.363636363636363,11.031578580287063 +6.4646464646464645,11.713471927909302 +6.565656565656566,12.343664117608101 +6.666666666666667,12.067856620638729 +6.767676767676767,11.814430199711552 +6.8686868686868685,11.123516182999314 +6.96969696969697,12.496962644202316 +7.070707070707071,12.767487737755147 +7.171717171717171,12.632934104476211 +7.2727272727272725,12.728225932468364 +7.373737373737374,12.97630338885533 +7.474747474747475,12.896220727223701 +7.575757575757575,13.047808359849581 +7.6767676767676765,13.110443597152527 +7.777777777777778,12.921358752181128 +7.878787878787879,13.30038615173782 +7.979797979797979,13.836945395153705 +8.080808080808081,13.054484897082014 +8.181818181818182,14.01038452336861 +8.282828282828282,13.643336312636018 +8.383838383838384,14.564671365817466 +8.484848484848484,14.040540515755758 +8.585858585858587,14.57992522742261 +8.686868686868687,14.88631275019171 +8.787878787878787,14.021963220008606 +8.88888888888889,15.068155050128949 +8.98989898989899,15.083538874549268 +9.09090909090909,15.417748308319911 +9.191919191919192,14.89714205401168 +9.292929292929292,14.534676091762206 +9.393939393939394,15.556467883324295 +9.494949494949495,15.525938847099864 +9.595959595959595,15.560767751324764 +9.696969696969697,15.982790914773943 +9.797979797979798,16.062079721169738 +9.8989898989899,16.232818049890696 +10.0,17.053472736980353 diff --git a/linear regression/plt_print.py b/linear regression/plt_print.py index 2e1d90c..245fe99 100644 --- a/linear regression/plt_print.py +++ b/linear regression/plt_print.py @@ -3,12 +3,13 @@ import matplotlib.pyplot as plt # 原始数据 points = np.genfromtxt("data1.csv", delimiter=',') + x = points[:, 0] y = points[:, 1] # 拟合直线 x_range = np.linspace(min(x), max(x), 100) -y_pred = 1.6455038785934448 * x_range + 1.827562689781189 +y_pred = 0.3880246877670288 * x_range + 1.7214288711547852 # 绘图 plt.figure(figsize=(8, 6)) diff --git a/linear regression/print1.png b/linear regression/print1.png index a008b510f9e84157177505ca0b68c276a749e4ed..c2933e1f8d597d92b8b9559bf86004e64fa6cd67 100644 GIT binary patch literal 35209 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

D>bFs6nzwX~!(G&JlT9b10w35gK4w~v4? zL4DEi&`{vW$VfTN2sD(h2%Yz?^S*lxB^c7!*!X>IEj&3nIX*QtJTP#4eEjX(w>O>1 zQIfXj&w4XDd3n*mD2BlbCL<#Y+}YXT7ZwhipPx_9#(2c;1ovb+Z!1t*RyGUI^UTbQ zo=(ru@H(6=SKzOAXh`*^C<+J0(OL2Q`STpy+{8c&?j0Q5Ycz&m-dJCs%2q|4u%C|h mEZ+Y<(Em@f^8fqcPOnXRQsdpd>{l?&sC$wRB=W>`eEttc1hE4E literal 36320 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 P13$_aFDqnSF!K9fm05_r