Tôi đang cố gắng tìm ra cách kiểm soát các tham số làm mịn trong mô hình gamcv: gam.
Tôi có một biến nhị thức mà tôi đang cố gắng mô hình hóa chủ yếu là hàm của tọa độ x và y trên một lưới cố định, cộng với một số biến khác có ảnh hưởng nhỏ hơn. Trước đây, tôi đã xây dựng một mô hình hồi quy cục bộ khá tốt bằng cách sử dụng gói locfit và chỉ các giá trị (x, y).
Tuy nhiên, tôi muốn thử kết hợp các biến khác vào mô hình và có vẻ như các mô hình phụ gia tổng quát (GAM) là một khả năng tốt. Sau khi xem các gói gam và mgcv, cả hai đều có chức năng GAM, tôi đã chọn cái sau vì một số ý kiến trong các chủ đề danh sách gửi thư dường như khuyên dùng nó. Một nhược điểm là nó dường như không hỗ trợ hồi quy cục bộ mượt mà hơn như hoàng thổ hoặc locfit.
Để bắt đầu, tôi chỉ muốn thử sao chép mô hình locfit, chỉ sử dụng tọa độ (x, y). Tôi đã thử với cả sản phẩm mịn và sản phẩm tenor:
my.gam.te <- gam(z ~ te(x, y), family=binomial(logit), data=my.data, scale = -1)
my.gam.s <- gam(z ~ s(x, y), family=binomial(logit), data=my.data, scale = -1)
Tuy nhiên, âm mưu dự đoán từ mô hình, chúng được làm mịn hơn nhiều so với mô hình locfit. Vì vậy, tôi đã cố gắng điều chỉnh mô hình để không vượt quá nhiều. Tôi đã thử điều chỉnh các tham số sp và k, nhưng tôi không rõ chúng ảnh hưởng đến việc làm mịn như thế nào. Trong locfit, tham số nn kiểm soát nhịp của vùng lân cận được sử dụng, với các giá trị nhỏ hơn cho phép làm mịn ít hơn và "lắc lư" hơn, giúp thu được một số khu vực trên lưới nơi xác suất của kết quả nhị thức thay đổi nhanh chóng. Làm thế nào tôi có thể thiết lập mô hình gam để cho phép nó hoạt động tương tự?