You are on page 1of 28

TRƯỜNG ĐẠI HỌC THỦ DẦU MỘT

VIỆN KỸ THUẬT - CÔNG NGHỆ


***********

TIỂU LUẬN MÔN HỌC


TRÍ TUỆ NHÂN TẠO

Sinh viên thực hiện:

Phạm Phương Tây : 1924801030117

Nguyễn Huỳnh Minh Quân

Đâng Hoàng Minh : 1924801030102

Lớp : D19PM01

Khoá : 2019-2024

Ngành : Kỹ thuật phần mềm

Giảng viên hướng dẫn : ThS.Nguyễn Hải Vĩnh Cường


Bình Dương, tháng 10/2022
TRƯỜNG ĐẠI HỌC THỦ DẦU MỘT
VIỆN KỸ THUẬT CÔNG NGHỆ
***********

TIỂU LUẬN MÔN HỌC


TRÍ TUỆ NHÂN TẠO

Sinh viên thực hiện:

Phạm Phương Tây : 1924801030022

Nguyễn Huỳnh Minh Quân

Đâng Hoàng Minh : 1924801030102

Lớp : D19PM01

Khoá : 2019-2024

Ngành : Kỹ thuật phần mềm

Giảng viên hướng dẫn : ThS.Nguyễn Hải Vĩnh Cường


Bình Dương, tháng 10/2022

i
TÓM TẮT

Trong bối cảnh công nghệ số, dữ liệu lớn, đòi hỏi con người phải xử lý rất
nhiều thông tin cùng một lúc. Bài toán đặt ra là các công ty cần phân loại, đánh giá các
phản hồi khách hàng qua các đoạn tin nhắn thoại, nhận diện cảm xúc qua giọng nói
cho các chatbot để có hướng xử lý tiếp theo, nhận diện cảm xúc qua giọng nói cho các
robot con người, nhằm xử lý các hướng phản hồi tiếp. Bài báo đưa ra phương án tạo ra
model để xác định, phân loại dữ liệu này.
Dựa trên nền tảng máy học song song là ngôn ngữ Python cùng với công cụ lưu
trữ cơ sở dữ liệu Excel thuộc Microsoft và công cụ Visual Studio Code là một trình
soạn thảo mã nguồn được phát triển bởi Microsoft dành cho Windows, Linux và
macOS. Nó hỗ trợ chức năng debug, đi kèm với Git, có chức năng nổi bật cú pháp, tự
hoàn thành mã thông minh, snippets, và cải tiến mã nguồn . Để có thể xây dựng mô
hình dự đoán mức lương của các ứng cử viên công nghệ thông tin.

Cấu trúc bài báo cáo được chia thành 4 phần:


Chương 1: Tổng quan
Chương 2: Thu thập và xử lý dữ liệu
Chương 3: Thiết kế mô hình
Chương 4: Đánh giá thực nghiệm

ii
SUMMARY

In the context of digital technology, big data requires people to process a lot of
information at the same time. The problem is that companies need to classify and
evaluate customer responses through voice messages, identify emotions via voice for
chatbots to have the next processing direction, identify emotions through voice. speak
to human robots, in order to process further feedback directions. The article gives a
plan to create a model to identify and classify this data.
Based on the parallel machine learning platform Python language along with
Microsoft's Excel database storage engine and Visual Studio Code engine is a source
code editor developed by Microsoft for Windows, Linux and macOS. . It supports
debugging, comes with Git, has syntax highlighting, smart code autocomplete,
snippets, and code enhancements. To be able to build a model to predict the salary of
information technology candidates.

The structure of the report is divided into four parts:


Chapter 1: Overview
Chapter 2: Data collection and processing
Chapter 3: Model Design
Chapter 4: Empirical Evaluation

iii
MỞ ĐẦU
Ngày nay công nghệ thông tin ngày càng phát triển cùng với những tiến bộ vượt
bậc của khoa học kỹ thuật nói chung, có rất nhiều công nghệ mới được cho ra mắt.
Hơn một thập kỷ qua , với sự phát triển mạnh mẽ của công nghệ thông tin,công
nghệ tiếng nói cũng như mã hóa, nhận diện giọng nói, chuyển lời nói thành văn
bản...đã trở thành vấn đề nghiên cứu trọng điểm được nhiều nhà khoa học quan tâm ở
nhiều lĩnh vực khác nhau như: tin học, toán học,điện tử, sinh học,..
Trong thời gian gần đây, các nhà nghiên cứu đang tập trung vào công nghệ
nhận dạng giọng nói và đã có một số hành công đối với việc nhận dạng tiếng anh và
một số ngôn ngữ khác. Đã có nhiều công trình nghiên cứu về lĩnh vực nhận dạng
giọng nói (Speech recognition) trên cơ sở lý thuyết và các hệ thống thông minh nhân
tạo, nhiều kết quả đã trở thành sản phẩm như Via Voice old của hãng IBM, Dragon
Natural Speaking của Dragon System, Speech SDK của Microsoft,... Triển khai những
công trình nghiên cứu và đưa vào thực tế ứng dụng vấn đề này là một việc làm hết sức
ý nghĩa trong giai đoạn công nghiệp hóa, hiện đại hóa nước nhà.
Vì thế, nhóm em đã chọn đề tài” Tìm hiểu Công nghệ nhận diện giọng nói” để
tìm hiểu và trình bày về nội dung cũng như tổng quan về công nghệ. Tuy đã rất cố
gắng học hỏi và tìm tài liệu từ nhiều nguồn thông tin nhưng điều kiện thời gian và khả
năng có hạn nên cũng không tránh được thiếu sót. Kính mong được sự đóng góp ý
kiến từ cô và các bạn để nhóm em có thể hoàn thiện hơn về bài báo cáo công nghệ này.

Nhóm em xin chân thành cảm ơn.

1
MỤC LỤC
TÓM TẮT.................................................................................................................... ii
MỞ ĐẦU....................................................................................................................... 1
MỤC LỤC.................................................................................................................... 2
DANH MỤC HÌNH.....................................................................................................3
DANH MỤC BẢNG....................................................................................................4
DANH SÁCH CÁC KÝ TỰ, CHỮ VIẾT TẮT.........................................................5
CHƯƠNG 1. TỔNG QUAN.......................................................................................10
1.1. Giới thiệu đề tài..............................................................................................10
1.2. Công nghệ sử dụng.........................................................................................10
1.2.1. Ví dụ : Giới thiệu về PHP..........................................................................10
1.2.2. _______________________.....................................................................11
1.2.3. ________________________...................................................................11
CHƯƠNG 2. TIỀN XỬ LÝ DỮ LIỆU......................................................................12
2.1. THU THẬP DỮ LIỆU....................................................................................12
2.2. Mô tả dữ liệu...................................................................................................12
2.2.1. Ví dụ: Trường (Cột ID).............................................................................12
2.2.2. ..................................................................................................................12
2.2.3. ..................................................................................................................12
2.2.4. ..................................................................................................................12
2.3. TRỰC QUAN HÓA DỮ LIỆU......................................................................12
............................................................................................................................ 14
CHƯƠNG 3. THIẾT KẾ MÔ HÌNH.........................................................................14
3.1. giới thiệu mô hình...........................................................................................14
3.2. GIAI ĐOẠN HUẤN LUYỆN (training)........................................................14
3.2.1. Phân chia tập huấn luyện...........................................................................14
3.2.2. Huấn luyện mô hình..................................................................................15
3.3. giai đoạn đánh giá (testing)............................................................................15
3.4. Lan truyền ngược (Backpropagation)...........................................................16
CHƯƠNG 4. ĐÁNH GIÁ THỰC NGHIỆM............................................................17
1. kết quả thực nghiệm..........................................................................................17
2. Đánh giá mô hình...............................................................................................17
TÀI LIỆU THAM KHẢO.........................................................................................19

2
DANH MỤC HÌNH
Hình 1.1 - Mô hình Client-Server...............................................................................10
Hình 2.1 - __________________________................................................................12

