Khảo sát một số thuật toán học máy trong việc dự đoán hoạt tính của hợp chất hoá học Khảo sát một số thuật toán học máy trong việc dự đoán hoạt tính của hợp chất hoá học Khảo sát một số thuật toán học máy trong việc dự đoán hoạt tính của hợp chất hoá học Khảo sát một số thuật toán học máy trong việc dự đoán hoạt tính của hợp chất hoá học
Trang 1TRƯỜNG ĐẠI HỌC LẠC HỒNG
***
ĐỖ HOÀNG TÚ
KHẢO SÁT MỘT SỐ THUẬT TOÁN HỌC MÁY TRONG VIỆC DỰ ĐOÁN
HOẠT TÍNH CỦA HỢP CHẤT HOÁ HỌC
LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN
Đồng Nai, Năm 2023
Trang 2BỘ GIÁO DỤC VÀ ĐÀO TẠO
LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN
Người hướng dẫn khoa học: PGS TS TRẦN VĂN LĂNG
Đồng Nai, Năm 2023
Trang 3LỜI CẢM ƠN
Đầu tiên, tôi muốn bày tỏ lòng biết ơn chân thành và sâu sắc đến Giảng viên hướng dẫn PGS.TS Trần Văn Lăng đã tận tâm và kiên nhẫn hướng dẫn tôi trong suốt quá trình học tập, nghiên cứu và thực hiện luận văn này
Tôi xin gửi lời cám ơn đến Ban Giám hiệu, các Giảng viên, các Thầy/Cô khoa Sau Đại học trường Đại học Lạc Hồng đã tạo điều kiện để tôi có thể học tập và tiếp thu được những kiến thức quý báu trong thời gian học tại Trường
Cuối cùng, tôi muốn gửi lời cám ơn đến với Gia đình, các bạn học và những người đã luôn động viên, hỗ trợ và tin tưởng vào khả năng của tôi Sự ủng hộ tinh thần và tình yêu thương từ các bạn là nguồn động lực quan trọng để tôi có thể hoàn thành luận văn này
Người thực hiện
Đỗ Hoàng Tú
Trang 4LỜI CAM ĐOAN
Tôi, Đỗ Hoàng Tú, cam kết rằng luận văn này được thực hiện dưới sự hướng dẫn của giảng viên PGS.TS Trần Văn Lăng và tất cả các thông tin kết quả trình bày trong luận văn là công việc của chính tôi
Tôi cam đoan rằng tất cả các nguồn thông tin, tài liệu, bài báo, nghiên cứu và các tài liệu tham khảo được sử dụng trong luận văn này đã được liệt kê và trích dẫn đúng cách theo quy định và quy tắc nghiên cứu khoa học Tôi xác nhận rằng tôi đã tuân thủ các nguyên tắc đạo đức nghiên cứu, bao gồm việc trích dẫn chính xác và không vi phạm quyền tác giả của bất kỳ tác giả nào Tất cả các số liệu, dữ liệu và thông tin được sử dụng trong luận vane này là chính xác và được đảm bảo tính toàn vẹn Bất kỳ sai sót hay thiếu sót nào trong luận văn này là trách nhiệm của riêng tôi
và không phản ánh ý kiến hay chất lượng của nhà trường, cơ quan, đơn vị hoặc cá nhân nào khác
Tôi xin cam đoan rằng luận văn này là công việc độc lập và tôi chịu trách nhiệm hoàn toàn về nội dung, ý kiến và quan điểm được trình bày trong luận văn này
Người thực hiện
Đỗ Hoàng Tú
Trang 5TRƯỜNG ĐẠI HỌC LẠC HỒNG KHOA SAU ĐẠI HỌC
TÓM TẮT LUẬN VĂN
(Dùng cho học viên và người hướng dẫn)
Đề tài: Khảo sát một số thuật toán học máy trong việc dự đoán hoạt tính của hợp chất hoá học
Ngành: Công nghệ thông tin Mã số: 8480201
Học viên: Đỗ Hoàng Tú
Người hướng dẫn: PGS.TS Trần Văn Lăng
NỘI DUNG TÓM TẮT
1 Nội dung được giao và kết quả mong đợi của người hướng dẫn
- Tìm hiểu một số dataset về thí nghiệm sinh học trong số 21 dataset được công
bố trên Kaggle
- Tìm hiểu một số thư viện liên quan để truy cập được tập tin biểu diễn cấu trúc hoá học của hợp chất
- Tìm hiểu một số thuật toán để tạo mẫu (resample) với dữ liệu mất cân bằng
- Tìm hiểu phương pháp rút trích đặc trưng để giảm thời gian huấn luyện, tăng
độ chính xác nhận diện hợp chất của các tập dữ liệu
- Tìm hiểu cách thức chọn các tham số (hyperparameters) cho các phương pháp huấn luyện được sử dụng để tăng cường tính hiệu quả của mô hình
- Sử dụng các tri thức đã tìm hiểu để viết các module chương trình trên một số dataset đã nêu
- Trên cơ sở các thử nghiệm, chọn ra phương pháp tối ưu để phân loại hoạt tính
- Một số module chương trình dạng ipynb đưa lên GitHub về các nội dung liên quan để sử dụng trong dự đoán hoạt tính
- Thử nghiệm và đánh giá kết quả
- Hoàn thiện hệ thống, viết báo cáo luận văn
2 Cách thức giải quyết vấn đề
Giải pháp đưa ra để giải quyết vấn đề “Khảo sát một số thuật toán học máy trong việc dự đoán hoạt tính của hợp chất hoá học” được thực hiện như sau:
Trang 6- Sử dụng ngôn ngữ lập trình Python để viết chương trình
- Dùng các gói thư viện Scikit learn, Imbalanced learn cho các vấn đề liên quan đến học máy
- Dùng gói thư viên Keras, DeepChem liên quan đến học sâu
- Dùng gói thư viện RDKit để truy cập các hợp chất hóa học
- Theo dõi và cải thiện: Theo dõi hiệu suất của việc cân bằng dữ liệu và cải thiện mô hình đối với các phương pháp nhằm tăng cường tính hiệu quả của mô hình
dữ liệu mất cân bằng
3 Đánh giá về mặt khoa học của kết quả
- Việc nghiên cứu một số thuật toán học máy trong việc dự đoán hoạt tính của hợp chất hóa học giúp cải thiện hiệu suất, tăng cường độ chính xác của mô hình với
độ tin cậy cao Giúp tiết kiệm thời gian và chi phí so với các phương pháp thử nghiệm truyền thống, hạn chế số lượng thử nghiệm và tối ưu hóa quy trình nghiên cứu
- Luận văn đã hoàn thành mục tiêu nghiên cứu đề ra là một số module chương trình dạng ipynb đưa lên GitHub về các nội dung liên quan để sử dụng trong dự đoán hoạt tính dựa trên mô hình huấn luyện
- Luận văn nghiên cứu có thể phát triển để hỗ trợ trong việc tối ưu hóa thiết kế các ứng dụng dự đoán hoạt chất, tính chất sinh học của các hợp chất và mô phỏng dược động học
4 Những vấn đề còn tồn tại so với nội dung được giao (nếu có)
Đồng Nai, ngày …… tháng ……năm 2023
Trang 7MỤC LỤC
LỜI CẢM ƠN i
LỜI CAM ĐOAN ii
TÓM TẮT LUẬN VĂN iii
MỤC LỤC v
DANH MỤC TỪ VIẾT TẮT viii
DANH MỤC BẢNG ix
DANH MỤC HÌNH x
Chương II: TỔNG QUAN 1
II.1 Giới thiệu về đề tài luận văn 1
II.2 Một số công trình nghiên cứu tiêu biểu: 2
II.3 Một số vấn đề cơ sở lý thuyết liên quan 4
II.3.1 Hóa tin: 4
II.3.2 Học máy (Machine Learning) 8
Học có giám sát (Supervised Learning): 9
Học không giám sát (Unsupervised Learning): 11
Học bán giám sát (Semi-supervised Learning): 14
Học tăng cường (Reinforcement Learning): 14
Các phương pháp khác: 15
II.3.3 Học sâu (Deep Learning) 15
II.4 Tổng kết chương 18
Chương III: BÀI TOÁN CÂN BẰNG DỮ LIỆU TRONG DỰ ĐOÁN HOẠT TÍNH CỦA HÓA CHẤT 19
III.1 Giới thiệu khái quát 19
III.1.1 Rút gọn thuộc tính 19
III.1.2 Chọn tham số theo Bayesian optimization 21
Trang 8III.1.3 Xử lý dữ liệu mất cân bằng 21
III.1.3.1 Một số cách resample mẫu dữ liệu 22
Phương pháp SMOTE 22
Phương pháp ADASYN 23
Phương pháp Borderline SMOTE 23
Phương pháp SMOTE-ENN 24
Phương pháp SMOTETomek 25
Phương pháp tăng cường ngẫu nhiên 26
III.1.3.2 Mô hình gan trong việc xử lý dữ liệu mất cân bằng 27
III.2 Tổng kết chương 31
Chương IV: MÔ HÌNH HUẤN LUYỆN 32
IV.1 Phương pháp học máy 32
IV.1.1.1 Kỹ thuật học phối hợp: 32
a) Bagging (Bootstrap Aggregating): 32
b) Boosting: 34
IV.1.1.2 Kỹ thuật học phối hợp trong thư viện imbalanced-learn: 36
IV.2 Phương pháp học sâu 38
IV.2.1 Tối ưu hóa Adam 38
IV.2.2 Dùng hàm mất mát 39
IV.3 Tổng kết chương 41
Chương V: KẾT QUẢ THỬ NGHIỆM 42
V.1 Bộ dữ liệu 42
Bộ dữ liệu: 42
Thang điểm đánh giá: 45
V.2 Kết quả thử nghiệm 46
V.2.1 Tiền xử lý: 46
Trang 9V.2.2 Thực nghiệm qua các phương pháp tiếp cận: 48
V.2.3 Kết quả thực nghiệm: 53
Chương VI: KẾT LUẬN 56
VI.1 Kết quả thực hiện được 56
VI.2 Những hạn chế 56
TÀI LIỆU THAM KHẢO 58
Trang 10DANH MỤC TỪ VIẾT TẮT Thuật ngữ
Adam Adaptive Moment Estimation Ước lượng Moment thích nghi ANN Artificial Neural Network Mạng nơ-ron nhân tạo
CNN Convolutional Neural
GAN Generative Adversarial
GB Gradient Boosting Tăng cường Gradient
KNN K-Nearest Neighbors K láng giềng gần nhất
LR Logistic Regression Hồi quy logistic
MSE Mean Squared Error Hàm mất mát bình phương nhỏ
nhất NLP Natural Language Processing Xử Lý Ngôn Ngữ Tự Nhiên ReLU Rectified Linear Unit Đơn Vị Tuyến Tính Chỉnh Lưu
RNN Recurrent Neural Network Mạng Nơ-ron hồi quy
SVM Support Vector Machine Vector hỗ trợ
Trang 11DANH MỤC BẢNG
Bảng 1 Danh sách 20 phương pháp tiếp cận theo thang điểm (Score) 53 Bảng 2 Danh sách các giải pháp có thể chấp nhận 54
Trang 12DANH MỤC HÌNH
Hình 1.1 Machine Learning là gì? 9
Hình 1.2 Học có giám sát (Supervised Learning) 10
Hình 1.3 Hình minh họa K-means 12
Hình 1.4 Hình minh họa giảm chiều dữ liệu sử dụng phương pháp PCA 13
Hình 1.5 Hình minh họa mô hình mạng GAN 13
Hình 1.6 Hình minh họa Gradient Descent trên hàm mất mát 17
Trang 13CHƯƠNG I: TỔNG QUAN I.1 Giới thiệu về đề tài luận văn
Nhu cầu sử dụng máy tính để giải quyết những vấn đề của Hóa học đã được đặt ra từ lâu, đặc biệt ngành nghiên cứu hóa học bằng tin học (Cheminformatics) hay còn gọi là Hóa tin học đang trở thành một trong những ngành quan trọng, đóng góp rất nhiều công cụ, phương pháp và khái niệm mới để giải quyết các thách thức
và nâng cao hiệu suất trong lĩnh vực hóa học Một số đóng góp quan trọng có thể kể đến như: Mô phỏng và mô hình hóa, thiết kế hợp chất, dự đoán hoạt tính, xử lý và phân tích dữ liệu, tối ưu hóa quá trình…Đặc biệt các công trình nghiên cứu về dự đoán hoạt tính của các hợp chất hóa học là một quá trình tốn kém về thời gian và công sức với nguồn dữ liệu hạn chế, các tính chất không liên tục của dữ liệu hóa học
và độ tin cậy của dữ liệu
Bài toán dự đoán hoạt tính là một ứng dụng quan trọng của học máy trong lĩnh vực hóa học và dược lý, nơi mà các mô hình học máy được sử dụng để dự đoán khả năng một hợp chất hóa học có hoạt tính sinh học cụ thể nào đó, như khả năng kích hoạt hoặc ức chế một loại protein, hoặc khả năng làm thuốc chữa bệnh Các thuật toán học máy như Support Vector Machines (SVM), Random Forests, Neural Network và Convolutional Neural Networks có thể được áp dụng để xây dựng các
mô hình dự đoán dựa trên cấu trúc phân tử của hóa chất và dữ liệu về hoạt tính đã biết từ các thí nghiệm trước đó
Việc áp dụng các phương pháp học máy (machine learning), học sâu learning) đã mở ra một cánh cửa mới cho việc triển khai các công trình nghiên cứu
(deep-dự đoán hoạt tính của các hợp chất hóa học một cách nhanh hơn, tiết kiệm hơn về thời gian, nhân lực và cho những hiệu suất nghiên cứu cao hơn
Đề tài luận văn này tập trung vào các nghiên cứu sau:
- Khảo sát sự phụ thuộc của các thuộc tính hay đặc trưng trong bộ dữ liệu nhằm rút gọn các thuộc tính
- Xử lý mất cân bằng dữ liệu bằng kỹ thuật lấy mẫu lại (resampling), tăng cường mẫu (oversampling) hay giảm số lượng mẫu (undersampling)
- Mục tiêu tìm hiểu và so sánh hiệu suất của các thuật toán học máy khác nhau,
từ đó đưa ra những kết quả giúp cải thiện quá trình đánh giá hoạt tính của các hợp chất hóa học một cách hiệu quả và tiết kiệm thời gian
Trang 14I.2 Một số công trình nghiên cứu tiêu biểu:
Bài báo "A Deep Learning Approach to Antibiotic Discovery" [1] nghiên cứu
sử dụng học sâu để phát hiện các chất kháng khuẩn mới, các tác giả đã phát triển một
mô hình học sâu để dự đoán các phân tử có tiềm năng làm chất kháng sinh dựa trên cấu trúc hóa học của chúng Công trình này cũng đã thử nghiệm từ hơn 107 triệu phân tử được quản lý từ cơ sở dữ liệu ZINC15 Kết quả đã xác định được tám hợp chất kháng khuẩn có cấu trúc xa các loại kháng sinh đã biết Công trình này làm nổi bật vai trò của các phương pháp tiếp cận học sâu từ đó giúp để mở rộng kho vũ khí kháng sinh thông qua việc phát hiện ra các phân tử kháng khuẩn có cấu trúc khác biệt Phát hiện này mở ra một hướng mới trong việc tìm kiếm thuốc kháng sinh, vượt qua các phương pháp truyền thống và tận dụng sức mạnh của học máy để phân tích
và dự đoán từ các cơ sở dữ liệu phân tử lớn Điều này không chỉ giúp tăng tốc quá trình khám phá thuốc mới mà còn mở rộng khả năng tìm kiếm các loại thuốc chống lại các bệnh nhiễm trùng ngày càng khó điều trị do kháng thuốc Thông qua việc sử dụng các phương tiện học máy có thể giúp giải quyết cuộc khủng hoảng kháng kháng sinh đang diễn ra trên toàn thế giới
Công trình "Predicting Antitumor Activity of Peptides by Consensus of
Regression Models Trained on a Small Data Sample" [2] tập trung vào việc giải quyết
bài toán hồi quy trên dữ liệu nhỏ, chỉ với 429 hợp chất thông qua việc sử dụng các phương pháp khác nhau như hồi quy tuyến tính, hồi quy đa thức, hồi quy với Gaussian kernel, mạng neuron, KNN, SVM, đây là điểm nổi bật của công trình là việc sử dụng “consensus of regression models”, nghĩa là sự kết hợp của nhiều mô hình hồi quy khác nhau để cải thiện độ chính xác của dự đoán trên một mẫu dữ liệu nhỏ Bài báo tập trung giải quyết vấn đề học quá dư thừa (overfitting), từ đó đã phát triển một phương pháp để dự đoán hoạt tính chống khối u của peptide bằng cách sử dụng sự đồng thuận của các mô hình hồi quy được huấn luyện trên một tập mẫu dữ liệu nhỏ Phương pháp này đã được chứng minh là có độ chính xác cao hơn các phương pháp trước đó, ngay cả khi chỉ sử dụng một tập mẫu dữ liệu nhỏ Đồng thời phương pháp này có thể sử dụng để phát triển các loại thuốc mới chống lại các khối
u Và cũng có thể được sử dụng để sàng lọc các peptide có hoạt tính chống khối u, từ
đó tiết kiệm chi phí và thời gian nghiên cứu Để xử lý dữ liệu nhằm hạn chế bớt việc học quá dư thừa (overfitting) trong quá trình huấn luyện có công trình "Large-scale
Trang 15evaluation of k-fold cross-validation ensembles for uncertainty estimation" [3] đăng
trên Journal of Cheminformatics năm 2023
Công trình “From Big Data to Artificial Intelligence: chemoinformatics meets
new challenges” của I.V.Tetko và O Engkvist (2020) [4], đề cập đến những thách
thức và cơ hội liên quan đến dữ liệu lớn trong Hóa tin Bài viết này trình bày việc tích hợp dữ liệu hóa học và sinh học quy mô lớn, cũng như việc sử dụng các phương pháp phân tích dữ liệu lớn và học máy để khai thác và trích xuất những hiểu biết có giá trị Bài viết cũng nhấn mạnh tác động của trí tuệ nhân tạo và học máy, đặc biệt là mạng lưới thần kinh, ngày càng được sử dụng nhiều hơn trong ngành công nghiệp hóa chất
Bài báo "Chemprop: A Machine Learning Package for Chemical Property
Prediction" [5] giới thiệu một gói phần mềm mới có tên Chemprop Gói phần mềm
này có thể được sử dụng để xây dựng và huấn luyện các mô hình học máy mà cụ thể hơn là học sâu, để dự đoán các tính chất hóa học từ cấu trúc của các hợp chất Chemprop sử dụng một kiến trúc mạng neuron nhân tạo mới có tên là Directed Message-Passing Neural Network (D-MPNN), và đã được chứng minh là có hiệu quả trong việc dự đoán các tính chất hóa học của các hợp chất Bài báo đã đánh giá hiệu quả của Chemprop trên một bộ dữ liệu gồm hơn 100.000 hợp chất Kết quả cho thấy Chemprop có thể dự đoán tính chất hóa học của các hợp chất với độ chính xác cao hơn các phương pháp khác
Bên cạnh những công trình nghiên cứu được công bố trên các tạp chí, kỷ yếu hội nghị; cũng có một số phần mềm hoặc công cụ khai thác các thuật toán học máy
để giải quyết bài toán đặt ra Chẳng hạn, AlphaFold (https://alphafold.com) là một phần mềm dự đoán cấu trúc 3D của protein với độ chính xác đáng cao Việc hiểu rõ cấu trúc protein có thể giúp dự đoán tương tác protein-ligand, từ đó định hướng cho thiết kế các phân tử có hoạt tính Bộ thư viện DeepChem (https://deepchem.io/about/)
là một thư viện mã nguồn mở sử dụng học sâu để dự đoán tính chất và hoạt tính của các phân tử Bản thân bộ thư viện này cũng hỗ trợ nhiều công việc, bao gồm dự đoán
độ liên kết hoặc khả năng hoạt hóa các phân tử Hoặc như ChemBERTa (https://arxiv.org/abs/2209.01712), đây là mô hình ngôn ngữ tiền huấn luyện đã được phát triển để dự đoán tính chất và hoạt tính của các phân tử Những mô hình này có thể học cấu trúc hóa học từ dữ liệu và dự đoán các tính chất quan trọng Kết quả này
Trang 16được công bố qua công trình "ChemBERTa-2: Towards Chemical Foundation Models" được đăng trên arXiv vào ngày 09 tháng 09 năm 2022 Đây là một công trình nghiên cứu về việc sử dụng mô hình ngôn ngữ lớn (LLM) để học các đặc trưng hóa học từ văn bản Từ đó các tác giả đã xây dựng một LLM mới được gọi là ChemBERTa-2, và cũng đã được huấn luyện trên một bộ dữ liệu gồm hơn 77 triệu chuỗi SMILES SMILES là một định dạng chuỗi để đại diện cho các phân tử hóa học
[6] Tác giả của công trình này cũng đã chứng minh là có thể học các đặc trưng hóa
học từ văn bản và có thể được sử dụng để thực hiện các nhiệm vụ hóa học như dự đoán hoạt tính sinh học, dự đoán cấu trúc phân tử và dịch ngôn ngữ hóa học Công trình này là một bước tiến quan trọng trong việc sử dụng LLM cho các nhiệm vụ hóa học LLM có thể được sử dụng để tự động hóa nhiều nhiệm vụ hóa học tốn thời gian
và tốn kém, và có thể giúp các nhà khoa học phát triển các loại thuốc và vật liệu mới
I.3 Một số vấn đề cơ sở lý thuyết liên quan
Trong luận văn này, việc khảo sát các đặc trưng của các thuộc tính, tinh chỉnh
dữ liệu để tránh sự chênh lệch của các quan sát trong cùng đặc trưng cũng như việc
áp dụng các kỹ thuật cân bằng dữ liệu, áp dụng các mô hình học máy, học sâu đòi hỏi việc tiếp cận bài toán cần một lượng lớn kiến thức về Hóa học, Máy học, Học sâu, các kỹ thuật tìm kiếm lưới (grid search), kiểm tra chéo (cross validates)…Tuy nhiên trong phạm vi và giới hạn, đề tài chỉ giới thiệu các cơ sở lý thuyết liên quan
I.3.1 Hóa tin:
Hoá tin là một ngành khoa học ứng dụng tin học vào hóa học Nó sử dụng các phương pháp và công nghệ tin học để mô phỏng, phân tích, xử lý và lưu trữ thông tin hóa học Hoá tin có nhiều ứng dụng trong các lĩnh vực của hóa học, bao gồm:
• Hóa lý: Hoá tin được sử dụng để mô phỏng cấu trúc và tính chất của các phân
tử và nguyên tử, cũng như các phản ứng hóa học Điều này giúp các nhà hóa học hiểu rõ hơn về các cơ chế hóa học và khám phá ra các hợp chất mới
• Hóa sinh: Hoá tin được sử dụng để nghiên cứu cấu trúc và chức năng của các phân tử sinh học, chẳng hạn như protein, axit nucleic và carbohydrate Điều này giúp các nhà hóa sinh hiểu rõ hơn về cơ chế của các quá trình sinh học và phát triển các phương pháp điều trị bệnh mới
Trang 17• Hóa phân tích: Hoá tin được sử dụng để phân tích dữ liệu hóa học, chẳng hạn như dữ liệu quang phổ và dữ liệu khối lượng Điều này giúp các nhà hóa học xác định các hợp chất và nghiên cứu các phản ứng hóa học
• Hóa học tính toán: Hoá tin được sử dụng để tính toán các đặc tính hóa học của các hợp chất, chẳng hạn như năng lượng liên kết và độ bền Điều này giúp các nhà hóa học thiết kế các hợp chất mới có tính chất mong muốn
Một số định nghĩa về chất, hợp chất, hoạt tính trong hóa học là gì?
• Chất: Một chất là một dạng của vật chất có thành phần và đặc tính hóa học đồng nhất Chất có thể là một nguyên tố hoặc một hợp chất Nó không thể được tách thành các thành phần khác bằng phương pháp hóa học thông thường Chất có các tính chất đặc trưng như điểm nóng chảy, điểm sôi, mật
độ, và khả năng dẫn điện, mà đều không thay đổi dù ở lượng mẫu lớn hay nhỏ
• Hợp chất: là một loại chất được tạo thành từ hai hoặc nhiều nguyên tố hóa học khác nhau đã liên kết với nhau thông qua liên kết hóa học Các nguyên tố trong một hợp chất luôn có tỷ lệ số lượng nguyên tử cố định Ví dụ, nước (H₂O) là một hợp chất của hydro và oxy với tỷ lệ hai nguyên tử hydro cho mỗi nguyên tử oxy Hợp chất có các tính chất hóa học khác biệt so với các nguyên
tố cấu thành nó
• Hoạt tính: Hoạt tính của chất, hay còn gọi là hoạt tính hóa học, là khả năng của một chất để tham gia vào các phản ứng hóa học Điều này không chỉ phụ thuộc vào bản chất của chất đó mà còn phụ thuộc vào điều kiện môi trường xung quanh như nhiệt độ, áp suất, và sự hiện diện của các chất khác Hoạt tính của chất có thể được đánh giá thông qua tốc độ phản ứng hoặc thông qua mức
độ mà nó tác động đến các hệ thống sinh học hoặc vật liệu khác Trong dược học hoặc sinh học, hoạt tính của chất còn có thể chỉ khả năng của chất đó trong việc tương tác với các cơ chế sinh học, như là khả năng gắn kết với một thụ thể cụ thể hoặc ức chế một enzyme nào đó
Một số ứng dụng cụ thể của hoá tin trong hóa học bao gồm:
• Sử dụng các phần mềm mô phỏng động lực học phân tử để nghiên cứu cấu trúc và tính chất của các phân tử protein, chẳng hạn như cách thức hoạt động của các enzyme
Trang 18• Sử dụng các phần mềm phân tích dữ liệu quang phổ để xác định thành phần của các hợp chất hữu cơ
• Sử dụng các phần mềm hóa học tính toán để tính toán năng lượng liên kết của các phân tử, chẳng hạn như để xác định cấu trúc phân tử ổn định nhất
Hoá tin là một ngành khoa học đang phát triển nhanh chóng Với sự phát triển của công nghệ máy tính, hoá tin đang mở ra nhiều khả năng mới cho các nhà khoa học hóa học trong việc nghiên cứu và ứng dụng hóa học
Ngoài những ứng dụng đã nêu ở trên, hoá tin còn có nhiều ứng dụng khác trong hóa học, chẳng hạn như:
• Ứng dụng trong giáo dục hóa học: Hoá tin được sử dụng để tạo ra các mô hình hóa học tương tác, các ứng dụng học tập trực tuyến và các công cụ giảng dạy khác Điều này giúp các sinh viên học hóa học dễ dàng và hiệu quả hơn
• Ứng dụng trong công nghiệp hóa học: Hoá tin được sử dụng để thiết kế quy trình sản xuất hóa chất, kiểm soát chất lượng sản phẩm và quản lý an toàn hóa chất Điều này giúp các nhà sản xuất hóa chất cải thiện hiệu quả và an toàn của sản xuất
• Ứng dụng trong môi trường: Hoá tin được sử dụng để nghiên cứu các tác động của hóa chất đối với môi trường, phát triển các phương pháp xử lý chất thải hóa học và quản lý môi trường Điều này giúp bảo vệ môi trường khỏi ô nhiễm hóa chất
Dưới đây là một số ví dụ cụ thể về ứng dụng của hoá tin trong các lĩnh vực này:
• Trong giáo dục hóa học: Phát triển một nền tảng học tập trực tuyến tích hợp
sử dụng phương tiện đồ họa và mô phỏng để tăng cường sự tham gia và hiểu biết của học sinh về các khái niệm hóa học Cung cấp các bài giảng đa phương tiện, bài kiểm tra trực tuyến và tương tác giữa giáo viên và học sinh Tạo môi trường phòng thí nghiệm ảo cho phép sinh viên tiến hành thí nghiệm và học tập thực hành mà không cần sử dụng hóa chất Hỗ trợ việc dạy và học từ xa, đồng thời giảm thiểu rủi ro và chi phí về an toàn trong phòng thí nghiệm
• Mô hình hóa học tương tác được sử dụng để giúp sinh viên hiểu rõ hơn về các khái niệm hóa học, chẳng hạn như cấu trúc phân tử và các phản ứng hóa học
Trang 19• Các ứng dụng học tập trực tuyến được sử dụng để cung cấp cho sinh viên các bài học hóa học tương tác và các bài tập thực hành
• Các công cụ giảng dạy khác, chẳng hạn như các phần mềm mô phỏng và phân tích dữ liệu, được sử dụng để giúp các giảng viên hóa học giảng dạy hiệu quả hơn
• Trong công nghiệp hóa học: Sử dụng phần mềm mô phỏng hóa học để mô phỏng quy trình sản xuất và dự đoán hiệu suất Dự đoán tính chất của các hợp chất mới bằng kỹ thuật học máy để nhanh chóng lựa chọn và phát triển sản phẩm mới
• Hoá tin được sử dụng để thiết kế quy trình sản xuất hóa chất mới, hiệu quả hơn và thân thiện với môi trường
• Hoá tin được sử dụng để kiểm soát chất lượng sản phẩm hóa chất, đảm bảo rằng sản phẩm đáp ứng các tiêu chuẩn chất lượng
• Hoá tin được sử dụng để quản lý an toàn hóa chất, ngăn ngừa tai nạn hóa học
• Trong môi trường: Sử dụng các mô hình hóa học để dự đoán và đánh giá tác động của các chất gây ô nhiễm đến môi trường và sức khỏe con người Phân tích sự tương tác giữa các hóa chất để dự đoán sự thay đổi và lan rộng của hệ sinh thái, đồng thời xây dựng các mô hình dự đoán để xác định các khu vực
có nguy cơ cao và quản lý các trường hợp khẩn cấp
• Hoá tin được sử dụng để nghiên cứu các tác động của hóa chất đối với môi trường, chẳng hạn như sự ô nhiễm nguồn nước, đất và không khí
• Hoá tin được sử dụng để phát triển các phương pháp xử lý chất thải hóa học, giúp giảm thiểu tác động của hóa chất đối với môi trường
• Hoá tin được sử dụng để quản lý môi trường, chẳng hạn như giám sát chất lượng không khí, đất và nước
Hoá tin là một ngành khoa học đang phát triển nhanh chóng và có tiềm năng ứng dụng rộng rãi trong hóa học Với sự phát triển của công nghệ máy tính, hoá tin
sẽ tiếp tục đóng vai trò quan trọng trong việc thúc đẩy sự phát triển của hóa học và ứng dụng hóa học trong thực tiễn
Trang 20Hoá tin là một ngành khoa học đang phát triển nhanh chóng, nhưng vẫn còn nhiều thách thức cần phải vượt qua Một số thách thức chính của ngành hoá tin hiện nay bao gồm:
• Sự phức tạp của các hệ thống hóa học: Các hệ thống hóa học, chẳng hạn như các phân tử và các phản ứng hóa học, thường rất phức tạp Điều này khiến cho việc mô phỏng và phân tích các hệ thống này bằng máy tính trở nên khó khăn
và tốn kém
• Sự thiếu hụt dữ liệu hóa học: Để phát triển các mô hình hoá tin chính xác, cần
có một lượng lớn dữ liệu hóa học Tuy nhiên, dữ liệu hóa học thường bị thiếu hụt hoặc không đầy đủ
• Sự phát triển nhanh chóng của công nghệ máy tính: Công nghệ máy tính đang phát triển nhanh chóng, khiến cho các mô hình hoá tin cần phải được cập nhật
và nâng cấp liên tục Điều này đòi hỏi các nhà khoa học hoá tin phải có kiến thức và kỹ năng cập nhật về công nghệ máy tính
Dưới đây là một số giải pháp để giải quyết những thách thức này:
• Phát triển các mô hình hoá tin mới: Các nhà khoa học hoá tin cần tiếp tục phát triển các mô hình hoá tin mới, có khả năng mô phỏng và phân tích các hệ thống hóa học phức tạp hơn
• Tăng cường thu thập và chia sẻ dữ liệu hóa học: Các cơ quan nghiên cứu và các doanh nghiệp cần tăng cường thu thập và chia sẻ dữ liệu hóa học Điều này sẽ giúp các nhà khoa học hoá tin có được dữ liệu cần thiết để phát triển các mô hình hoá tin chính xác hơn
• Tăng cường đào tạo và phát triển nguồn nhân lực: Các trường đại học và các trung tâm đào tạo cần tăng cường đào tạo và phát triển nguồn nhân lực hoá tin Điều này sẽ giúp đảm bảo rằng có đủ nguồn nhân lực có trình độ cao để đáp ứng nhu cầu phát triển của ngành hoá tin
Với sự nỗ lực của các nhà khoa học hoá tin và sự hỗ trợ của các cơ quan nghiên cứu và đào tạo, những thách thức của ngành hoá tin hiện nay sẽ được giải quyết, mở
ra nhiều cơ hội mới cho sự phát triển của ngành hoá tin trong tương lai
I.3.2 Học máy (Machine Learning)
Trang 21Hình 1.1 Machine Learning là gì?
Khi nhà khoa học máy tính Arthur Samuel phát triển một chương trình cờ vây
có thể học hỏi từ trải nghiệm của chính nó vào năm 1959, lịch sử học máy được bắt đầu, đây là một trong những ứng dụng đầu tiên của học máy Kể từ đó, lĩnh vực này
đã phát triển mạnh mẽ nhờ sự tiến bộ trong thuật toán, sức mạnh tính toán, và sự gia tăng lượng dữ liệu có sẵn
Học máy là một lĩnh vực trong trí tuệ nhân tạo (Artificial Intelligence - AI), tập trung vào việc xây dựng, phát triển các thuật toán và mô hình để máy tính, cho phép máy tính học hỏi và có thể đưa ra các dự đoán hoặc quyết định dựa trên các cơ sở dữ liệu đã được "học" trước đó Các thuật toán học máy được xây dựng trên một số lý thuyết cơ bản từ thống kê và tính toán Một trong những nguyên tắc cơ bản là giả thuyết học tập (learning hypothesis), nói rằng máy móc có thể học hỏi từ dữ liệu Nền tảng lý thuyết cho học máy bao gồm lý thuyết xác suất, tối ưu hóa, đại số tuyến tính
và phân tích hàm số Có 04 loại chính của học máy:
Học có giám sát (Supervised Learning):
Đây là loại phổ biến nhất của học máy, trong đó mô hình được huấn luyện trên một tập dữ liệu đã được gán nhãn Nói cách khác, mỗi mẫu dữ liệu trong tập huấn luyện đều có một đầu ra hoặc mục tiêu tương ứng được biết trước Mục tiêu của học
có giám sát là để mô hình có thể dự đoán đầu ra khi được cung cấp dữ liệu mới
Trang 22Hình 1.2 Học có giám sát (Supervised Learning)
Các bài toán về học có giám sát phổ biến bao gồm hồi quy (regression) và phân loại (classification)
• Hồi quy (regression): Dự đoán giá trị của một biến dựa trên các biến khác Ví dụ: dự đoán giới tính và tuổi dựa trên khuôn mặt, dự đoán giá cả hang hóa thị trường dựa trên các chỉ số tiêu dùng, nguyên vật liệu…
• Phân loại (classification): Phân loại dữ liệu thành các lớp khác nhau Ví dụ: phân loại hình ảnh thành các lớp “chó” và “mèo”
Có nhiều thuật toán học có giám sát khác nhau, bao gồm:
• Support vector machine (SVM): là một mô hình học có giám sát mạnh mẽ được sử dụng trong cả phân loại và hồi quy Trong bối cảnh phân loại, SVM nổi tiếng với khả năng tìm ra siêu phẳng (hyperplane) phân chia tối ưu giữa các lớp dữ liệu Mục tiêu của siêu phẳng này là để tối đa hóa khoảng cách (margin) giữa các lớp dữ liệu khác nhau, giúp tăng khả năng tổng quát hóa của mô hình trên dữ liệu chưa biết
• Logistic Regression (Hồi quy Logistic) là một mô hình thống kê được sử dụng
để mô hình hóa xác suất của một lớp hoặc sự kiện xảy ra, chẳng hạn như pass/fail, win/lose, alive/dead hoặc healthy/sick Mô hình này được sử dụng rất phổ biến trong các bài toán phân loại nhị phân Logistic regression hoạt động bằng cách sử dụng một hàm logistic (còn gọi là hàm sigmoid) để biến đổi đầu ra của một mô hình tuyến tính w ⋅ x + b thành một giá trị xác suất nằm trong khoảng từ 0 đến 1
Trang 23• Decision Trees (Cây quyết định) là một phương pháp học máy giám sát được
sử dụng cho cả nhiệm vụ phân loại và hồi quy Nó hoạt động bằng cách chia không gian đặc trưng thành các phần nhỏ hơn, dựa trên các quyết định hoặc câu hỏi, tạo ra một cấu trúc giống như cây với "nút" và "lá" Một cây quyết định hoạt động bằng cách sử dụng một chuỗi các câu hỏi "có" hoặc "không"
để dẫn tới quyết định cuối cùng Mỗi câu hỏi liên quan đến một đặc trưng và một ngưỡng cụ thể Việc chia này được thực hiện một cách đệ quy cho đến khi đáp ứng một số điều kiện dừng, chẳng hạn như độ sâu tối đa của cây hoặc
số lượng mẫu tối thiểu trong một nút
Học không giám sát (Unsupervised Learning):
Trong loại hình này, thuật toán được huấn luyện trên tập dữ liệu không có nhãn, nghĩa là đầu ra mong muốn không được cung cấp Mục tiêu của học không giám sát
là phát hiện các mô hình, cấu trúc hoặc thông tin hữu ích từ dữ liệu mà không cần sự hướng dẫn hoặc gán nhãn từ con người Mục tiêu của học không giám sát là tim hiểu những cấu trúc ẩn trong dữ liệu, như các cụm dữ liệu, phân phối xác suất, hoặc biểu
đồ tương quan Học không giám sát thường được sử dụng khi chúng ta có dữ liệu nhưng không có thông tin cụ thể về cách phân loại hay dự đoán chúng Một số phương pháp học không giám sát phổ biến như:
• Phân cụm (Clusering): được sử dụng để phân nhóm các điểm dữ liệu thành các cụm dựa trên sự giống nhau hoặc có các đặc điểm chung Mục tiêu là các điểm dữ liệu trong cùng một cụm có đặc điểm tương tự nhau hơn so với các điểm dữ liệu ở các cụm khác Một số phương pháp phân cụm thông dụng như: K-Means Clustering; Hierarchical Clustering, DBSCAN (Density-Based Spatial Clustering of Applications with Noise), Mean-Shift Clustering, Spectra Clustering
Trang 24Hình 1.3 Hình minh họa K-means
• Liên kết (Association): được sử dụng để phát hiện các mối quan hệ hoặc khuynh hướng thường xảy ra giữa các mục hoặc sự kiện Trong dữ liệu khoa học, đây là một kỹ thuật phân tích để tìm ra các mối quan hệ hoặc liên kết giữa các biến trong một tập dữ liệu lớn Quy tắc liên kết không chỉ giúp phát hiện mối quan hệ giữa các mục mà còn có thể cung cấp hiểu biết sâu sắc về hành
vi, khuynh hướng, và kết nối không rõ ràng trong các tập dữ liệu lớn và phức tạp Một ví dụ nổi tiếng của quy tắc liên kết là Quy tắc Apriori, được sử dụng trong phân tích giỏ hàng hàng Quy tắc Apriori phát hiện các mặt hàng thường được mua cùng nhau trong cùng một giao dịch
• Giảm chiều dữ liệu (Dimensionality Reduction): là một kỹ thuật trong lĩnh vực thống kê và học máy mà qua đó số lượng biến ngẫu nhiên được giảm bớt, nhưng vẫn cố gắng giữ lại càng nhiều thông tin (biến thể, cấu trúc) từ dữ liệu ban đầu càng tốt Điều này được thực hiện bằng cách tạo ra một tập hợp mới của các biến, ít hơn số lượng ban đầu, mà vẫn bảo toàn được tính đặc trưng của dữ liệu Dữ liệu với số chiều thấp hơn đòi hỏi ít tài nguyên tính toán hơn,
dữ liệu chiều thấp (2D hoặc 3D) có thể được biểu diễn trực quan dễ dàng Việc loại bỏ các đặc trưng ít thông tin, có thể được xem như là giảm nhiễu để tập trung vào những thông tin quan trọng Một số phương pháp phổ biến như: Phân tích thành phần chính (Principal Component Analysis – PCA), Linear Discriminant Analysis (LDA), t-Distributed Stochastic Neighbor Embedding (t-SNE), Uniform Manifold Approximation and Projection (UMAP)
Trang 25Hình 1.4 Hình minh họa giảm chiều dữ liệu sử dụng phương pháp PCA
• Ước lượng mật độ (Density Estimation): Mục tiêu của Ước lượng mật độ là
để xác định hàm mật độ xác suất (probability density function - PDF) của một biến ngẫu nhiên dựa trên một bộ dữ liệu mẫu Điều này cho phép chúng ta hiểu được cách thức phân bố dữ liệu trong không gian của nó mà không cần thông tin nhãn hoặc phân loại trước Việc hiểu được phân phối cơ bản của dữ liệu có thể hỗ trợ trong việc phân tích dữ liệu tiếp theo và kỹ thuật chế tạo đặc trưng Trong các mô hình sinh (generative models), như Mạng Đối nghịch Sinh (Generative Adversarial Networks - GAN), ước lượng mật độ có thể là một phần của quá trình để học hỏi phân phối từ đó lấy mẫu các điểm dữ liệu mới
Hình 1.5 Hình minh họa mô hình mạng GAN
Trang 26Học bán giám sát (Semi-supervised Learning):
Học bán giám sát (Semi-supervised Learning): Kết hợp giữa các phương pháp học có giám sát và không giám sát, sử dụng cả dữ liệu có nhãn lẫn không có nhãn trong quá trình huấn luyện Trong học bán giám sát, mô hình được huấn luyện sử dụng một lượng lớn dữ liệu không được gán nhãn cùng với một lượng nhỏ dữ liệu được gán nhãn Đây là một phương pháp hữu ích khi việc gán nhãn dữ liệu là tốn kém hoặc tốn thời gian, nhưng bạn vẫn có thể thu được một số nhãn để cung cấp thông tin hướng dẫn cho quá trình học của mô hình Một số phương pháp trong học bán giám sát:
• Tự huấn luyện (Self-training): Bắt đầu từ mô hình được huấn luyện với dữ liệu gán nhãn, sau đó sử dụng mô hình đó để dự đoán nhãn cho dữ liệu không gán nhãn Những dự đoán có độ tin cậy cao được thêm vào tập dữ liệu huấn luyện ban đầu và quá trình huấn luyện lặp lại với tập dữ liệu mở rộng
• Học đồng cấu (Co-training): Khi có hai tập dữ liệu (hoặc hai tập các đặc trưng) độc lập và đầy đủ cho cùng một tác vụ, hai mô hình được huấn luyện đồng thời, mỗi mô hình với một tập dữ liệu/đặc trưng Mỗi mô hình sau đó gán nhãn cho các điểm dữ liệu không gán nhãn và những nhãn này được sử dụng để cập nhật mô hình kia
• Học chung đồ thị (Graph-based Learning): Xây dựng một đồ thị liên kết dữ liệu gán nhãn và không gán nhãn dựa trên độ tương tự Sử dụng cấu trúc đồ thị để lan truyền thông tin nhãn từ dữ liệu được gán nhãn sang dữ liệu không được gán nhãn
• Mô hình hỗn hợp (Mixup Models): Kết hợp các mẫu dữ liệu từ cả hai loại (có
và không có nhãn) để tạo ra các mẫu mới, thường thông qua một quá trình nào
đó như lấy trung bình trọng số, với hy vọng rằng mô hình có thể học được từ cấu trúc dữ liệu tổng quát
Học tăng cường (Reinforcement Learning):
Học tăng cường (Reinforcement Learning): Đây là một loại học máy mà trong
đó thuật toán (thường được gọi là tác tử) học cách đưa ra quyết định thông qua việc thử và sai, từ quá trình tương tác với môi trường Không giống như học có giám sát, không có đầu ra chính xác được gán trước, và không giống như học không giám sát,
Trang 27không phải là chỉ phát hiện cấu trúc từ dữ liệu Thay vào đó, mô hình học cách hành
xử dựa trên phản hồi mà nó nhận được từ môi trường theo dạng phần thưởng hoặc hình phạt Một số phương pháp học tăng cường:
• Giá trị dự đoán (Value-based): Tập trung vào việc học giá trị của mỗi trạng thái, hoặc cặp trạng thái-hành động, để dự đoán tổng phần thưởng kỳ vọng
• Chính sách dự đoán (Policy-based): Trực tiếp học một chính sách mà tác tử
có thể áp dụng để chọn hành động mà không cần đánh giá giá trị
• Mô hình hướng chính sách và giá trị (Model-free and Model-based RL): Model-free: Tác tử học mà không cần một mô hình cụ thể của môi trường; Model-based: Tác tử học một mô hình của môi trường để đưa ra dự đoán về kết quả của các hành động
• Học tăng cường sâu (Deep Reinforcement Learning): Kết hợp học tăng cường với học sâu để có thể xử lý các môi trường phức tạp với dữ liệu không tường minh hoặc có chiều cao
Các phương pháp khác:
• Học chuyển giao (Transfer Learning): Là phương pháp nơi mô hình được huấn luyện trên một nhiệm vụ có dữ liệu dồi dào, sau đó kiến thức này được chuyển giao để huấn luyện cho một nhiệm vụ khác với dữ liệu hạn chế
• Học đa nhiệm (Multi-task Learning): Là phương pháp huấn luyện mô hình trên nhiều nhiệm vụ cùng lúc, với hy vọng rằng kiến thức từ mỗi nhiệm vụ có thể giúp cải thiện hiệu suất của các nhiệm vụ khác
I.3.3 Học sâu (Deep Learning)
Học sâu là một nhánh của học máy, bắt nguồn từ mạng nơ-ron nhân tạo Được biết đến với khả năng mô phỏng cách mà bộ não con người phân tích và xử lý thông tin bằng cách sử dụng nhiều lớp xử lý với cấu trúc phức tạp, học sâu đã cách mạng hóa nhiều lĩnh vực như: phân loại (phân loại dữ liệu thành các lớp khác nhau), nhận dạng, dự đoán kết quả…
Học sâu không phải là một khái niệm mới và có nguồn gốc từ nghiên cứu về mạng nơ-ron trong những năm 1940s và 1950s Tuy nhiên, do hạn chế về tính toán
và dữ liệu, nó không thực sự phát triển mạnh mẽ cho đến đầu thế kỷ 21, khi sự bùng
nổ về dữ liệu lớn và sức mạnh tính toán đã cho phép xây dựng những mô hình phức
Trang 28tạp hơn, lớn hơn Học sâu tận dụng khả năng của máy tính để xử lý hàng tấn dữ liệu thông qua một cấu trúc mạng nơ-ron phức tạp và có khả năng tự học từ dữ liệu đó để thực hiện các nhiệm vụ như nhận diện hình ảnh, xử lý ngôn ngữ tự nhiên, và thậm chí là dự đoán kết quả hóa học Học sâu dựa trên cơ sở toán học vững chắc từ lý thuyết xác suất, giải tích, và đại số tuyến tính Mỗi nơ-ron trong mạng học sâu thực hiện một phép tính vector, sau đó áp dụng một hàm kích hoạt phi tuyến tính, giúp mô hình có khả năng học được các mối quan hệ phức tạp Mạng nơ-ron sâu thường bao gồm nhiều lớp ẩn, mỗi lớp học một cấp độ trừu tượng hóa khác nhau từ dữ liệu Hoạt động của Nơ-ron: mỗi nơ-ron thực hiện một phép tính:
𝑂𝑢𝑡𝑝𝑢𝑡 = 𝑓(𝛴𝑖(𝑤𝑖× 𝑥𝑖) + 𝑏 Với: 𝑥𝑖 là một đầu vào, 𝑤𝑖 là trọng số tương ứng với đầu vào đó, 𝑏 là độ lệch (bias), và 𝑓 là hàm kích hoạt
Hàm kích hoạt: là một thành phần quan trọng của mạng nơ-ron, nó quyết định liệu một nơ-ron có nên được “kích hoạt” hay không Các hàm kích hoạt phổ biến bao gồm:
Hàm Sigmoid: 𝜎(𝑥) = 1
1+ 𝑒 −𝑥
Hàm Tanh: tanh(𝑥) = 2
1+𝑒−2𝑥− 1 Hàm ReLU: 𝑓(𝑥) = max (0, 𝑥)
Trong quá trình học, mạng nơ-ron sử dụng lan truyền ngược để điều chỉnh trọng
số Quá trình này bao gồm các bước:
• Lan truyền tiến: tính toán đầu ra của mạng nơ-ron dựa trên đầu vào của hiện tại và trọng số
• Tính toán lỗi: sử dụng một hàm mất mát như hàm mất mát bình phương nhỏ nhất (MSE) để đo lường sai số giữa đầu ra mạng nơ-ron và đầu ra mong muốn (đầu ra thực tế)
• Lan truyền ngược: tính toán đạo hàm của hàm mất mát theo trọng số và cập nhật trọng số theo hướng làm giảm hàm mất mát
Thuật toán tối ưu hóa được sử dụng để điều chỉnh trọng số, thường là Gradient Descent: 𝜔𝑖 = 𝜔𝑖− ∝× 𝜕𝐿
𝜕𝜔𝑖
Trang 29Trong đó: 𝐿 là hàm mất mát, ∝ là tỷ lệ học (Learning rate), và 𝜕𝐿
𝜕𝜔𝑖 là đạo hàm của hàm mất mát theo trọng số 𝜔𝑖
Hình 1.6 Hình minh họa Gradient Descent trên hàm mất mát
(Nguồn: Wikimedia Commons)
Mỗi thuật toán trong Học Sâu có thể được thiết kế để phù hợp với một loại dữ liệu cụ thể hoặc một bài toán cụ thể Dưới đây là một số loại mạng nơ-ron và ứng dụng của chúng:
• Mạng Nơ-ron Chập (CNN): Được thiết kế đặc biệt cho dữ liệu hình ảnh, phân loại, nhận dạng, CNN sử dụng các lớp chập để tự động và hiệu quả học các đặc trưng không gian từ hình ảnh
• Mạng Nơ-ron Hồi Quy (RNN): Phù hợp cho dữ liệu chuỗi thời gian hoặc chuỗi
từ, RNN có khả năng ghi nhớ thông tin từ các bước trước đó, điều này làm cho chúng hữu ích trong việc dự đoán các phần tiếp theo của chuỗi
• Mạng đối kháng tạo sinh (GAN): Bao gồm hai mạng đối đầu với nhau, GAN
có thể tạo ra dữ liệu mới, rất giống với dữ liệu thực mà chúng được huấn luyện trên
• Mạng Nơ-ron Đồ Thị (Graph Neural Networks - GNN): Chúng có thể trực tiếp xử lý dữ liệu dạng đồ thị và học các đặc trưng từ cấu trúc và thông tin đồ thị
Trang 30• Transformer Networks: Được sử dụng rộng rãi trong xử lý ngôn ngữ tự nhiên (NLP), kiến trúc Transformer dựa trên cơ chế "self-attention", giúp mô hình tập trung vào các phần quan trọng của đầu vào…
I.4 Tổng kết chương
Việc khai thác các phương pháp, kỹ thuật của học máy để giải quyết vấn đề đặt
ra trong các lĩnh vực khác là cần thiết Trong luận văn này, chúng tôi giải quyết một vấn đề đặt ra của Hóa tin là đưa ra giải pháp phù hợp để giúp cho việc dự đoán hoạt tính của một hợp chất hóa học tốt nhất có thể dựa trên dữ liệu hóa học và hoạt tính
đã biết Để giải quyết vấn đề đặt ra, công trình này tập trung theo hướng thực nghiệm bằng cách thử nghiệm 100 giải pháp, giải pháp có được bằng cách kết hợp các kỹ thuật sẽ được nêu tại chương II
Trang 31CHƯƠNG II: BÀI TOÁN CÂN BẰNG DỮ LIỆU TRONG DỰ ĐOÁN HOẠT
TÍNH CỦA HÓA CHẤT II.1 Giới thiệu khái quát
Trong các thử nghiệm sinh hóa về xác định hợp chất của các mục tiêu sinh học, thường có sự mất cân bằng giữa các loại có hoạt tính và các loại không có hoạt tính, trong đó số lượng các chất có hoạt tính thường rất ít, điều này dẫn đến việc xảy ra một số vấn đề và thách thức như:
• Sai sót trong qua trình xác định hợp chất, giảm độ chính xác của mô hình do
mô hình có xu hướng thiên về các lớp chiếm tỷ trọng cao hơn dẫn đến các lớp chiếm tỷ trọng thấp bị xác định sai
• Độ tin cậy của mô hình giảm do đưa ra các kết quả không đáng tin cậy với các lớp chiếm tỷ trọng thấp
• Tăng chi phí phát triển mô hình do mô hình cần huấn luyện trên một tập dữ liệu lớn hơn để giảm thiểu sự mất cân bằng dữ liệu
Chính vì những lý do trên, việc cân bằng dữ liệu huấn luyện cũng cần áp dụng các mô hình học máy, học sâu, các phương pháp phù hợp và việc lựa chọn phương pháp tiền xử lý dữ liệu trước khi áp dụng các phương pháp học máy cũng là vấn đề đặt ra
II.1.1 Rút gọn thuộc tính
Trong luận văn này, hệ số tương quan Pearson được sử dụng để đánh giá mức
độ liên quan giữa các thuộc tính, nhằm lọc ra những đặc trưng quan trọng Công thức tính hệ số tương quan giữa 2 thuộc tính x, và y có N mẫu tương ứng là (𝑥𝑖, 𝑦𝑖), ∀𝑖 =
1, 𝑁 là:
𝑟𝑥𝑦 = ∑ (𝑥𝑖− 𝑥)(𝑦𝑖− 𝑦)
𝑁 𝑖=1
√∑𝑁 (𝑥𝑖 − 𝑥)2 𝑖=1 √∑𝑁 (𝑦𝑖− 𝑦)2
𝑖=1Trong đó:
𝑥 = 1
𝑁∑𝑁𝑖=1𝑥𝑖 và 𝑦 = 1
𝑁∑𝑁𝑖=1𝑦𝑖 Khi hệ số tương quan là +1 hay -1 cho biết có mối tương quan cao Để thực hiện rút gọn thuộc tính bằng hệ số tương quan, các bước như sau:
Trang 32• Tính ma trận tương quan: Sử dụng hàm corr() trong Pandas để tính ma trận tương quan của các thuộc tính trong một DataFrame
corr_matrix = df_train.drop('Outcome', axis=1).corr()
• Định nghĩa một ngưỡng (threshold) để quyết định xem thuộc tính có mức độ tương quan đủ cao để giữ lại hay không Giá trị ngưỡng này phụ thuộc vào bài toán cụ thể và mức độ quan trọng của các thuộc tính, thông thường là 0,75 khi xét trị tuyệt đối của các hệ số tương quan Giá trị ngưỡng 0.75 thường đưọc xem xét và lựa chọn trong phân tích đặc trưng, sử dụng để xác định các đặc trưng có mối quan hệ tuyến tính mạnh mẽ với biến mục tiêu và mô hình hóa, tránh đa cộng tuyến: một hệ số tương quan cao giữa các biến độc lập có thể chỉ ra sự đa cộng tuyến, vấn đề mà ở đó các biến độc lập không độc lập với nhau Điều này có thể ảnh hưởng xấu đến khả năng diễn giải và ổn định của
mô hình
• Lựa chọn thuộc tính: Dựa trên ma trận tương quan và ngưỡng đã chọn, để đưa
ra các thuộc tính có hệ số tương quan vượt qua ngưỡng, từ đó giữ lại thuộc tính cần thiết
# Rút gọn thuộc tính dùng ma trận tương quan để chọn đặc trưng
corr_matrix = df_train.drop('Outcome', axis=1).corr()
selected_features = set(df_train.columns) - corr_features
Việc rút gọn các thuộc tính dựa vào hệ số tương quan thực sự là một phương pháp đơn giản nhưng cần được tiếp cận và thử nghiệm cẩn thận để đảm bảo rằng các thuộc tính vẫn giữ các thông tin cần thiết trong bộ dữ liệu Đôi khi, một đặc trưng có thể ở mức độ tương quan thấp với lớp nhưng vẫn mang những thông tin quan trọng cho quá trình phân loại Hơn nữa, mối quan hệ tương quan giữa các đặc trưng không phải lúc nào cũng có thể dễ dàng đo lường thông qua hệ số tương quan Pearson Đôi
Trang 33khi, việc phát hiện mối tương quan giữa một số đặc trưng trong không gian đa chiều
có thể mang lại nhiều ý nghĩa hơn Việc giảm bớt thuộc tính dựa trên tương quan có thể gây ra vấn đề đa cộng tuyến (một hiện tượng xảy ra khi hai hoặc nhiều thuộc tính
có mối tương quan cao với nhau) dẫn đến giảm hiệu suất của mô hình và tăng độ phức tạp của mô hình học máy.
II.1.2 Chọn tham số theo Bayesian optimization
Quá trình chọn các điểm thử nghiệm ban đầu trong Bayesian Optimization có thể được thực hiện theo các phương pháp khác nhau Một trong những phương pháp phổ biến là chọn ngẫu nhiên các điểm trong không gian tìm kiếm ban đầu với số lượng chỉ định (init_points)
Các điểm thử nghiệm tiếp theo (n_iter) được chọn dựa trên kết quả và thông tin
từ các điểm trước đó Thông thường, Bayesian Optimization sử dụng mô hình Gaussian Process để ước lượng hàm mục tiêu và tìm ra các điểm tiềm năng để thử nghiệm
Các điểm tiếp theo không bị trùng với điểm ban đầu nếu quá trình chọn điểm thử nghiệm được thực hiện đúng Quá trình tối ưu hóa sẽ đưa ra các điểm tiếp theo dựa trên thông tin mới nhận được từ việc thử nghiệm các điểm trước đó và không lặp lại các điểm đã được thử nghiệm trước đó
Ví dụ: với tham số cần tìm là 𝑙𝑒𝑎𝑟𝑛𝑖𝑛𝑔_𝑟𝑎𝑡𝑒 ∈ [0.001,0.1] và 𝑑𝑟𝑜𝑝𝑜𝑢𝑡_𝑟𝑎𝑡𝑒 ∈ [0.1,0.5] để tạo không gian tìm kiếm, quá trình tối ưu Bayes được
thự hiện bằng các ban đầu thử nghiệm huấn luyện mô hình f với init_points là 5 điểm,
sau đó lặp lại 10 lần, chương trình viết như sau:
II.1.3 Xử lý dữ liệu mất cân bằng
Trang 34Vấn đề cốt lõi trong bài toán dự đoán hoạt tính của các hợp chất chính là việc
xử lý cân bằng dữ liệu Sự mất cân bằng dữ liệu dẫn đến sự thiên vị trong quá trình huấn luyện mô hình máy học, ảnh hưởng tiêu cực đến hiệu suất và độ tin cậy của các kết quả dự đoán Để khắc phục các vấn đề này việc áp dụng các kỹ thuật tái chọn mẫu để tăng cường số mẫu nhằm mục tiêu tạo ra một tập dữ liệu cân đối hơn, từ đó giúp các mô hình học máy đưa ra những dự đoán chính xác hơn Các kỹ thuật tái chọn mẫu thường được sử dụng bao gồm: SMOTE, ADASYN, các biến thể của SMOTE như Borderline-SMOTE, SMOTE-ENN…
II.1.3.1 Một số cách resample mẫu dữ liệu
Phương pháp SMOTE
SMOTE (Synthetic Minority Over-sampling Technique) được đề xuất bởi tác giả là Nitesh V Chawla, Kevin W Bowyer, Lawrence O Hall, và W Philip Kegelmeyer năm 2002, đây là một phương pháp tăng cường dữ liệu mất cân bằng trong việc xử lý bài toán phân loại Phương pháp này tạo ra các mẫu tổng hợp (synthetic samples) cho lớp thiểu số (minority class) bằng cách kết hợp các mẫu hiện
có trong lớp đó
SMOTE dựa trên ý tưởng rằng các điểm dữ liệu gần nhau trong không gian đặc trưng có khả năng thuộc cùng một lớp Từ đó đưa ra cách giải quyết là chọn ngẫu nhiên một điểm dữ liệu trong lớp thiểu số và tạo ra các điểm dữ liệu nhân tạo bằng cách nối các điểm dữ liệu gần nhất trong phương pháp KNN (k-nearest neighbors) Quá trình này được thực hiện bằng cách tính toán khoảng cách giữa các điểm dữ liệu
và chọn ra các điểm láng giềng gần nhất để tạo ra các mẫu nhân tạo
Phương pháp SMOTE giúp cân bằng số lượng mẫu giữa các lớp trong tập dữ liệu, giảm thiểu tình trạng mất cân bằng thông qua việc tạo thêm các mẫu dữ liệu Điều này cải thiện khả năng phân loại cho lớp thiểu số và giúp mô hình học tập tốt hơn trên các lớp thiểu số Tuy nhiên phương pháp SMOTE có thể tạo ra nhiễu nếu các lân cận gần nhất của một mẫu thiểu số lại thuộc về lớp đa số và phương pháp này
có thể không hiệu quả nếu dữ liệu thiểu số phân bố quá rời rạc hoặc khi có sự chồng chéo quá lớn giữa các lớp Có thể sử dụng thư viện imbalanced-learn trong Python
để hiện thực phương pháp SMOTE này
from imblearn.over_sampling import SMOTE
smote = SMOTE(random_state=42)
Trang 35X_train_smote, y_train_smote = smote.fit_resample(X_train,y_train)
Phương pháp ADASYN
ADASYN (Adaptive Synthetic Sampling) được đề xuất bởi Haibo He, Yang Bai, Edwardo A Garcia và Shutao Li trong bài báo "ADASYN: Adaptive synthetic sampling approach for imbalanced learning" vào năm 2008, đây cũng là một phương pháp tăng cường dữ liệu mất cân bằng trong việc xử lý bài toán phân loại Phương pháp này cải tiến từ phương pháp SMOTE bằng cách tự động điều chỉnh quá trình tạo mẫu tổng hợp dựa trên độ mất cân bằng của dữ liệu Cơ sở lý thuyết của ADASYN
là dựa trên giả định rằng các mẫu thiểu số gần biên giới quyết định (decision boundary) có khả năng cao là những mẫu khó khăn trong việc phân loại ADASYN tập trung vào việc tạo ra các mẫu tổng hợp cho các điểm dữ liệu trong lớp thiểu số gần với biên giới quyết định Quá trình tạo mẫu được thực hiện dựa trên tỷ lệ giữa số lượng láng giềng gần nhất thuộc lớp đa số và số lượng láng giềng gần nhất thuộc lớp thiểu số Các mẫu tổng hợp được tạo ra theo tỷ lệ này, tập trung tạo ra nhiều mẫu hơn cho các vùng dữ liệu gần biên giới quyết định
Phương pháp ADASYN giúp cân bằng số lượng mẫu giữa các lớp trong tập dữ liệu mất cân bằng, đồng thời tập trung tạo ra các mẫu tổng hợp cho các vùng dữ liệu khó khăn trong việc phân loại Điều này giúp cải thiện khả năng phân loại cho lớp thiểu số và tăng độ chính xác của mô hình
adasyn = ADASYN()
X_train_adasyn, y_train_adasyn = adasyn.fit_resample(X_train,y_train)
Phương pháp Borderline SMOTE
Borderline SMOTE là một phương pháp tăng cường dữ liệu được sử dụng để
xử lý vấn đề mất cân bằng trong bài toán phân loại Đây là một biến thể của phương pháp SMOTE Cơ sở lý thuyết của Borderline SMOTE dựa trên giả định rằng các mẫu trong lớp thiểu số gần với biên giới giữa lớp thiểu số và lớp đa số có khả năng cao là các mẫu quan trọng trong quá trình phân loại Borderline SMOTE tập trung vào việc tạo mẫu tổng hợp cho các mẫu này để tăng cường dữ liệu Quá trình tạo mẫu trong Borderline SMOTE được thực hiện như sau: