Hệ hỗ trợ quyết định
TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI
VIỆN TOÁN ỨNG DỤNG VÀ TIN HỌC
PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG
HỆ HỖ TRỢ DỰ ĐOÁN CHI PHÍ BẢO HIỂM Y TẾ
Giảng viên hướng dẫn: TS. LÊ CHÍ NGỌC
HÀ NỘI – 2020
Hệ hỗ trợ quyết định
MỤC LỤC
MỤC LỤC
I.
CHƯƠNG I: KHẢO SÁT HỆ THỐNG............................................................................................3
1.
Khảo sát hiện trạng........................................................................................................................3
a.
Phí bảo hiểm...............................................................................................................................3
b.
Đặt vấn đề..................................................................................................................................3
2.
Mô hình KNN................................................................................................................................4
a.
Tổng quan về KNN ( K-nearest Neighbors).............................................................................4
b.
KNN cho hồi quy.......................................................................................................................5
3.
4.
II.
Thiết kế mô hình dự đoán..............................................................................................................6
a.
Dữ liệu........................................................................................................................................6
b.
Mô hình......................................................................................................................................6
c.
Kiểm định mô hình....................................................................................................................6
Quy trình giải quyết bài toán.........................................................................................................7
CHƯƠNG II: PHÂN TÍCH THIẾT KẾ HỆ THỐNG......................................................................7
1.
Mô hình hóa nghiệp vụ..................................................................................................................7
2.
Kiến trúc hệ thống..........................................................................................................................7
3.
Biểu đồ phân cấp chức năng..........................................................................................................7
4.
Biểu đồ luồng dữ liệu.....................................................................................................................8
CHƯƠNG III: THIẾT KẾ GIAO DIỆN HỆ THỐNG............................................................................10
1. Ngôn ngữ viết chương trình.............................................................................................................10
2. Giao diện Website............................................................................................................................11
Hệ hỗ trợ quyết định
I.
CHƯƠNG I: KHẢO SÁT HỆ THỐNG
1. Khảo sát hiện trạng
a. Phí bảo hiểm
Nói một cách đơn giản nhất, phí bảo hiểm được định nghĩa là số
tiền mà công ty bảo hiểm sẽ tính cho bạn theo chính sách bảo hiểm
mà bạn đang mua. Phí bảo hiểm là chi phí bảo hiểm của bạn.
Phí bảo hiểm đôi khi được trả theo từng năm, nửa năm hoặc, như
hầu hết các công ty ngày nay cho phép, trả phí bảo hiểm theo
tháng.
Phí bảo hiểm có thể bao gồm khoản thanh toán bảo hiểm, thuế và
phí dịch vụ tùy theo luật bảo hiểm và nhà cung cấp hợp đồng bảo
hiểm.
Phí bảo hiểm sẽ đắt hơn hoặc rẻ hơn và chi phí có thể thay đổi tùy
thuộc vào loại bảo hiểm bạn đang tìm kiếm, cũng như mức độ rủi
ro.
Khi một người tham gia một dịch vụ bảo hiểm và nộp phí bảo hiểm
cho công ty thì công ty đó sẽ có trách nhiệm chi trả các chi phí
khám chữa bệnh cho người đó theo các điều khoản trong hợp đồng
bảo hiểm
b. Đặt vấn đề
Các công ty bảo hiểm sức khỏe có một nhiệm vụ khó khăn là xác
định phí bảo hiểm cho khách hàng của họ. Trong khi luật về chăm
sóc sức khỏe tại USA có một số quy tắc cho các công ty tuân theo
để xác định phí bảo hiểm, nhưng thực tế thì phí bảo hiểm thực sự
phụ thuộc vào các yếu tố mà công ty đánh giá là quan trọng ví dụ
tuổi tác, chỉ số BMI, khách hàng có hút thuốc không, số con của
họ,.... (ví dụ nếu bạn hút thuốc thì chi phí bảo hiểm sẽ cao hơn
người cùng độ tuổi mà không hút thuốc).
Thị trường bảo hiểm thời gian gần đây rất sôi động, đặc biệt là khi
ngày càng có nhiều dịch bệnh xảy ra, con người quan tâm tới sức
khỏe của mình nhiều hơn. Với số lượng khách hàng ngày càng lớn
thì các công ty bảo hiểm cần có một hệ hỗ trợ dự đoán chi phí
khám chữa bệnh của khách hàng dựa trên các số liệu cá nhân của
họ về tuổi tác, chỉ số BMI, tình trạng hút thuốc, số con …. từ đó có
Hệ hỗ trợ quyết định
thể nhanh chóng đưa ra quyết định về chi phí bảo hiểm y tế mà
khách hàng cần chi trả.
Hệ thống này chỉ hỗ trợ nhà quản lý đưa ra quyết định vì trên thực
tế chi phí bảo hiểm còn phụ thuộc vào phí dịch vụ, thuế theo quy
định của luật bảo hiểm và chính sách của công ty bảo hiểm.
2. Mô hình KNN
a. Tổng quan về KNN ( K-nearest Neighbors)
KNN (K-Nearest Neighbors) là một trong những thuật toán học
có giám sát đơn giản nhất được sử dụng nhiều trong khai phá dữ
liệu và học máy. Ý tưởng của thuật toán này là nó không học
một điều gì từ tập dữ liệu học (nên KNN được xếp vào loại lazy
learning), mọi tính toán được thực hiện khi nó cần dự đoán nhãn
của dữ liệu mới.
Lớp (nhãn) của một đối tượng dữ liệu mới có thể dự đoán từ
các lớp (nhãn) của k hàng xóm gần nó nhất.
Thuật toán gợi ý rằng nếu bạn giống với hàng xóm của mình,
thì bạn là một trong số họ. Ví dụ, nếu táo trông giống với đào, lê
và anh đào (trái cây) hơn khỉ, mèo hoặc chuột (động vật), thì rất
có thể táo là một loại trái cây
KNN sử dụng một cách tiếp cận rất đơn giản để thực hiện
phân loại. Khi xét một dữ liệu mới, nó xem toàn bộ dữ liệu
huấn luyện và tìm ra k dữ liệu huấn luyện gần nhất với dữ liệu
mới. Sau đó, nó gán nhãn lớp phổ biến nhất (trong số các dữ
liệu huấn luyện) cho dữ liệu đó.
Để tính khoảng cách giữa 2 điểm dữ liệu bất kỳ, có thể sử
dụng 1 trong 3 khoảng cách sau
Hệ hỗ trợ quyết định
b. KNN cho hồi quy
Trong hồi quy, thuật toán KNN được sử dụng để ước tính các
biến liên tục. Thuật toán này hoạt động như sau
B1: Tính khoảng cách từ dữ liệu cần dự đoán đến các dữ liệu đã
được gắn nhãn
B2: Sắp xếp dữ liệu theo khoảng cách
B3: Tìm giá trị tối ưu của K – số hàng xóm gần nhất dựa vào
RMSE (chọn K ứng với giá trị RMSE nhỏ nhất)
B4: Tính giá trị biến đầu ra bằng trung bình giá trị của K-hàng
xóm gần nó nhất
c. Ưu, nhược điểm của KNN
*Ưu điểm của KNN
Độ phức tạp tính toán của quá trình training là bằng 0.
Việc dự đoán kết quả của dữ liệu mới rất đơn giản.
Không cần giả sử gì về phân phối của các class.
*Nhược điểm của KNN
KNN rất nhạy cảm với nhiễu khi K nhỏ.
KNN là một thuật toán mà mọi tính toán đều nằm ở khâu test.
Trong đó việc tính khoảng cách tới từng điểm dữ liệu trong
training set sẽ tốn rất nhiều thời gian, đặc biệt là với các cơ sở
dữ liệu có số chiều lớn và có nhiều điểm dữ liệu. Với K càng
Hệ hỗ trợ quyết định
lớn thì độ phức tạp cũng sẽ tăng lên. Ngoài ra, việc lưu toàn bộ
dữ liệu trong bộ nhớ cũng ảnh hưởng tới hiệu năng của KNN
3. Thiết kế mô hình dự đoán
a. Dữ liệu
Bộ dữ liệu gồm
+1337 bản ghi
+7 trường
age (tuổi), sex (giới tính), bmi (chỉ số bmi-chỉ số khối cơ thể),
children (số con), smoker (có hút thuốc không), region (vùng
miền), expenses (chi phí khám chữa bệnh)
b. Mô hình
Chia tập dữ liệu thành tập train và test với tỉ lệ train: test = 8:2
Áp dụng thuật toán KNN cho hồi quy với số hàng xóm K=15
c. Kiểm định mô hình
+ Hệ số
ESS: tổng các độ lệch bình phương phần dư
TSS: tổng các độ lệch bình phương toàn bộ
+ Hệ số
n=số lượng mẫu quan sát
k = số tham số của mô hình, bằng số lượng biến độc lập cộng 1
hiệu chỉnh = 0.974 tức là 97% sự biến thiên của biến phụ thuộc
được giải thích bởi các biến độc lập
+ Sai số tuyệt đối
+ Sai số tương đối
RMSE%=10.46%
Với là kết quả dự đoán
là dữ liệu thực tế
là trung bình của dữ liệu thực tế
4. Quy trình giải quyết bài toán
Thu thập dữ liệu
Xử lý dữ liệu
Input: Dữ liệu của khách hàng
Mô hình
Kết quả dự đoán
Hệ hỗ trợ quyết định
Output: Kết quả dự đoán chi phí y tế
II.
CHƯƠNG II: PHÂN TÍCH THIẾT KẾ HỆ THỐNG
1. Mô hình hóa nghiệp vụ
Người dùng
Chương trình
Yêu cầu
Xử lý
Kết quả
2. Kiến trúc hệ thống
3. Biểu đồ phân cấp chức năng
Hệ hỗ trợ dự đoán
chi phí bảo hiểm
Thống kê
Dự đoán
Hệ hỗ trợ quyết định
Thống kê dữ
liệu các khác
hàng cũ
Dự đoán chi
phí y tế
Các biểu đồ
4. Biểu đồ luồng dữ liệu
a. Biểu đồ mức ngữ cảnh
Yêu cầu dự đoán
Nhà quản lý
Kết quả
Hệ hỗ trợ
Yêu cầu thống kê
b. Biểu đồ mức đỉnh
Yêu cầu
Dự đoán
Nhà quản lý
Kết
quả
Trả lời
Model
Dữ liệu
Yêu cầu
Dữ liệu
Kết quả
Trả lời
Thống kê
Hệ hỗ trợ quyết định
c. Biểu đồ mức dưới đỉnh
* Mức dưới đỉnh chức năng thống kê
Yêu cầu thống kê dữ liệu
Nhà quản lý
Thống kê dữ liệu
Dữ liệu trả về từ model
Hiển thị các biểu đồ
* Mức dưới đỉnh chức năng dự đoán
Dữ liệu cần dự đoán
Nhà quản lý
Kết quả dự đoán
Dự đoán
Dữ liệu trả về từ model
Hệ hỗ trợ quyết định
CHƯƠNG III: THIẾT KẾ GIAO DIỆN HỆ THỐNG
1. Ngôn ngữ viết chương trình
a. HTML
HTML là từ viết tắt của HyperText Markup Language (ngôn ngữ đánh dấu siêu
văn bản) dùng mô tả cấu trúc của các trang Web và tạo ra các loại tài liệu có thể
xem được trong trình duyệt.
HTML được tạo ra và phát triển bởi tổ chức W3C (World Wide Web
Consortium). Hiện nay phiên bản mới nhất của HTML là HTML5 với nhiều tính
năng ưu việt so với các phiên bản cũ.
b. CSS
CSS (viết tắt của Cascading Style Sheets) là một ngôn ngữ định dạng được sử
dụng để mô tả trình bày các trang Web, bao gồm màu sắc, cách bố trí và phông
chữ. CSS cho phép chúng hiển thị nội dung tương thích trên các loại thiết bị có
kích thước màn hình khác nhau, chẳng hạn như màn hình lớn, màn hình nhỏ
như điện thoại hay máy tính bản. CSS là độc lập với HTML và có thể được sử
dụng với bất kỳ ngôn ngữ đánh dấu nào xây dựng dựa trên XML. CSS tuân theo
chuẩn chung do W3C quy định.
c. Python(Flask)
Sử dụng thư viện flask của python
Python là ngôn ngữ đơn giản và dễ sử dụng là một trong những ngôn ngữ thông
dụng nhất hiện nay. Python có thể được kết nối với các đối tượng của môi
trường để cung cấp kiểm soát chương trình đối tượng với chúng
Python cho phép tính toán và sử dụng model một cách đơn giản và dễ dàng, tính
toán đơn giản, và thực hiện một số giao tác đơn giản trên trang web
Python được hỗ trợ hầu như trên tất cả các trình duyệt như Firefox, Chorme, …
thậm chí các trình duyệt trên thiết bị di dộng cũng có hỗ trợ
Hiện nay python là một trong những ngôn ngữ thông dụng nhất thế giới
Hệ hỗ trợ quyết định
2. Giao diện Website
a. Home
b. Dự đoán
Hệ hỗ trợ quyết định
c.Trang thống kê, biểu đồ
Hệ hỗ trợ quyết định
Hệ hỗ trợ quyết định
KẾT LUẬN
Như vậy, trong môn Hệ hỗ trợ quyết định, dưới sự hướng dẫn của TS. Lê
Chí Ngọc, em đã học được cách phân tích dữ liệu, lựa chọn mô hình phù
hợp và đưa ra kết quả dự báo với độ chính xác tương đối tốt.
Hệ hỗ trợ dự đoán chi phí bảo hiểm y tế được xây dựng có thể đưa ra
những gợi ý cho nhà quản lý một cách nhanh chóng và đáng tin cậy.