3
Danh mục các bảng nếu
báo cáo có sử dụng bảng
biểu. Tạo tự động bằng tab
DANH MỤC BẢNG “references –.Insert Table
of Figures”
No table of contents entries found.
Danh mục các Từ viết tắt
và ý nghĩa của chúng. Chỉ
DANH SÁCH CÁC KÝ TỰ, CHỮ VIẾT TẮT viết tắt khi từ lặp lại nhiều

Từ viết tắt Giải thích

PHP Hypertext Preprocessor

MVC Model – View – Controller

CSDL Cơ sở dữ liệu

CLB Câu lạc bộ

HLV Huấn luyện viên

ND Nội dung

4
XÂY DỰNG MÔ HÌNH DỰ ĐOÁN MỨC LƯƠNG CỦA ỨNG CỬ VIÊN CÔNG NGHỆ THÔNG TIN

CHƯƠNG 1. TỔNG QUAN


1.1. GIỚI THIỆU ĐỀ TÀI
Đề tài “Xây dựng mô hình AI nhận diện giọng nói”.
Mô hình được xây dựng với mục đích tiết kiệm thời gian và tăng hiệu suất công
việc và cho phép người dùng làm việc rảnh tay. Công nghệ nhận dạng giọng nói là xu thế
tất yếu của tương lai, có thể mang lại lợi ích không chỉ cho cá nhân mà còn cho cả các
doanh nghiệp.
1.2. CÔNG NGHỆ SỬ DỤNG
1.2.1. Giới thiệu về Python
Python là một ngôn ngữ lập trình được sử dụng rộng rãi trong các ứng dụng web,
phát triển phần mềm, khoa học dữ liệu và máy học (ML). Các nhà phát triển sử dụng
Python vì nó hiệu quả, dễ học và có thể chạy trên nhiều nền tảng khác nhau. Phần mềm
Python được tải xuống miễn phí, tích hợp tốt với tất cả các loại hệ thống và tăng tốc độ
phát triển.
Ngôn ngữ Python được sử dụng nhiều trong lĩnh vực phát triển ứng dụng, bao gồm
những ví dụ sau:
Phát triển web phía máy chủ
Python hữu ích trong việc lập trình mã phía máy chủ bởi vì ngôn ngữ này cung cấp
nhiều thư viện bao gồm mã viết sẵn cho các hàm backend phức tạp. Các nhà phát triển
cũng sử dụng một loạt các khung Python cung cấp tất cả những công cụ cần thiết để xây
dựng ứng dụng web một cách nhanh chóng và dễ dàng hơn. Ví dụ: các nhà phát triển có
thể tạo ứng dụng web khung trong nháy mắt bởi vì họ không cần phải lập trình nó từ đầu.
Sau đó, họ có thể kiểm tra ứng dụng web này bằng cách sử dụng các công cụ kiểm thử của
khung, mà không cần phụ thuộc vào những công cụ kiểm thử bên ngoài.
Khoa học dữ liệu và máy học
Khoa học dữ liệu trích xuất thông tin quý giá từ dữ liệu và máy học (ML) dạy máy
tính tự động học hỏi từ dữ liệu và đưa ra các dự đoán chính xác. Các nhà khoa học dữ liệu
sử dụng Python cho các tác vụ khoa học dữ liệu sau:
Sửa và loại bỏ dữ liệu không chính xác, hay còn được gọi là làm sạch dữ liệu
Trích xuất và chọn lọc các đặc điểm đa dạng của dữ liệu
Ghi nhãn dữ liệu gán tên có ý nghĩa cho dữ liệu
Tìm các số liệu thống kê khác nhau từ dữ liệu
Trực quan hóa dữ liệu bằng cách sử dụng các biểu đồ và đồ thị, chẳng hạn như biểu đồ
đường, biểu đồ cột, biểu đồ tần suất và biểu đồ tròn
10
XÂY DỰNG MÔ HÌNH DỰ ĐOÁN MỨC LƯƠNG CỦA ỨNG CỬ VIÊN CÔNG NGHỆ THÔNG TIN

