Hướng dẫn học sâu cho người mới bắt đầu: Khái niệm cơ bản về mạng thần kinh

⚡ Tóm tắt thông minh

Học sâu (Deep Learning) là một nhánh của học máy được xây dựng trên mạng nơ-ron nhân tạo, gồm nhiều lớp ẩn xếp chồng lên nhau, sao cho mỗi lớp học được nhiều đặc điểm dữ liệu hơn lớp trước đó.

  • 🔘 Kiến trúc phân lớp: Một mạng nơ-ron sâu bao gồm một lớp đầu vào, hai hoặc nhiều lớp ẩn và một lớp đầu ra.
  • ☑️ Signal sức mạnh: Trọng số, độ lệch và hàm kích hoạt quyết định thông tin mà mỗi nơ-ron truyền đến lớp tiếp theo.
  • Mạch vòng hai pha: Phép biến đổi phi tuyến tạo ra một mô hình, sau đó phương pháp dựa trên đạo hàm sẽ cải thiện mô hình đó, quá trình này được lặp lại cho đến khi độ chính xác đạt mức chấp nhận được.
  • 🧪 Bốn kiểu kiến ​​trúc: Mạng nơ-ron truyền thẳng, mạng nơ-ron hồi quy, mạng nơ-ron tích chập và các tác nhân học tăng cường.
  • 🛠️ Lợi ích thu được ở đâu: Chấm điểm tín dụng trong lĩnh vực tài chính, sàng lọc ứng viên trong lĩnh vực nhân sự, phân tích tâm lý khách hàng trong lĩnh vực marketing.
  • ⚙️ Giới hạn thực sự: Chi phí gắn nhãn, nhu cầu về các tập dữ liệu khổng lồ và các mô hình khó giải thích bằng ngôn ngữ đơn giản.

Hướng dẫn học sâu cho người mới bắt đầu: Khái niệm cơ bản về mạng thần kinh

Học sâu là gì?

Học sâu (Deep Learning) là phần mềm máy tính mô phỏng mạng lưới các tế bào thần kinh trong não bộ. Nó là một tập hợp con của... học máy Dựa trên mạng nơ-ron nhân tạo với học biểu diễn. Nó được gọi là học sâu vì sử dụng mạng nơ-ron sâu. Quá trình học này có thể là... giám sát, bán giám sát hoặc không giám sát.

Các thuật toán học sâu được xây dựng bằng các lớp kết nối với nhau, như sơ đồ bên dưới minh họa.

  • Lớp đầu tiên được gọi là Lớp đầu vào
  • Lớp cuối cùng được gọi là Lớp đầu ra
  • Tất cả các lớp nằm giữa chúng được gọi là Lớp ẩn. Từ "sâu" có nghĩa là mạng lưới kết nối các nơ-ron trải rộng trên nhiều hơn hai lớp.
Sơ đồ mạng nơ-ron sâu thể hiện lớp đầu vào, hai lớp ẩn gồm các nơ-ron và lớp đầu ra.
Lớp đầu vào, các lớp ẩn và lớp đầu ra, với các kết nối giữa các nơron riêng lẻ.

Mỗi lớp ẩn được cấu tạo từ các nơ-ron. Các nơ-ron được kết nối với nhau. Một nơ-ron xử lý tín hiệu đầu vào mà nó nhận được và sau đó truyền kết quả đến lớp phía trên nó. Độ mạnh của tín hiệu được truyền đến một nơ-ron ở lớp tiếp theo phụ thuộc vào trọng số, độ lệch và hàm kích hoạt.

Mạng nơ-ron tiếp nhận một lượng lớn dữ liệu đầu vào và xử lý chúng thông qua nhiều lớp, nhờ đó mạng có thể học được các đặc điểm ngày càng phức tạp của dữ liệu ở mỗi lớp.

Quá trình học sâu

Mạng nơ-ron sâu cung cấp độ chính xác hàng đầu trong nhiều tác vụ, từ phát hiện đối tượng đến nhận dạng giọng nói. Các mạng như vậy có thể tự học mà không cần kiến ​​thức được lập trình viên mã hóa trước. Trên thực tế, một dự án học sâu trải qua năm giai đoạn:

  • Hiểu vấn đề
  • Xác định dữ liệu
  • Chọn một thuật toán học sâu
  • Đào tạo mô hình
  • Kiểm tra mô hình
Quy trình học sâu gồm năm giai đoạn, từ việc hiểu vấn đề đến việc kiểm thử mô hình.

Năm giai đoạn của một dự án học sâu, từ định nghĩa vấn đề đến kiểm thử.

Để hiểu được khái niệm học sâu, hãy tưởng tượng một gia đình có một em bé và bố mẹ. Đứa trẻ chỉ vào các đồ vật bằng ngón tay út và luôn nói từ "mèo". Vì bố mẹ lo lắng cho việc học của con, họ cứ liên tục nói với con "Đúng, đó là một con mèo" hoặc "Không, đó không phải là một con mèo". Đứa trẻ vẫn tiếp tục chỉ vào các đồ vật nhưng nói từ "mèo" chính xác hơn. Thực chất, đứa trẻ không biết tại sao mình có thể nói đó là mèo hay không. Nó chỉ đơn giản là đã học cách sắp xếp các đặc điểm tạo nên một con mèo theo thứ bậc, nhìn tổng thể con vật rồi tập trung vào các chi tiết như đuôi hoặc mũi trước khi đưa ra kết luận.

Mạng nơ-ron hoạt động theo cách tương tự. Mỗi lớp đại diện cho một cấp độ kiến ​​thức sâu hơn, tức là một hệ thống phân cấp kiến ​​thức. Một mạng nơ-ron có bốn lớp sẽ học được các đặc điểm phức tạp hơn so với mạng có hai lớp.

Quá trình học tập diễn ra theo hai giai đoạn:

  • Giai đoạn đầu: Áp dụng phép biến đổi phi tuyến tính cho dữ liệu đầu vào và tạo ra mô hình thống kê làm đầu ra.
  • Giai đoạn thứ hai: cải tiến mô hình bằng phương pháp toán học dựa trên đạo hàm, đó là cách Lan truyền ngược Điều chỉnh trọng lượng.

Mạng nơ-ron lặp lại hai giai đoạn này hàng trăm đến hàng nghìn lần cho đến khi đạt được mức độ chính xác chấp nhận được. Mỗi lần lặp lại hai giai đoạn được gọi là một vòng lặp.

Để đưa ra một ví dụ về học sâu, hãy xem đoạn hoạt hình bên dưới, trong đó mô hình đang cố gắng học cách nhảy. Sau 10 phút huấn luyện, mô hình vẫn không biết nhảy và kết quả đầu ra trông giống như một nét vẽ nguệch ngoạc.

Hình ảnh động chuyển động thất thường sau mười phút huấn luyện học sâu.

Sau 48 giờ học, máy tính đã thành thạo nghệ thuật khiêu vũ, như đoạn hoạt hình thứ hai cho thấy.

Hình ảnh động nhảy múa mượt mà sau 48 giờ huấn luyện học sâu.

Phân loại mạng lưới thần kinh

Các mạng được phân nhóm đầu tiên dựa trên số lượng lớp ẩn.

Mạng nơ-ron nông: Mạng nơ-ron nông chỉ có một lớp ẩn giữa đầu vào và đầu ra.

Mạng nơ-ron sâu: Mạng nơ-ron sâu có nhiều hơn một lớp ẩn. Ví dụ, mô hình GoogLeNet dùng để nhận dạng hình ảnh có tới 22 lớp.

Ngày nay, học sâu (deep learning) xuất hiện trong ô tô tự lái, điện thoại di động, và nhiều thiết bị khác. Google Công cụ tìm kiếm, phát hiện gian lận và truyền hình.

Các loại mạng học sâu

Một số kiến ​​trúc đã trở thành tiêu chuẩn, mỗi kiến ​​trúc được định hình bởi loại dữ liệu mà nó xử lý. Biểu đồ dưới đây, do Viện Asimov công bố, thể hiện bức tranh tổng quan về các kiến ​​trúc này.

Sơ đồ các kiến ​​trúc mạng nơ-ron bao gồm perceptron, mạng truyền thẳng, RBF, RNN, LSTM, GRU và autoencoder.

Biểu đồ thể hiện các kiến ​​trúc mạng nơ-ron, từ perceptron đơn lẻ đến các biến thể LSTM, GRU và autoencoder.

