Có vẻ như tôi có thể tìm hiểu các thông số tốt và tìm thấy xác suất sau cho dữ liệu huấn luyện nhưng tôi không biết làm thế nào để đưa ra dự đoán mới về dữ liệu mới. Vấn đề đặc biệt xuất phát từ xác suất chuyển đổi thay đổi trên các đồng biến, do đó việc viết mã để dự đoán dữ liệu mới không phải là chuyện nhỏ.
Cách tiếp cận tiêu chuẩn là xác định hỗn hợp (phụ thuộc) và phù hợp với mô hình:
mod <- depmix(EventTime ~ 1, data = data[1:40320,], nstates = 2, family
=multinomial("identity"), transition = ~ Count, instart = runif(2))
fm <- fit(mod, emcontrol=em.control(classification="soft", maxit = 60))
Những gì chúng ta có ở trên sẽ hoạt động tương tự như HMM nhị phân vì nó đang cố gắng phân loại xem một sự kiện có xảy ra dưới dạng biến phụ thuộc 1/0 di chuyển qua chuỗi hay không. Biến số chuyển tiếp là biến số đếm tần số sẽ ảnh hưởng trực tiếp đến xác suất chuyển tiếp của các trạng thái sau đó sẽ kiểm soát xác suất phát xạ của biến phụ thuộc 1/0.
Có thể lấy các tham số của mô hình và đặt các tham số sang mô hình mới khác. Tuy nhiên, không có phương pháp dự đoán rõ ràng, mặc dù nên có một nơi nào đó trong ruột của thư viện.
modNew <- depmix(EventTime~1,data=data2,transition=~Count,nstates=2,
family=multinomial("identity"))
modNew <- setpars(modNew,getpars(fm))
Lưu ý, trong tài liệu này có thể chạy thuật toán viterbi để tạo trạng thái cho dữ liệu mới. Tuy nhiên, điều này không đặc biệt hữu ích với tôi và nó dường như hoàn toàn phù hợp với dữ liệu cho thấy nó vẫn học để phù hợp với dữ liệu mới.
probs2 <- viterbi(modNew)
Lưu ý, tôi là người mới trong chủ đề này. Giai đoạn thực hiện này là khó khăn đối với tôi, nhưng dường như nó là một phần cơ bản của phân tích.