Các nhà khoa học dữ liệu sử dụng những thư viện ML của Python để đào tạo các mô hình
ML và xây dựng các công cụ phân loại giúp phân loại dữ liệu một cách chính xác. Các
chuyên gia từ nhiều lĩnh vực sử dụng những công cụ phân loại dựa trên Python để thực
hiện các tác vụ phân loại, chẳng hạn như phân loại hình ảnh, văn bản cũng như lưu lượng
truy cập mạng, nhận dạng giọng nói và nhận diện khuôn mặt. Các nhà khoa học dữ liệu
cũng sử dụng Python cho deep learning, một kỹ thuật ML nâng cao.
1.2.2. Giới thiệu về PyCharm
Pycharm là một nền tảng kết kết hợp được JetBrains phát triển như một IDE (Môi
trường phát triển tích hợp) để phát triển các ứng dụng cho lập trình trong Python.
Các tính năng của pycharm
Pycharm có thể chạy trên Windows, Linux, hoặc Mac OS. Ngoài ra, nó cũng chứa
các Mô đun và các gói giúp các lập trình viên phát triển phần mềm bằng Python trong thời
gian ngắn với ít công sức hơn. Hơn nữa, nó cũng có khả năng tùy chỉnh theo yêu cầu của
nhà phát triển.
Khi cài đặt Pycharm, LTV có thể sử dụng một số tính năng sau:
Trình chỉnh sửa mã thông minh:
- Giúp các lập trình viên viết mã chất lượng cao
- Bao gồm các lược đồ màu cho các từ khóa, lớp và hàm. Điều này giúp tăng khả
năng đọc và hiểu mã
- Xác định lỗi một cách dễ dàng
- Cung cấp tính năng tự động hoàn thiện và hướng dẫn hoàn thiện mã
Điều hướng mã
- Giúp các nhà phát triển trong việc chỉnh sửa và nâng cao mã với ít nỗ lực và thời
gian hơn
- Với việc điều hướng mã, nhà phát triển có thể dễ dàng điều hướng một lớp,hàm
hoặc tệp
- LTV có thể xác định vị trí của một phần tử, một ký hiệu hoặc một biến trong mã
nguồn trong thời gian ngắn khi sử dụng Pycharm
- Bằng việc sử dụng chế độ thấu kính, nhà phát triển có thể kiểm tra và gỡ lỗi toàn
bộ mã nguồn.
Tái cấu trúc
- Sử dụng Pycharm có lợi thế là thực hiện các thay đổi hiệu quả và nhanh chóng đối
với cả biến cục bộ và biến toàn cục
- Tái cấu trúc trong Pycharm cho phép các nhà phát triển cải thiện cấu trúc bên
trong mà không thay đổi hiệu suất bên ngoài của mã
- Nó cũng cho phép phân chia các lớp với các chức năng mở rộng hơn 

11
XÂY DỰNG MÔ HÌNH DỰ ĐOÁN MỨC LƯƠNG CỦA ỨNG CỬ VIÊN CÔNG NGHỆ THÔNG TIN

CHƯƠNG 2. TIỀN XỬ LÝ DỮ LIỆU


2.1. THU THẬP DỮ LIỆU
Bộ dữ liệu dataset trong bài báo cáo này được lấy từ một trang web khá nổi tiếng có
tên là Kaggle. Đây là là một trong những nền tảng tốt nhất trong Machine Learning và
Data Science. Nếu hỏi bất kỳ những người đam mê với dữ liệu, những người chuyên
nghiên cứu về mảng Machine Learning, Data Science,… thì độ tin cậy của trang web
này khỏi phải bàn.
Dưới đây là hình ảnh minh họa của bộ dataset từ trang Kaggle:

Hình 2.1 - Hình ảnh mô tả bộ dataset từ trang Kaggle


XÂY DỰNG MÔ HÌNH DỰ ĐOÁN MỨC LƯƠNG CỦA ỨNG CỬ VIÊN CÔNG NGHỆ THÔNG TIN

2.2. MÔ TẢ DỮ LIỆU
2.2.1. Trường position

Trường position được thiết kế với kiểu dữ liệu là String do position được hình
thành từ cả ký tự nên không thể dùng kiểu cơ bản khác.
Position dùng để định danh các vị trí việc làm trong ngành công nghệ thông tin, có
thể bị trùng lặp giữa các hàng dữ liệu.
2.2.2. Trường knowledge

