Những khái niệm nào về python được sử dụng trong học máy?

Bạn đang cố gắng tự học máy học từ đầu, nhưng không biết bắt đầu từ đâu?

Tôi đã ở một vị trí tương tự chỉ hai năm trước. Tôi đã chi hơn 25 nghìn đô la học phí đại học, nhưng vẫn còn thiếu kinh nghiệm và chưa chuẩn bị cho thị trường việc làm

Tôi đã mất rất nhiều thử nghiệm và sai sót để đưa ra một lộ trình học máy. Tôi đã xem các khóa học trực tuyến, video trên YouTube và tải xuống vô số sách điện tử. Kiến thức tôi có được trên mạng đã vượt qua mọi thứ tôi học được ở trường đại học. Và phần tốt nhất — nó đến với một phần chi phí

Trong bài viết này, tôi sẽ cố gắng cô đọng tất cả các tài nguyên mà tôi đã sử dụng trong nhiều năm thành 7 bước mà bạn có thể làm theo để tự học machine learning.  

 

Bước 1. Học lập trình cho Machine Learning

 

Bạn cần có kiến ​​thức làm việc về lập trình trước khi đi sâu vào học máy. Hầu hết các nhà khoa học dữ liệu sử dụng Python hoặc R để xây dựng các mô hình ML.  

Tôi bắt đầu với Python, vì nó là ngôn ngữ lập trình có mục đích chung và có nhu cầu cao hơn R.  

Các kỹ năng Python cũng có thể chuyển sang các lĩnh vực khác nhau, vì vậy sẽ dễ dàng chuyển đổi hơn nếu bạn phân nhánh sang các lĩnh vực như phát triển web hoặc phân tích dữ liệu trong tương lai

Khóa học Python Bootcamp hoàn chỉnh năm 2022 của Jose Portilla là phần giới thiệu tuyệt vời về Python nếu bạn chưa quen với lập trình. Khóa học này có trên Udemy và họ thường xuyên đưa ra các chương trình khuyến mãi có thể khiến giá khóa học giảm xuống mức thấp nhất là 10 đô la. Bạn nên đợi một trong những chương trình khuyến mãi này trước khi mua hàng

Một ưu điểm khác của việc tham gia khóa học này là nó được dạy hoàn toàn bằng Máy tính xách tay Jupyter. Đây là IDE Python phổ biến nhất được sử dụng bởi các nhà khoa học dữ liệu và Jose sẽ giúp bạn làm quen với giao diện nên bạn không cần mất thời gian tự học

Tuy nhiên, nếu bạn muốn các lựa chọn thay thế miễn phí cho khóa học trên, đây là những gì tôi đề xuất

  • Hướng dẫn Máy tính xách tay Jupyter. Giới thiệu, Thiết lập và Hướng dẫn — Khóa học này sẽ giúp bạn làm quen với giao diện của Jupyter
  • Học Python. Toàn bộ khóa học dành cho người mới bắt đầu [Hướng dẫn] — Khóa học này sẽ cung cấp cho bạn kiến ​​thức cơ bản về lập trình Python, chẳng hạn như biến, kiểu dữ liệu, hàm, câu lệnh điều kiện và vòng lặp. Nó được dạy bằng Pycharm IDE, nhưng bạn có thể sử dụng Jupyter Notebook để thay thế
  • Python cho mọi người — Đây là sách điện tử mà bạn có thể tải xuống miễn phí. Cuốn sách này không giống bất kỳ hướng dẫn Python nào khác mà bạn tìm thấy trên mạng. Nó giới thiệu cho bạn các khái niệm lập trình thông qua lăng kính giải quyết các vấn đề về dữ liệu, khiến nó trở thành một tài liệu lý tưởng cho những người khao khát khoa học dữ liệu

Khi bạn đã nắm được kiến ​​thức cơ bản về Python, hãy bắt đầu áp dụng các khái niệm này để giải quyết vấn đề. Tôi chưa bao giờ học cách viết mã đúng cách mặc dù đã hoàn thành bằng đại học 3 năm về khoa học máy tính và đó là vì tôi chưa bao giờ áp dụng các khái niệm đã học vào các vấn đề thực tế

