Giải thích đầu ra mạng thần kinh trong R?


8

Tôi quản lý để tạo mạng lưới thần kinh của dữ liệu của tôi. Nhưng tôi không chắc chắn về việc giải thích đầu ra R. Tôi đã sử dụng lệnh sau để tạo mạng thần kinh:

> net=nnet(formula = category~iplen+date_time, size=0,skip=T,lineout=T)
# weights:  3
initial  value 136242.000000 
final  value 136242.000000 
converged

Sau đó, tôi đã sử dụng lệnh sau để xem đầu ra:

    > summary(net)
a 2-0-1 network with 3 weights
options were - skip-layer connections 
 b->o i1->o i2->o 
 0.64 -0.46  0.15

Vì vậy, từ đầu ra trên, tôi có thể kết luận sơ đồ nào về mạng thần kinh không?: mạng lưới

Câu hỏi thứ hai là làm thế nào tôi có thể biết sơ đồ này hữu ích như thế nào? Ý tôi là tôi muốn tìm số danh mục (biến mục tiêu) từ các biến độc lập. Vậy bây giờ làm thế nào tôi có thể quyết định xem mạng này có thực sự giúp tôi dự đoán danh mục (biến mục tiêu) không? Đầu ra cuối cùng là gì hoặc làm thế nào để tìm thấy điều đó?

Tôi có thể kết luận đầu ra sau từ mạng n ở trên không? :

category= -0.46(iplen)+0.15(date_time)+0.64

Trân trọng,

Câu trả lời:


6

Giải thích của bạn có vẻ đúng. Bạn có thể tự kiểm tra bằng cách gọi predictmột số dữ liệu và so sánh các tính toán của bạn với predict. Lần đầu tiên tôi đã làm điều này trong một bảng tính, và sau đó tôi đã tính toán một mạng nơ ron R bằng cách sử dụng siêu lập trình .

Nhân tiện, gói R neuralnetvẽ sơ đồ đẹp, nhưng rõ ràng nó chỉ hỗ trợ hồi quy (không phân loại?).


Andrew, Cảm ơn đã trả lời. Một điều nữa tôi muốn thảo luận là khi tôi có một phương trình: category = -0.46 (iplen) +0.15 (date_time) +0.64 từ đầu ra nnet. bây giờ tôi có thể so sánh điều này với phương trình hồi quy mà tôi có thể tạo sau khi thực hiện hồi quy tuyến tính như sau: lm (category ~ iplen + date_time) và sau đó phương trình hồi quy tuyến tính sẽ giống như: category = ß1 (iplen) + ß2 (date_time) + ß0

Nó không hoàn toàn rõ ràng, nhưng phân loại có thể đạt được bằng cách đặt `linear.output = FALSE` trong neuralnetgói. ref
Ông Tsjolder

Ý nghĩa của các dòng "iter 130 value 119841.088094" và "giá trị cuối cùng 136242.000000" là gì? Những con số đó là gì?
skan

1
@skan: Đó là tối ưu hóa độ dốc gốc
Andrew

5

bạn cũng có thể sử dụng mã sau đây để vẽ kết quả nnet

install.packages("devtools")
library(devtools)
source_url('https://gist.githubusercontent.com/fawda123/7471137/raw/466c1474d0a505ff044412703516c34f1a4684a5/nnet_plot_update.r')

#plot each model
plot.nnet(net)

tài liệu tham khảo: https://beckmw.wordpress.com/tag/nnet/


Hừm, thật thú vị, nhưng không có âm mưu gì tốt trong trường hợp của tôi (dường như không muốn đưa thông tin trọng lượng). Tuy nhiên, nâng cao kể từ khi có nhiều công cụ tốt hơn là có ít hơn!
Ken
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.