এই সময়ের মধ্যে মেশিনটি মেশিনটি শিখতে শিখেছিল, মেশিনটি শিখেছিল, মেশিনের 5 তম অধ্যায়ের মেশিনের লজিস্টিক রিগ্রেশন মেশিনটি শিখেছিল, এটি বেশ শক্ত লাগছিল। এই ট্র্যাকিংয়ের উত্স, মেশিনের লজিস্টিক রিগ্রেশন মেশিন থেকে মেশিনের রৈখিক রিগ্রেশন মেশিন পর্যন্ত, এবং মেশিনের সর্বনিম্ন দ্বিগুণ মেশিন পর্যন্ত। অবশেষে মেশিনের উচ্চতর গণিতের মেশিনের (ছষ্ঠ সংস্করণ, নীচের বই) 9 অধ্যায়ের 10 নং অধ্যায়ের মেশিনের সর্বনিম্ন দ্বিগুণ মেশিনের সাথে সামঞ্জস্য করা হয়েছিল, যা সর্বনিম্ন দ্বিগুণ মেশিনের পিছনে গাণিতিক নীতিটি কোথা থেকে এসেছে তা বুঝতে পেরেছিল।
১৮০১ সালে, ইতালীয় জ্যোতির্বিজ্ঞানী জুসেপ পিয়াজি প্রথম গ্রহাণু উপগ্রহটি আবিষ্কার করেন। ৪০ দিনের ট্র্যাকিং পর্যবেক্ষণের পরে, উপগ্রহটি সূর্যের পিছনে চলে যাওয়ার কারণে পিয়াজি উপগ্রহটির অবস্থান হারিয়ে ফেলেছিলেন। তারপরে বিশ্বব্যাপী বিজ্ঞানীরা পিয়াজির পর্যবেক্ষণের তথ্য ব্যবহার করে উপগ্রহটির সন্ধান শুরু করেছিলেন, তবে বেশিরভাগ লোকের গণনার ফলাফল অনুসারে কোনও ফলাফল পাওয়া যায়নি। ২৪ বছর বয়সী গাউসও উপগ্রহের কক্ষপথ গণনা করেছিলেন। অস্ট্রিয়ান জ্যোতির্বিজ্ঞানী হাইরিচ ওলবার্স গাউসের কক্ষপথের ভিত্তিতে উপগ্রহটি পুনরায় আবিষ্কার করেছিলেন।
গাউসের সর্বনিম্ন দ্বিগুণের পদ্ধতি ১৮০৯ খ্রিস্টাব্দে তার গ্রন্থে প্রকাশিত হয়। ফরাসি বিজ্ঞানী লেজেন্ডার স্বাধীনভাবে ১৮০৬ খ্রিস্টাব্দে সর্বনিম্ন দ্বিগুণের সূত্র আবিষ্কার করেন।
১৮২৯ খ্রিস্টাব্দে, গাউস প্রমাণ করেছিলেন যে সর্বনিম্ন দ্বিগুণের অপ্টিমাইজেশান কার্যকারিতা অন্যান্য পদ্ধতির চেয়ে শক্তিশালী।
ধরুন আমরা কিছু যুদ্ধজাহাজের দৈর্ঘ্য এবং প্রস্থের তথ্য সংগ্রহ করেছি।
আমরা পাইথনে এই তথ্যের উপর ভিত্তি করে একটি বিন্দু গ্রাফ আঁকতে পারিঃ
পয়েন্ট গ্রাফ আঁকার কোড নিম্নরূপঃ
```
import numpy as np # -*- coding: utf-8 -*
import os
import matplotlib.pyplot as plt
def drawScatterDiagram(fileName): # 改变工作路径到数据文件存放的地方
os.chdir("d:/workspace_ml")
xcord=[];ycord=[]
fr=open(fileName)
for line in fr.readlines():
lineArr=line.strip().split()
xcord.append(float(lineArr[1]));ycord.append(float(lineArr[2]))
plt.scatter(xcord,ycord,s=30,c='red',marker='s')
plt.show()
```
假如我们取前两个点(238,32.4)(152, 15.5)就可以得到两个方程
152*a+b=15.5
328*a+b=32.4
解这两个方程得a=0.197,b=-14.48
那样的话,我们可以得到这样的拟合图:
![线性回归之——最小二乘法](/upload/asset/8c4ec1df86e5867e4ce4da6af7d7c8423b163ef7.png)
好了,新的问题来了,这样的a,b是不是最优解呢?用专业的说法就是:a,b是不是模型的最优化参数?在回答这个问题之前,我们先解决另外一个问题:a,b满足什么条件才是最好的?
答案是:保证所有数据偏差的平方和最小。至于原理,我们会在后面讲,先来看看怎么利用这个工具来计算最好的a和b。假设所有数据的平方和为M,则
![线性回归之——最小二乘法](/upload/asset/7189e60a47e6a0a78747c40ff511abe8357350c0.png)
我们现在要做的就是求使得M最小的a和b。请注意这个方程中,我们已知yi和xi
那其实这个方程就是一个以(a,b)为自变量,M为因变量的二元函数。
回想一下高数中怎么对一元函数就极值。我们用的是导数这个工具。那么在二元函数中, 我们依然用导数。只不过这里的导数有了新的名字“偏导数”。偏导数就是把两个变量中的一个视为常数来求导。
通过对M来求偏导数,我们得到一个方程组
![线性回归之——最小二乘法](/upload/asset/4a863a2f6678f5689641aafb11860b12bc820f80.png)
这两个方程中xi和yi都是知道的。
很容易就求得a和b了。由于采用的是维基百科的数据,我这里就直接用答案来画出拟合图像:
![线性回归之——最小二乘法](/upload/asset/2cfbd2f5af3b691577361855ebe337110be5991d.png)
```
# -*- coding: utf-8 -*importnumpy as npimportosimportmatplotlib.pyplot as pltdefdrawScatterDiagram(fileName):
# 改变工作路径到数据文件存放的地方os.chdir("d:/workspace_ml")xcord=[];
# ycord=[]fr=open(fileName)forline infr.readlines():lineArr=line.strip().split()xcord.append(float(lineArr[1]));
# ycord.append(float(lineArr[2]))plt.scatter(xcord,ycord,s=30,c='red',marker='s')
# a=0.1965;b=-14.486a=0.1612;b=-8.6394x=np.arange(90.0,250.0,0.1)y=a*x+bplt.plot(x,y)plt.show()
# -*- coding: utf-8 -*
import numpy as np
import os
import matplotlib.pyplot as plt
def drawScatterDiagram(fileName):
#改变工作路径到数据文件存放的地方
os.chdir("d:/workspace_ml")
xcord=[];ycord=[]
fr=open(fileName)
for line in fr.readlines():
lineArr=line.strip().split()
xcord.append(float(lineArr[1]));ycord.append(float(lineArr[2]))
plt.scatter(xcord,ycord,s=30,c='red',marker='s')
#a=0.1965;b=-14.486
a=0.1612;b=-8.6394
x=np.arange(90.0,250.0,0.1)
y=a*x+b
plt.plot(x,y)
plt.show()
```
ডাটা ফিটনেসের ক্ষেত্রে, কেন মডেলের প্যারামিটারগুলিকে অপ্টিমাইজ করার জন্য মডেলের পূর্বাভাসের ডেটাকে প্রকৃত ডেটার সাথে পার্থক্যের বর্গক্ষেত্রের পরিবর্তে নিখুঁত মান এবং সর্বনিম্ন করা হয়?
এই প্রশ্নের উত্তর কেউ দিয়েছে, লিঙ্ক দেখুন।http://blog.sciencenet.cn/blog-430956-621997.html)
ব্যক্তিগতভাবে আমি এই ব্যাখ্যাটি খুব আকর্ষণীয় মনে করি; বিশেষ করে এর মধ্যে থাকা অনুমানটিঃ f (x) এর সমস্ত বিচ্যুতির পয়েন্টগুলিতে শব্দ রয়েছে।
একটি পয়েন্টের বিচ্যুতি যত বেশি হবে, শব্দটি তত বেশি হবে। তাহলে বিচ্যুতির মাত্রা x এর সাথে সম্ভাব্যতা f (x) এর সম্পর্ক কী?
উপরের সবগুলিই দ্বি-মাত্রিক, অর্থাৎ শুধুমাত্র একটি স্ব-ভেরিয়েবল। কিন্তু বাস্তব জগতে, যা চূড়ান্ত ফলাফলকে প্রভাবিত করে তা হল একাধিক কারণের উপর নির্ভরশীল, অর্থাৎ স্ব-ভেরিয়েবলের একাধিক ঘটনা।
সাধারণ এন মেট্রো-লিনিয়ার ফাংশনগুলির জন্য, লিনিয়ার-লিনিয়ার-এলজিবারের তালের মধ্যে বিপরীত ম্যাট্রিক্সের সাথে অনুসন্ধান করা ঠিক আছে; কারণ একটি উপযুক্ত উদাহরণ অস্থায়ীভাবে পাওয়া যায় নি, এটি একটি কন্ডাক্টর হিসাবে এখানে রয়েছে।
অবশ্যই, প্রকৃতি একটি বহুবচন সমন্বয়, সহজ রৈখিকতা নয়, যা উচ্চতর বিষয়বস্তু।
মূল কাজ, অনুলিপি করার অনুমতি দেওয়া হয়, অনুলিপি করার সময় দয়া করে নিবন্ধটির মূল উত্স, লেখক সম্পর্কিত তথ্য এবং এই বিবৃতিটি হাইপারলিঙ্ক আকারে চিহ্নিত করুন; অন্যথায় আইনী দায়বদ্ধতা অনুসরণ করা হবে।http://sbp810050504.blog.51cto.com/2799422/1269572