sơ khai RNN và LSTM trong Deep Learning là gì? - Đoàn kết.AI
Kết nối với chúng tôi
Lớp học AI:

AI 101

RNN và LSTM trong Deep Learning là gì?

mm
cập nhật on

Nhiều tiến bộ ấn tượng nhất trong xử lý ngôn ngữ tự nhiên và chatbot AI được thúc đẩy bởi Mạng thần kinh tái phát (RNN) và mạng Bộ nhớ ngắn hạn dài (LSTM). RNN và LSTM là những kiến ​​trúc mạng thần kinh đặc biệt có khả năng xử lý dữ liệu tuần tự, dữ liệu có thứ tự thời gian quan trọng. LSTM là các phiên bản cải tiến cơ bản của RNN, có khả năng diễn giải các chuỗi dữ liệu dài hơn. Chúng ta hãy xem cách cấu trúc của RNN và LSTMS và cách chúng cho phép tạo ra các hệ thống xử lý ngôn ngữ tự nhiên phức tạp.

Mạng thần kinh chuyển tiếp nguồn cấp dữ liệu là gì?

Vì vậy, trước khi nói về cách thức hoạt động của Bộ nhớ ngắn hạn dài (LSTM) và Mạng thần kinh chuyển đổi (CNN), chúng ta nên thảo luận về định dạng của mạng thần kinh nói chung.

Mạng thần kinh nhằm mục đích kiểm tra dữ liệu và tìm hiểu các mẫu có liên quan, để các mẫu này có thể được áp dụng cho dữ liệu khác và dữ liệu mới có thể được phân loại. Mạng nơ-ron được chia thành ba phần: lớp đầu vào, lớp ẩn (hoặc nhiều lớp ẩn) và lớp đầu ra.

Lớp đầu vào là lớp đưa dữ liệu vào mạng thần kinh, trong khi các lớp ẩn là lớp tìm hiểu các mẫu trong dữ liệu. Các lớp ẩn trong tập dữ liệu được kết nối với các lớp đầu vào và đầu ra theo “trọng số” và “độ lệch”, đây chỉ là những giả định về cách các điểm dữ liệu liên quan với nhau. Những trọng lượng này được điều chỉnh trong quá trình đào tạo. Khi mạng đào tạo, dự đoán của mô hình về dữ liệu đào tạo (giá trị đầu ra) được so sánh với nhãn đào tạo thực tế. Trong quá trình đào tạo, mạng (hy vọng) sẽ chính xác hơn trong việc dự đoán mối quan hệ giữa các điểm dữ liệu, để có thể phân loại chính xác các điểm dữ liệu mới. Mạng thần kinh sâu là mạng có nhiều lớp ở giữa/nhiều lớp ẩn hơn. Mô hình càng có nhiều lớp ẩn và càng nhiều nơ-ron/nút thì mô hình càng có thể nhận dạng các mẫu trong dữ liệu tốt hơn.

Các mạng nơ-ron thông thường, chuyển tiếp, giống như những mạng tôi đã mô tả ở trên, thường được gọi là “mạng nơ-ron dày đặc”. Các mạng thần kinh dày đặc này được kết hợp với các kiến ​​trúc mạng khác nhau chuyên diễn giải các loại dữ liệu khác nhau.

RNN (Mạng thần kinh tái phát) là gì?

Mạng thần kinh tái phát lấy nguyên tắc chung của mạng thần kinh chuyển tiếp nguồn cấp dữ liệu và cho phép chúng xử lý dữ liệu tuần tự bằng cách cung cấp cho mô hình một bộ nhớ trong. Phần “Recurrent” của tên RNN xuất phát từ thực tế là vòng lặp đầu vào và đầu ra. Sau khi đầu ra của mạng được tạo ra, đầu ra sẽ được sao chép và trả về mạng làm đầu vào. Khi đưa ra quyết định, không chỉ đầu vào và đầu ra hiện tại được phân tích mà đầu vào trước đó cũng được xem xét. Nói cách khác, nếu đầu vào ban đầu của mạng là X và đầu ra là H, thì cả H và X1 (đầu vào tiếp theo trong chuỗi dữ liệu) đều được đưa vào mạng cho vòng học tiếp theo. Bằng cách này, bối cảnh của dữ liệu (đầu vào trước đó) được giữ nguyên khi mạng huấn luyện.

Kết quả của kiến ​​trúc này là RNN có khả năng xử lý dữ liệu tuần tự. Tuy nhiên, RNN gặp phải một số vấn đề. RNN bị ảnh hưởng bởi biến mất gradient và bùng nổ các vấn đề về gradient.

Độ dài của các chuỗi mà RNN có thể diễn giải khá hạn chế, đặc biệt là so với LSTM.

LSTM (Mạng bộ nhớ ngắn hạn dài) là gì?

Mạng bộ nhớ ngắn hạn dài có thể được coi là phần mở rộng của RNN, một lần nữa áp dụng khái niệm bảo toàn ngữ cảnh của đầu vào. Tuy nhiên, LSTM đã được sửa đổi theo một số cách quan trọng cho phép chúng giải thích dữ liệu trong quá khứ bằng các phương pháp ưu việt. Các thay đổi được thực hiện đối với LSTM giải quyết vấn đề độ dốc biến mất và cho phép LSTM xem xét các chuỗi đầu vào dài hơn nhiều.

Các mô hình LSTM được tạo thành từ ba thành phần khác nhau, hoặc cổng. có một cổng đầu vào, cổng đầu ra và cổng quên. Giống như RNN, LSTM tính đến đầu vào từ dấu thời gian trước đó khi sửa đổi bộ nhớ của mô hình và trọng số đầu vào. Cổng đầu vào đưa ra quyết định về giá trị nào là quan trọng và nên được thông qua mô hình. Hàm sigmoid được sử dụng trong cổng đầu vào, giúp xác định giá trị nào sẽ truyền qua mạng hồi quy. Zero giảm giá trị, trong khi 1 giữ nguyên giá trị đó. Hàm TanH cũng được sử dụng ở đây, hàm này quyết định tầm quan trọng của các giá trị đầu vào đối với mô hình, nằm trong khoảng từ -1 đến 1.

Sau khi các đầu vào hiện tại và trạng thái bộ nhớ được tính đến, cổng đầu ra sẽ quyết định giá trị nào sẽ đẩy sang bước thời gian tiếp theo. Trong cổng đầu ra, các giá trị được phân tích và gán tầm quan trọng từ -1 đến 1. Điều này điều chỉnh dữ liệu trước khi nó được chuyển sang tính toán bước thời gian tiếp theo. Cuối cùng, công việc của cổng quên là loại bỏ thông tin mà mô hình cho là không cần thiết để đưa ra quyết định về bản chất của các giá trị đầu vào. Cổng quên sử dụng hàm sigmoid trên các giá trị, xuất ra các số trong khoảng từ 0 (quên giá trị này) đến 1 (giữ giá trị này).

Mạng thần kinh LSTM được tạo từ cả hai lớp LSTM đặc biệt có thể diễn giải dữ liệu từ tuần tự và kết nối dày đặc như mô tả ở trên. Khi dữ liệu di chuyển qua các lớp LSTM, nó sẽ chuyển sang các lớp được kết nối dày đặc.

Blogger và lập trình viên có chuyên môn về Machine Learning Học kĩ càng chủ đề. Daniel hy vọng sẽ giúp những người khác sử dụng sức mạnh của AI vì lợi ích xã hội.