Mạng nơ-ron chuyển tiếp nguồn cấp dữ liệu

Đây là loại mạng nơ-ron nhân tạo đơn giản nhất. Với kiến ​​trúc này, thông tin chỉ chảy theo một chiều, hướng về phía trước. Điều đó có nghĩa là luồng thông tin bắt đầu từ lớp đầu vào, đi đến các lớp "ẩn" và kết thúc ở lớp đầu ra. Mạng không có vòng lặp và thông tin dừng lại ở lớp đầu ra.

Mạng nơron lặp lại (RNN)

An RNN RNN là một mạng nơ-ron đa lớp có khả năng lưu trữ thông tin trong các nút ngữ cảnh, cho phép nó học các chuỗi dữ liệu và xuất ra một số hoặc một chuỗi khác. Nói một cách đơn giản, đó là một mạng nơ-ron nhân tạo mà các kết nối giữa các nơ-ron bao gồm các vòng lặp. RNN rất phù hợp để xử lý các chuỗi đầu vào, bởi vì đầu ra được đưa trở lại mạng như một bộ nhớ.

Sơ đồ khối mạng nơ-ron hồi quy với đầu ra được đưa trở lại mạng dưới dạng bộ nhớ.

Mạng nơ-ron hồi quy (RNN) gửi đầu ra của chính nó trở lại chính nó, đó là điều tạo nên bộ nhớ cho mạng.

Ví dụ, nếu nhiệm vụ là dự đoán từ tiếp theo trong câu “Do you want a …?”, mạng nơ-ron sẽ hoạt động như sau:

  • Các nơ-ron RNN nhận được một tín hiệu chỉ ra vị trí bắt đầu của câu.
  • Mạng nơ-ron nhận từ “Do” làm đầu vào và tạo ra một vectơ các số. Vectơ này được đưa trở lại nơ-ron để cung cấp bộ nhớ cho mạng. Giai đoạn này giúp mạng ghi nhớ rằng nó đã nhận được từ “Do” và nhận được ở vị trí đầu tiên.
  • Mạng lưới này hoạt động tương tự như các từ tiếp theo. Nó nhận từ "bạn" và sau đó là "muốn". Trạng thái của các nơ-ron được cập nhật khi nhận được mỗi từ.
  • Giai đoạn cuối cùng diễn ra sau khi nhận được từ “a”. Mạng nơ-ron cung cấp xác suất cho mỗi từ tiếng Anh có thể hoàn thành câu. Một mạng RNN được huấn luyện tốt có thể sẽ gán xác suất cao cho các từ như “café”, “drink”, “burger” và các từ tương tự.

Các ứng dụng phổ biến của RNN

  • Giúp người giao dịch chứng khoán tạo báo cáo phân tích
  • Phát hiện các bất thường trong báo cáo tài chính.
  • Phát hiện các giao dịch thẻ tín dụng gian lận
  • Cung cấp chú thích cho hình ảnh
  • Power chatbot
  • Ứng dụng tiêu chuẩn của RNN xuất hiện khi các nhà thực hành làm việc với dữ liệu chuỗi thời gian hoặc các chuỗi dữ liệu, ví dụ như bản ghi âm hoặc văn bản.

Mạng nơ-ron hợp pháp (CNN)

A CNN là một mạng nơ-ron đa lớp với kiến ​​trúc độc đáo được thiết kế để...tracMạng nơ-ron tích chập (CNN) sử dụng các đặc điểm ngày càng phức tạp của dữ liệu ở mỗi lớp để xác định đầu ra. CNN rất phù hợp cho các nhiệm vụ nhận thức.

Kiến trúc CNN với các giai đoạn học đặc trưng gồm tích chập, hàm ReLU và gộp, tiếp theo là làm phẳng, kết nối đầy đủ và phân loại softmax.

Học đặc trưng thông qua tích chập, ReLU và gộp; phân loại thông qua làm phẳng, kết nối đầy đủ và hàm softmax.

CNN chủ yếu được sử dụng khi có tập dữ liệu không có cấu trúc, chẳng hạn như hình ảnh, và người thực hành cần phải...traclấy thông tin từ đó.

Ví dụ: nếu nhiệm vụ là dự đoán chú thích hình ảnh:

  • Mạng nơ-ron tích chập (CNN) nhận một hình ảnh, ví dụ như hình một con mèo. Về mặt điện toán, hình ảnh này là một tập hợp các điểm ảnh, thường là một lớp đối với ảnh đen trắng và ba lớp đối với ảnh màu.
  • Trong giai đoạn học đặc trưng, ​​tức là các lớp ẩn, mạng nơ-ron xác định các đặc trưng riêng biệt, ví dụ như đuôi của con mèo hoặc tai.
  • Khi mạng nơ-ron đã học được cách nhận dạng hình ảnh một cách kỹ lưỡng, nó có thể cung cấp xác suất cho mỗi lớp hình ảnh mà nó biết. Nhãn có xác suất cao nhất sẽ trở thành dự đoán của mạng.

Học tăng cường

Học tăng cường Đây là một phân ngành của học máy, trong đó các hệ thống được huấn luyện bằng cách nhận các "phần thưởng" hoặc "hình phạt" ảo, về cơ bản là học bằng phương pháp thử và sai. Nó là một mô hình học tập hơn là một hình dạng mạng, nhưng các thuật toán hiện đại của nó được xây dựng trên mạng nơ-ron sâu. GoogleDeepMind đã sử dụng học tăng cường để đánh bại nhà vô địch cờ vây người thật. Học tăng cường cũng được sử dụng trong trò chơi điện tử để cải thiện trải nghiệm chơi game bằng cách cung cấp các bot thông minh hơn.

Một số thuật toán nổi tiếng nhất là:

  • Q-học tập
  • Mạng Q sâu
  • Trạng thái-Hành động-Phần thưởng-Trạng thái-Hành động (SARSA)
  • Độ dốc chính sách xác định sâu (DDPG)

Bảng dưới đây tóm tắt thời điểm phù hợp của từng kiến ​​trúc.

Archikiến trúc Dữ liệu phù hợp Đặc điểm phân biệt Nhiệm vụ điển hình
Chuyển tiếp nguồn cấp dữ liệu Nhập liệu dạng bảng có độ dài cố định Không có vòng lặp; thông tin chỉ di chuyển về phía trước. Chấm điểm và phân loại đơn giản
Mạng nơ-ron hồi quy (RNN) Trình tự và chuỗi thời gian Các nút ngữ cảnh cung cấp bộ nhớ cho nó. Dự đoán văn bản, âm thanh, dự báo
Mạng nơron tích chập (CNN) Dữ liệu phi cấu trúc dạng lưới Ví dụ về phép tích chập và gộptraccác tính năng Phân loại và chú thích hình ảnh
Học tăng cường Môi trường, chứ không phải tập dữ liệu. Học hỏi từ phần thưởng và hình phạt. Các tác nhân trò chơi, robot, điều khiển

Ví dụ về các ứng dụng của học sâu

Các kiến ​​trúc này hiện đang được sử dụng trong sản xuất ở nhiều ngành công nghiệp khác nhau:

AI trong tài chính

Lĩnh vực công nghệ tài chính đã bắt đầu sử dụng trí tuệ nhân tạo (AI) để tiết kiệm thời gian, giảm chi phí và gia tăng giá trị. Học sâu (Deep Learning) đang thay đổi ngành cho vay thông qua việc chấm điểm tín dụng chính xác hơn. Những người ra quyết định tín dụng có thể sử dụng AI trong các đơn xin vay tín dụng để đánh giá rủi ro nhanh hơn, chính xác hơn, bằng cách sử dụng trí tuệ máy để xem xét tính cách và khả năng của người nộp đơn.

Underwrite là một công ty fintech cung cấp giải pháp trí tuệ nhân tạo (AI) cho những người đưa ra quyết định tín dụng. underwrite.ai sử dụng AI để phát hiện người nộp đơn nào có khả năng trả nợ cao hơn, một phương pháp mà công ty cho rằng vượt trội hơn so với các bảng điểm truyền thống.

AI trong nhân sự

