Machine Learning - The First Step
Machine Learning: The First Step
Hôm nay là một ngày đẹp trời, đặc biệt đẹp trời vì mình mới lên đời một em máy tính mới (sau 4 tháng sống không có laptop vì em laptop cũ đi du lịch không về 😖). Nên quyết tâm hôm nay phải làm một cái gì đó đổi mới một tí.
Nhìn lại cái TODO list còn dang dở, thấy có mấy cái tasks liên quan tới ML mà vẫn chưa thực hiện được, nên nhân lúc vẫn còn đang rảnh rỗi, mình quyết định viết 1 bài, coi như là First Step, mở đầu cho chiến dịch học ML của mình vậy =]]]
Trước đây mình từng đọc qua một quyển sách, trong đó có một câu nói mà mình rất tâm đắc: > Trước khi bạn bắt đầu làm một việc gì đó, hãy tự trả lời cho mình 2 câu hỏi: Tại sao mình cần phải làm nó? và Mình sẽ làm nó như thế nào?
Tức là trước tiên bạn sẽ phải trả lời 2 câu hỏi: Why? và How?
Machine Learning? Why?
Trong khoảng bốn tới năm năm trở lại đây, ML đang dần thể hiện mình là một bước đột phá mới của ngành Công nghệ thông tin. ML đã len lỏi vào trong nhiều lĩnh vực của đời sống. Bạn có thể nhìn thấy ứng dụng của nó ở khắp mọi nơi như: Hệ thống nhận dạng khuôn mặt để tag vào ảnh của Facebook, xe ô tô tự lái của Tesla, AlphaGo chơi cờ vây của Google, Hệ thống recomend video của Youtube, … Đây chỉ là 1 phần nhỏ trong vô vàn ứng dụng của ML trong đời sống hàng ngày.
Quay trở lại với lý do tại sao nên học ML, cá nhân mình thấy nên học ML vì một vài lý do:
- ML là một xu thế của ngành công nghệ thông tin. Chắc chắn sẽ phải gặp nó rất nhiều trong ít nhất 10 năm tới. Hãy làm quen vs nó.
- Chỉ nhìn quanh thôi cũng đã thấy rất nhiều ứng dụng của ML vào trong đời sống rồi. Vậy tại sao không học và ứng dụng nó để tạo ra sản phẩm phục vụ cho chính mình? Chính mình chứ không phải ai khác!
- ML là một mảng kiến thức mới hoàn toàn với mình. Và với mình, cứ cái gì mới mẻ thì rất luôi cuốn =]]
Mặc dù hiện tại, mình đang code server-side với Rails, công việc cũng không có gì liên quan tới ML cả nhưng thực sự, ML rất lôi cuốn mình. Và mình cũng muốn học ML để làm ra một ứng dụng recommend truyện tranh và phim để sau này không phải mất công đi tìm nữa 😋
How?
Sau khi đã trả lời được câu hỏi Tại sao rồi, mình thấy cũng có thêm động lực để đi tìm hiểu về ML. Bây giờ là nghĩ xem nên làm thế nào.
Lượn qua 1 vài blog về ML cho người Việt, mình thấy có khá nhiều blog rất hay, hướng dẫn chi tiết, tỉ mỉ cho người mới bắt đầu. Mình có tổng hợp lại 1 số tài liệu, blog, khoá học được recommend (Phần này mình sẽ update thêm trong quá trình học)
- Khoá Machine Learning của thầy Andrew Ng trên Coursera (khoá này thấy trang nào cũng recommend =]] )
- Deep Learning của Google trên Udacity (Khoá này học về Deep Learning vs Tensorflow)
- Machine Learning mastery (Khoá này nói về các thuật toán ML cơ bản)
Hầu hết các trang đều nói tới việc học chia làm 2 bước: Bước đầu là học lý thuyết, cần nắm vững các khái niệm, thuật toán cơ bản của ML. Thêm vào đó là các kiến thức Toán liên quan (Có đại số tuyến tính, Xác suất thống kê, …). Bước thứ hai là học thực hành. Học cách áp dụng các framework vào ML, sử dụng Python để lập trình ML hay học cách thiết kế một Neural Network như thế nào. Và cuối cùng là phải tự tạo ra sản phẩm gì đó cho riêng mình 😎😎😎
Conclusion
Machine Learning là một chặng đường dài, và mình hiểu điều đó. Nhưng chẳng phải mọi con đường dài đều bắt đầu bởi những bước chân đầu tiên? Và mình sẽ cố để tiến xa nhất trên con đường ấy :D
Happy coding! 🤖