Trường knowledge được thiết kế với kiểu dữ liệu là Numeric do knowledge được
hình thành từ cả ký tự số nên không thể dùng kiểu cơ bản khác.
Knowledge dùng để đánh giá điểm số về phần kiến thức của ứng cử viên, nó được
tính trên thang điểm 100.
2.2.3. Trường technical

Trường technical được thiết kế với kiểu dữ liệu là Numeric do technical được hình
thành từ cả ký tự số nên không thể dùng kiểu cơ bản khác.
Technical dùng để đánh giá điểm số về phần kỹ thuật của ứng cử viên, nó được
tính trên thang điểm 100.
2.2.4. Trường logical

Trường logical được thiết kế với kiểu dữ liệu là Numeric do logical được hình
thành từ cả ký tự số nên không thể dùng kiểu cơ bản khác.
Logical dùng để đánh giá điểm số về phần logical của ứng cử viên, nó được tính
trên thang điểm 100.
2.2.5. Trường year_experience

Trường year_experience được thiết kế với kiểu dữ liệu là Numeric do


year_experience được hình thành từ cả ký tự số nên không thể dùng kiểu cơ bản
khác.
Year_experience dùng để chỉ ra số năm kinh nghiệm được tích lũy của ứng cử
viên.
2.2.6. Trường main_programing_language
XÂY DỰNG MÔ HÌNH DỰ ĐOÁN MỨC LƯƠNG CỦA ỨNG CỬ VIÊN CÔNG NGHỆ THÔNG TIN

Trường main programing language được thiết kế với kiểu dữ liệu là String do
main programing language được hình thành từ cả số, chữ cái, ký tự đặc biệt đã nên
không thể dùng kiểu cơ bản khác.
main programing language dùng để chỉ ra ngôn ngữ lập trình chính mà ứng cử
viên đang sử dụng.
2.2.7. Trường salary_per_month

Trường salary_per_month được thiết kế với kiểu dữ liệu là Numeric do


salary_per_month được hình thành từ cả ký tự số nên không thể dùng kiểu cơ bản
khác.
Salary_per_month dùng để chỉ ra tiền lương thu nhập mỗi tháng của ứng cử viên.
2.3. TRỰC QUAN HÓA DỮ LIỆU

Hình 2.1 - Hình ảnh thống kê số lượng người theo từng thang điểm knowledge
XÂY DỰNG MÔ HÌNH DỰ ĐOÁN MỨC LƯƠNG CỦA ỨNG CỬ VIÊN CÔNG NGHỆ THÔNG TIN

Hình 2.2 - Hình ảnh thống kê số lượng người theo từng thang điểm technical
XÂY DỰNG MÔ HÌNH DỰ ĐOÁN MỨC LƯƠNG CỦA ỨNG CỬ VIÊN CÔNG NGHỆ THÔNG TIN

Hình 2.3 - Hình ảnh thống kê số lượng người theo từng thang điểm technical

Hình 2.4 - Hình ảnh thống kê số lượng người dựa theo số năm kinh nghiệm tích lũy

Hình 2.5 - Bảng tổng quan về bộ dự liệu


XÂY DỰNG MÔ HÌNH DỰ ĐOÁN MỨC LƯƠNG CỦA ỨNG CỬ VIÊN CÔNG NGHỆ THÔNG TIN

CHƯƠNG 3. THIẾT KẾ MÔ HÌNH