Under Armour, một công ty sản xuất đồ thể thao, revolutUnder Armour đã tối ưu hóa quy trình tuyển dụng và hiện đại hóa trải nghiệm ứng viên với sự hỗ trợ của trí tuệ nhân tạo (AI). Vào năm 2012, Under Armour nhận được lượng đơn xin việc tăng đột biến, trung bình hơn 30,000 đơn mỗi tháng. Việc đọc tất cả các đơn này, rồi bắt đầu quá trình sàng lọc và phỏng vấn mất quá nhiều thời gian. Quy trình tuyển dụng và đào tạo nhân viên kéo dài đã ảnh hưởng đến khả năng của Under Armour trong việc đảm bảo đủ nhân viên, chuẩn bị và sẵn sàng hoạt động cho các cửa hàng bán lẻ của mình.

Vào thời điểm đó, Under Armour đã có đầy đủ các công nghệ nhân sự "cần thiết", chẳng hạn như các giải pháp giao dịch cho việc tìm kiếm, tuyển dụng, tracUnder Armour đã sử dụng nhiều công cụ khác nhau để tuyển dụng và hướng dẫn nhân viên mới, nhưng chỉ riêng những công cụ đó vẫn chưa đủ. Họ đã chọn HireVue, một nhà cung cấp giải pháp nhân sự dựa trên trí tuệ nhân tạo, cho cả phỏng vấn theo yêu cầu và phỏng vấn trực tiếp. Kết quả rất ấn tượng: công ty báo cáo đã giảm thời gian tuyển dụng xuống 35% trong khi nâng cao chất lượng nhân viên được tuyển dụng.

AI trong tiếp thị

Trí tuệ nhân tạo (AI) là một công cụ có giá trị trong việc quản lý dịch vụ khách hàng và giải quyết các thách thức về cá nhân hóa. Việc cải thiện khả năng nhận dạng giọng nói trong quản lý trung tâm cuộc gọi và định tuyến cuộc gọi, nhờ ứng dụng các kỹ thuật AI, cho phép mang lại trải nghiệm liền mạch hơn cho khách hàng.

Ví dụ, phân tích âm thanh bằng học sâu cho phép hệ thống đánh giá giọng điệu cảm xúc của khách hàng. Nếu khách hàng phản hồi không tốt với chatbot AI, hệ thống có thể chuyển hướng cuộc trò chuyện đến một người điều hành thực sự để giải quyết vấn đề.

Ngoài ba ví dụ về học sâu nêu trên, trí tuệ nhân tạo còn được sử dụng rộng rãi trong nhiều lĩnh vực và ngành công nghiệp khác.

Tại sao Học sâu lại quan trọng?

Học sâu là một công cụ mạnh mẽ để biến các dự đoán thành kết quả có thể hành động được. Học sâu vượt trội trong việc phát hiện mẫu và dự đoán dựa trên kiến ​​thức. Lớn dữ liệu Đây chính là nhiên liệu cho học sâu. Khi cả hai được kết hợp, một tổ chức có thể gặt hái được những kết quả về năng suất, doanh số, quản lý và đổi mới mà trước đây không thể đạt được.

Học sâu cũng có thể vượt trội hơn các phương pháp truyền thống. Đặc biệt đối với các bài toán nhận thức, mạng nơ-ron sâu đã là những phương pháp hàng đầu trong nhiều năm: phân loại hình ảnh, nhận dạng giọng nói và nhận dạng khuôn mặt đều được thống trị bởi các kiến ​​trúc mạng nơ-ron sâu, với các mô hình nhận dạng khuôn mặt đạt độ chính xác gần 99% trên các bộ dữ liệu chuẩn công khai. Lợi thế này đến từ việc mạng tự học các đặc trưng của chính nó thay vì dựa vào các đặc trưng được thiết kế thủ công.

Hạn chế của Deep Learning

Những kết quả đó đi kèm với những cái giá thực tế.

Ghi nhãn dữ liệu

Hầu hết các mô hình AI hiện nay được đào tạo thông qua học có giám sát. Điều này có nghĩa là con người phải gắn nhãn và phân loại dữ liệu cơ bản, đây có thể là một công việc tốn nhiều thời gian và dễ xảy ra lỗi. Ví dụ, các công ty phát triển...ping Công nghệ xe tự lái cần hàng trăm người để chú thích thủ công hàng giờ video từ các xe nguyên mẫu nhằm mục đích huấn luyện các hệ thống này.

Có được bộ dữ liệu đào tạo khổng lồ