Do đó, tôi đã có hiểu biết lý thuyết về cách viết mã, nhưng thiếu khả năng phân tích vấn đề và viết giải pháp

Một công cụ giúp cải thiện kỹ năng giải quyết vấn đề của tôi là HackerRank. HackerRank là một nền tảng cung cấp cho người dùng một loạt các thử thách lập trình với các mức độ khó khác nhau. Hãy thử giải ít nhất 2–3 bài toán HackerRank mỗi ngày. Bắt đầu với những cái dễ nhất, sau đó tăng dần mức độ khó khi bạn tiếp tục

Nếu bạn gặp khó khăn trong một vấn đề, bạn luôn có thể tham khảo giải pháp của người khác để hiểu cách họ giải quyết vấn đề đó. Sau đó, hãy thử sao chép quá trình suy nghĩ của họ bằng mã của riêng bạn.  

Khi bạn tiếp tục giải các bài tập thực hành này, bạn sẽ bắt đầu tự tin vào khả năng viết mã của mình.  

Sau đó, bạn có thể chuyển sang bước tiếp theo — học cách làm việc với dữ liệu trong Python

 

Bước 2. Thu thập và tiền xử lý dữ liệu trong Python

 

Bây giờ bạn đã biết cách viết mã bằng Python, bạn có thể bắt đầu tìm hiểu về thu thập và xử lý trước dữ liệu

Một điều mà tôi nhận thấy ở hầu hết những người mới bắt đầu trong ngành khoa học dữ liệu là họ bắt tay ngay vào việc cố gắng thành thạo máy học. Họ không chú trọng nhiều vào việc thu thập hoặc phân tích dữ liệu, đây là một bộ kỹ năng riêng biệt của riêng họ

Do đó, họ thường gặp khó khăn tại nơi làm việc khi được yêu cầu thực hiện các nhiệm vụ như tìm nguồn cung ứng dữ liệu của bên thứ ba hoặc chuẩn bị dữ liệu cho mô hình học máy.  

Dưới đây là một số khóa học tôi đề xuất để thực hiện các nhiệm vụ trên. Tôi cũng sẽ cung cấp các lựa chọn thay thế miễn phí mà bạn có thể chọn để thay thế

  • Thu thập dữ liệu — Nhiều công ty yêu cầu thu thập dữ liệu bên ngoài để hỗ trợ quy trình làm việc khoa học dữ liệu của họ. Bạn có thể sử dụng API để thu thập dữ liệu này hoặc tạo trình quét web từ đầu, tùy thuộc vào loại nhiệm vụ được giao cho bạn. Khóa học Nguyên tắc cơ bản về Web Scraping và API của 365datascience sẽ dạy bạn cách thu thập dữ liệu web bằng Python. Nếu bạn muốn một giải pháp thay thế miễn phí, thì tôi khuyên bạn nên viết mã theo hướng dẫn API Python, tiếp theo là hướng dẫn quét web Python trên Dataquest
  • Tiền xử lý dữ liệu — Dữ liệu bạn thu thập có thể ở nhiều định dạng khác nhau. Bạn cần có khả năng chuyển đổi dữ liệu này thành định dạng mà các mô hình máy học có thể nhập vào. Điều này thường được thực hiện bằng cách sử dụng thư viện Python có tên là Pandas và bạn nên nắm vững thư viện này trước khi bắt đầu tìm hiểu mô hình ML. Để bắt đầu, bạn có thể tham gia khóa học Xử lý trước dữ liệu với Pandas do 365datascience cung cấp. Nếu muốn một khóa học thay thế cho khóa học ở trên, bạn có thể xem video YouTube miễn phí có tiêu đề Giới thiệu về tiền xử lý dữ liệu với Python

 

Bước 3. Phân tích dữ liệu trong Python

 

Tiếp theo, bạn nên bắt đầu học phân tích dữ liệu với Python. Phân tích dữ liệu là quá trình xác định các mẫu trong lượng lớn dữ liệu và khám phá những hiểu biết sâu sắc làm tăng giá trị

Trước khi tạo bất kỳ mô hình học máy nào, bạn cần hiểu dữ liệu bạn đang xử lý. Xem xét mối quan hệ giữa các biến khác nhau trong tập dữ liệu của bạn. Thông tin nào mà một biến cho bạn biết về biến kia?

Tôi khuyên bạn nên tham gia khóa học có tiêu đề Tìm hiểu Python để phân tích và trực quan hóa dữ liệu, cũng của Jose Portilla, để trau dồi kỹ năng của bạn trong lĩnh vực này.  

Có bốn thư viện trong Python được sử dụng chủ yếu để phân tích dữ liệu. Gấu trúc, Numpy, Matplotlib và Seaborn. Khóa học của Jose sẽ dạy bạn phân tích dữ liệu bằng tất cả các thư viện này. Phần hay nhất của khóa học này là anh ấy bao gồm các dự án mẫu tương tự như các ví dụ mà bạn sẽ gặp trong thế giới thực

Nếu đang tìm kiếm các lựa chọn thay thế miễn phí, bạn có thể tham gia khóa học Phân tích dữ liệu với Python của FreeCodeCamp hoặc tải xuống sách điện tử Exploratory Data Analysis with Python

 

Những khái niệm nào về python được sử dụng trong học máy?

Hình ảnh từ tài liệu Scikit-learning

 

Bước 4. Học máy với Python

 
Cuối cùng, bạn có thể bắt đầu học máy học. Tôi luôn khuyên bạn nên sử dụng cách tiếp cận từ trên xuống khi học ML.

Thay vì học lý thuyết và làm việc chuyên sâu về các mô hình học máy, hãy bắt đầu với cách tiếp cận triển khai đầu tiên

Trước tiên hãy học cách sử dụng các gói Python để xây dựng các mô hình dự đoán. Chạy các mô hình trên bộ dữ liệu trong thế giới thực và quan sát đầu ra. Khi bạn cảm nhận được việc học máy trông như thế nào trong thực tế, bạn có thể tìm hiểu sâu hơn về hoạt động của từng thuật toán

Python cho Khoa học dữ liệu và Học máy là một khóa học tuyệt vời mà bạn có thể tham gia để tìm hiểu cách triển khai các mô hình ML trong Python. Một lần nữa, điều này được dạy bởi Jose Portilla và là một trong những khóa học máy học cơ bản tốt nhất mà tôi từng tham gia

Jose sẽ hướng dẫn bạn quy trình học máy từ đầu đến cuối. Bạn sẽ học cách xây dựng, đào tạo và đánh giá các mô hình ML trong Python bằng thư viện có tên Scikit-Learn

Jose sẽ giúp bạn dễ dàng tiếp cận các khái niệm học máy mà không đi sâu vào chi tiết, điều này khiến đây trở thành một khóa học nhập môn tuyệt vời để bạn bắt đầu

Khóa học Machine Learning với Scikit-Learn của FreeCodeCamp là một sự thay thế miễn phí tuyệt vời cho khóa học trên. Nếu thích đọc sách, bạn có thể tải xuống sách điện tử miễn phí có tiêu đề Xây dựng hệ thống học máy bằng Python. Đây là một cuốn sách ngắn, thực hành sẽ cung cấp cho bạn rất nhiều ví dụ thực tế mà không đi sâu vào hoạt động của từng thuật toán

 

Bước 5. Các thuật toán học máy chuyên sâu

 

Khi bạn cảm nhận được các mô hình khác nhau và cách chúng được triển khai, bạn có thể bắt đầu tìm hiểu các thuật toán cơ bản đằng sau các mô hình này

Có hai tài nguyên tôi đề xuất cho việc này

  • Học Thống kê — edX. Khóa học này sẽ cung cấp cho bạn kiến ​​thức chuyên sâu về cách hoạt động của các thuật toán máy học khác nhau. Khóa học này ít phụ thuộc vào các công thức toán học phức tạp hơn, điều này giúp bạn dễ dàng theo dõi hơn nếu bạn không có nền tảng toán học

Khóa học này bao gồm các kỹ thuật học máy có giám sát và không giám sát, chẳng hạn như hồi quy tuyến tính, hồi quy logistic, phân tích phân biệt tuyến tính, phân cụm K-Means và phân cụm theo cấp bậc. Những người hướng dẫn cũng đề cập đến các khái niệm như xác thực chéo và chính quy hóa để tránh quá khớp mô hình — điều này sẽ hữu ích khi làm việc với các bộ dữ liệu trong thế giới thực.  

Một số bài giảng thực tế trong khóa học này được dạy bằng R, bạn có thể thoải mái bỏ qua, vì giá trị gia tăng chính của khóa học là tài liệu lý thuyết

Khóa học này dựa trên một cuốn sách được viết bởi những người hướng dẫn của nó có tên là Giới thiệu về học tập thống kê. Đây cũng là một tài nguyên với các ví dụ mã được viết bằng R. Tuy nhiên, tôi đã tìm thấy một kho lưu trữ GitHub dịch tất cả các ví dụ về mã sang Python, vì vậy bạn có thể đọc sách và viết mã theo các ví dụ về Python để thay thế

Tất cả các tài nguyên trên có thể được lấy miễn phí. Mặc dù các khóa học edX có tính phí, nhưng bạn có thể nộp đơn xin hỗ trợ tài chính để được miễn học phí. Bạn cũng có thể tải xuống sách điện tử được đề cập ở trên miễn phí

  • Danh sách phát máy học của Krish Naik — YouTube. Krish Naik là một nhà khoa học dữ liệu, người tạo ra các hướng dẫn về máy học trên YouTube có thể truy cập miễn phí.  

Trong danh sách phát này, anh ấy có các video hướng dẫn người học về trực giác toán học đằng sau các mô hình máy học khác nhau. Anh ấy giải thích thuật toán cơ bản đằng sau hồi quy tuyến tính và logistic, các khái niệm như đóng bao và tăng tốc, cũng như các kỹ thuật học không giám sát như K-mean và phân cụm theo thứ bậc.  

Tương tự như khóa học Thống kê học, anh ấy không giải thích bất kỳ điều gì trong số này bằng ký hiệu toán học phức tạp. Thay vào đó, anh ấy giải thích hoạt động của từng thuật toán bằng tiếng Anh đơn giản để người học từ các nền tảng khác nhau có thể dễ dàng hiểu được.

 

Những khái niệm nào về python được sử dụng trong học máy?

Hình ảnh được cung cấp bởi Geralt trên Pixabay

 

Bước 6. Học kĩ càng

 

Cho đến nay, tất cả các tài nguyên trên đều tập trung vào thuật toán học máy truyền thống, hay “thuật toán học nông”. ” Bây giờ bạn có thể bắt đầu học một loại thuật toán học máy khác — học sâu

Các thuật toán học sâu có thể xác định các biểu diễn trong dữ liệu với ít hoặc không cần kỹ thuật tính năng. Các thuật toán học sâu có thể xác định các biểu diễn trong dữ liệu và lấy các tính năng trực tiếp từ nó. Do đó, học sâu thường được sử dụng để xử lý dữ liệu không có các tính năng rõ ràng — chẳng hạn như dữ liệu hình ảnh, giọng nói và văn bản

Có hai tài nguyên tôi đề xuất để bắt đầu học sâu

  • Chuyên môn học sâu của Andrew Ng — Coursera. Đây là một trong những tài nguyên trực tuyến phổ biến nhất để học deep learning. Andrew Ng sẽ dạy bạn cách xây dựng và đào tạo mạng lưới thần kinh cũng như áp dụng các kỹ thuật học sâu cho dữ liệu hình ảnh và văn bản. Coursera tính phí hàng tháng khi bạn đăng ký một khóa học và họ sẽ cung cấp cho bạn chứng chỉ sau khi bạn hoàn thành khóa học. Tuy nhiên, bạn có thể chọn kiểm tra khóa học này và nhận tất cả tài liệu khóa học miễn phí.  
  • Học sâu với Python — Đây là tài nguyên học sâu yêu thích của tôi. Sách giáo khoa này sẽ đưa bạn qua lý thuyết và triển khai các mô hình học tập sâu. Một lần nữa, tác giả của cuốn sách này giả định rằng người đọc không có kiến ​​thức toán học và tất cả các khái niệm đều được giải thích bằng tiếng Anh đơn giản. Tôi thích cuốn sách này hơn là khóa học chuyên sâu của Andrew Ng, vì có nhiều ví dụ thực tế hơn và mã Python được cung cấp. Tôi đã có thể áp dụng những gì tôi học được vào các dự án thực tế, so với khóa học của Andrew Ng mang tính lý thuyết cao.

 

Bước 7. dự án

 

Bước cuối cùng. xây dựng dự án

Có rất nhiều tài liệu được cung cấp ở trên. Nếu bạn không áp dụng bất kỳ điều gì trong số đó vào các dự án thực tế, bạn sẽ quên những gì bạn đã học. Bạn có thể ghi nhớ các khái niệm, thu thập chứng chỉ và tham gia bao nhiêu bài kiểm tra tùy thích. Nhưng bạn chỉ thực sự học khi bạn bắt đầu xây dựng

Đây là một bài viết tổng hợp các dự án máy học được tạo bởi các nhà khoa học dữ liệu khác, với mã nguồn được cung cấp để bạn tham khảo. Bạn có thể viết mã theo một số dự án này và thực hiện các thay đổi nhỏ đối với chúng, trước khi bắt đầu dự án của riêng bạn từ đầu

Dưới đây là một số tài nguyên khác mà tôi tìm thấy có thể giúp bạn bắt đầu

  • Thu thập đánh giá sách trên Amazon
  • Các dự án học sâu với mã nguồn
  • Danh sách phát dự án máy học của Krish Naik
  • Xây dựng mô hình phát hiện tuổi từ ảnh khuôn mặt của họ

Tự học máy học có thể tốn thời gian và quá sức. Tuy nhiên, đó cũng là một hành trình rất bổ ích. Mỗi khi bạn học một khái niệm mới hoặc giải quyết một vấn đề mà bạn không nghĩ là có thể thực hiện được, bạn sẽ tiến một bước gần hơn để đạt được mục tiêu thành thạo máy học của mình

Các khái niệm trong Python cần thiết cho máy học là gì?

Python trong Học máy . Nó triển khai các kỹ thuật máy học phổ biến như đề xuất, phân loại và phân cụm . Do đó, cần phải có phần giới thiệu ngắn gọn về học máy trước khi chúng ta tiến xa hơn.

Python đang được sử dụng như thế nào trong học máy?

Có thể xây dựng các giải pháp phần mềm được phát triển bằng Python và cũng có thể chạy trên nhiều nền tảng hệ điều hành. Chẳng hạn, Linux, Windows, Mac, Solaris, v.v. Điều này làm cho máy học lập trình python thuận tiện hơn rất nhiều. Đó là lý do tại sao các nhà phát triển thích Python trong quá trình phát triển các ứng dụng ML .

Các khái niệm được sử dụng trong học máy là gì?

Machine Learning được chia thành hai lĩnh vực chính. học có giám sát và học không giám sát . Mặc dù có vẻ như khái niệm đầu tiên đề cập đến dự đoán với sự can thiệp của con người và khái niệm thứ hai thì không, hai khái niệm này liên quan nhiều hơn đến những gì chúng ta muốn làm với dữ liệu.

Các khái niệm liên quan đến Python là gì?

Lập trình hướng đối tượng .
Các lớp học
Biểu thức chính quy
Vòng lặp và Iterator
Sử dụng mô-đun thập phân của Python
Giao tiếp với Unix
phương pháp đặc biệt
Loại dữ liệu tùy chỉnh
Ngoại lệ là các lớp