Chương 1. Tổng quan về lĩnh vực nghiên cứu. Cơ sở lý thuyết và các nghiên cứu liên quan. Mô hình đề xuất.
Thực nghiệm, đánh giá kết quả. ❖ Chương 5: Kết quả và hướng phát triển. 15 CHƯƠNG 2 CƠ SỞ LÝ THUYẾT VÀ CÁC NGHIÊN CỨU LIÊN QUAN Trong chương này, chúng tôi sẽ giới thiệu tổng quan về kỹ thuật, phương pháp trong xử lý ngôn ngữ tự nhiên (NLP) để giải quyết các bài toán cơ bản của Trí tuệ nhân tạo, áp dụng NLP vào phân tích ý kiến người dùng theo khía cạnh bằng phương pháp học sâu, 2.1 Xử lý ngôn ngữ tự nhiên Xử lý ngôn ngữ tự nhiên (NLP) là một trong số những bài toán cơ bản của Trí tuệ nhân tạo. Các ứng dụng phổ biến của NLP bao gồm: ứng dụng giám sát mạng xã hội, chatbot, và tổng đài trả lời tự động, Phân tích ý kiến theo khía cạnh,.
1: Xử lý ngôn ngữ tự nhiên (NLP) là một trong số những bài toán cơ bản của Trí tuệ nhân tạo1 2.2 Biểu diễn từ Word2Vec là 1 trong những mô hình đầu tiên về Word Embedding sử dụng mạng neural, vẫn khá phổ biến ở thời điểm hiện tại, có khả năng vector hóa từng từ dựa trên tập các từ chính và các từ văn cảnh. Về mặt toán học, thực chất Word2Vec là việc ánh xạ từ từ 1 tập các từ (vocabulary) sang 1 không gian vector, mỗi vector được biểu diễn bởi n số thực. Mỗi từ ứng với 1 vector cố định. Sau quá trình huấn luyện mô hình bằng 1 https://seal.vn/xu-ly-ngon-ngu-tu-nhien-voi-python-phan-1/ 16 thuật toán backprobagation, trọng số các vector của từng từ được cập nhật liên tục.
Từ đó, ta có thể thực hiện tính toán bằng các khoảng cách quen thuộc như euclide, cosine, manhattan, ,., những từ càng "gần" nhau về mặt khoảng cách thường là các từ hay xuất hiện cùng nhau trong văn cảnh, các từ đồng nghĩa, các từ thuộc cùng 1 trường từ vừng, .1 One hot vector - Cách truyền thống nhất để đưa dữ liệu hạng mục về dạng số là mã hóa one- hot. Một mã hóa nóng nhất là biểu diễn các biến phân loại dưới dạng vectơ nhị phân. - Điều này đầu tiên yêu cầu các giá trị phân loại phải được ánh thành các giá trị số nguyên. - Sau đó, mỗi giá trị số nguyên được biểu diễn dưới dạng vectơ nhị phân có tất cả các giá trị bằng không ngoại trừ chỉ số của số nguyên, được đánh dấu bằng 1.2 Cbow CBOW model: ý tưởng chính của CBOW là dựa vào các context word (hay các từ xung quanh) để dự đoán center word (từ ở giữa).
CBOW có điểm thuận lợi là training mô hình nhanh hơn so với mô hình skip-gram, thường cho kết quả tốt hơn với frequence words (hay các từ thường xuất hiện trong văn cảnh). 2: Mô hình CBOW tổng quát 2 2.3 Skip gram Skip-gram thì ngược lại với CBOW, dùng target word để dự đoán các từ xung quanh. Skip-gram huấn luyện chậm hơn. Thường làm việc khá tốt với các tập data nhỏ, đặc biệt do đặc trưng của mô hình nên khả năng vector hóa cho các từ ít xuất hiện tốt hơn CBOW.net/mo-hinh-cbow-continuous-bag-of-words.
3: Mô hình skip-gram tổng quát 3 2.3 Học Máy (Machine Learning) Trí tuệ nhân tạo (Artificial Intelligence) là các kỹ thuật giúp cho máy tính thực hiện được những công việc của con người chúng ta. Trí tuệ nhân tạo đang len lỏi vào mọi lĩnh vực trong đời sống mà có thể chúng ta không nhận ra. Xe tự hành của Tesla và Google, hệ thống tự tag khuôn mặt trong ảnh của Facebook, trợ lý ảo Siri của Apple, hệ thống gợi ý phim của Netflix, hệ thống gợi ý sản phẩm của Amazon, Lazada, máy chơi cờ vây AlphaGo của Google DeepMind, …, chỉ là một vài trong vô vàn những ứng dụng của AI/Machine Learning.net/mo-hinh-skip-gram. 4: Lịch sử ra đời của Trí tuệ nhân tạo, học máy và học sâu 4 Học máy có thể được chia thành ba loại chính dựa trên cách tiếp cận của chúng để giải quyết từng bài toán khác nhau.
Trong đó: Học không giám sát (unsupervised learning): là một phương pháp của ngành học máy nhằm tìm ra một mô hình mà phù hợp với các quan sát. Khác với phương pháp học máy có giám sát, phương pháp học không có giám sát là dạng học máy trong đó các ví dụ được cung cấp nhưng không có giá trị đầu ra hay giá trị đích (hay nói cách khác, dữ liệu huấn luyện không được gán nhãn phân loại). Thay vì xác định giá trị đích, thuật toán học máy dựa trên độ tương tự giữa các ví dụ để xếp chúng thành những nhóm, mỗi nhóm gồm các ví dụ tương tự nhau. Hình thức học không giám sát như vậy gọi là phân cụm.
Tuy nhiên trong nghiên cứu này chúng tôi không sử dựng phương pháp học không có giám sát. Học có giám sát (supervised learning): là một kĩ thuật của ngành học máy để xây dựng một hàm (function) từ dữ liệu huấn luyện. Dữ liệu huấn luyện bao gồm các cặp gồm đối tượng đầu vào (thường dạng vec-tơ), và đầu ra mong muốn. Đầu ra của một 4 https://www.com/phan-biet-ai-machine-learning-va-deep-learning/ 20 hàm có thể là một giá trị liên tục (gọi là hồi quy), hay có thể là dự đoán một nhãn phân loại cho một đối tượng đầu vào (gọi là phân loại).
Nhiệm vụ của chương trình học có giám sát là dự đoán giá trị của hàm cho một đối tượng bất kì là đầu vào hợp lệ, sau khi đã xét một số ví dụ huấn luyện (nghĩa là, các cặp đầu vào và đầu ra tương ứng). Để đạt được điều này, chương trình học phải tổng quát hóa từ các dữ liệu sẵn có để dự đoán được những tình huống chưa gặp phải theo một cách "hợp lí". Học có giám sát có thể tạo ra 2 loại mô hình. Phổ biến nhất, học có giám sát tạo ra một mô hình toàn cục để ánh xạ đối tượng đầu vào đến đầu ra mong muốn.
Tuy nhiên, trong một số trường hợp, việc ánh xạ được thực hiện dưới dạng một tập các mô hình cục bộ. Học tăng cường (reinforcement learning): là một cách "học" đang trở nên vô cùng phổ biến hiện nay. Trong học tăng cường, AI sẽ được thưởng dựa trên những gì nó làm được. Học tăng cường có thể giúp máy móc đạt được những khả năng nhỏ hiểu được làm sao để chơi một game máy tính thông qua một quá trình thử và lỗi (trial-and-error), dựa trên việc nghiên cứu làm cách nào để tăng điểm số của mình.4 Học Sâu (Deep Learning) Deep Learning là một nhánh của Machine Learning sử dụng mạng lưới thần kinh với nhiều lớp.
Một mạng lưới thần kinh sâu phân tích dữ liệu với những biểu diễn đã học tương tự như cách một người nhìn vào một vấn đề. Với Machine Learning truyền thống, thuật toán được cung cấp một tập hợp các tính năng có liên quan để phân tích.4 mô tả tập hợp định nghĩa giữa các định nghĩa khi nói về Trí tuệ nhân tạo. Tuy nhiên, trong nghiên cứu sâu, thuật toán được cung cấp dữ liệu thô và tự quyết định các tính năng có liên quan. Mạng Deep Learning thường sẽ cải thiện khi bạn tăng lượng dữ liệu được sử dụng để huấn luyện chúng.
5: Học sâu (Deep Learning) có tiềm năng ứng dụng rất lớn 5 Sự đột phá của các công nghệ Deep Learning được ứng dụng ngày càng nhiều bởi các doanh nghiệp để tạo ra các mô hình kinh doanh mới và xây dựng những ứng dụng mới mẻ để giải quyết những bài toán thực tế, trong đó phải kể đến những ứng dụng có nhiều tiềm năng thương mại hóa sau: a. Nhận dạng giọng nói b. Nhận dạng hình ảnh c. Xử lý ngôn ngữ tự nhiên d.
Khám phá dược phẩm và độc chất học e. Hệ thống gợi ý trên các nền tảng 2.1 Mạng notron nhận tạo Mạng nơ-ron nhân tạo (Artificial Neural Networks - ANN) là mạng lưới thần kinh được liên kết đầy đủ giữa các lớp với nhau. ANN được ra đời xuất phát từ ý tưởng mô phỏng hoạt động của não bộ con người. Kiến trúc của một mạng nơ-ron nhân tạo gồm ba thành phần: lớp đầu vào, các lớp ẩn và lớp đầu ra.
Trên mỗi lớp có các nốt được thể hiện như các nơ-ron thần kinh, mỗi nốt trong một lớp thì liên kết với tất cả các nốt trong 5 https://longvan.net/deep-learning-la-gi-ung-dung-cua-deep-learning.html 22 lớp tiếp theo. Trong một mạng nơ-ron nhân tạo thì số lớp ẩn là không giới hạn và số lượng các nốt trên mỗi lớp cũng không giới hạn. 6: Kiến trúc mạng nơ-ron nhân tạo 6 Nếu chúng ta tiến hành đi sâu vào xem xét từng nốt trong các lớp của mạng nơ-ron nhân tạo, chúng ta sẽ thấy được rằng, độ lớn trọng số của nốt hiện đang xét sẽ là tổng các độ lớn trọng số của các nốt thuộc lớp đầu vào trước đó và chuyển qua hàm kích hoạt phi tuyến tính để tính toán trọng số. Các nốt này được xem là đầu ra của lớp trước đó và đồng thời cũng là đầu vào cho các lớp tiếp theo.
Trong quá trình huấn luyện, mạng nơ-ron thần kinh sẽ tiến hành tính toán và tối ưu hóa các trọng số đối với từng nốt trong mạng.com/bai-3-neural-network/ 23 Hình 2. 7: Cấu trúc trong từng nốt của mạng nơ-ron nhân tạo 7 2.2 Mô hình Long short-term Memory Long short-term memory (LSTM – Mạng nơ-ron hồi quy LSTM) là một trong những mô hình Deep Learning trong công nghệ Trí tuệ nhân tạo. LSTM ra đời với ý tưởng chính là sử dụng một bộ nhớ để lưu lại thông tin từ từ những bước tính toán xử lý trước để dựa vào nó có thể đưa ra dự đoán chính xác nhất cho bước dự đoán hiện tại dựa trên các hạn chế của kiến trúc trước đó là RNN. Cơ bản thì nó là một mạng neural hồi quy là một mạng neural chứa một vòng lặp bên trong nó.
Nhiều mô hình dự báo đã cho kết quả tốt khi sử dụng LSTM vì nó có khả năng học được các phụ thuộc xa. LSTM xuất hiện năm 1997, sau đó đã được cải tiến và phổ biến rộng rãi như hiện nay. 8: Mô tả một đoạn mạng nơ-ron hồi quy.8 Hình trên mô tả một đoạn của mạng nơ-ron hồi quy A với xt là đầu vào và ht là đầu ra. Một vòng lặp cho phép thông tin có thể được truyền từ bước này sang bước khác.
Một mạng nơ-ron hồi quy có thể được coi là nhiều bản sao chép của cùng một mạng, 7 https://www.com/community/tutorials/deep-learning-python 8 https://dominhhai.io/vi/2017/10/what-is-lstm/ 24 trong đó mỗi đầu ra của mạng này là đầu vào của một mạng sao chép khác. Các mô hình mạng nơ-ron hồi quy (RNN) tích hợp các nhiệm vụ mà nó yêu cầu dự đoán đầu ra của thời điểm t dựa vào thông tin có được tại thời điểm t-1.