Người ta đã chứng minh rằng các kỹ thuật học sâu như CNN có thể, trong một số trường hợp, bắt chước kiến ​​thức của các chuyên gia trong y học và các lĩnh vực khác. Tuy nhiên, làn sóng học máy này đòi hỏi các tập dữ liệu huấn luyện không chỉ được gắn nhãn mà còn phải đủ rộng và phổ quát.

Các phương pháp học sâu đòi hỏi hàng nghìn dữ liệu quan sát để mô hình trở nên tương đối tốt trong các nhiệm vụ phân loại và, trong một số trường hợp, hàng triệu dữ liệu để chúng đạt được hiệu suất ngang tầm con người. Không có gì đáng ngạc nhiên khi học sâu phổ biến nhất tại các công ty công nghệ khổng lồ, nơi sử dụng dữ liệu lớn để tích lũy hàng petabyte dữ liệu. Quy mô đó cho phép họ tạo ra các mô hình học sâu ấn tượng và có độ chính xác cao.

Giải thích một vấn đề

Các mô hình lớn và phức tạp có thể khó giải thích bằng ngôn ngữ con người, ví dụ như tại sao một quyết định cụ thể lại được đưa ra. Đó là một lý do khiến việc chấp nhận một số mô hình gặp nhiều khó khăn. trí tuệ nhân tạo Công cụ này hoạt động chậm trong các lĩnh vực ứng dụng mà khả năng giải thích là hữu ích hoặc thực sự cần thiết.

Hơn nữa, khi ứng dụng AI mở rộng, các yêu cầu pháp lý cũng có thể thúc đẩy nhu cầu về các mô hình AI dễ giải thích hơn.

Câu Hỏi Thường Gặp

Cổ điển học máy Cần các đặc trưng được thiết kế thủ công và hoạt động tốt trên dữ liệu dạng bảng nhỏ. Học sâu tự học các đặc trưng từ dữ liệu thô không có cấu trúc, nhưng cần nhiều ví dụ và sức mạnh tính toán hơn.

Nó đưa vào tính phi tuyến tính, do đó các lớp xếp chồng có thể mô hình hóa các ranh giới quyết định cong thay vì thu gọn thành một bước tuyến tính duy nhất. Hàm ReLU thường được sử dụng mặc định trong các lớp ẩn; hàm sigmoid và softmax định hình đầu ra.

Lan truyền ngược đo lường mức độ đóng góp của mỗi trọng số vào lỗi, sau đó truyền gradient đó ngược trở lại qua các lớp để mỗi trọng số được điều chỉnh theo hướng làm giảm tổn thất. Đây là giai đoạn thứ hai đang diễn ra.

Một epoch là một lần xử lý toàn bộ dữ liệu huấn luyện. Kích thước batch là số lượng mẫu mà mạng nhận được trước khi cập nhật trọng số. Tốc độ học kiểm soát độ lớn của mỗi lần cập nhật trọng số đó.

Transformer, được giới thiệu vào năm 2017, thay thế cơ chế lặp lại bằng cơ chế chú ý, cho phép mỗi token nhìn vào mọi token khác cùng một lúc. Vì điều này hoạt động song song, chúng có khả năng mở rộng tốt hơn nhiều so với RNN và hiện đang chiếm ưu thế trong lĩnh vực xử lý ngôn ngữ và thị giác máy tính.

Quá trình huấn luyện chủ yếu là phép nhân ma trận lớn, mà GPU thực hiện song song với băng thông bộ nhớ rất cao. Việc chuyển mạng CNN hoặc transformer từ CPU sang một GPU huấn luyện duy nhất thường mang lại tốc độ nhanh hơn gấp nhiều lần.

Các công cụ tìm kiếm kiến ​​trúc mạng nơ-ron và AutoML thử nghiệm số lượng lớp, độ rộng và siêu tham số, sau đó giữ lại ứng viên nào cho kết quả xác thực tốt nhất. Chúng giúp giảm đáng kể quá trình chọn lọc thủ công, mặc dù người dùng vẫn đặt ra mục tiêu và ngân sách tính toán.

Trợ lý GitHub dự thảo TensorFlow và PyTorChương trình huấn luyện lặp lại từ một lời nhắc ngắn. Hãy tự kiểm tra hình dạng đầu vào, hàm mất mát và giá trị hạt giống, vì mã mẫu được tạo tự động thường mắc lỗi ở những phần này.

Tóm tắt bài viết này với: