Nghề Data Scientist – Lý thuyết và thực tế – Sự khác biệt

Tạm dừng loạt bài viết về XGBoost model, lần này sẽ là một bài nhẹ nhàng hơn, không có code kiếc gì cả! 😀

Bạn thường nghe nói Data Scientist là nghê sexy nhất thế kỷ 21, với mức lương cao ngất ngưởng, tạo ra những sản phầm có tầm ảnh hưởng lớn, được mọi người ngưỡng mộ, blabla. Và thế là bạn quyết định chuyển hướng sang học làm data scientist. Bạn lao vào học toán (đại số tuyến tính, xác suất thống kê, đạo hàm, tích phân, ...), học lập trình (python, R, ...), học các thuật toán ML, cách sử dụng các thư viện ML. Thậm chí có bạn còn chơi lớn, học luôn cao học về nghành này vì "hình như" ngành này yêu cầu phải có trình độ cao học trở lên (bản thân mình chính là 1 ví dụ của trường hợp này, :D). OK, mình không có ý kiến gì về lựa chọn của bạn cả. Trong bài viết này, mình chỉ muốn chia sẻ một số điều mà mình cảm nhận được sau một thời gian làm trong nghành với danh xưng data scientist này. Những điều này là sự khác biệt giữa lý thuyết các bạn học được và thực tế công việc mà các bạn sẽ trải qua. Bạn sẽ tìm được cho mình câu trả lời cho câu hỏi "Thế nào là một data scientist giỏi? Và thế nào là một data scientist xuất sắc?".

1. "Tóm lại, câu chuyện bạn muốn kể là gì?"

Một trong những câu hỏi tôi thường nghe sau mỗi lần kết thúc buổi seminar của CEO (hoặc một người nào đó ở vị trí tương đương) là:

"Tóm lại, câu chuyện bạn muốn kể là gì?"

Thú thực, lần đầu tiên khi nghe câu hỏi này, tôi có phần bối rối. Tôi không hiểu tại sao họ lại nhấn mạnh vào "câu chuyện"? Tại sao họ không hỏi:

  • Những gì tôi đã trình bày trong slide.
  • Kết quả tôi đạt được là gì.
  • Tôi đã làm như thế nào.
  • ...

Trước khi thực sự hiểu được sự quan trọng của kỹ năng kể chuyện (telling story), tôi đã trải qua khá nhiều sai lầm ...

Hoặc là stackholders (thường là những người non-techical) không hiểu những gì bạn đang nói, đang trình bày, hoặc là nội dung bạn đang truyền tải chưa đủ để thuyết phục họ, thúc đẩy họ đưa ra quyết định hay hành động cụ thể nào (take actions) ...

Và tôi quyết định cải thiện kỹ năng kể chuyện của mình ...

Khi tôi đã đạt được sự tiến bộ nhất đinh, rất nhiều thứ đã thay đổi ...

Stackholders đã bắt đầu hiểu những gì mà tôi đang diễn giải. Và họ đã có những hành động cụ thể ...

Nếu bạn muốn trở thành môt data scientist giỏi, hãy tập trung vào kiến thức kỹ thuật.

Còn nếu bạn muốn trở thành một data scientist xuất sắc, hãy tập trung vào kỹ năng kể chuyện.

Vậy ... làm thế nào để học kỹ năng kể chuyện? Lời khuyên của tôi là hãy học từ Vox. Họ là những bậc thầy về kỹ năng này, họ luôn luôn có thể giải thích bất kì vấn đề phức tạp nào một cách rất đơn giản và dễ hiểu. Bạn có thể xem thử video bên dưới của họ. Hãy quan sát cách họ giải thích các hiện tượng và vấn đề xã hội theo cách kể chuyện trực quan nhất để ai ai cũng có thể hiểu được.

Tóm tắt lại một vài lời khuyên rất hay cho chúng ta để nâng cao kỹ năng kể chuyện. Những điều này không chỉ đúng trong phạm vi data science mà nó còn đúng cho tất cả các lĩnh vực khác.

𝟏) Lãnh đạo có ít thời gian hơn chúng ta:

Với vai trò lãnh đạo cấp cao, họ phải xử lý nhiều việc quan trọng hơn.

𝑳𝒐̛̀𝒊 𝒌𝒉𝒖𝒚𝒆̂𝒏:

  • Hãy đi thẳng vào vấn đề chính
  • Trình bày ngắn gọn, có cấu trúc rõ ràng
  • Trình bày xong, hãy đưa ra lời kiến nghị hành động với họ.

𝟐) Lãnh đạo dễ mất kiên nhẫn

Lãnh đạo cấp cao có quá nhiều việc cần phải xử lý một lúc và vì vậy họ dễ mất kiên nhẫn.

𝑳𝒐̛̀𝒊 𝒌𝒉𝒖𝒚𝒆̂𝒏:

  • Cho họ thông tin tổng quát là bạn sẽ trình bày trong bao lâu.
  • Nếu bạn trình bày trong 30 phút, thì bạn hãy rút ngắn thời gian nói xuống 15 phút, 15 còn lại để hỏi đáp. Đó là nguyên tắc 50:50.

𝟑) Chào đón sự cắt ngang

Những khán giả cấp cao thường xuyên ngắt ngang giữa chừng những bài thuyết trình.

𝑳𝒐̛̀𝒊 𝒌𝒉𝒖𝒚𝒆̂𝒏:

  • Chuẩn bị bài với cấu trúc rõ ràng để khi “được chen ngang”, bạn nắm rõ là đang nói phần nào.

𝟒) Luôn có các slide phụ lục
Nhà lãnh đạo cấp cao cần nghe một bức tranh tổng thể.

𝑳𝒐̛̀𝒊 𝒌𝒉𝒖𝒚𝒆̂𝒏:

  • Thuyết trình tổng thể về ý tưởng theo một cấu trúc rõ ràng có chủ đích.
  • Chuẩn bị sẵn các số liệu và phần “phụ lục”. Khi trình bày xong, chia sẻ thêm các số liệu này, hoặc mở lên khi có câu hỏi.

2. Data sạch ư? Mơ đi nhé!

Bạn tự hào rằng mình đã từng tham gia rất nhiều cuộc thi trên Kaggle, thâm chí còn leo lên top 10, top 5. Hãy quên điều đó đi, vì các dự án trong thực tế không "màu hồng" như vậy đâu. Trên Kaggle, bạn đuợc cung cấp sẵn bộ dữ liệu tương đối đầy đủ và sạch sẽ, còn trên thực tế thì hầu như bạn chỉ được đưa cho một mớ bòng bong hỗ độn. Khách hàng bảo, "đấy, bọn tao chỉ có như này, mày dùng như nào thì dùng". Trường hợp xấu hơn, chúng ta bắt đầu dự án chả có tý data nào cả. Xấu hơn nữa là chúng ta không biết tìm kiếm data ở đâu, tìm kiếm như thế nào ... Quả thực rất khó khăn.

Thế mới nói, data collectiondata integrity là hai trong số những bước quan trọng nhất của bất kỳ dự án data science nào. Garbage in, garbage out (đầu vào là rác thì đầu ra cũng là rác), câu nói này chắc ai làm trong lĩnh vực này đều đã từng nghe. Nhưng có lẽ không phải ai cũng thực sự hiểu được ý nghĩa của nó.

  • Data collection: tức là thu thập dữ liệu. Để thu thập được dữ liệu thì cần phải hiểu rõ yêu cầu bài toán là gì, dữ liệu nào đã có, dữ liệu nào còn thiếu, cấu trúc của dữ liệu ra sao, số lượng tối thiểu như thế nào, cần chuẩn bị những công cụ dụng cụ gì để lấy dữ liệu (ví dụ, phải có camera để quay video, chụp ảnh)... Ngoài ra, không phải lúc nào cũng có thể thu thập đầy đủ dữ liệu ngay từ ban đầu. Dữ liệu có thể đến trong suốt quá trình phát triển dự án hoặc vận hành sản phẩm. Vì vậy, phải có chiển lựợc quản lý dữ liệu hợp lý để dễ dàng cho viêc sử dụng, báo cáo thống kê về sau.
  • Data integrity: tức là tính toàn vẹn của dữ liệu. Bạn cần phải kiểm tra kỹ lưỡng xem dữ liệu thu được có ý nghĩa hay không, có đầy đủ hay không bằng cách tự đặt câu hỏi và trả lời, hoặc nhờ sự trợ giúp từ các bên có liên quan và hiểu biết.

Nếu hai bước này làm không tốt thì cho dù bạn có áp dung bao nhiêu kỹ thuật cao siêu của data clearning, EDA, và tuning model thì kết qủa cũng sẽ không thể tốt đẹp như bạn mong đơi.

3. Soft skills > Technical skills

Bạn đã từng tự đặt ra câu hỏi:

Những kỹ năng gì cần học để có thể làm việc được trong lĩnh vực data science?

Theo ý kiến cá nhân của tôi, technical skills (lập trình, thống kê, ...) là kỹ năng bắt buộc và nên được ưu tiên học trước tiên khi bắt đầu bước chân vào thế giới data science.

Một khi đã có đủ tự tin về technical skills của mình, chúng ta nên tập trung vào xây dựng và cải thiện soft skills (giao tiếp, làm việc nhóm, kể chuyện, ...). Khi học, bạn thường học một mình, rất ít khi giao tiếp hoặc làm cùng người khác. Nhưng dự án trong thực tế thường rất lớn, gồm nhiều phần, nhiều công đoạn. Và bạn thường chỉ làm một trong số những công đoạn đó. Nếu bạn là team-leader hay PM, bạn phải giao tiếp với các phòng ban bộ phận khác để lấy thông tin, trình bày kết quả với lãnh đạo, phân chia nhiệm vụ giữa các thành viên, ... Nếu bạn là nhân viên bình thường thì bạn vẫn cần phải trao đổi với các thành viên khác trong dự án, trình bày giải pháp kỹ thuật của mình. Rất may là những soft skills này khá giống với những dự án thuộc lĩnh vực khác, nên nếu bạn là người đã có kinh nghiệm làm việc ở những lĩnh vực khác chuyển sang data science thì bạn không cần quá lo lắng. Ngược lại, đối với các bạn sinh viên mới ra trường thì cần đặc biệt lưu ý hơn về việc phát triển soft skills của mình.

Có một câu nói khá nổi tiếng của W.Edwards Deming:

"Without data you're just another person with an opinion"

Tạm dich: Nếu không có số liệu chứng minh cụ thể, thì tất cả chỉ là ý kiến, suy đoán của bạn mà thôi. (giống như trong các vụ điều tra, phá án. Lập luận, suy đoán có thuyết phục, hợp lý đi bao nhiêu chăng nữa mà không có bằng chứng cụ thể thì cũng vô nghĩa, không thể bắt được hung thủ).

Áp dụng vào lĩnh vực data science này thì, có data chỉ là bước đầu tiên. Điều quan trọng là làm thế nào để sử dụng data đó để sinh ra những phán quyết, hành động (business decisions) mà mang lại lợi ích cho tổ chức.

Thử thay đổi câu nói trên một chút cho phù hợp với ngữ cảnh:

"Without storytelling skills you're just another persion with data"

Bạn có thể phân tích dữ liệu một cách xuất sắc.

Bạn có thể tạo ra một model tốt nhất trên thế giới.

Bạn thuộc làu làu cuốn Code Complete và viết code đẹp như trong phim.

Nhưng nếu bạn không thể sử dụng những kết quả đó để thuyết phục stackholders để đưa ra business decisions, thì những nỗ lực của bạn vẫn chỉ nằm trên những slides PowerPoints mà thôi.

Hơi buồn, nhưng đó là sự thật!

4. "What pattern observed behind?"

Đối với hầu hết các bài toán, trừ khi bạn đang làm việc trong một công ty lớn về công nghệ (cutting-edge technology company), những models phức tạp thường không phải lựa chọn đầu tiên để phân tích và dự đoán.

Bạn cần phải thực sự hiểu những gì diễn ra đằng sau model và kết quả của chúng ta để thuyết phục các stackholders, bởi vì họ có thể hỏi bạn:

  • Tại sao lại không phát hiện ra lỗi này?
  • Tại sao lỗi này lại bị nhầm sang lỗi kia?
  • Tại sao độ chính xác lại thấp như vậy?
  • Nếu xảy ra trường hợp này thì phải làm như thế nào?
  • ...

Stackholders không thể "nhắm mắt" cho sử dụng một model trong các sản phẩm thực tế khi mà họ chưa hiểu rõ (blackbox model), vì như thế nguy cơ thất thoát tiền bạc là rất lớn.

Đây có lẽ cũng là một trong những lý do mà các models đơn giản như decision tree, logistic regression hay kNN vần còn còn được sử dụng khá nhiều trong các bài toán công nghiệp.

5. Luôn luôn nhìn bức tranh tổng quát

Đây có lẽ là một trong những lỗi phổ biến nhất khi bắt đầu với data science. Mọi người thường quá chú trọng vào việc làm sao train được model tốt, viết code cho đẹp mà không để ý đến việc model sẽ chạy trong thực tế như thế nào, tốc độ đáp ứng ra sao, ...

Nói chung ngay từ lúc bắt đầu dự án data science, bạn nên nhìn một cách tổng quát bài toán, từ việc hiểu rõ yêu cầu (cả function và non-function), chuẩn bị dữ liệu, huấn luyện model, triển khai model trong thực tế và cập nhật model. Có được cái nhìn rõ ràng về bức tranh lớn, mạch suy nghĩ và làm việc của bạn sẽ được xuyên suốt từ đầu đến cuối và không bị "khớp" khi chuyển tiếp giữa các giai đoạn với nhau.

undefined

6. Kết luận

Trong bất kỳ lình vực nào, lý thuyết và thực tế luôn luôn có sự khác biệt. Sự khác biệt này càng rõ hơn trong phạm vi data science nói riêng. Hiễu được những điều này chính là bạn đã có được cái nhìn về bức tranh lớn của data science.

Hi vọng những điều chia sẽ trong bài viết này sẽ giúp ích cho các bạn trên con đường chinh phục sexy job. Hẹn gặp lại trong những bài viết sau!

Xem bài viết gốc tại đây.

Leave a Reply

Your email address will not be published. Required fields are marked *