Mô hình hồi quy tuyến tính đa biến Hồi quy tuyến tính là một phương pháp thống kê được sử dụng để phân tích mối quan hệ giữamột biến phụ thuộc biến mục tiêu và một hoặc nhiều biến độc lậ
Trang 1ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH
TRƯỜNG ĐẠI HỌC BÁCH KHOA KHOA CƠ KHÍ
BÁO CÁO BÀI TẬP LỚN MÔN HỌC XÁC SUẤT THỐNG KÊ HỌC KỲ 231
1 Mai Thành Nhân 2212358 P01 Kỹ thuật Cơ Điện Tử
2 Đặng Hửu Kha 2211411 P01 Kỹ thuật Cơ Điện Tử
3 Lê Anh Tài 2212973 P01 Kỹ thuật Cơ Điện Tử
4 Phạm Nguyễn Hưng 2211381 P01 Kỹ thuật Cơ Điện Tử
5 Huỳnh Hoàng Khiêm 2211567 P02 Kỹ thuật Cơ Điện Tử
Trang 3BÀI TẬP LỚN XÁC SUẤT THỐNG KÊ 3D-PRINTER DATASET FOR MECHANICAL
ENGINEER
Nhóm 8 Ngày 4 tháng 12 năm 2023
Trang 4Mục lục
Nhóm 8
LỜI NÓI ĐẦU 3
Huỳnh Hoàng Khiêm, Lê Anh Tài
CƠ SỞ LÝ THUYẾT 5
Phạm Nguyễn Hưng, Mai Thành Nhân
XỬ LÝ SỐ LIỆU 13
Mai Thành Nhân, Đặng Hửu Kha
PHÂN TÍCH TƯƠNG QUAN VÀ HỒI QUY 21
Đặng Hửu Kha, Lê Anh Tài
THỐNG KÊ SUY DIỄN 27
Nhóm 8
NGUỒN CODE R 41
2
Trang 5LỜI NÓI ĐẦU
Xác suất thống kê là một môn học đại cương có tầm quan trọng đối với sinh viên nói chung vàsinh viên nhóm ngành Khoa học Kỹ thuật nói riêng Do đó, việc dành cho môn học này mộtkhối lượng thời gian nhất định và thực hành là điều tất yếu để giúp sinh viên có cơ sở vững chắc
về kiến thức và kỹ năng cần thiết cho các môn học chuyên ngành cũng như công việc sau này
Sự phát triển và ra đời của toán tin nói chung và phần mềm R Studio, ngôn ngữ R nói riêng đã
hô trợ rất nhiều trong quá trình học tập và nghiên cứu bộ môn Xác suất thống kê Việc phân tích
và xử lý số liệu đã được rút ngắn và có hiệu quả cao hơn Vì vậy mà việc tìm hiểu R Studio vàngôn ngữ R trong việc thực hành môn học Xác suất thống kê rất quan trọng và có tính cấp thiết
Ở bài tập lớn này, nhóm thực hiện nội dung: Ứng dụng hồi quy tuyến tính bội để xử lý và phântích dữ liệu Trong suốt quá trình thực hiện bài tập, nhóm đã nhận được rất nhiều sự quan tâm,ủng hộ và giúp đỡ tận tình của thầy cô và bạn bè
Ngoài ra, nhóm cũng xin gửi lời tri ân chân thành nhất đến thầy Nguyễn Đình Huy – giảng viêngiảng dạy bộ môn Xác suất thống kê của nhóm và là người hướng dẫn cho đề tài này Nhờ sự hếtlòng chỉ bảo mà nhóm đã hoàn thành bài tập đúng tiến độ và giải quyết tốt những vướng mắcgặp phải Sự hướng dẫn của thầy đã là kim chỉ nam cho mọi hành động của nhóm và phát huyđược tối đa mối quan hệ hỗ trợ giữa thầy và trò trong môi trường giáo dục Lời cuối, xin một lầnnữa gửi lời biết ơn sâu sắc đến thầy đã dành thời gian chỉ dẫn cho nhóm Đây chính là niềm tin,
là động lực to lớn để nhóm có thể hoàn thành đề tài này
Để đáp ứng cho nhu cầu phát triển, tính toán của xã hội hiện nay, các công nghệ tiên tiến đãđược nghiên cứu và phát triển Một trong số đó là việc xử lý các dữ liệu lớn gây khó khăn trongviệc tính toán và xác định thì giờ đây đã được giải quyết thông qua các hàm toán học và xử lý
dữ liệu thông qua ngôn ngữ lập trình Và đề tài nghiên cứu xác định mức độ ảnh hưởng của cácthông số điều chỉnh trong máy in 3D đến chất lượng in, độ chính xác và độ là ứng dụng điểnhình Nhóm chúng em được tìm hiểu và xử lý vấn đề này và sau đây là phần trình bày của nhóm8
TP HCM, tháng 11 năm 2023
Nhóm 08
3
Trang 7CƠ SỞ LÝ THUYẾT
1 Tổng quan dữ liệu
Tập tin “data.csv” chứa bộ dữ liệu của nhóm nghiên cứu khoa Cơ khí Đại học Selcuk Mục đíchcủa nghiên cứu là xác định mức độ ảnh hưởng của các thông số điều chỉnh trong máy in 3D đếnchất lượng in, độ chính xác và độ giãn của bản in Bộ dữ liệu bao gồm 50 quan sát với 9 thông
số cài đặt (input) và 3 thông số đầu ra được đo lường (output) Dữ liệu gốc được cung cấp tại:https://www.kaggle.com/afumetto/3dprinter Các biến chính trong bộ dữ liệu gồm:
1) Layer height (mm): Độ cao mỗi lớp in
2) Wall thickness (mm): Độ dày của tường
3) Infill density ( ) :Mật độ lấp đầy%
4) Infill pattern : Dạng lưới bên trong chi tiết
5) Nozzle temperature(ıC): Nhiệt độ mũi in
6) Bed temperature (ıC): Nhiệt độ bàn in
7) Print speed(mm=s): Tốc độ in
8) Material: Chất liệu (pla hoặc abs)
9) Fan speed ( ) : Tốc độ quạt%
10) Roughness (m/: Độ nhám
11) Tension strength (MPa) :Sức căng
12) Elongation ( ) : Độ co giãn%
2 Cơ sở lý thuyết
2.1 Mô hình hồi quy tuyến tính đa biến
Hồi quy tuyến tính là một phương pháp thống kê được sử dụng để phân tích mối quan hệ giữamột biến phụ thuộc (biến mục tiêu) và một hoặc nhiều biến độc lập (biến giải thích) Mục tiêucủa hồi quy tuyến tính là tìm ra một mô hình dự đoán hoặc mô tả mối quan hệ giữa các biến
Do đó, chúng ta sẽ sử dụng mô hình hồi quy tuyến tính đa biến để dự đoán các thông số trong
Trang 8 Xi: biến độc lập
ˇ0: hệ số tự do (hệ số chặn)
ˇk:hệ số hồi quy riêng
": sai số ngẫu nhiên
Dựa vào kết quả ước lượng với một mẫu cụ thể, ta có thể đánh giá được mối quan hệ giữa biếnphụ thuộc và các biến độc lập trong mô hình một cách tương đối
Cụ thể, Giả sử có một mẫu quan sát với giá trị thực tế là.Yi; X ; : : : ; X2i ki/, ta sẽ sử dụng thôngtin từ mẫu để xây dựng các ước lượng cho các hệ sốˇk Từ các giá trị ước lượng này có thể viếtthành hàm hồi quy mẫu như sau:
b
Y D bˇ0C bˇ1X1C bˇ2X2C : : : C cˇkXk
Như vậy, "Hồi quy tuyến tính" là một phương pháp để dự đoán giá trị biến phụ thuộcYdựa trêngiá trị của biến độc lập ( ) Thuật ngữ tuyến tính dùng để chỉ rằng bản chất của các thông sốXcủa tổng thể ˇ1và ˇilà tuyến tính (bậc nhất) Nó có thể được sử dụng cho các trường hợp chúng
ta muốn dự đoán một số lượng liên tục Ví dụ: dự đoán thời gian người dùng dừng lại một trangnào đó hoặc số người đã truy cập vào một website nào đó v.v Bằng dữ liệu thu thập được, ta
đi ước lượng hàm hồi quy của tổng thể, đó là ước lượng các tham số của tổng thể: ˇ1; ˇ2; :::; ˇi
Vì vậy, mục đích sử dụng mô hình hồi quy tuyến tính đa biến của đề tài là để trả lời các câu hỏisau:
Có mối quan hệ nào giữa 9 dữ liệu Input tới 3 dữ liệu Output không ?
Những mối quan hệ đó cái nào mạnh cái nào nhẹ ?
Chúng ta có thể dự đoán 3 giá trị Output tiếp theo chính xác đến mức nào ?
Mối quan hệ đó tuyến tính hay theo một mô hình khác ?
Có sự phối hợp nào giữa một nhóm các yếu tố Input đến một yếu tố Output không ?
2.2 Phương pháp bình phương nhỏ nhất (OLS)
Phương pháp bình phương nhỏ nhất được đưa ra bởi nhà Toán học Đức Carl Friedrich Gauss
- đây là một trong các phương pháp ước lượng hồi quy tuyến tính phổ biến nhất Mô hình nàyphải thỏa mãn các giả thiết sau:
Mô hình hồi quy tuyến tính
Các giá trị củaXđược cố định trong việc lấy mẫu lặp lại.Xđược cho là không ngẫunhiên
E.i/ D 0
Phương sai bằng nhau và thuần nhất
Sai số có phân phối chuẩn
Trang 9Bài tập lớn xác suất thống kê 7Xét mô hình k biến:
Y D ˇ0C ˇ X1 1Cˇ2X2C : : : CˇkXkC
Giả sử có một mẫu quan sát với giá trị thực tế là.Yi; X ; : : : ; X ki /1i với i D 1; 2; : : : ; n/ Ta
sẽ sử dụng thông tin từ mẫu để xây dựng các ước lượng cho các hệ số ˇj.j D 1; 2; : : : ; k/, kýhiệu là bˇj.j D 1; 2; : : : ; k/ Từ các giá trị ước lượng này có thể viết thành hàm hồi quy mẫunhư sau:
Trong đó: bYi: Giá trị của hàm hồi quy mẫu
Tiêu chuẩn bình phương nhỏ nhất được tổng quát hóa cho mô hình hồi quy tuyến tính tổng quátnhư sau:
Hệ phương trình mà chúng ta có được gọi là hệ phương trình chuẩn của hồi quy mẫu Chúng ta
có thể giải phương trình chuẩn này để tìm hệ số chưa biết được gọi là các
Trang 10ước lượng bình phương nhỏ nhất.
Chúng ta có thể kiểm định mô hình bằng cách vẽ đồ thị với hàmplot(), kết quả sẽ cho ra bốn
đồ thị như sau:
Đồ thị Residuals and Fitted: là đồ thị vẽ các giá trị thặng dư (sai số) tương ứng với các
giá trị dự báo Từ đường màu đỏ ta có thể kết luận rằng giả định tuyến tính và sai số có kỳvọng bằng 0 là thỏa mãn hay không
Đồ thị Normal Q-Q: là đồ thị vẽ các giá trị thặng dư được chuẩn hóa Đồ thị sẽ giúp ta
có thể kết luận rằng giả định sai số có phân phối chuẩn thỏa mãn hay không bằng cáchnhìn các giá trị phân phối theo đường thẳng
Đồ thị Scale Location: là đồ thị vẽ căn bậc hai các giá trị thặng dư được chuẩn hóa Từ
đường màu đỏ, ta sẽ nhìn thấy giả định sai số có phương sai là hằng số có thỏa mãn haykhông
Đồ thị Residuals and Leverage: là đồ thị vẽ các điểm có thể gây ảnh hưởng cao trong bộ
dữ liệu Từ các điểm phân bố theo đường nét đứt, ta có thể rút ra được những điểm nào sẽgây ảnh hưởng mạnh đến bộ dữ liệu
2.3 Độ phù hợp của mô hình
2.3.1 Hệ số xác định bội
Sau khi ước lượng được mô hình hồi quy trong một khoảng tin cậy, ta muốn biết hàm hồi quymẫu phù hợp với số liệu mẫu đến mức nào, người ta sử dụng hệ số xác định bội Kí hiệu làR2
Hệ số xác định bội cho biết các biến dự báo trong mô hình giải thích được bao nhiều phần trăm
sự thay đổi của biến đáp ứng
SST (total sum of square): Tổng bình phương độ lệch toàn phần
SSE (Explained sum of square): Tổng bình phương độ lệch phần hồi quy
SSR (Residual sum of square): Tổng bình phương phần dư
Trang 11Bài tập lớn xác suất thống kê 9
DoX
ei.bYi NY / D 0nên ta có được
S S T D S SE C SSRKhi đó hệ số xác định bội của mô hình được xác định bởi công thức sau:
Ý nghĩa của hệ số xác định bội: Với mô hình hồi quykbiến, R2có ý nghĩa như sau:
R2là mức độ phù hợp của mô hình hồi quy tuyến tính trong việc mô tả dữ liệu thực tếVới điều kiện.0 ⩽ R2⩽1/, ta có:
R2càng cao nghĩa là mô hình ước lượng càng gần với sự biến đổi của số liệu trên thực tế,tức là độ phân tán của số liệu thực tế đối với kết quả của mô hình hồi quy này càng thấp
Nếu R2= 1, nghĩa là đường hồi quy giải thích 100 % sự thay đổi của Y
Nếu R2= 0, nghĩa là mô hình không đưa ra thông tin nào về sự thay đổi của biến phụthuộc Y
Hệ số tương quan bội R: yếu tố nào có càng lớn thì ảnh hưởng càng nhiều.R
Hệ số hồi quy riêng: yếu tố nào cóˇkcao thì ảnh hưởng nhiều hơn Nó có thể bằng 0, lớn hơn
0, bé hơn 0, tương ứng Xk không tương quan, thuận chiều, ngược chiều với Y khi các biến cònlại không đổi
Tuy nhiên các yếu tố có đơn vị khác nhau nên không thể so sánh mức ảnh hưởng giữa các yếutố
2.3.2 P-value
Ngoài hệ số xác định bội rap-value là một số liệu thống kê thể hiện sự tương quan giữa các
biến độc lập (output) và các biến phụ thuộc (input).p-value thường được tính bằng phương
phápF-test hoặc t-test.
Trong hồi quy đa biến, mỗi biến độc lập ứng với một giá trịp-valuecủa nó Giá trị này quyếtđịnh sự tương quan giữa biến độc lập này với kết quả của biến phụ thuộc ở đầu ra Nếup-value
nhỏ hơn một ngưỡng nhất định (người ta thường lấy 0:05) thì hai biến này có tương quan mạnhvới nhau và ngược lại
2.4 Hệ số tương quan
Hệ số tương quan ( ) là một chỉ số thống kê đo lường mối liên hệ tương quan giữa hai biến số.r
Hệ số tương quan có giá trị từ1đến 1 Hệ số tương quan bằng 0 (hay gần 0) có nghĩa là haibiến số không có liên hệ gì với nhau; ngược lại nếu hệ số bằng -1 hay 1 có nghĩa là hai biến số
có một mối liên hệ tuyệt đối Nếu giá trị của hệ số tương quan là âm.r < 0/có nghĩa là khixtăng cao thìygiảm (và ngược lại, khixgiảm thì y tăng); nếu giá trị hệ số tương quan là dương.r > 0/có nghĩa là khi x tăng cao thì y cũng tăng, và khi x tăng cao thì y cũng giảm theo
Có nhiều phương pháp để xác định hệ số tương quan, nhưng trong đề tài này, chúng ta sẽ sửdụng Pearson và ma trận hệ số tương quan để tìm hệ số tương quan của các biến một cách nhanhnhất
Trang 12a) Hệ số tương quan Person
Cho 2 biến x và y từ n mẫu, hệ số tuơng quan được tính bằng công thức sau:
– Nếu r càng tiến về.1; 1/: tương quan tuyến tính càng mạnh, càng chặt chẽ Tiến
về 1 là tương quan dương, tiến về -1 là tương quan âm
– Nếu r càng tiến về 0: tương quan tuyến tính càng yếu.
– Nếu r D 1: tương quan tuyến tính tuyệt đối, khi biểu diễn trên đồ thị phân tán Scatter
như hình vẽ ở trên, các điểm biểu diễn sẽ nhập lại thành 1 đường thẳng
– Nếu r = 0: không có mối tương quan tuyến tính Lúc này sẽ có 2 tình huống xảy ra.
Một, không có một mối liên hệ nào giữa 2 biến Hai, giữa chúng có mối liên hệ phituyến
b) Ma trận hệ số tương quan (Correlation matrix)
Ma trận hệ số tương quan là một ma trận vuông được sử dụng trong thống kê để đo lườngmối quan hệ giữa các biến đại lượng Ma trận này sẽ cung cấp thông tin về mức độ tươngquan và hướng của sự tương quan giữa các cặp biến Các phần tử trong ma trận hệ sốtương quan thường nằm trong khoảng từ -1 đến 1 Các giá trị tương quan trong ma trậnđược tính dựa trên công thức hệ số tương quan Person
Ví dụ: chúng ta có ma trận của ba biến X Y Z sau:
A D
0B
A:
Ma trận này cho thấy rằng biến X có tương quan dương mạnh với biến Y (hệ số 0.5),tương quan âm yếu với biến Z (hệ số -0.3), và tương quan hoàn toàn với chính nó (hệ số1) Biến Y có tương quan dương yếu với biến Z (hệ số 0.2), và biến Z có tương quan âmyếu với biến X (hệ số -0.3)
3 Ngoại lai (outliers)
Giá trị ngoại lai là những giá trị dữ liệu được ghi nhận có sự khác biệt với những giá trị dữ liệukhác, không tuân theo một quy tắc chung nào và có thể gây ra sai lệch trong kết quả phân tích
và việc xây dựng mô hình dự đoán Giá trị ngoại lai nhằm loại bỏ dữ liệu ngoại lai sẽ giúp kếtquả phân tích và dự đoán mô hình chính sát và sát với thực tế hơn
Phương pháp Turkey:
IQR D Q3Q1
Phương pháp này tạo ra một ranh giới “hàng rào” cách khoảng 1,5 IQR ngoài Q1và Q3 Bất
kỳ dữ liệu nào nằm ngoài các hàng rào này đều được coi là dữ liệu ngoại lệ
Trang 13Bài tập lớn xác suất thống kê 11
4.1 Các bước kiểm định mô hình
Cho một mẫu gồm biến ngẫu nhiên, mỗi biến ngẫu nhiên có cùng cỡ , ta kiểm định ANOVAn mcho giả thiết tất cả các kỳ vọng của các biến ngẫu nhiên đều bằng nhau:
H0W1D2D : : : Dn
Ta lập bảng ANOVA như sau:
Tác nhân Bậc tự do Tổng bình phương Trung bình bình phương F
Sai số (trong từng biến ngẫu nhiên) I.J 1/ S SE M SE
Miền bác bỏH0(chấp nhậnH1):
F ⩽ F˛;I 1;I.J 1/
Để xây dựng thuật toán phân tích phương sai, ta định nghĩa các tổng bình phương sau:
Trung bình của tất cảIJbiến quan sát (trung bình toàn thể):
Trang 14Các trung bình bình phương:
+ Trung bình bình phương nghiệm thức:
M ST r DSS T r
I 1+ Trung bình bình phương sai số:
M SE D SSEI.JC1/
Trung bình bình phương nghiệm thức MSTr mô tả độ phân tán giữa các biến ngẫu nhiên vàtrung bình bình phương sai số mô tả độ phân tán trong nội bộ các quan sát của từng biến ngẫunhiên Nếu độ phân tán giữa các biến lơn hơn hẳn so với độ phân tán trong nội bộ thì coi như cácnhóm rời nhau Do đó, các nhóm nhiều khả năng có kỳ vọng khác nhau nếu tỷ lệ F DM S T r
M SEquá lớn Ta xem xét phân phối của F:
thì F FI 1;I.J 1/ (phân phối Fisher với hai bậc tự
do I 1 và
Trang 15Vẽ bảng phân phối ba biến output: Roughness, Tension strength và Elongation
#Vẽ bảng phân phối của ba biến output
pairs(~roughness + elongation + tension_strenght, data)
13
Trang 16Nhận xét: Theo đồ thị phân phối, ta thấy hai biến Tension_strenght và Elongation có quan hệ
tuyến tính với nhau
1.2 Làm sạch dữ liệu
Tạo data têndata_2để lọc các dữ liệu output
# Lọc dữ liệu
data_2 <- data.frame(
data[1], data[ ], data[ ],2 3
data[4], data[ ], data[ ],5 6
data[7], data[ ], data[ ]8 9
)
print(data_2)
Trang 17Bài tập lớn xác suất thống kê 15
Kiểm tra dữ liệu khuyết của dữ liệu vừa tạo
# Kiểm tra dữ liệu bị khuyết
print apply is.na( ( (data_2), 2, which))
## integer(0)
Nhận xét: Kết quả cho thấy dữ liệu không có ô nào trong bảng không có dữ liệu
1.3 Kiểm tra dữ liệu ngoại lai (outlier)
Kiểm tra các dữ liệu ngoại lai bằng cách tạo data tên outlier_finding_data, sau đó tìm các giá trị
Q1; Q ; IQR3 và sau đó in ra kết quả có bao nhiêu biến ngoại lai
# -# Tìm outliers sử dụng phương pháp Turkey
numeric_columns<- sapply(outlier_finding_data, is.numeric)
numeric_data<- outlier_finding_data[, numeric_columns]
outliers<- sapply(numeric_data, function(x) f
q1 quantile(x, 0.25)
Trang 19Bài tập lớn xác suất thống kê 17
2 Thống kê mô tả
Thực hiện thống kê mô tả cho các biến trong bộ dữ liệu
print summary( (data))
## layer_height wall_thickness infill_density infill_pattern
## Min :0.020 Min : 1.00 Min :10.0 Length:50
Trang 20## 1st Qu.:0.060 1st Qu.: 3.00 1st Qu.:40.0 Class :character
## Median :0.100 Median : 5.00 Median :50.0 Mode :character
## Mean :0.106 Mean : 5.22 Mean :53.4
## 3rd Qu.:0.150 3rd Qu.: 7.00 3rd Qu.:80.0
## Max :0.200 Max :10.00 Max :90.0
## nozzle_temperature bed_temperature print_speed material
## Min :200.0 Min :60 Min : 40 Length:50
## 1st Qu.:210.0 1st Qu.:65 1st Qu.: 40 Class :character
## Median :220.0 Median :70 Median : 60 Mode :character
## Mean :221.5 Mean :70 Mean : 64
## 3rd Qu.:230.0 3rd Qu.:75 3rd Qu.: 60
## Max :250.0 Max :80 Max :120
## fan_speed roughness tension_strenght elongation
## Min : 0 Min : 21.0 Min : 4.00 Min :0.400
## 1st Qu.: 25 1st Qu.: 92.0 1st Qu.:12.00 1st Qu.:1.100
## Median : 50 Median :165.5 Median :19.00 Median :1.550
## Mean : 50 Mean :170.6 Mean :20.08 Mean :1.672
## 3rd Qu.: 75 3rd Qu.:239.2 3rd Qu.:27.00 3rd Qu.:2.175
## Max :100 Max :368.0 Max :37.00 Max :3.300
Nhận xét: Dựa vào kết quả trên, ta thấy có hai biến phân loại là infill_pattern và material, cònlại đều là các biến liên tục
Sau khi tìm được hai biến liên tục, ta tiến hành lập bảng cho 2 biếninfill_pattern và material
print table( (data$infill_pattern))
print table( (data$material))
3 Chuyển đổi dữ liệu
3.1 Chuyển đổi biến
Nhìn vào bảng số liệu, ta nhận thấy 2 biếnmaterial và infill_pattern là 2 biến phân loại có các
số liệu ở dạng chữ, gây sự khó khăn trong việc tính toán Vì thế, chúng ta sẽ chuyển đổi các biếngrid, honeycomb, abs và pla lần lượt thành 0, 1, 0, 1
# Chuyển đổi biến
# grid -> 0, honeycomb -> 1, abs -> 0, pla -> 1
converted_data <- replace(
outlier_data_2,
c "grid", "honeycomb", "abs", "pla"),
c 0 1 0 1)
Trang 21Bài tập lớn xác suất thống kê 19
)
print(converted_data)
3.2 Chuyển đổi dữ liệu và giá trị
Sau khi chuyển đổi các biến dạng chữ sáng dạng số, ta sẽ thấy đổi định dạng của các biến từ
Character sang dạng Numeric để dễ dàng tính toán hơn.
column <- function(datainput) f
Trang 22Đối với các biến liên tục, chúng ta cần tính các giá trị thống kê mô tả: trung bình (mean), trung
vị (median), độ lệch chuẩn (sd), giá trị nhỏ nhất (min), giá trị lớn nhất (max) Sau đó, chúng ta
sẽ xuất kết quả dưới dạng bảng (table)
mean <- apply(converted_data, 2, mean)
median <- apply(converted_data, 2, median)
min <- apply(converted_data, 2, min)
max <- apply(converted_data, 2, max)
sd apply(converted_data, 2, sd)
Trang 23PHÂN TÍCH TƯƠNG QUAN VÀ HỒI QUY
1 Phân tích hệ số tương quan
Để xác định được các biến trong đề tài có quan hệ với nhau hay không, chúng ta sẽ vẽ biểu đồ
Heatmap để xét hệ số tương quan giữa các biến
Để vẽ biểu đồ Heatmap, chúng ta sẽ làm các bước như sau:
Đầu tiên chúng ta sẽ tạo một data mới tênheamap_data, sau đó chọn dải màu cho biểu
đồ
Bước tiếp theo, sử dụng hàmcorđể tính hệ số tương quan sau đó đưa vào ma trận để tạo
ma trận tương quan đồng thời làm tròn số thập phân sau dấu phẩy
Bước cuối cùng, hoàn tất biểu đồ
# Tạo dataframe cho heatmap
# Tạo ma trận tương quan và làm tròn các hệ số đến hai số sau dấu phẩy
matr <- round cor( (heatmap_data), )
# Reshape ma trận về dạng thích hợp để đưa vào heatmap
new_matr <- melt(matr)
# Tạo cửa sổ graphic mới
Trang 24color = "white", size = 4
Sau khi vẽ xong biểu đồ, chúng ta rút ra được các vấn đề sau:
Đối vớiRoughness, biểu đồ cho thấy hệ số tương quan giữa nó và biếnLayer_height có
quan hệ tuyến tính mạnh,Roughness không có quan hệ tuyến tính mạnh với những biến
còn lại
Đối vớiTension_strenght, biểu đồ cho thấy hệ số tương quan giữa nó và các biến còn lại
không có quan hệ tuyến tính mạnh
Đối vớiElongation, biểu đồ cho thấy hệ số tương quan giữa nó và các biến còn lại không
có quan hệ tuyến tính mạnh
Hệ số tương quan giữa 2 biếnFan_speed và Bed_temperature có giá trị bằng 1, khi đó
hiện tượng đa cộng tuyến sẽ xảy ra, tức là sự phụ thuộc tuyến tính giữa 2 biến độc lập
Để tránh hiện tượng đa cộng tuyến xảy ra, ở đề tài này chúng ta sẽ bỏ biếnFan_speed để
tăng hiệu quả cho mô hình
2 Vẽ đồ thị
2.1 Vẽ đồ thị Histogram cho các biến output
Sau khi quan sát Heatmap, chúng ta rút ra được các cặp giá trị như sau:
Trang 25Bài tập lớn xác suất thống kê 23
Hệ số tương quan củaLayer_height với Roughness là 0:88
Hệ số tương quan của cặpWall_thickness và Tension_strength là 0:32
Hệ số tương quan của cặpInfill_density và Tension_strength là 0:32
Hệ số tương quan của cặpMaterial và Elongation là 0:34
Từ đó, chúng ta sẽ vẽ đồ thị Histogram với hàm (hist) cho 4 giá trị input làLayer_height, Wall_thickness, Infill_density, Material.
Tạo cửa sổ graphic mới
dev.new()
# Vẽ histogram của layer height
hist(converted_data[, "layer_height"],
xlab = "layer_height",
main = "Histogram của layer height"
)
-
# -# Tạo cửa sổ graphic mới
dev.new()
# Vẽ histogram của wall thickness
hist(converted_data[, "wall_thickness"],
xlab = "wall_thickness",
main = "Histogram của wall thickness"
)
-
# -# Tạo cửa sổ graphic mới
dev.new()
# Vẽ histogram của infill density
hist(converted_data[, "infill_density"],
xlab = "infill_density",
main = "Histogram của infill density"
)
-
# -# Tạo cửa sổ graphic mới
dev.new()
# Vẽ histogram của material
Trang 26hist(converted_data[, "material"],
xlab = "material",
main = "Histogram của material"
2.2 Vẽ biểu đồ thể hiện sự phân phối
Sau khi nhìn vào kết quả của biểu đồ Heatmap, chúng ta sẽ vẽ biểu đồ để thể hiện sự phân phốicủa 3 biến output với các biến output khác
a) Biểu đồ củaRoughess với các biến còn lại.
pairs(~ layer_height + roughness, outlier_data)
pairs(~ wall_thickness + roughness,outlier_data)
pairs(~ infill_density + roughness, outlier_data)
pairs(~ nozzle_temperature + roughness, outlier_data)pairs(~ bed_temperature + roughness, outlier_data)
pairs(~ print_speed + roughness, outlier_data)