Nvidia Artificial Intelligence Machine Learning Deep Learning 1 2
31Th7

[Series Deep Learning] Phần 1: Deep Learning là gì?

Đôi dòng về tác giả:

 

Screenshot 1

Tác giả tên là Nguyễn Thanh Tuấn, sinh năm 1995, hiện tại đang đảm nhận vị trí Data Scientist của LAB TEAM – Pixta Vietnam. Anh Tuấn chia sẻ trước đây mình từng là một C++ programmer, tuy nhiên đã tìm thấy đam mê trên con đường nghiên cứu data science. Anh vừa tốt nghiệp bằng thạc sỹ chuyên ngành Machine learning tại trường đại học Bristol, Anh Quốc (nằm trong top 50 trường đại học tốt nhất trên thế giới). Hiện tại, nghiên cứu chính của anh bao gồm machine learning, deep learning và computer vision.

 

Series bài viết về Deep Learning được anh Tuấn viết ra với mong muốn chia sẻ kiến thức thực tiễn và các ứng dụng bổ ích về Deep learning cho bạn đọc. Mỗi bài viết bao gồm những giải thích chi tiết nhưng đơn giản, dễ hiểu cho tất cả mọi người. Bên cạnh đó, nội dung sẽ đi từ lý thuyết đến thực hành và luôn có các ứng dụng thực tế đi kèm.

Hi vọng rằng sau series này, bạn đọc và những người quan tâm đến Deep Learning hay AI, Machine learning sẽ có cái nhìn, quan điểm sâu sắc hơn và những kiến thức bổ ích cho bản thân.

 

Phần 1: Deep Learning là gì?

Trong khoảng vài năm trở lại đây, mọi người được nghe rất nhiều về cuộc cách mạng công nghiệp 4.0. Vậy điều gì đã làm nên sự đặc biệt? Hạt nhân cho sự bùng nổ đến từ Artificial Intelligence (trí tuệ nhân tạo) hay cụ thể là Machine Learning (máy học). Ứng dụng của AI có ở khắp mọi nơi: ô tô tự lái, robot phẫu thuật, hệ thống dịch tự động, chatbot tự động trả lời, AlphaGo,…

Machine learning theo định nghĩa của wiki: “Machine learning is the subfield of computer science that “gives computers the ability to learn without being explicitly programmed “, mang nghĩa rằng chương trình có thể tự học được từ dữ liệu.

Machine learning là một ngành rất rộng và nặng về toán, gồm rất nhiều thuật toán và mỗi thuật toán có ứng dụng riêng tùy vào bài toán:

  •  Linear Regression
  • Logistic Regresstion
  • Decision Tree and Random Forest
  • Naive Bayes
  • Support Vector Machines
  • K-Nearest Neighbors
  • Principal component analysis (PCA)
  • Neural network

Deep learning được bắt nguồn từ thuật toán Neural network vốn xuất phát chỉ là một ngành nhỏ của machine learning. Tuy nhiên theo thời gian, chúng ta có thể ví nó giống như con gà đẻ trứng vàng vậy.

 

Nvidia Artificial Intelligence Machine Learning Deep Learning 1

 

Những ứng dụng chúng ta được kể ở trên đều có được nhờ áp dụng deep learning. Cùng với khả năng tính toán vượt trội của máy tính và lượng dữ liệu khổng lồ mà con người tạo ra, deep learning đang có những bước đột phá thực sự.

Ý tưởng và mục đích của loạt bài viết này.

Gần đây mình có tìm hiểu về ứng dụng của Deep learning trong y học. Mình nhận thấy là mình biết về Deep Learning (DL) nhưng không có kiến thức về y học, do đó không hiểu được ứng dụng y học của nó vì người nắm giữ kiến thức y khoa là bác sĩ. Bác sĩ thì gặp vấn đề ngược lại là không có kiến thức về Deep Learning.

Vậy nên mình quyết định viết loạt bài viết này để giới thiệu các kiến thức cơ bản về Deep Learning cũng như các ứng dụng của nó để thậm chí những người có kiến thức chuyên môn, dữ liệu trong các ngành khác như y tế, ngân hàng, nông nghiệp,… cũng có thể tự áp dụng được Deep learning trong lĩnh vực của họ.

Loạt bài cũng rất phù hợp cho những người mới bắt đầu muốn tìm hiểu về AI, ML, Deep Learning cũng như các bạn học công nghệ thông tin hoặc chuyên ngành toán muốn chuyển ngành.

Cuối cùng, hy vọng qua loạt bài viết này mọi người có được những kiến thức cơ bản về deep learning và thấy được các ứng dụng của nó. Để rồi áp dụng các ý tưởng vào start-up, công ty để có các ứng dụng hay, thiết thực cho xã hội.

Môi trường

Tất cả code trong loạt bài viết bằng python, thư viện cho deep learning mình dùng keras. Mình khuyên các bạn nên dùng Google colab (link hướng dẫn sử dụng) vì bạn không cần cài đặt trên máy mà có thể chạy code được luôn hoặc cài Anaconda (link hướng dẫn cài đặt) và dùng phần mềm spyder hoặc jupyter notebook.

Yêu cầu

  • Kiến thức về toán cơ bản cấp ba: hàm số, đạo hàm.
  • Kiến thức cơ bản về lập trình: biến, vòng lặp.
  • Ý thức học hỏi kiến thức mới.

Vì loạt bài viết này mình hướng đến đối tượng là tất cả mọi người nên mình sẽ giải thích tất cả mọi thứ chi tiết nhất có thể. Mọi người có thắc mắc, không hiểu thì cứ chủ động hỏi ở phần bình luận nhé!

Một số group về machine learning, deep learning trên facebook:

Cảm ơn và hẹn gặp lại các bạn ở những số tới!