3.1. GIỚI THIỆU MÔ HÌNH
3.1.1. Khi nào sử dụng Multiple Linear Regression
Hồi quy tuyến tính bội là một phần mở rộng của hồi quy tuyến tính đơn.Nó
được sử dụng khi chúng ta muốn dự đoán giá trị của một biến phản hồi dựa trên giá trị
của hai hoặc nhiều biến giải thích khác.Biến chúng ta muốn dự đoán được gọi là biến
phản hồi (hoặc đôi khi là biến phụ thuộc).Các biến mà chúng ta đang sử dụng để dự
đoán giá trị của biến phản hồi được gọi là các biến giải thích (hoặc đôi khi là biến dự
báo, biến phụ thuộc). Ví dụ, chúng ta có thể sử dụng hồi quy bội số để hiểu liệu có thể
dự đoán kết quả kỳ thi Toán giải thích dựa trên thời gian ôn tập, và giới tính của sinh
viên hay không.
3.1.2. Giả thuyết vô hiệu và suy luận thống kê
Khi có nhiều hơn một biến độc lập, mô hình phù hợp tổng thể được đánh giá
bằng thống kê F (F statistic). Giả thuyết vô hiệu được thử nghiệm liên quan đến tất cả
các tham số hồi quy ngoại trừ điểm chặn. Ví dụ, nếu có ba biến giải thích trong mô
hình thì giả thuyết vô hiệu sẽ là: H0: β1 = β2 = β3 = 0. Thống kê F được đánh giá là tỷ
lệ giữa bình phương trung bình của mô hình so với bình phương trung bình của sai số.
3.1.3. Các giả định thống kê
Khi phân tích dữ liệu bằng cách sử dụng hồi quy tuyến tính, một phần của quy
trình bao gồm việc kiểm tra để đảm bảo rằng dữ liệu muốn phân tích thực sự có thể
được phân tích bằng hồi quy tuyến tính.Tập dữ liệu cần vượt qua các giả định cần thiết
cho hồi quy tuyến tính để cung cấp kết quả hợp lệ.
Việc đo lường biến phản hồi Y ít nhất phải liên tục về mặt lý thuyết. (Ví dụ: có
thể sử dụng điểm trên thang đánh giá; 0, 1, 2, 3 n) và trong hồi quy bội, một hoặc
nhiều biến giải thích có thể là nhị phân (ví dụ: trong hồi quy, chúng được gọi là biến
giả dummy variables, giới tính biến nhị phân có thể được mã hóa là 0 = nam, 1 =
nữ).Mối quan hệ giữa các biến phản hồi và giải thích phải gần đúng tuyến tính. Xác
minh bằng cách vẽ biểu đồ của biến phản hồi so với từng biến độc lập trong mô hình.
Mối tương quan mạnh mẽ được biểu thị bằng xu hướng đường thẳng rõ ràng trong sự
phân tán của các điểm.Sai số (error) trong mô hình hồi quy, ε, nên có phân phối xác
suất chuẩn. Các phần dư (residuals) trong phân tích hồi quy đại diện cho các ước
lượng mẫu của các sai số. Chúng phải có giá trị trung bình bằng 0 và phương sai
không đổi (điều này được gọi là đồng nhất homoscedasticity). Lưu ý rằng cả biến phản
hồi hoặc biến giải thích đều không bắt buộc phải có phân phối chuẩn, chính các phần
dư phù hợp mới là chuẩn.
Xác minh giả định về tính chuẩn bằng cách thực hiện vẽ biểu đồ xác suất chuẩn
của các phần dư. Phân phối của phần dư chỉ cung cấp dấu hiệu về sự phân bố sai số cơ
XÂY DỰNG MÔ HÌNH DỰ ĐOÁN MỨC LƯƠNG CỦA ỨNG CỬ VIÊN CÔNG NGHỆ THÔNG TIN

