Bắt đầu ngayBắt đầu miễn phí

Tối ưu hóa (giảm thiểu) hàm mất mát

Trong bài tập này, bạn sẽ tự hiện thực linear regression "từ con số 0" bằng scipy.optimize.minimize.

Chúng ta sẽ huấn luyện một mô hình trên bộ dữ liệu giá nhà Boston, đã được nạp sẵn vào biến Xy. Để đơn giản, chúng ta sẽ không bao gồm hệ số chặn (intercept) trong mô hình hồi quy.

Bài tập này là một phần của khóa học

Bộ phân loại tuyến tính với Python

Xem khóa học

Hướng dẫn bài tập

  • Hoàn thiện hàm mất mát cho least squares linear regression.
  • In ra các hệ số từ việc fit LinearRegression của sklearn.

Bài tập tương tác thực hành trực tiếp

Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.

# The squared error, summed over training examples
def my_loss(w):
    s = 0
    for i in range(y.size):
        # Get the true and predicted target values for example 'i'
        y_i_true = y[i]
        y_i_pred = w@X[i]
        s = s + (____)**2
    return s

# Returns the w that makes my_loss(w) smallest
w_fit = minimize(my_loss, X[0]).x
print(w_fit)

# Compare with scikit-learn's LinearRegression coefficients
lr = LinearRegression(fit_intercept=False).fit(X,y)
print(____)
Chỉnh sửa và Chạy Mã