Từ Điển Anh Việt ” Root Mean Square Error Là Gì ? Mean Squared Error

1 Giới thiệu

Cách đây khoảng 1 năm, Nhi đã viết một bài tổng quan về các tiêu chí để đánh giá hiệu năng của một mô hình phân loại: https://rpubs.com/lengockhanhi/347941 ; Xét rằng phân tích hồi quy cũng là một vấn đề phổ biến trong nghiên cứu y học, hôm nay Nhi cũng sẽ thực hiện một bài viết tương tự cho mô hình Hồi quy.

Đang xem: Root mean square error là gì

Như các bạn đã biết, trong phân tích hồi quy chúng ta đi tìm một quy luật (mô hình) cho phép tiên lượng giá trị của một biến kết quả từ dữ liệu đầu vào. Khi làm việc này, chính là ta đã xác định một hàm để rút gọn không gian dữ liệu rộng lớn và tất cả những quan hệ phức tạp giữa các biến số trong không gian này thành một con đường đơn giản, hay nói cách khác, ta đang giản lược hóa thế giới thực thành những quy luật đơn giản. Như vậy mô hình hồi quy có thể được dùng để giải quyết mục tiêu tiên lượng lẫn diễn dịch (suy diễn thống kê về mối tương quan, hiệu ứng, so sánh,… ).Trong cả 2 mục tiêu, điều kiện quan trọng nhất đảm bảo giá trị cho kết quả tiên lượng và suy diễn thống kê, đó là mô hình phải chính xác. Nhưng làm thế nào ta có thể đánh giá được độ chính xác của mô hình ? Hay so sánh phẩm chất giữa nhiều mô hình với nhau ?

Trong bài này, Nhi sẽ giới thiệu với các bạn tất cả những chỉ số cho phép đánh giá phẩm chất của một mô hình hồi quy.

Trước hết, Nhi sẽ dùng một thí dụ minh họa đơn giản với dữ liệu DLCO mà Nhi từng dùng trước kia. Mục tiêu là tiên lượng giá trị của DLCO, một đại lượng sinh lý hô hấp, dựa vào 3 biến là Giới tính, Tuổi và chiều cao.