bản (underlying error distribution) trong dân số và có thể không đáng tin cậy với các
cỡ mẫu nhỏ. Cách diễn giải đồ thị xác suất chuẩn theo cách tương tự như đã mô tả
trong bài Kiểm tra phân phối chuẩn.
Xác minh giả định về phương sai không đổi (hoặc xác minh sự đồng nhất) bằng
cách vẽ biểu đồ phần dư so với các giá trị dự đoán. Sự phân tán ngẫu nhiên của các
điểm về giá trị trung bình bằng 0 chỉ ra phương sai không đổi và thỏa mãn giả định
này. Tức là các phương sai dọc theo đường phù hợp nhất vẫn tương tự khi bạn di
chuyển dọc theo đường. Một mô hình hình phễu cho biết phương sai không hằng số.
Những quan sát bên ngoài kì dị có thể dễ dàng phát hiện ra trên biểu đồ này.
Dữ liệu không được xuất hiện đa cộng tuyến (multicollinearity), xảy ra khi có
hai hoặc nhiều biến độc lập có tương quan cao với nhau. Điều này dẫn đến các vấn đề
trong việc hiểu biến độc lập nào góp phần vào phương sai được giải thích trong biến
phụ thuộc, cũng như các vấn đề kỹ thuật trong việc tính toán mô hình hồi quy bội số.
Tất cả các giả định đều quan trọng nhưng một số giả định còn hơn cả những giả
định khác. Kinh nghiệm cho phép nhà nghiên cứu đánh giá xem các giả định có thể
được nới lỏng đến mức nào trước khi các suy luận bị vô hiệu đây cũng là một nghệ
thuật giống như một môn khoa học. Ví dụ, việc thiếu tính chuẩn của các phần dư
không phải là điều quan trọng, nhưng sai số chuẩn (standard errors) có thể bị thổi
phồng. Tương tự, việc thiếu phương sai không đổi không có khả năng làm sai lệch
nghiêm trọng các hệ số hồi quy nhưng các giá trị p liên quan sẽ cần được diễn giải một
cách thận trọng. Vi phạm nghiêm trọng nhất là một sự ra đi đáng kể so với tuyến tính.
Trong tình huống này, việc chuyển đổi dữ liệu hoặc một phương pháp phân tích thay
thế nên được xem xét.
3.2. GIAI ĐOẠN HUẤN LUYỆN (TRAINING)
3.2.1. Phân chia tập huấn luyện
- Đầu tiên, mô hình này sẽ cần import một số thư viện để thao tác dễ dàng hơn như:
speech_recognition, os,playsound, wikipedia,webbrowser, datetime từ thư viện
datetime và gTTS và thư viện gtts.
XÂY DỰNG MÔ HÌNH DỰ ĐOÁN MỨC LƯƠNG CỦA ỨNG CỬ VIÊN CÔNG NGHỆ THÔNG TIN

- Tệp chúng ta muốn mở

- Sau khi có đọc được dữ liệu từ file dataset thành công, chúng ta có thể thấy file
dataset gồm có 1251 dòng dữ liệu. Bây giờ tiến hành lọc lại dữ liệu và bỏ đi những
dòng dữ liệu bị thiếu thông tin:

- Tiến hành khai báo biến x và y để lấy những cột giá trị cần lấy:
XÂY DỰNG MÔ HÌNH DỰ ĐOÁN MỨC LƯƠNG CỦA ỨNG CỬ VIÊN CÔNG NGHỆ THÔNG TIN

3.2.2. Huấn luyện mô hình


XÂY DỰNG MÔ HÌNH DỰ ĐOÁN MỨC LƯƠNG CỦA ỨNG CỬ VIÊN CÔNG NGHỆ THÔNG TIN

- Tập dữ liệu ban đầu được chia thành 2 phần, với tỉ lệ 7:3. Trong đây 70% dữ liệu ban
đầu sẽ được dùng để huấn luyện và 30% còn lại được dùng để kiểm thử và đánh giá
mô hình.
Sử dụng hàm train_test_split trong thư viện sklearn để thuận tiên cho thao tác chia dữ
liệu:

- Tiến hành khai báo hàm LinearRegression() đã được import từ trước và bắt đầu cho
training bộ dữ liệu thông qua hàm fix() với tham số truyền vào biến x_train, y_train:

- Bây giờ chúng ta sẽ tiến hành sử dụng hàm predict và đưa ra kết quả của bộ dữ liệu
test như hình sau:
XÂY DỰNG MÔ HÌNH DỰ ĐOÁN MỨC LƯƠNG CỦA ỨNG CỬ VIÊN CÔNG NGHỆ THÔNG TIN

3.3. GIAI ĐOẠN ĐÁNH GIÁ (TESTING)


