Khi tôi giới thiệu mình là một nhà Khoa học dữ liệu (Data scientist), tôi thường nhận được những câu hỏi “Sự khác nhau giữa Data Science và Machine learning (Máy học) là gì?”. Hoặc “Điều đó có nghĩa là bạn đang làm việc trong lĩnh vực Artificial Intelligence (AI – Trí tuệ nhân tạo)”? Tôi đã phải giải thích và trả lời rất nhiều những câu hỏi tương tự như vậy, và hôm nay tôi xin viết bài này để giải thích rõ hơn về: Data Science, Machine Learning và AI.
Các lĩnh vực đều có sự chồng chéo đan xen với nhau. Hầu hết các chuyên gia trong các lĩnh vực này có một sự hiểu biết trực quan về các công việc cụ thể có thể phân loại được như khoa học dữ, liệu, máy học và trí tuệ nhân tạo, ngay cả khi khó mô tả bằng lời. Trong bài viết này tôi không đi quá sâu vào định nghĩa thế nào là Data Science, Machine Learning hay AI là gì. Tôi chỉ quan tâm tới cách các lập trình viên sử dụng và các công việc cụ thể cho 3 lĩnh vực này. Vậy nên để cho đơn giản tôi chỉ đưa ra 3 định nghĩa thật ngắn gọn:
- Data science: tạo ra giá trị từ dữ liệu
- Machine learning: học hỏi từ dữ liệu
- Artificial intelligence: đưa ra hành động từ dữ liệu
Cũng phải nói thêm, là các định nghĩa trên không thể bao hàm đầy đủ thông tin và các khái niệm về các lĩnh vực được đề cập. Cũng không thể dựa vào đó để xác định vai trò hay vị trí công việc một cách rõ ràng. Tuy nhiên, thông tin ngắn gọn trên có thể giúp phân biệt được ba loại công việc khác nhau.
1/ Data Science phân tích dữ liệu để tìm giải pháp cho các vấn đề phức tạp
Khoa học dữ liệu được phân biệt với hai lĩnh vực còn lại vì mục tiêu của nó rất nhân văn: thu thập và thấu hiểu insight dữ liệu. Jeff Leek có một định nghĩa tuyệt vời về các loại thông tin chi tiết mà Data Science có thể đạt được, bao gồm sự mô tả (ví dụ khách hàng trung bình có 70% cơ hội đổi mới), thăm dò (các nhân viên bán hàng khác nhau thì có mức gia hạn, thuyệt phục khách hàng khác nhau) và nguyên nhân (thử nghiệm ngẫu nhiên cho thấy khách hnagf được giao cho Alice có nhiều khả năng chốt đơn hàng hơn so với những khách hàng giao cho Bob).
Một lần nữa, không phải tất cả mọi thứ tạo giá trị từ dữ liệu đều đủ tiêu chuẩn đều là Data Science (định nghĩa cổ điển về khoa học dữ liệu là liên quan tới sự kết hợp của số liệu thống kê, kỹ thuật phần mềm và lĩnh vực chuyên môn). Nhưng chúng ta cũng có thể sử dụng định nghĩa này để phân biệt với Machine Learning và AI. Sự khác biệt chính là trong Data Science luôn có con người cụ thể trong vòng lặp: ai đó đang hiểu được những vấn đề ẩn sâu (insight) của dữ liệu, nhìn thấy số liệu và có được lợi ích từ những kết luận khi phân tích. Sẽ không đúng khi bạn nói ” Thuật toán chơi cờ của chúng tôi sử dụng Data Science để tính toán các nước cờ tiếp theo trong ván cờ” hoặc “Google Maps sử dụng Data Science để đưa ra App chỉ đường “.
Định nghĩa về Data Science ở đây nhấn mạnh:
- Suy luận thống kê
- Hình dung dữ liệu
- Thiết kế thử nghiệm
- Kiến thức chuyên môn
- Giao tiếp
Các nhà khoa học dữ liệu có thể sử dụng các công cự đơn giản khi phân tích dữ liệu: họ có thể báo cáo tỷ lệ phần trăm và tạo biểu đồ đường dựa trên các truy vấn SQL. Họ cũng có thể sử dụng các phương pháp rất phức tạp như làm việc với các kho dữ liệu phân tán để phân tích hàng nghìn tỷ hồ sơ, phát triển các kỹ thuật thống kê tiên tiến và xây dựng các hình ảnh tương tác. Cho dù cách sử dụng như thế nào, thì mục tiêu chính vẫn là để hiểu rõ hơn về dữ liệu của họ.
2/ Máy học tạo ra các dự đoán
Tôi nghĩ rằng máy học như là lĩnh vực dự đoán: “ví dụ X với các tính năng đặc biệt, dự đoán Y về nó”. Những dự đoán này có thể là về tương lai (“dự đoán bệnh nhân này có bị nhiễm trùng hay không”), nhưng chúng cũng có thể là về các phẩm chất không rõ ràng ngay lập tức đối với máy tính (“dự đoán hình ảnh này có con chim trong đó hay không”). Hầu như tất cả các cuộc thi Kaggle đều là những vấn đề về học máy: chúng cung cấp một số dữ liệu huấn luyện và sau đó xem liệu các đối thủ cạnh tranh có thể đưa ra dự đoán chính xác về các ví dụ mới hay không.
Có rất nhiều sự đan xen giữa Data Science và Machine Learning. Ví dụ, sự logic có thể được sử dụng để rút ra những hiểu biết sâu sắc về các mối quan hệ (“người dùng càng giàu càng có nhiều khả năng họ sẽ mua sản phẩm của chúng tôi, vì vậy chúng ta nên thay đổi chiến lược tiếp thị”) và đưa ra các dự đoán (” %cơ hội khách hàng mua sản phẩm, vì vậy nên đề xuất với công ty “).
Hầu hết các học viên lập trình viên nếu hiểu biết về hai khái niệm này thì sẽ dễ dàng chuyển qua lại giữa hai nhiệm vụ, ví dụ tôi sử dụng cả kiến thức về Machine Learning và Data Science trong công việc của tôi, tôi có thể phù hợp với mô hình về dữ liệu traffice trên Stack Overflow để xác định người dùng nào có khả năng tìm kiếm việc làm (Machine Learning), nhưng sau đó xây dựng các tóm lược và hình ảnh để kiểm tra tại sao mô hình này (Data Science) lại hoạt động. Đây là một cách quan trọng để phát hiện ra các sai sót trong mô hình của bạn và để tranh các sai lệch về thuật toán. Đây là một trong những lý do mà các lập trình viên khoa học dữ liệu thường kiêm luôn trách nhiệm phát triển các thành phần Machine Learning của một sản phẩm.
Có thể bạn muốn tìm hiểu:
- 4 Kỹ năng Quan trọng nhất cho lập trình viên phần mềm (Developer Software)
- 14 cách “CHÔN VÙI” sự nghiệp IT của bạn mà bạn không hề hay biết – Phần 1
- Doanh nghiệp sẵn sàng chi lương 35 triệu / tháng cho lập trình viên biết AI, Machine Learning, Big Data
- 12 Công cụ miễn phí giúp quản lý công việc từ xa dành cho lập trình viên và thiết kế – Phần 2
3/ Trí tuệ nhân tạo tạo ra hành động
AI là trí tuệ được biểu diễn bởi bất cứ một hệ thống nhân tạo nào. Nó là tương lai, là khoa học viễn tưởng, và là một phần trong cuộc sống hàng ngày của chúng ta. AI ra đời từ rất lâu và được công nhận rộng rãi, phổ biến nhất trong giới lập trình, và do đó khá khó khăn để hiểu hết về lĩnh vực này.
Một chủ đề chung trong định nghĩa về “trí tuệ nhân tạo” là một tác nhân độc lập thực hiện hoặc đề xuất hành động (ví dụ như Poole, Mackworth và Goebel 1998, Russell và Norvig 2003). Một số hệ thống mà tôi nghĩ nên nhắc tới khi mô tả về AI:
- Các thuật toán chơi game (Deep Blue, AIphaGo)
- Lý thuyết về robot và kiểm soát (lập kế hoạch chuyển động, đi bộ bằng một robot bipedAI)
- Tối ưu hóa (Google Maps chọn tuyến đường)
- Xử lý ngôn ngữ tự nhiên (bots2)
- Học tăng cường, cấp tốc
Một lần nữa, chúng ta có thể thấy sự đan xen hợp tác lẫn nhau giữa AI, Machine Learning và Data Science khi tạo ra một sản phẩm, Deep learning (Một kỹ thuật bổ sung cho máy học), Deep learning đã và đang là một chủ đề AI được bàn luận rất sôi nổi. Đây là một thuật toán dựa trên ý tưởng từ bộ não của con người tới việc tiếp thu nhiều tầng biểu đạt. Nó đã thúc đẩy tiến bộ trong các lĩnh vực đa dạng như nhận thức, dịch tự động, nhận diện giọng nói….
Nhưng cũng có những khác biệt, nếu tôi phân tích một số dữ liệu bán hàng và phát hiện ra rằng các khách hàng đến từ các ngành công nghiệp cụ thể có khả năng chốt hợp đồng hơn các khách hàng khác , bạn có thể đưa ra một con số và đồ thị chứ không phải là một hành động cụ thể. Các nhà quản lý có thể sử dụng những kết luận đó để thay đổi chiến lược bán hàng, nhưng hàng động này không phải một cách tự động. Điều này có nghĩa tôi sẽ mô tả công việc của tôi như là một lập trình viên khoa học dữ liệu .
4/ Trường hợp cụ thể: Làm sao để sử dụng cả 3 lĩnh vực vào trong một dự án ?
Giả sử chúng ta nghiên cứu sản xuất một chiếc xe hơi tự lái và đang làm việc về vấn đề dừng xe tại các nơi có dấu hiệu dừng. Chúng ta sẽ cần các kỹ năng cụ thể cho ba lĩnh vực này:
+ Machine Learning: Chiếc xe phải nhận ra dấu hiệu dừng bằng máy ảnh. Chúng ta xây dựng một tập dữ liệu của hàng triệu bức ảnh về đường phố và thiết lập một thuật toán để dự đoán các dấu hiệu dừng lại đó.
+ AI: Một khi chiếc xe có thể nhận biết các dấu hiệu dừng lại, nó cần phải quyết định khi nào có hành động áp dụng phanh. Việc áp dụng quá sớm hay quá muộn đều rất nguy hiểm và chúng ta cần AI để xử lý các điều kiện đường khác nhau ( ví dụ trên đường này trơn dốc thì nên đi chậm lại). Đây là vấn đề lý thuyết về hành động kiểm soát.
+ Data Science: Trong các bài kiểm tra đường phố, chúng tôi nhận thấy rằng hiệu suất của xe hơi không đủ tốt, với một số dấu hiệu bỏ sót (false negatives) để đưa ra dự đoán dừng xe. Sau khi phân tích dữ liệu thử nghiệm về đường phố, chúng tôi hiểu được rằng tỷ lệ bỏ sót phụ thuộc vào thời gian trong ngày: có nhiều khả năng bỏ lỡ các dấu hiệu dừng xe vào thời điểm trước khi mặt trời lặn hoặc sau hoàng hôn. Và cũng nhận thấy rằng hầu hết các dữ liệu huấn luyện chỉ bao gồm các đối tượng trong ánh sáng ban ngày. Vì vậy tiếp tục nghiên cứu xây dựng một bộ dữ liệu tốt hơn bao gồm hình ảnh ban đêm và quay trở lại bước nghiên cứu Machine Learning.
Hy vọng qua bài viết này, bạn đọc đã hình dung rõ hơn giữa các khái niệm AI, ML và Data science. Trong tương lai, khi muốn phát triển các hệ thống AI, bạn cần tự hỏi xem mình muốn đi theo hướng suy luận hay hành động, và đạt tới mức độ như người hay chỉ cần hợp lý là đủ rồi. Các hệ thống này đòi hỏi nhiều nỗ lực để hoàn thiện cùng với rủi ro cao phải chấp nhận thất bại. Nhưng nếu thành công trong sứ mệnh phục vụ nhân loại thì các bạn thật xứng đáng vì những gì mình bỏ ra. ITGURU chúc các bạn thành công!
Bài viết dựa trên bài gốc của của David Robinson đăng trên varianceexplained.org. David hiện là Data Insights Engineering Manager tại Flatiron Health.
Bạn có biết?
tham gia cộng đồng ITguru trên Linkedin, Facebook và các kênh mạng xã hội khác có thể giúp bạn nhanh chóng tìm được những chủ đề phát triển nghề nghiệp và cập nhật thông tin về việc làm IT mới nhất
Linkedin Page:
Facebook Group:
cơ hội việc làm IT : ITguru.vn