Lĩnh số 2 nhỏ nhất của đường cong tuyến tính

Tác giả:Những nhà phát minh định lượng - những giấc mơ nhỏ, Tạo: 2016-12-18 11:36:26, Cập nhật: 2016-12-18 11:41:31

Lĩnh số 2 nhỏ nhất của đường cong tuyến tính


  • ### Một, giới thiệu

Trong thời gian này, tôi học máy đánh giá, và tôi đã học được câu trả lời về Logistic regression của chương 5, cảm thấy khá khó khăn. Tôi bắt đầu theo dõi, từ câu trả lời về Logistic regression đến câu trả lời về Linear regression, và sau đó đến câu trả lời về Phân số hai tối thiểu. Cuối cùng, tôi đã định hình được câu trả lời về Phân số hai tối thiểu ở chương 9 (phiên bản thứ sáu, sách dưới). Lớp xấp xỉ hai lần tối thiểu là một phương pháp thực hiện để xây dựng công thức kinh nghiệm trong các vấn đề tối ưu hóa. Hiểu được cách thức của nó sẽ rất hữu ích để hiểu về Lớp Logistic regression và Lớp học hỗ trợ máy vector.

  • ### 2, kiến thức về nền tảng

Lịch sử về sự xuất hiện của con số 2 nhân con số 2 là rất thú vị.

Vào năm 1801, nhà thiên văn học người Ý Giuseppe Piazzi phát hiện ra tiểu hành tinh đầu tiên là Thiên Tần Thung lũng. Sau 40 ngày theo dõi, Piazzi bị mất vị trí vì Thiên Tạng chạy phía sau Mặt Trời. Sau đó, các nhà khoa học trên toàn thế giới đã sử dụng dữ liệu quan sát của Piazzi để tìm kiếm Thiên Tạng Thung lũng, nhưng không có kết quả nào theo kết quả của hầu hết mọi người.

Phương pháp của Gauss được công bố vào năm 1809 trong tác phẩm của ông về các động thái của các vật thể, và nhà khoa học người Pháp Le Jeannard đã độc lập phát hiện ra các phép nhân hai lần tối thiểu của Gauss vào năm 1806, nhưng không được biết đến. Hai người đã tranh cãi về việc ai là người đầu tiên thành lập nguyên tắc nhân hai lần tối thiểu.

Năm 1829, Gauss cung cấp bằng chứng cho thấy hiệu quả tối ưu hóa của phương pháp nhân hai tối thiểu mạnh hơn các phương pháp khác, xem định lý Gauss-Markov.

  • ### ## ###################################################################

Trung tâm của các con số là đảm bảo các đường lệch của tất cả các dữ liệu là vuông và vuông nhỏ nhất.

Giả sử chúng ta thu thập dữ liệu về chiều dài và chiều rộng của một số tàu chiến.

线性回归之——最小二乘法

Dựa trên dữ liệu này, chúng tôi đã vẽ một biểu đồ điểm phân tán bằng Python:

线性回归之——最小二乘法

Có một số hình ảnh được tạo ra bởi các nhà văn và nhà văn.

```
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()
```
  • ### Bốn, tìm hiểu về nguyên tắc

Tại sao trong một mô hình kết hợp dữ liệu, bạn nên tính toán tỷ lệ chênh lệch giữa dữ liệu dự đoán của mô hình và dữ liệu thực, không phải là giá trị tuyệt đối và tối thiểu để tối ưu hóa các tham số của mô hình?

Câu hỏi này đã được trả lời, xem liên kết.http://blog.sciencenet.cn/blog-430956-621997.html)

Cá nhân tôi cảm thấy lời giải thích này rất thú vị. Đặc biệt là giả định trong đó: tất cả các điểm sai lệch của f (x) đều có tiếng ồn.

Sự lệch của một điểm càng xa cho thấy mức độ nhiễu càng lớn, khả năng xảy ra của điểm càng nhỏ. Vậy mức độ lệch x đáp ứng với khả năng xảy ra của f (x) là gì?

线性回归之——最小二乘法

线性回归之——最小二乘法

  • ### ############################################################################################################################################################################################################################################################

Những trường hợp trên đều là hai chiều, nghĩa là chỉ có một tự biến. Nhưng trong thế giới thực, kết quả cuối cùng được ảnh hưởng bởi sự chồng chất của nhiều yếu tố, nghĩa là sẽ có nhiều trường hợp tự biến.

Đối với các hàm siêu tuyến tính thông thường N, tìm kiếm một ma trận ngược trong chuỗi algebra tuyến tính là OK; vì không tìm thấy một ví dụ thích hợp trong thời gian này, nó được giữ ở đây như một dẫn.

Dĩ nhiên, thiên nhiên là nhiều hơn so với sự phù hợp đa dạng, không đơn giản tuyến tính, đó là nội dung cao cấp hơn.

Các tác phẩm gốc, cho phép sao chép, khi sao chép, hãy chắc chắn để đánh dấu bài viết trong hình thức siêu liên kết nguồn gốc ban đầu, thông tin tác giả và tuyên bố này; nếu không sẽ theo đuổi trách nhiệm pháp lý.http://sbp810050504.blog.51cto.com/2799422/1269572


Nhiều hơn nữa