1. Định nghĩa và quy trình một dự án khoa học dữ liệu
Mentor Nguyễn Hải Nam Cố vấn kỹ thuật của Nhà thông minh LUMI. Là thạc sĩ Khoa học máy tính tại đại học UNICAS (Ý), anh từng đảm nhiệm vị trí Kỹ sư tối ưu tại VNPT và AI R&D Team Leader tại ASILLA Japan, một start-up chuyên về AI trong lĩnh vực y tế.
Mentor Nam mở đầu chương trình với định nghĩa của Data Science (Data Science) – Ngành khoa học dữ liệu: tất cả những công việc liên quan đến thao tác, sử dụng dữ liệu: từ thu thập, dự đoán, phân tích, đến đưa ra mô hình, phát triển thành API hoặc dịch vụ, đưa ra quyết định dựa trên dữ liệu… Sự bùng nổ của Data Science trong những năm gần đây là nhờ có sự bùng nổ của khối lượng dữ liệu cùng sự phát triển của thuật toán và các bài báo khoa học.
Một báo cáo về Bối cảnh ngành công nghiệp IT ở Việt Nam của TopDev cho thấy Machine learning/AI, và Big Data/Data Science là hai trong số các kỹ năng sẽ được các nhà tuyển dụng mong đợi nhất, được săn đón nhất trong tương lai gần. Tuy nhiên, mentor Nguyễn Hải Nam cũng nhấn mạnh, đây không phải kỹ năng đang được tuyển dụng nhiều nhất ở Việt Nam. Do nước ta đang phát triển theo hướng trở thành một nước chuyên về gia công phần mềm, các kỹ năng được tuyển nhiều nhất vẫn là lập trình front-end, web, mobile…
Tiếp đến anh chia sẻ về 5 bước cơ bản của một quy trình khoa học dữ liệu:
- Obtain – Thu thập/tìm kiếm dữ liệu: Bài toán Data Science nào cũng bắt đầu bằng việc thu thập data;
- Scrub – Làm sạch dữ liệu: Data có được trong bước 1 chỉ là dữ liệu thô, cần “làm sạch”, chuyển thành định dạng mà máy có thể đọc hiểu;
- Explore – Khai phá dữ liệu: Đây là một bước rất quan trọng, liên quan đến việc xử lý, tìm ra thông tin trong data;.
- Model – Mô hình hóa dữ liệu: Tạo ra mô hình dùng dữ liệu để đưa ra quyết định. Ví dụ như khi bạn cần quyết định đi đường nào để tránh tắc đường thì bạn cần một mô hình với các input như lưu lượng di chuyển trên mỗi con đường, số lượng người trên các con đường xung quanh…. Và output là đi con đường nào đi nhanh nhất. Việc Google Map từ chỗ chỉ có thể đưa ra đường đi ngắn nhất 5-7 năm trước đây cho đến việc có thể tính toán đường đi nhanh nhất chính là một bước tiến trong modeling.
- Interpret – Diễn giải dữ liệu: Ở bước này, bạn sẽ cần quan tâm đến việc khi đã có mô hình thì làm sao để đưa vào sử dụng, đặc biệt là khi số người sử dụng lên đến con số hàng triệu.
5 bước của một quy trình khoa học dữ liệu (slide diễn giả)
Quy trình trên được giải thích cặn kẽ hơn trong 10 bước cụ thể. Một dự án về Data Science bắt đầu với việc hiểu rõ bài toán kinh doanh (Business understanding), tiếp đến là quyết định làm thế nào để dùng dữ liệu để giải quyết bài toán kinh doanh (Analytic approach)
Sau Yêu cầu, thu thập, hiểu, và làm sạch dữ liệu (Data requirements, Data collection, Data understanding, Data preparation), mô hình hóa, đánh giá, triển khai mô hình (Modeling, Evaluation, Deployment). Mentor Nguyễn Hải Nam Nam đặc biệt nhấn mạnh tầm quan trọng của Feedback – một bước rất quan trọng để giúp phần mềm được cải tiến. Anh cho rằng khi một phần mềm được công bố mà không có bất cứ một lỗi nào thì chứng tỏ nó đã được ra mắt quá muộn. Các nhà phát triển chỉ cần một sản phẩm phần mềm có thể sử dụng, có thể mang lại lợi ích là sẽ cho ra mắt, chứ không bao giờ chờ cho đến khi nó hoàn thiện.
Chi tiết quy trình một dự án Data Science (slide diễn giả)
2. Các nhóm nghề nghiệp chính trong Data Science
Mentor Nguyễn Hải Nam đi sâu vào bốn phân ngành chính trong khoa học dữ liệu, và các mảng việc của mỗi vị trí trong một dự án.
Data analyst: Vị trí phân tích dữ liệu tập trung từ bước Business understanding cho đến Data understanding, làm việc với công cụ phân tích dữ liệu như Python, Tableau… Công việc này cần đến các kỹ năng như xử lý dữ liệu, dữ liệu bảng, một số kỹ năng toán và machine learning
Machine Learning/Deep learning Engineer: Kỹ sư học máy tập trung vào phần triển khai mô hình, với các bước Data Preparation, Modeling, Evaluation. Nhiệm vụ của ML/DL Engineer là phải tạo được một mô hình với đề bài mà Data Analyst đưa ra, tìm ra được một giải pháp đủ tốt cho bài toán đang được đặt ra.
Machine Learning/Deep learning có xuất phát điểm chung là Machine Learning. Nhưng 10 năm trở lại đây Deep Learning phát triển đủ mạnh về 2 nhánh (xử lý ngôn ngữ tự nhiên và thị giác máy tính) để tách riêng.
Machine Learning cần nhiều kiến thức chuyên gia trong ngành (domain expert), để phân tích những trường dữ liệu, thông tin trong dữ liệu (feature) có ích cho mô hình của các bạn. Trong khi Machine Learning cần đến các công cụ liên quan đến xác suất và tư duy, thì Deep Learning lại sử dụng một cấu trúc gọi là neural network – mạng lưới mô phỏng não bộ con người. Ngành này vận dụng các công cụ liên quan đến cách não con người vận hành, suy nghĩ và đưa ra quyết định.
Data Engineer: Nhiệm vụ của một Kỹ sư dữ liệu là đưa ra yêu cầu về dữ liệu, thu thập, lưu trữ, truy xuất, xử lý… dữ liệu. Với các công ty có một khối lượng data khổng lồ như Viettel, Shopee… đây không hề là một công việc đơn giản. Đây là vị trí có nhiều việc làm nhất trong Data Science.
Data Scientist: Nằm ở một “đẳng cấp” cao hơn các vị trí trên, nhà khoa học dữ liệu cần phải nắm được toàn bộ chu trình của một dự án Data Science từ A đến Z, với sự tập trung đặc biệt vào các bước: Business understanding: nắm được dự án đưa ra để giải quyết bài toán kinh doanh nào, Data understanding: hiểu rõ dữ liệu; Feedback: hiểu được vấn đề đang xảy ra ở đâu. Vị trí này cần có một tầm nhìn rộng lớn, bao quát được toàn bộ dự án.
4 vị trí Data Science và những kỹ năng cần thiết ở các mức độ: L – large: kỹ năng sâu, M – Medium: kỹ năng trung bình, S – kỹ năng ở mức nhập môn.
Chương trình kết thúc với rất nhiều câu hỏi khán giả dành cho mentor Nguyễn Hải Nam:
3. Câu hỏi về việc làm ngành Data Science:
Công việc thường ngày của một Data Scientist là như thế nào ạ, so với phát triển phần mềm thì có code nhiều không ạ?
Ngoài code ra thì bạn sẽ cần giao tiếp với khách hàng, sếp, đồng nghiệp. Tuy vậy, code vẫn là một tác vụ rất quan trọng. Nhưng cùng là code nhưng bạn sẽ được trả lương cao hơn các việc lập trình khác vì giá trị bạn mang lại sẽ nhiều hơn.
Anh cho em hỏi theo như một số ý kiến trên internet, thì sinh viên Data Science mới ra trường sẽ có thể chưa làm được Data Scientist ngay mà sẽ bắt đầu từ vị trí Data Analyst hoặc Data Engineer. Anh thấy ý kiến này có đúng ko ạ?
Ý kiến này đúng. Bạn phải rất xuất sắc, hoặc rất may mắn thì mới xin được làm Data Scientist khi vừa ra trường. Thông thường mọi người sẽ có xuất phát điểm ở ba vị trí kia: Thuần về dữ liệu thì làm Data Engineer, phân tích/xử lý dữ liệu thì Data Analyst, mô hình hóa thì làm Machine Learning Engineer. Data Scientist thì phải đủ “cứng” ở tất cả các kỹ năng trên.
Mentor cho em xin ý kiến về nhu cầu việc làm AI so với Data Science ạ?
Việc làm về Ai sẽ ít hơn và khó hơn về Data Science, do có ít công ty làm hơn. Ở Việt Nam, khoa học cơ bản nhận được ít sự quan tâm hơn là khoa học ứng dụng.
Để phát triển lên Data Scientist thì theo anh nên bắt đầu công việc là Data Engineer hay Data Analyst, Machine Learning Engineer sẽ phù hợp hơn ạ? Hay mình nên trải qua hết các công việc ạ?
Bạn nên tìm hiểu về Data Science từ 3-6 tháng rồi sau đó chọn nhánh rẽ, có thể học trước 1-2 môn đầu để xem mình hợp với cái gì, thích cái gì… Bạn thích công nhu cầu cao, không lo thất nghiệp (Data Engineer), hay nhu cầu ít nhưng vị trí tinh hoa, có thể làm việc mà người khác không làm được. Nếu là lựa chọn sau thì bạn phải chấp nhận rủi ro, thu hẹp cơ hội nghề nghiệp của mình.
Tuy nhiên để xin được việc thì bạn phải đi sâu, nếu đi rộng thì cần 2-5 năm mới đủ để xin việc.
Mentor, với lượng dữ liệu bao nhiêu thì một công ty có bộ phận Data Science?
Ở Việt Nam, số lượng công ty có vị trí về Data Science không nhiều, không vượt quá 100. Phần lớn các doanh nghiệp sẽ thuê service provider. Con số các service provider, ví dụ để chạy dịch vụ dữ liệu từ nhà mạng điện thoại, thì có rất nhiều.
Em xin hỏi tuổi nghề ngành này đến bao nhiêu tuổi vậy mentor?
Ngành mới như Data Science thì khó mà nói về tuổi ngành. Theo mình thì tuổi tác không là vấn đề. Ví dụ như theo mình quan sát, độ “chín” của một lập trình viên ở nước ngoài là 35-40.
4. Câu hỏi về việc học ngành Data Science:
Bắt đầu Data Science như thế nào? Và làm thế nào để giỏi?
Hãy bắt đầu bằng cách tìm với Google “How to become a data scientist”, bạn sẽ tìm ra rất nhiều nguồn tài nguyên. Chương trình Machine Learning/Data Science của xSeries sẽ giúp bạn bớt thời gian tự mày mò tìm hiểu. Nhưng nếu bạn muốn đi một mình thì vẫn có thể tìm tòi và đến đích.
Để giỏi, cần nắm chắc Toán và lập trình, đây là 2 nền tảng cơ bản của Data Science.
Em kinh nghiệm 3 năm làm thống kê, biết lập trình, database có phù hợp với Data Science không ạ?
Toán rất tốt rồi chỉ cần cày lập trình là làm được Data Science. Data Scientist khi học thì hay gặp vấn đề về lập trình, khi làm thì hay gặp vấn đề về toán. Nếu không nắm đủ sâu về toán thì bạn sẽ không lên đc các vị trí quan trọng, không đi được xa trong ngành này.
Data Science cần học tốt những mảng nào của môn Toán?
Xác suất thống kê (cần nắm rất sâu và chắc), đại số tuyến tính (mức vừa phải), giải tích (không cần quá nhiều).
Bắt đầu học về Data Science nên luyện thuật toán trên Codewar, Hackerrank hay tập trung học các kỹ năng analysis như Numpy, Pandas?
Lập trình là kỹ năng cơ bản của Data Science. Cá nhân mình trước khi chuyển sang Data Science thì đã bỏ ra 3 tháng “cày” để lên top của hackerrank. Nếu bạn đã rất giỏi về lập trình thì chỉ cần học về kỹ năng analysis.
Nếu xuất phát điểm là lập trình viên, thì phải cần bổ sung những kiến thức gì để nhảy qua được Data Scientist ạ?
Nếu bạn là một developer giỏi, hiểu rõ về lập trình, thuật toán, database thì cần ôn kiến thức về toán là chuyển sang học Data Science được. Quan trọng là bạn phải xác định kỹ năng lập trình của mình đến đâu. Khi sếp hoặc team BA đưa ra một vấn đề, bạn mất bao lâu để biến ý tưởng của họ thành một thứ có thể chạy trên máy tính? Khoảng thời gian đó sẽ thể hiện trình độ của bạn đến đâu.
Theo trình bày của anh thì em hiểu AI là một mảng nhỏ trong Data Science, giải quyết các bài toán khác với các bài toán trong Data Science. Em muốn học sâu về AI, khóa học Data Science của Funix có dạy sâu về AI không anh?
Nếu quan tâm đến AI thì bạn nên học Machine Learning. Đây là một công cụ được sử dụng rất nhiều trong AI, vượt trội hẳn so với các kỹ thuật khác trong lĩnh vực này. Bạn có thể học về Machine Learning để hiểu rõ bức tranh về AI rồi chọn một hướng đi sâu hơn.
Data Science rất khác với AI. Data Science là bài toán sử dụng dữ liệu để tạo ra lợi ích, còn AI là bài toán tạo ra thực thể trên máy tính có thể mô phỏng hành vi/trí tuệ con người. Ví dụ như bài toán phân tích thị trường nhà đất, Google Map là Data Science, bài toán để máy làm các tác vụ mà con người có thể làm tốt như xe tự lái, AlphaGo là AI. Đương nhiên Ai sử dụng data như một công cụ lớn, giống như đi xe cần xăng. Nhưng dữ liệu chỉ là một phần, Ai còn rất nhiều phần khác như khoa học tư duy, khoa học ý thức, khoa học não bộ. Có những bài toán trong AI (ví dụ như cấy chip vào não bộ – Neuralink của Elon Musk) hoàn toàn không phải về Data Science.
Thưa mentor, làm về Machine Learning Engineer/AI hay Data Scientist thì đều học cả 2 khóa xSeries Machine Learning và Data Science ạ? Nên học chứng chỉ nào trước hay học cả 2 cùng lúc?
Bạn không nên học 2 chứng chỉ cùng lúc, vì lượng kiến thức trong 1 CC đã đủ lớn để bằng một chương trình thạc sĩ. Nếu bạn chỉ muốn làm việc với dữ liệu, quan tâm đến việc làm thế nào để tạo ra lợi ích từ dữ liệu thì hãy lựa chọn Data Science. Nếu bạn hứng thú với AI, bài toán mà con người đang muốn máy móc thay thế thì hãy đi theo Machine Learning.
Sau khi tốt nghiệp Funix, thì mình cần trang bị thêm các chứng chỉ gì khác để hồ sơ xin việc gây được sự chú ý khi nộp cho công việc về Data Science ạ?
Bằng cấp chỉ là tấm vé để vào cửa. Nhà tuyển dụng sẽ ít quan tâm đến bằng cấp (kể cả các chứng chỉ professional của google), mà chủ yếu là kiến thức, kinh nghiệm, dự án Data Science bạn đã làm. Muốn gây chú ý thì bạn nên có thành tích trong ngành này, thông qua việc tham gia vào các cuộc thi, đóng góp vào các open project,
repo
của riêng bạn để push thông tin, dl đủ tốt vào.
Từ nguồn nào để có thể tiếp cần được các project tuyển Data Science entry level để build kinh nghiệm cho resume?
Ở Việt Nam có rất nhiều cuộc thi, ở nước ngoài bạn có thể vào Kaggle. Trên đó có nhiều bài toán thể hiện sự sắc bén về nhãn quan, nhạy bén với dữ liệu. Tài nguyên có rất nhiều, quan trọng là có đủ sự lỳ lợm, cứng rắn để theo đuổi không.
Table of Contents
- 1. Định nghĩa và quy trình một dự án khoa học dữ liệu
- 2. Các nhóm nghề nghiệp chính trong Data Science
- 3. Câu hỏi về việc làm ngành Data Science:
- 4. Câu hỏi về việc học ngành Data Science:
Xem video buổi talk tại đây: