Chia Sẻ: Cách Tự Học Machine Learning
Machine learning (máy học) là một lĩnh vực mới được cập nhật liên tục. Mỗi này ta lại thấy hằng hà vô số những tiêu đề mới nói về nó. Mỗi thông tin từ Google và Facebook về Machine Learnin làm cộng đồng điên đảo.Với quá nhiều thông tin mới liên tục và ít được kiểm chứng như vậy. Ta phải bắt đầu học machine learning từ đâu đây?
Đây cũng là câu hỏi đã khiến tác giả đau đáu bấy lâu. Khi mới biết đến machine learning, tác giả tự hỏi mình "Máy biết học giúp mình à?" và sự tò mò đã thôi thúc anh dấn thân vào lĩnh vực này. Anh tự mày mò từng chút một và dưới đây là những đút kết của anh trong quá trình tự học Machine Learning đầy lý thú cũng không kém phần gian nan.
A) Hãy bắt đầu tự học Machine Learning (máy học) với những câu hỏi "Tại Sao"
Tất cả những khóa học bạn bắt đầu nhưng không bao giờ kiên trì đi hết. Tại sao vậy?
Tất cả những điều bạn đã nói bạn sẽ làm nhưng lại không làm. Tại sao thế?
Có thể ngay từ ban đầu bạn đã không có lý do đủ mạnh mẽ.
Trước khi bạn bắt đầu học machine learning, hay trước khi bạn bắt đầu học bất cứ thứ gì. Hãy tự hỏi bản thân, "tại sao?"
"Tại sao tôi muốn học những kỹ năng này?"
Tìm một cây viết và một cuốn note. Sau đó đi dạo. Một mình.
Tìm một nơi yên tĩnh, và đặt viết...
'Tôi muốn học machine learning vì...'
Hãy viết ra tất cả những gì xảy ra trong đầu bạn.
"Tôi muốn một mức lương tốt hơn."
"Tôi muốn tạo ra nhiều ứng dụng hay để giúp đỡ mọi người."
"Công nghệ này làm tôi mê mẩn."
"Tôi muốn trở thành một phần trong việc xây dựng tương lai."
Bất cứ điều gì. Không có câu trả lời đúng hay sai. Viết tất cả ra giấy.
Bạn đã viết đầy trang rồi? Tốt!
Bây giờ hãy đọc lại những gì bạn đã biết. Chúng có đủ để giúp bạn kiên trì trong 10 năm tới không?
Tại sao lại những 10 năm? Vì tại sao bạn phải bắt đầu bất kỳ hành trình nào gì nếu bạn không thể kiên trì đến cuối con đường?
Nếu những lý do trong tim bạn không đủ để giúp bạn tiếp tục trong 10 năm, hãy tìm học gì đó khác.
Nếu những lý do đó cho bạn quyết tâm và động lực, hãy thực ngay quyết tâm đó. Và mỗi khi bạn càn thấy mệt mỏi muốn bỏ cuộc, hãy lôi mảnh giấy ra, nhớ lại những lý do gì đã khiến bạn bắt đầu.
B) Hãy Có Cái Nhìn Theo Đường Dài
Quá. Nhiều. Tài. Liệu.
Tác giả nghiên cứu machine learning mỗi ngày, và đến cả anh cũng không cập nhập kịp.
Tác giả mất trung bình 6 tiếng đồng hồ để nghiền ngẫm một bài viết. Vị chi khoảng 10 bài mỗi tuần.
Cứ vài tuần lại có một mức chuẩn mực mới. Một cách làm mới. Một mô hình mới để thử nghiệm. Một kiến trúc mạng mới, hoạt động tốt hơn 1% so với kiến trúc trước đó.
Một phút sao nhãng, và bùm! Mình bị lỗi thời, đôi khi không khởi khiến ta chán nản.
"Tại sao mình không theo kịp công nghệ?"
Không phải cái gì mới mình cũng cần biết đâu. Điều quan trọng là phải biết lĩnh vực này đang hướng đến đâu. Nhưng nghĩ rằng bạn sẽ có thể theo kịp từng chi tiết nhỏ nhất, đặc biệt là khi bạn mới bắt đầu thì thật ngu ngốc.
Cố gắng theo kịp mọi thứ mới sẽ làm bạn chậm lại.
Hãy có cách nhìn về lâu dài. Cốt lõi của machine learning đã có từ nhiều thập kỷ và sẽ không dễ dàng thoái trào.
- Lập trình (Python, R, Java) - Hãy chọn một ngôn ngữ và trâu dồi nó thật nhuần nhuyễn.
- Toán học (đại số tuyến tính, giải tích, thao tác ma trận, tối ưu hóa, thống kê)
- Điện toán (cục bộ tại hardware, điện toán đám mây, điện toán song song) - Nếu bạn đang bắt đầu học Machine Learning, ít nhất hãy biết cách kích hoạt một máy tính trên đám mây.
- Giao tiếp (bạn biết đến đâu, và bạn mang đến lợi ích cho tổ chức như thế nào?) - Giao tiếp có giá trị ở mọi nơi. Chuyên môn thôi vẫn chưa đủ nếu bạn không thể giải thích chúng với người bên cạnh.
Hãy xây dựng nền tảng kiến thức và kỹ năng xung quanh các chủ đề này. Rồi thì, khi một cái gì đó mới xuất hiện, bạn đã có một nền tảng vững chắc để bắt nhịp.
Đừng mong đợi mình sẽ thành "chuyên gia" chỉ sau một đêm. Để thành thạo những kỹ năng này cần có thời gian và nỗ lực. Hãy nghĩ tháng và năm, không phải ngày và tuần. Phải có những lý do như thế này thì machine learning mới hiếm và "hot" đến như vậy đúng không nào?
Khi nào thấy nản lòng, quay lại phần A nha.
C) Truyền thống Vs. Hiện đại
Phần lớn thời gian tác giả học trực tuyến, nhưng sau vài tháng làm việc trong ngành, anh phát hiện ra "bug" học tập.
Anh khao khát tìm hiểu thêm. Và toán học ở khắp mọi nơi. Đó là ngôn ngữ của tự nhiên.
Với việc học trực tuyến, ta có một vài lợi thế:
- Cảm giác tự vạch ra đường đi cho chính mình và nỗ lực vượt qua từng thử thách sẽ sẽ rất là thỏa mãn đấy.
- Rẻ tiền hơn đi học đại học quốc tế.
- Thích học khi nào thì học - không theo lịch trình bắt buộc.
- Thích học ở đâu thì học - không cần phải xách mông đi chỗ này chỗ kia.
- Thích cái gì học cái nấy - Đang học khóa này mà thấy dở quá? Chọn khóa khác thôi
Và cũng có một vài bất lợi:
- Ngồi hàng tiếng đồng hồ một mình — đôi khi thật cô đơn
- Không ai hối thúc bạn cả, chỉ có bản thân mình tự nỗ lực thôi.
- Không có bằng cấp "sang chảnh" sau khi "thành đạo" — Tất nhiên là chứng chỉ online nhìn cũng tạm được nhưng so với bằng cấp chính thức thì vẫn kém không chỉ một chút rồi.
Tuy việc học trực tuyến có nhiều lợi thế, và nguôn thông tin online đang mở rộng từng ngày. Tuy nhiên một số công việc và vị trí đặc thù ở một vài công ty yêu cầu bạn phải có bằng chính quy. Đồng thời, nếu bạn muốn học lên thạc sĩ hay tiến sĩ, thì đại học chính quy vẫn tốt hơn.
Nếu bạn chỉ học để phục vụ công việc, và bạn có một ý chí quyết tâm mạnh mẽ. Thì bạn đã có internet làm người thầy tốt nhất rồi đó.
Để tham khao, dưới đây là một số khóa tác giả đã học qua:
- Treehouse Python Track
- Coursera Machine Learning by Andrew Ng
- Udacity Deep Learning Nanodegree
- Udacity AI Nanodegree
- deeplearning.ai by Andrew Ng
D) "TÀI XẾ" VS. "THỢ MÁY"
Khi lái xe đến cửa hàng, bạn có nghĩ đến việc động cơ sản sinh ra bao nhiêu lực xoay?
Hay lượng không khí chạy qua nó?
Hay cách bơm nhiên liệu đưa nhiên liệu vào buồng đốt?
Một chiếc xe hơi vẫn có ích cho bạn ngay cả khi bạn không biết kiến thức này.
Tuy nhiên, nếu bạn muốn trở thành một thợ cơ khí thì lại khác.
Đối với machine learning cũng vậy. Bạn có thể học cách sử dụng các framework và thư viện lập trình như TensorFlow để xây dựng những thứ hữu ích mà không thực sự phải biết cơ chế gì đang diễn ra.
Nhưng nếu bạn muốn có thể làm cho mạng của mình chạy nhanh hơn, hoạt động tốt hơn trên các thiết bị khác nhau, tính toán hiệu quả hơn, bạn sẽ phải tốn thêm công sức tối ưu.
Trong thời gian đầu, hãy tập trung vào việc làm "tài xế". Tự mình muốn đi đâu thì đi. Giống như việc lái xe từ cửa hàng này sang cửa hàng khác, hãy giải quyết hết vấn đề machine learning này đến vấn đề khác.
Khi bạn cảm thấy thoải mái lái chiếc xe mình có, đã đến lúc nâng cấp, mở mui xe và đào sâu hơn một chút. Thực hành về một vấn đề mới mà bạn chưa từng gặp trước đây.
Hơn thế nữa, với code, nếu bạn làm rối tung một thứ gì đó, bạn luôn có thể đảo ngược code. Còn oto thì không có chuyện đảo version.
E) NON-STOP
Việc học không bao giờ dừng lại.
Mỗi ngày như ngày đầu tiên. Khi mọi người hỏi tôi làm nghề gì, tôi vẫn trả lời rằng "Tôi là học sinh".
Không học thì phải làm gì?
Giữ nguyên kiến thức trong vài chục năm tới?
Thôi, cảm ơn.
Càng học nhiều, bạn càng nhận ra mình biết ít thế nào.
"Kỹ năng toán học của tôi không tốt như họ."
"Kiến thống kê của tôi không phải là hàng đầu."
"Lập trình của tôi cũng chỉ tầm tầm."
"Giao tiếp khá tốt. Nhưng luôn có chỗ để cải thiện."
Bạn có thể học cả cuối tuần mà không ai để ý hay quan tâm. Nhưng bạn thì có. Bạn tham khảo lại lý do của bạn.
Hãy đặt một viên gạch kiến thức mỗi ngày để bạn sẽ không hối tiếc trong tương lai.
Nhận xét
Đăng nhận xét