Site icon TAPIT

Deep Learning là gì?

      Deep learning là một kỹ thuật học máy sử dụng để giúp cho máy – những vật dường như vô tri có thể học được như con người bằng cách học từ những ví dụ. Deep learning là chìa khóa công nghệ đằng sau những chiếc xe tự hành, cho phép xe nhận ra dấu hiệu dừng, hoặc có thể phát hiện được các mối nguy hiểm ở xung quanh… Deep learning cũng là chìa khóa cho việc điều khiển các thiết bị khác chỉ bằng giọng nói. Hiện tại, “Deep learning chỉ bị giới hạn bởi trí tưởng tượng của con người”.

      Trong deep learning, một mô hình máy học có thể thực hiện các nhiệm vụ như phân loại hình ảnh, văn bản hoặc âm thanh. Mô hình deep learning có thể đạt được độ chính xác cao, đôi khi vượt qua khả năng của con người. Mô hình được huấn luyện bằng một lượng dữ liệu (có nhãn) cực kỳ lớn và có kiến trúc mạng nơ-ron chứa nhiều lớp.

      Trong khi deep learning được nói đến lần đầu tiên vào những năm 1980, có hai lý do chỉ mới gần đây nó mới trở nên hữu ích:

  1. Deep learning cần có một lượng lớn dữ liệu gán nhãn. Ví dụ: Chiếc xe không người lái đòi hỏi hàng triệu hình ảnh và hàng ngàn giờ video.
  2. Deep learning đòi hỏi một sức mạnh tính toán lớn. GPU hiệu suất cao có cấu trúc song song mang lại hiệu quả cao cho deep learning. Khi kết hợp với các cụm hoặc điện toán đám mây, điều này cho phép các nhà phát triển giảm được đáng kể thời gian huấn luyện từ nhiều tuần nay chỉ còn vài giờ hoặc thấp hơn.

Ứng dụng của deep learning trong đời sống

      Học sâu được áp dụng trong đời sống từ xe tự hành đến các thiết bị y tế.

      Automated driving: Các nhà nghiên cứu sử dụng deep learning để tự động phát hiện các đối tượng như tín hiệu dừng, đèn giao thông. Ngoài ra còn phát hiện người đi bộ, giúp giảm đáng kể tai nạn.

      Aerospace and Defense: Deep learning được sử dụng để phát hiện các vật thể từ vệ tinh nhằm xác định các khu vực quan tâm, các khu vực an toàn và không an toàn cho quân đội.

      Medical Research: Các nhà nghiên cứu ung thư sử dụng deep learning để phát hiện các tế bào ung thư. Các nhóm tại UCLA (University of California–Los Angeles) đã xây dựng một chiếc kính hiển vi tiên tiến giúp xây dựng bộ dữ liệu lớn với độ chính xác cao được sử dụng để huấn luyện deep learning giúp xác định chính xác được các tế bào ung thư.

      Industrial Automation: Deep learning giúp nâng cao độ an toàn cho người lao động với nhưng máy móc hạng nặng bằng cách phát hiện các trường hợp người hoặc đồ vật nằm trong phạm vi không an toàn của máy.

      Electronics: Deep learning đang được sử dụng giúp máy có thể nghe và hiểu được người nói. Ví dụ, các thiết bị trong nhà có thể nghe và đáp ứng các yêu cầu của bạn và nhận biết được sở thích của bạn.

Deep learning hoạt động như thế nào?

      Hầu hết phương pháp deep learning đều sử dụng neural network architectures, điều đó giải thích vì sao mô hình deep learning thường được gọi là deep neural network.

      Thuật ngữ “Deep” thường dùng để chỉ số lớp ẩn trong neural network. Những mạng neural thông thường chỉ có 2 đến 3 lớp ẩn, trong khi deep network có thể tới 150 lớp và có thể có nhiều hơn.

      Mô hình deep learning được huấn luyện với lượng lớn dữ liệu có nhãn và neural network architectures, mô hình sẽ trích thuộc tính trực tiếp từ dữ liệu thô mà không cần phải trích thuộc tính thủ công.


Neurol network được tổ chức thành từng lớp bao gồm tập hợp các neural kết nối.
Mạng có thể có hàng chục hoặc hàng trăm lớp ẩn.

      Một trong những loại phổ biến nhất trong deep neural network được biết đến với tên gọi Convolution neural network (CNN hoặc ConvNet). CNN thu nhận các thuộc tính đã học với dữ liệu đầu vào, và sử dụng các lớp convolution 2 chiều, làm cho cấu trúc này phù hợp với dữ liệu 2 chiều, chẳng hạn như hình ảnh.

      CNNs loại bỏ việc trích thuộc tính một cách thủ công, vì vậy bạn không cần phải xác định các thuộc tính phục vụ cho phân loại hình ảnh. CNN trích xuất trực tiếp các thuộc tính từ hình ảnh thô. Những thuộc tính không được đào tạo trước, nó sẽ học sau khi mạng được huấn luyện từ một nhóm các hình ảnh. Việc trích xuất thuộc tính một cách tự động giúp cho mô hình deep learning đạt được độ chính xác cao cho việc phân loại đối tượng.

      

Ví dụ một mạng với nhiều lớp convolution.
Các bộ lọc được sử dụng ở mỗi hình ảnh huấn luyện ở các phương pháp khác nhau, và mỗi đầu ra chính là đầu vào của lớp tiếp theo.

      CNNs được học để phát hiện các thuộc tính khác nhau của mỗi ảnh sử dụng hàng chục đến hàng trăm lớp ẩn. Mỗi lớp ẩn làm tăng độ phức tạp của các thuộc tính của ảnh. Ví dụ, lớp đầu tiên phát hiện biên, và cuối cùng phát hiện được các thuộc tính hình dạng đặc biết phức tạp hơn phục vụ cho hình dạng của đối tượng mà ta mong muốn nhận dạng.

Sự khác nhau giữa Machine learning và Deep learning

      Deep learning là một dạng đặt biệt của Machine learning. Machine learning bắt đầu với một chuỗi thuộc tính đã được trích xuất sẵn. Các thuộc tính đó được sử dụng đê tạo ra mô hình phân loại các đối tượng. Với deep learning, các thuộc tính sẽ được trích xuất trực tiếp từ hình ảnh thô. Ngoài ra, deep learning sử dụng “end-to-end learning” – ở đó mạng sẽ được cung cấp các dữ liệu thô và nhiệm vụ thực hiện, chẳng hạn như phân loại, và nó học một cách tự động.

      Điểm khác biệt khác chính là các thuật toán deep learning tỷ lệ với quy mô dữ liệu. Trong khi machine learning mang đến hiệu suất nhất định khi thêm nhiều ví dụ và dữ liệu huấn luyện vào mạng.

      Lợi thế của deep learning là nó liên tục cải tiến khi kích thước dữ liệu tăng lên mà không cần phải huấn luyện lại từ đầu.


So sánh sự khác nhau trong việc phân loại xe giữa machine learning và deep learning

      Trong machine learning, bạn tự chọn các thuộc tính trích xuất phục vụ cho quá trình phân loại. Với deep learning, trích xuất thuộc tính và mô hình hóa một các tự động.

Nguồn: MathWorks
Phạm Công Anh Huy