TÓM TẮTDo ảnh hưởng của cuộc cánh mạng 4.0 nền kinh tế việt nam bắt đầu chuyển dịch và ngày càng sinh ra nhiều loại ngành kinh tế khác nhau, để đáp ứng nhu cầu về mặtkiến thức trong đầu
Trang 1KHOA CÔNG NGHỆ THÔNG TIN, ROBOT VÀ TRÍ TUỆ NHÂN TẠO
TIỂU LUẬN MÔN HỌC
3 Hoàng Văn Nam - 190500 58 - 22TH01
Bình Dương, ngày 26 tháng 10 năm 2021
Trang 2LỜI CẢM ƠN
Trong suốt quá trình học tại trường Đại học Bình Dương, với sự nỗ lực của bảnthân và sự giúp đỡ của các thầy cô giáo trong trường đặc biệt là thầy cô giáo trongkhoa Công nghệ thông tin, Robot – Trí tuệ nhân tạo đã giúp chúng em có một vốn trithức vững vàng để hoàn thành bài tiểu luận của các môn học Trong thời gian làm tiểuluận các môn học, được sự giúp đỡ của giáo viên hướng dẫn về mọi mặt, từ nhiều phíanhóm 03 chúng em đã hoàn thành tốt tiểu luận đúng thời gian quy định Nhóm 03chúng em xin chân thành cảm ơn đến:
Lời đầu tiên,nhóm em xin gửi lời cảm ơn đến Thầy Huỳnh Quang Đức Trongquá trình tìm hiểu và học tập bộ môn xữ lý ngôn ngữ tự nhiên, em đã nhận được sự giảng dạy và hướng dẫn rất tận tình, tâm huyết của thầy Thầy đã giúp em tích lũy thêmnhiều kiến thức hay và bổ ích Từ những kiến thức mà thầy truyền đạt,nhóm em xintrình bày lại những gì mình đã tìm hiểu được về vấn đề: trợ lý ảo về kinh tế
Đồng thời, chúng em xin cảm ơn tất cả những người thân yêu trong gia đìnhchúng em, cùng toàn thể bạn bè những người luôn giúp đỡ, động viên chúng em nhữngkhi vấp phải những khó khăn, bế tắc
Tuy nhiên, kiến thức về bộ môn xữ lý ngôn ngữ tự nhiên của nhóm em vẫn cònnhững hạn chế nhất định Do đó, không tránh khỏi những thiếu sót trong quá trình hoànthành bài tiểu luận này Mong thầy xem và góp ý để bài tiểu luận của em được hoànthiện hơn
Bình Dương tháng 10 năm 2021
NHÓM 03
Trang 3TÓM TẮT
Do ảnh hưởng của cuộc cánh mạng 4.0 nền kinh tế việt nam bắt đầu chuyển dịch
và ngày càng sinh ra nhiều loại ngành kinh tế khác nhau, để đáp ứng nhu cầu về mặtkiến thức trong đầu tư vào ngành kinh tế mới nhóm 03 em quyết định nghiên cứu đềtài trợ lý ảo về tài chính nhằm cung câp cho các nhà đầu tư mới hiểu rõ được các kháiniệm cơ bản,các thuật ngữ chuyên gành và hiểu chuyên sâu về cách đầu tư trong lĩnhvực chứng khoán, bất động sản
Các hướng tiếp cận là:
Khảo sát , tìm hiểu để thực hiện xây dựng trợ lý ảo tài chính
Phân tích đề tài
Xây dựng sơ đồ hoạt động của ứng dụng
Thực hiện, xây dựng mô hình hoạt động của ứng dụng
Thiết kế giao diện
Đánh giá tỉ lệ thành công của mô hình
Cách giải quyết vấn đề theo yêu cầu của đề tài đặt ra:
Đầu vào dự án : những câu hỏi của người dung về vấn để tài chính
Xử lý ngôn ngữ tự nhiên: biên tập corpus về tài chính, tách từ, phân tích cấu trúccâu…
Đầu ra kết quả: câu trả lời cho câu hỏi của người dùng đã được xử lý
Tính ứng dụng của đề tài: giải đáp được các thắc mắc của người dung về vấn đềtài chính
Trang 4MỤC LỤC
LỜI CẢM ƠN i
TĨM TẮT ii
MỤC LỤC 1
DANH MỤC KÍ HIỆU VÀ CHỮ VIẾT TẮT 2
DANH MỤC CÁC BẢNG BIỂU, HÌNH VẼ 3
PHẦN 1 – GIỚI THIỆU TỔNG QUAN ĐỀ TÀI 4
1.1 Tổng quát sơ về đề tài 4
1.1.1 Lý do chọn đề tài 4
1.1.2 Nhiệm vụ nghiên cứu 4
1.1.3 Phương pháp nghiên cứu 4
1.2 Nội dung của chương này 4
PHẦN 2- ĐỀ XUẤT MƠ HÌNH HỆ THỐNG 7
2.1 Sơ lược về thuật tốn Nạve Bayes 7
2.2 Thuật tốn SVM(support vector Machine) 7
2.3 Mơ hình trợ lý ảo tài chính 7
PHẦN 3 – KẾT QUẢ ĐẠT ĐƯỢC 9
3.1 Nghiên cứu lý thuyết 9
3.1.1 Khái niệm cơ bản về khoa học 9
3.1.2 Khái niệm cơ bản về Trợ lý ảo 9
3.2 Mơ hình Trợ lý ảo về tài chính 9
3.3 Xây dựng chương trình 10
3.3.1 Xây dựng corpus 10
3.3.2 Xử lý dữ liệu 12
3.4 Đánh giá mơ hình 16
3.5 Hướng dẫn khởi động ứng dụng 16
PHẦN 4 – KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 20
4.1 Kết luận về đề tài đã thực hiện 20
4.2 Định hướng tương lai – Hướng phát triển sau này 20
Trang 5DANH MỤC KÍ HIỆU VÀ CHỮ VIẾT TẮT
CÁC KÝ HIỆU
f(w) tần suất xuất hiện của từ
p(w) xác suất xuất hiện của từ
CÁC CHỮ VIẾT TẮT
NLP Xử lý ngôn ngữ tự nhiên
ANN Mạng neural nhân tạo
AI Trí tuệ nhân tạo
NB Naive Bayes
SVM Support Vector Machine
Corpus Kho ngữ liệu
Trang 6DANH MỤC CÁC BẢNG BIỂU, HÌNH VẼ
DANH MỤC HÌNH
HÌNH 1 Mô Hình Trợ Lý ảo Tài Chính 8
HÌNH 2 Phân loại câu 11
HÌNH 3.số lượng corpus 11
HÌNH 4 Kho dữ liệu 12
HÌNH 5 Module Question Analysis 12
HÌNH 6 Model Trainning 13
HÌNH 7 Model Trainning 14
HÌNH 8 Model Trainning 14
HÌNH 9 Model Trainning 15
HÌNH 10 Màng Hình cmd 16
HÌNH 11 kết quả chạy lệnh ‘virtualenv env’ 17
HÌNH 12 kết quả chạy lệnh ‘env\Scripts\activate’ 17
HÌNH 13 kết quả chạy lệnh ‘pip install -r requirements.txt’ 18
HÌNH 14 kết quả chạy lệnh ‘python manage.py runserver’ 18
HÌNH 15 dao diện trang web khi vừa khởi chạy 19
Trang 7PHẦN 1 – GIỚI THIỆU TỔNG QUAN ĐỀ TÀI
1.1 Tổng quát sơ về đề tài
Do ảnh hưởng của cuộc cánh mạng 4.0 nền kinh tế Việt Nam bắt đầu chuyểndịch và ngày càng sinh ra nhiều loại ngành kinh tế khác nhau, để đáp ứng nhu cầu vềmặt kiến thức trong đầu tư vào ngành kinh tế mới nhóm 03 chúng em quyết địnhnghiên cứu đề tài trợ lý ảo về tài chính nhằm cung câp cho các nhà đầu tư mới hiểu rõđược các khái niệm cơ bản,các thuật ngữ chuyên gành và hiểu chuyên sâu về cách đầu
tư trong lĩnh vực chứng khoán, bất động sản
Module ReProcessing hỗ trợ tiền xử lý các câu hỏi được đưa vào
Module Question Analysis để phân tích câu hỏi
Module Predict đưa ra dự đoán từ mô hình được huấn luyện
Module Question Classification để huấn luyện mô hình phân loại câu hỏi Hỗtrợ cho việc phân tích câu hỏi và dự đoán câu trả lời
Phương pháp nghiên cứu được sử dụng trong đề tài này bao gồm phương phápnghiên cứu và tổng hợp lý thuyết và phương pháp thực nghiệm
Tham khảo ý kiến thầy giáo hướng dẫn, các bạn cùng chuyên ngành, các bạncùng lớp
Mục lý thuyết được nghiên cứu và thu thập từ các trang mạng trên Internet, cácbài báo tạp chí chuyên ngành, tự phân tích thiết kế thuật toán cho hệ thống dựatrên những kiến thức đạt được
1.2 Nội dung của chương này
Quá trình nghiên cứu của đề tài trợ lý ảo về tài chính được thực hiện qua cácgiai đoạn sau:
Giai đoạn 1: biên soạn corpus
- Tìm kiếm trên google những website uy tiến soạn thảo ra bộ câu hỏi và câutrả lời về tài chính
Trang 8- Sau khi đã có bộ câu hỏi và câu trả lời tiến hành phân chia câu hỏi thành 7dạng what, where, how, how many, why, yes/no, when.
Giai đoạn 2: Xây dựng chương trình
Sau khi Coprus được biên soạn xong sẽ tiến hành thiết kế và phát triển cácmodule chức năng cho hệ thống:
+ Đầu tiên là module ReProcessing (Tiền xử lý) để hỗ trợ loại bỏ các tácnhân gây hại đến thuật toán như dấu câu, các từ stopword…
+ Tiếp theo sẽ phân tích thiết kế module Question Classification (Phânloại câu hỏi) có chức năng phân chia các câu hỏi theo loại của câu hỏi ví dụ: cáccâu hỏi khái niệm (what), câu hỏi cách thức (how)…
+ Phân tích thiết kế module Question Analysis (Phân tích cấu trúc câuhỏi) có chức năng can thiệp vào các từ của câu hỏi và phân tích và phân loại rachức năng của các từ trong mỗi câu hỏi Ví dụ: Với câu hỏi “Chứng khoán làgì?” thì từ “Chứng khoán” là trọng tâm của ngữ nghĩa câu hỏi và hai từ “là”,
“gì” là hai từ để hỏi trong ngữ pháp của tiếng Việt Việc xác định các từ trọngnghĩa của câu cùng với nắm bắt được loại câu hỏi sẽ giúp tăng độ chính xác chothuật toán dự đoán câu trả lời của hệ thống
+ Phân tích thiết kế module Model Traning (Huấn luyện mô hình) cóchức năng huấn luyện mô hình hỏi đáp của hệ thống từ Corpus được cung cấp.+ Phân tích thiết kế module Predict (Dự đoán) sau khi có được mô hìnhhuấn luyện thì module này có chức năng dự đoán câu trả lời dựa trên mô hình đãđược huấn luyện từ câu hỏi người dùng cung cấp
+ Ngoài ra còn có module Create Update Dataset (tạo mới và cập nhập
bộ dữ liệu) có chức năng tạo bộ dữ liệu giúp cho việc huấn luyện mô hình hoặccập nhập lại bộ dữ liệu khi có sự thay đổi của Corpus Giúp cho việc nâng cấphiệu suất của hệ thống dễ dàng hơn
Ngoài ra để thuận tiện cho người sử dụng, đề tài thực hiện xây dựng giao diệnngười dùng bằng Django
Giai đoạn 3: Tổng kết
Trang 9 Khái quát hóa và rút ra kết luận chung cho đề tài Viết báo cáo, công bố kết quảnghiên cứu trong đề tài.
Trang 10PHẦN 2- ĐỀ XUẤT MÔ HÌNH HỆ THỐNG
Tình trạng thiếu kiến thức về tài chính về đầu tư kinh tế đã làm rất nhiều nhàđầu tư phải đau đầu suy nghĩ, đắn đo xem có nên bỏ ra một khoảng tiền lớn để mạohiểm bước qua lĩnh vực này để giải quyết vấn đề này trợ lý ảo về tài chính đã được rađời mà thuật toán để thực hiện việc này tốt nhất đó là thuật toán Naive Bayes và thuậttoánSupport Vector Machine
2.1 Sơ lược về thuật toán Naive Bayes
Thuật toán được dựa trên định lý Bayes Thuật toán thuộc dạng thuật toán phânlớp giải thuật thống kê Thuật toán có thể dự đoán xác suất của một phần tử dữ liệuthuộc vào một lớp là bao nhiêu
Định lý Bayes
P( A |B)= P(B| A )× P( A )
P(B)Theo định lí Bayes, P(A|B) sẽ phụ thuộc vào 3 yếu tố:
- Xác suất xảy ra A của riêng nó, không quan tâm đến B Kí hiệu là P(A)
- Xác suất xảy ra B của riêng nó, không quan tâm đến A Kí hiệu là P(B)
- Xác suất xảy ra B khi biết A xảy ra Kí hiệu là P(B|A) Đại lượng này gọi là khả năng(likelihood) xảy ra B khi biết A đã xảy ra
2.2 Thuật toán SVM(support vector Machine)
- SVM là một thuật toán giám sát, nó có thể sử dụng cho cả việc phân loại hoặc đệ quy.Tuy nhiên nó được sử dụng chủ yếu cho việc phân loại Trong thuật toán này, chúng ta
vẽ đồi thị dữ liệu là các điểm trong n chiều ( ở đây n là số lượng các tính năng bạn có)với giá trị của mỗi tính năng sẽ là một phần liên kết Sau đó chúng ta thực hiện tìm
"đường bay" (hyper-plane) phân chia các lớp Hyper-plane nó chỉ hiểu đơn giản là 1đường thẳng có thể phân chia các lớp ra thành hai phần riêng biệt
2.3 Mô hình trợ lý ảo tài chính
Mô hình sau thể hiện quá trình trợ lý ảo tài chính bao gồm các bước sau:
Trang 11HÌNH 1 Mô Hình Trợ Lý ảo Tài ChínhĐầu vào là câu hỏi của người dung sẽ được đưa vào moduleReProcessing để tiền xữ lý câu hỏi sau đó được đưa vào module QuestionClassification để huấn luyện mô hình phân loại câu hỏi what, why, when,… sau đóđược đưa vào module Question Analysis để phân tích câu hỏi thực hiên gán nhãn cho
từ trong câu cuối cùng là Module Predict đưa ra dự đoán từ mô hình được huấn luyện
Trang 12PHẦN 3 – KẾT QUẢ ĐẠT ĐƯỢC
3.1 Nghiên cứu lý thuyết
Trí tuệ nhân tạo hay (AI) là một ngành khoa học máy tính liên quan đến việc tự động hóa các hành vi thông minh AI là trí tuệ do con người lập trình tạo nên với mụctiêu giúp máy tính có thể tự động hóa các hành vi thông minh như con người
Machine Learning là một nhánh của trí tuệ nhân tạo, thuộc ngành khoa học máytính, nó có khả năng tự học hỏi dựa trên dữ liệu đưa vào mà không cần phải được lậptrình cụ thể Học tự động là một phương pháp để tạo ra các chương trình máy tính bằngviệc phân tích các tập dữ liệu
Xử lý ngôn ngữ tự nhiên (Natural Language Processing) là khái niệm để chỉ các
kĩ thuật, phương pháp thao tác trên ngôn ngữ tự nhiên bằng máy tính NLP xử lý các từ ngữ bằng máy tính và làm cho máy tính hiểu được các từ ngữ
Trợ lý ảo là phần mềm được xây dựng dựa trên nền tảng trí thông minh nhân tạo(AI) Nó được các các hãng công nghệ tích hợp sâu vào trong hệ điều hành với mụcđích chính là hỗ trợ người dùng thiết bị thực hiện các thao tác dễ dàng hơn thông quagiọng nói của chính họ
3.2 Mô hình Trợ Lý ảo Tài Chính
Trang 13 Quá trình xây dựng trợ lý ảo về tài chính
1 Xác định đầu vào và đầu ra của đề tài :
- Đầu vào là câu hỏi của người dung về lĩnh vực kinh tế
- Đầu ra là câu trả lời đã được biên soạn nhằm giải đáp thắc mắc của ngườidùng
2 Module ReProcessing hỗ trợ tiền xử lý các câu hỏi được đưa vào
3 module Question Analysis để phân tích câu hỏi
4 Module Question Classification để huấn luyện mô hình phân loại câu hỏi
Hỗ trợ cho việc phân tích câu hỏi và dự đoán câu trả lời
5 Module Predict đưa ra dự đoán từ mô hình được huấn luyện
3.3 Xây dựng chương trình
Trong đề tài này nhóm em sử dụng Corpus về tài chính được biên soạn bằng tay
từ ba website lớn và đáng tin cậy :
- http://www.fpts.com.vn/
- https://www.bsc.com.vn/
Trang 14- https://tinnhanhchungkhoan.vn/
Sau khi tra cứu, thu thập những câu hỏi và câu trả lời nhóm em tiến hành phânloại câu hỏi theo cấu trúc như sau:
Với tổng số lượng câu hỏi và câu trả lời là 141 câu được chia đểu trên 7 loại câu hỏi
HÌNH 2 Phân loại câu
HÌNH 3.số lượng corpus
Trang 15HÌNH 4 Kho dữ liệu
3.3.2.1 Module Question Analysis
HÌNH 5 Module Question Analysis
Trang 16Module này dùng để phân tích câu hỏi thô được đưa vào Sử dụng ModuleQuestion Classification để nhận dạng loại câu hỏi Sau đó dựa trên loại câu hỏi để phântích và gán nhãn cho các token được phân tách Token nào đại diện cho các từ thể hiệnchức năng của câu hỏi thì gán nhãn < ?> còn token nào đại diện cho ngữ nghĩa của củahỏi thì gán nhãn <core> Việc phân tích và rút ra ngữ nghĩa chính của câu hỏi trước khiđưa vào huấn luyện mô hình giúp tăng độ chính xác của mô hình bằng cách loại bỏ các
từ không đóng góp về mặt ngữ nghĩa trong câu
3.3.2.1 Model Trainning
Dataset để huấn luyện mô hình gồm 3 thành phần : loại câu hỏi, các từ đóng gópvào mặt ngữ nghĩa của câu hỏi và câu trả lời Dataset này dược tạo thành từ kho ngữ liệu thô sau khi trải qua quá trình tiền xử lý
HÌNH 6 Model Trainning
Trang 17Trước khi huấn luyện mô hình Các dự liệu đầu vào được trải qua quá trìnhWord Embedding gồm hai phân đoạn Phân đoạn 1 là chuyển dự liệu thành 1 one-hotvector Phân đoạn tiếp theo sẽ chuyển vector đó thành 1 ma trận 2 chiều để đưa vàohuấn luyện mô hình.
HÌNH 7 Model Trainning
HÌNH 8 Model Trainning
Trang 18Mô hình huấn luyện sử dụng thuật toán Naive Bayes để phân loại các câu hỏi vànhãn là các câu trả lời được gán trong dataset Sau khi huấn luyện thì sẽ lưu các môhình lại trong folder model để có thể tiến hành dự đoán các câu hỏi người dùng đưavào cho hệ thống.
Module dự đoán Khi người dùng đưa vào câu hỏi thô Module QuestionAnalysis sẽ tiến hành phân tích để rút trích ra được các từ quan trọng trong câu hỏi.Tiếp theo các từ đó sẽ được mã hóa thành ma trận theo bản mẫu của ma trận ban đầutrước khi huấn luyện mô hình Sau khi có được ma trận của câu hỏi chúng ta sẽ tiếnhành load các model đã được huấn luyện xong để dự đoán ra câu trả lời của câu hỏiđược đưa vào
HÌNH 9 Model Predict
Trang 193.4 Đánh giá mô hình
Kết quả thực nghiệm cho thấy rằng cách tiếp cận của Nhóm 03 chúng em đạtđược độ chính xác khá cao khi mô hình đã cơ bản trả lời được hầu hêt tất cả các câuhỏi của người dung về lĩnh vực tài chính Mô hình có thể nhận diện được các loại câuhỏi cơ bản của đời thường và từ đó đưa ra các câu trả lời dựa trên Corpus được biênsoạn và sàng lọc kỹ lưỡng giúp cho chất lượng thông tin cung cấp có độ tin cậy cao.Hiệu suất của hệ thống sẽ tỷ lệ thuận với độ lớn của kho ngữ liệu
3.5 Hướng dẫn khởi động ứng dụng
Bướt 1 Mở cmd tại folder chứa source code
HÌNH 10 Màng Hình cmd
Trang 20Bướt 2 Chạy lệnh ‘virtualenv env’ để tạo môi trường
HÌNH 11 kết quả chạy lệnh ‘virtualenv env’
Bướt 3 Chạy lệnh ‘env\Scripts\activate’ để kích hoạt môi trường ảo
HÌNH 12 kết quả chạy lệnh ‘env\Scripts\activate’
Bướt 4 Chạy lệnh ‘pip install -r requirements.txt’ để cài các thư viện cần thiết cho ứngdụng
Trang 21Bướt 5 Chạy lệnh ‘python manage.py runserver’ để khởi động ứng dụng
HÌNH 14 kết quả chạy lệnh ‘python manage.py runserver’
Bướt 6 Mở trình duyệt web và truy cập vào link ‘http://127.0.0.1:8000/’ để sử dụng
HÌNH 13 kết quả chạy lệnh ‘pip install -r requirements.txt’