library(tidyverse)library(ggpubr)library(rsample)df = read.csv(“https://raw.githubusercontent.com/kinokoberuji/R-Tutorials/master/DLCOkeras1.csv”,sep=”;”)%>% dplyr::select(Sex,Age,Height,DLCO)head(df)## Sex Age Height DLCO## 1 F 20 173.0 29.2## 2 F 22 165.0 26.3## 3 F 22 168.6 27.9## 4 F 23 164.0 25.4## 5 F 24 170.0 29.3## 6 F 25 170.5 24.8Nhi chia dữ liệu thành 2 phần: Trainset (n=511) và Testset (n=126)

set.seed(123)idx=caret::createDataPartition(y=df$Age, p=0.8,list=FALSE)trainset=dftestset=df<-idx,>Sau đó, Nhi dựng một mô hình Polynomial đơn giản bằng hàm glm, có nội dung: DLCO ~ Sex + poly(Age, 2) + Height.

Xem thêm: Câu Thần Chú Gọi Ma Nếu Không Tin, 10 Cách Gọi Hồn Ma Lên Chơi !

fi ~ F(X)

Dĩ nhiên, chúng ta mong muốn rằng kết quả (fi) phải gần với quan sát thực tế (yi) nhất có thể, càng gần càng tốt. Do đó, một cách tự nhiên, ta nhìn vào khác biệt giữa giá trị tiên lượng và giá trị thực tế và gọi đó là sai số :

err = fi – yi

Đây chính là nền tảng của mọi tiêu chí kiểm định mô hình mà ta sẽ thấy trong phần tiếp theo:

Nếu nghiên cứu có mục tiêu diễn dịch, ta thường kiểm định mô hình trên chính dữ liệu gốc (trainset) hoặc có sử dụng một hình thức tái chọn mẫu như bootstrap, cross-validation… , nhưng cho mục tiêu tiên lượng, ta bắt buộc phải kiểm định mô hình trên một quần thể độc lập khác (testset).

2 Kiểm định trực quan bằng biểu đồ

Trước hết, ta hoàn toàn có thể kiểm tra phẩm chất của mô hình một cách trực quan bằng hình ảnh mà không cần đến các chỉ số thống kê. Cách làm này sẽ giúp bạn gây ấn tượng với khán giả/độc giả khi thuyết trình, in poster hay công bố báo chí, và thực ra, chúng chuyển nhiều thông tin hơn bất cứ một con số đơn độc nào. Do đó, Nhi sẽ nói về phần này trước:

Nhi tạo ra 1 dataframe mới từ testset, với 3 cột truth = giá trị thực, predicted = giá trị từ mô hình, và error = sai biệt giữa 2 giá trị này.

pdf = data_frame(sex=testset$Sex, age = testset$Age, height = testset$Height, truth = testset$DLCO, predicted = predict(model,testset), error= predicted – truth)head(pdf)## # A tibble: 6 x 6## sex age height truth predicted error## ## 1 F 22 165 26.3 27.8 1.53 ## 2 F 22 169. 27.9 28.6 0.732## 3 F 26 149 19.2 24.2 4.97 ## 4 F 26 159 24.8 26.4 1.60 ## 5 F 28 171. 27.1 29.0 1.92 ## 6 F 30 173 30.2 29.3 -0.901

2.1 So sánh mật độ phân bố giữa thực tế và tiên lượng:

Tất cả các mô hình hồi quy đều hoạt động dựa trên một giả định về phân bố của biến kết quả ngẫu nhiên, nếu mô hình chính xác,hình ảnh phân bố kết quả của nó sẽ đồng dạng và trùng lắp với phân bố thực tế của đại lượng mà ta muốn ước tính: Tuy nhiên, hầu hết mô hình chỉ có khả năng giảm thiểu được sai biệt giữa fi và vị trí trung tâm của y, do đó kết quả tiên lượng thường tập trung quanh trung vị hay trung bình của y, nhưng không bao giờ chồng lắp một cách hoàn hảo và tái hiện được phân bố thực.

Xem thêm: Đồng Hồ Skeleton Là Gì ? Review Top 10 Mẫu Đồng Hồ Skeleton Đẹp Nhất

Trên biểu đồ, phẩm chất của mô hình được đánh giá bằng mức độ đồng dạng giữa 2 phân bố, vị trí trung tâm, trong khi sai sót của mô hình thể hiện qua phần diện tích không chồng lắp.

pdf%>%gather(truth,predicted,key=”Y”,value=”DLCO”)%>% ggplot(aes(x=DLCO,fill=Y))+ geom_density(alpha=0.3)+ scale_fill_manual(values=c(“blue”,”red”))+ facet_wrap(~sex,ncol=1)+ theme_bw()

*

Một hình thức đơn giản hơn là biểu đồ boxplot, dạng biểu đồ này không thể hiện được tất cả hình ảnh của phân bố, nhưng nó trình bày rất tốt những mốc so sánh như: trung vị, min, max, tứ phân vị, và những giá trị outliers. Khi đặt song song 2 boxplot của thực tế và tiên lượng, ta có thể hình dung về giới hạn ứng dụng của mô hình, và khuynh hướng của nó (ước lượng quá cao, quá thấp, hay phù hợp):

pdf%>%gather(truth,predicted,key=”Y”,value=”DLCO”)%>% ggplot(aes(Y,DLCO,fill=Y,col=Y))+ geom_jitter(alpha=0.5)+ geom_boxplot(alpha=0.5)+ coord_flip()+ stat_compare_means(method=”t.test”,paired = TRUE,label.y = 45)+ scale_color_manual(values=c(“blue”,”red”))+ scale_fill_manual(values=c(“blue”,”red”))+ facet_wrap(~sex,ncol=1)+ theme_bw()