Phương thức r2_score được sử dụng để tính toán độ chính xác của mô hình hồi
quy tuyến tính. Đó là số lượng biến thiên trong thuộc tính phụ thuộc đầu ra có thể dự
đoán được từ (các) biến độc lập đầu vào. Nó được sử dụng để kiểm tra xem mô hình
tái tạo các kết quả quan sát được như thế nào, tùy thuộc vào tỷ lệ tổng độ lệch của các
kết quả được mô tả bởi mô hình.
Công thức toán học: R2= 1- SSres / SStot
Trong đó:
+ SSres là tổng bình phương của các sai số còn lại.
+ SStot là tổng các lỗi.
XÂY DỰNG MÔ HÌNH DỰ ĐOÁN MỨC LƯƠNG CỦA ỨNG CỬ VIÊN CÔNG NGHỆ THÔNG TIN

Ở đây, chúng ta có thể tính toán độ chính xác của mô hình với sự trợ giúp của
r2_score. Một function được tích hợp sẵn trong thư viện sklearn.metrics:
r2_score(y_test, y_pred)
Trong đó:
+ y_test là các nhãn/đầu ra trong bộ dữ liệu dùng để test
+ y_pred là các nhãn/đầu ra từ kết quả dự đoán
XÂY DỰNG MÔ HÌNH DỰ ĐOÁN MỨC LƯƠNG CỦA ỨNG CỬ VIÊN CÔNG NGHỆ THÔNG TIN

CHƯƠNG 4. ĐÁNH GIÁ THỰC NGHIỆM


1. KẾT QUẢ THỰC NGHIỆM

Dữ liệu đầu vào của mô hình

Dữ liệu sau khi được dọn sạch


XÂY DỰNG MÔ HÌNH DỰ ĐOÁN MỨC LƯƠNG CỦA ỨNG CỬ VIÊN CÔNG NGHỆ THÔNG TIN

Bảng phân tích dữ liệu

Kết quả dự đoán của mô hình trên tập test


XÂY DỰNG MÔ HÌNH DỰ ĐOÁN MỨC LƯƠNG CỦA ỨNG CỬ VIÊN CÔNG NGHỆ THÔNG TIN

Độ chính xác của mô hình

Biểu diễn mô hình bằng biểu đồ tuyến tính


XÂY DỰNG MÔ HÌNH DỰ ĐOÁN MỨC LƯƠNG CỦA ỨNG CỬ VIÊN CÔNG NGHỆ THÔNG TIN

Độ chênh lệch giữa giá trị thực và giá trị được dự đoán

2. ĐÁNH GIÁ MÔ HÌNH

Đưa ra nhận xét về mô hình đã xây dựng, còn yếu ở điểm nào, dữ liệu đã đủ chưa,
có cách nào cải thiện không.

Ví dụ:
Đề tài đã xây dựng khá thành công mô hình multiple linear regression và ứng dụng
vào bai toán thực tế là “Dự đoán mức lương của ứng cử viên công nghệ thông tin
thông qua các chỉ số kinh nghiệm,…”.
Mô hình có sử dụng độ đo là tổng bình phương sai số để đánh giá sai số của mô hình.
Trong quá trình huấn luyện mô hình đạt được sai số nhỏ hơn 15% và sau khi đưa dữ
liệu kiểm thử thì độ sai số của mô hình giảm xuống chỉ còn gần 8%.
Để có thể nâng cao chất lượng của mô hình, trong thời gian tới nhóm sẽ tiến hành thu
thập bộ dữ liệu lớn hơn. Ngoài ra nhóm cũng cần có thời gian để kiểm nghiệm tỉ lệ
phân chia tập dữ liệu cũng như lựa chọn hàm kích hoạt để giảm sai số về mức thấp
nhất.
XÂY DỰNG MÔ HÌNH DỰ ĐOÁN MỨC LƯƠNG CỦA ỨNG CỬ VIÊN CÔNG NGHỆ THÔNG TIN
XÂY DỰNG MÔ HÌNH DỰ ĐOÁN MỨC LƯƠNG CỦA ỨNG CỬ VIÊN CÔNG NGHỆ THÔNG TIN

TÀI LIỆU THAM KHẢO


Không để Tiếng Việt
đường dẫn, (1). Nhất Nghệ, Giáo trình ASP.NET (2005), NXB Giáo dục, Hà Nội.
website vào
danh mục tài (2) _________
liệu tham Tiếng Anh
khảo, chỉ
được để (3) _________________
sách, tạp chí,

You might also like