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

Tối đa hóa Likelihood, Phần 1

Trước đây, chúng ta chọn mean của mẫu làm ước lượng cho tham số mô hình tổng thể mu. Nhưng làm sao biết được trung bình mẫu là ước lượng tốt nhất? Câu hỏi này không đơn giản, nên hãy chia làm hai phần.

Ở Phần 1, bạn sẽ dùng cách tiếp cận tính toán để tính log-likelihood của một ước lượng cho trước. Sau đó, ở Phần 2, bạn sẽ thấy rằng khi tính log-likelihood cho nhiều giá trị đoán khác nhau của ước lượng, sẽ có một giá trị cho likelihood lớn nhất.

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

Nhập môn Mô hình tuyến tính với Python

Xem khóa học

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

  • Tính mean()std() của sample_distances đã được nạp sẵn, dùng làm giá trị đoán cho các tham số của mô hình xác suất.
  • Tính xác suất cho mỗi distance bằng gaussian_model() được xây dựng từ sample_meansample_stdev.
  • Tính loglikelihood bằng sum() của log() các xác suất probs.

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.

# Compute sample mean and stdev, for use as model parameter value guesses
mu_guess = np.____(sample_distances)
sigma_guess = np.____(sample_distances)

# For each sample distance, compute the probability modeled by the parameter guesses
probs = np.zeros(len(sample_distances))
for n, distance in enumerate(sample_distances):
    probs[n] = gaussian_model(____, mu=____, sigma=____)

# Compute and print the log-likelihood as the sum() of the log() of the probabilities
loglikelihood = np.____(np.____(probs))
print('For guesses mu={:0.2f} and sigma={:0.2f}, the loglikelihood={:0.2f}'.format(mu_guess, sigma_guess, ____))
Chỉnh sửa và Chạy Mã