Con đường học Khoa học Dữ liệu của sinh viên Kinh tế?

  1. Trí tuệ nhân tạo

  2. Hướng nghiệp

Tiếp xúc với giới công nghệ trong bối cảnh cách mạng công nghệ 4.0 bùng nổ mạnh mẽ, hẳn mọi người đều nghe qua cụm từ "Data Scientist: The sexiest job of the 21st century!" (theo đánh giá Havard Business Review)

https://cdn.noron.vn/2018/06/15/805e812b673dba3df1eb4ca5e3a35979.jpg

Vậy vì đâu mà Data Scientist lại được đề cao như vậy? Con đường trở thành Data Scientist liệu có rộng mở cho tất cả mọi người, nhất là đối với sinh viên Background Kinh tế có cơ hội chen chân chạy đua?

Theo mình tìm hiểu thì Data Scietist (Khoa học dữ liệu) có thể hiểu đơn giản là người tạo ra giá trị từ Data.

Với skillset chuyên sâu và trải dài trên nhiều lĩnh vực (bao trùm Toán, Xác suất thống kê, Computer Science, Business..), theo đó, rất khó để một ông có thể hội tụ tất cả trong bàn tay, bởi vậy người ta mới hay bông đùa rằng, các Data Scientist "quý hiếm như kì lân" với mức lương deal cực khủng.

Còn về liệu có cơ hội cho những người không có nền tảng kĩ thuật bước vào sân chơi của các nhà Data Scientist hay không? Mình xin được dẫn chứng một bài viết chia sẻ hành trình của một nhân vật điển hình, một cô gái Kinh tế trẻ, đầy năng lượng, kiên trì và nỗ lực theo đuổi để trở thành một trong những nhà Data Scientist của ông lớn công nghệ Microsoft.

Đôi nét về tác giả, chị Phuong Hoa Giang từng là sinh viên Đại học Ngoại Thương Hà Nội, học Thạc sỹ tại Imperial College London, hiện đang làm việc tại Microsoft AI Research London.

"Học Ngoại Thương HN

Con đường mình đến với Data Science không hề bằng phẳng và mình tin nhiều bạn ở đây cũng vậy. Mình học Ngoại Thương chuyên ngành Tài chính. Cũng tự coi là có chút background về Toán Cao Cấp và Xác suất thống kê nhưng sẽ chỉ là muối bỏ bể so với các bạn học bài bản về Toán Lý Thuyết hay Xác suất thống kê. Rất may là trong quá trình học Ngoại Thương thì mình nhận ra môn học mà mình yêu thích nhất là môn Phân tích dữ liệu tài chính. Cảm giác nhìn những con số rồi tìm tòi ra một ý tưởng gì đó mới rồi trình bày bảng biểu vô cùng hấp dẫn (mãi sau này mình mới biết khái niệm đó gọi là insights 😊). Vì thế mình có tham gia một số cuộc thi sinh viên về phân tích dữ liệu.

Nielsen Case Competition

Hồi đó hình như chỉ có Nielsen Case Competition–cuộc thi dành cho sinh viên của Nielsen, một công ty data consulting khá lớn tại Mỹ. Mình cũng may mắn cùng với các bạn trong nhóm giành giải của cuộc thi đó và bắt đầu đầu quân cho Nielsen để làm Chuyên viên phân tích dữ liệu 😊–Insight Analyst. Thời gian làm việc cho Nielsen là thời gian mình luôn cảm thấy là thời gian tạo một nền tảng vững chắc cho bản thân trong nghề làm Analyst. Nếu bạn google Nielsen thì Nielsen là một công ty nghiên cứu thị trường truyền thống, dữ liệu cung cấp chủ yếu bằng survey và phỏng vấn người tiêu dùng. Thời đó khái niệm Dữ liệu lớn hay là Khoa học máy tính vẫn còn xa vời với mình. Nhưng chính từ thời gian làm việc giống như một nhân viên tư vấn dữ liệu đã giúp mình hiểu được ứng dụng thực sự của dữ liệu là gì? Làm sao để dữ liệu có ích cho doanh nghiệp? Mình cũng học được cách từ một câu hỏi lớn và mơ hồ, làm sao để chia nhỏ câu hỏi đó thành những câu hỏi nhỏ hơn mà bạn có thể translate (phiên dịch) thành một câu hỏi có thể trả lời bằng dữ liệu sẵn có? Mình cũng hiểu khái niệm connecting the dots (xâu chuỗi) dữ liệu là gì? Vì vậy, đừng tự nghĩ rằng công việc mình đang làm không có gì hấp dẫn, không có gì liên quan đến Machine Learning hay Dữ liệu lớn mà nản lòng. Nhiều lúc bạn sẽ ngạc nhiên về những gì bạn học được từ các dirty jobs trong cuộc sống.

Bắt đầu con đường học Khoa học dữ liệu

Sau một thời gian làm việc ở Nielsen thì mình nhận thấy hạn chế của các phương pháp nghiên cứu truyền thống (limited samples, biased trong cách đặt câu hỏi và trả lời). Vì thế mình bắt đầu tìm hiểu phương pháp mới để có thể thực sự phân tích user behavior mà không cần phải “hỏi” họ. Và thế là mình khám phá ra một thế giới mới là Khoa học dữ liệu (Data Science-DS). Thời điểm mình bắt đầu tìm hiểu về DS và học về DS thì mọi thứ còn khá mới mẻ (2013) cũng chưa có nhiều các khóa học open source như bây giờ. Mình hoàn toàn tự học mọi thứ từ xác suất thống kê (may mà trong công việc cũng có dùng), toán, lập trình, hệ thống dữ liệu. Mình hiểu là với các bạn không có nền tảng về Khoa học máy tính như mình, việc các bạn làm một cách bản năng là cố gắng lấp đầy lỗ hổng về lĩnh vực này càng nhiều càng tốt. Vì thế, các bạn sẽ cố gắng học Python, học R hay học các ngôn ngữ lập trình. Điều này dẫn đến một hệ quả là các bạn bị tool-driven. Học Python không khó, bỏ ra 6 tháng học một cách tập trung, các bạn sẽ viết được những dòng codes như mẫu. Nhưng điều mình hay gặp đó là các bạn học Python hay R như Kinh Thánh vậy. Nhiều bạn nghĩ rằng chỉ cần biết Python hay R là có thể làm được phân tích dữ liệu rồi. Thực ra thì không phải. Mình rất may mắn là trong thời kỳ đầu bắt đầu học, cảm thấy hoang mang quá thì một lần đi gặp khách hàng, gặp một bạn đã làm quantitative analyst ở Wall Street nhiều năm. Bạn ấy thấy mình ôm một quyển Python Fundamentals dầy cộp thì mới bảo “Mày nên học cách nghĩ, đừng học cách làm vội”. Chỉ một câu nói nhỏ mà mình nghĩ là có thể trao thưởng huy chương cho bạn ấy vì đã cứu rỗi cuộc đời mình. 😊. Và quyển sách đã thay đổi cuộc đời mình là

How to think like a Computer Scientist

. Mình đã có dịp gặp tác giả của cuốn sách này và nói với anh ấy là “You saved my life. 😊”.

Thực sự thì đối với người học trái ngành, trái nghề, vấn đề lớn nhất là thay đổi cách suy nghĩ và sự tự ti. Bạn có xuất phát điểm không giống người khác và thế là tìm mọi cách để làm được NHƯ người ta mà quên mất mục đích ban đầu của mình là gì. Sau khi đọc cuốn sách trên thì mình hiểu ra vấn đề vì sao mình học Python đến hai tháng mà vẫn rất thụ động, chỉ có thể viết những gì code mẫu mà gặp vấn đề mới thì chịu. Đó là vì mình không suy nghĩ theo cách máy tính có thể suy nghĩ. Vì không think the language nên mình cũng không thể speak the language. Điều này cũng giống như lúc bạn học Tiếng Anh hay ngoại ngữ vậy, không hiểu cách tư duy của ngôn ngữ thì bạn sẽ thành học vẹt. Vì thế mình dành hẳn ba tháng chỉ để học computational thinkingcomputer logic, về những thứ như directory, class, variables, binary operations, algorithmic thinking, big O notation, v.v.. Điểm này sẽ không thể nào so sánh được với các bạn học Khoa học máy tính trong 3-4 năm nhưng cũng đủ để mình học lập trình một cách đúng hướng (programming in the right way). Mình đã nói chuyện với nhiều bạn tự học programming và nhiều bạn bị cuốn theo cách học Google knowledge–có vấn đề gì thì google–stackoverflows có câu trả lời sẵn. Cuối cùng thì chương trình cũng vẫn chạy, các bạn vẫn thấy hạnh phúc, nhưng lần sau gặp vấn đề khác các bạn không tự trả lời được. Cũng giống như hồi nhỏ ở trường học “How are you?” và trả lời “I’m fine, thank you”. Đến lúc người ta hỏi “How do you feel today?” thì không biết trả lời thế nào.

Lập trình cũng chỉ là công cụ. Cái cốt lõi của Data Science và Machine Learning (ML) vẫn là Toán và Xác suất thống kê. Về điểm này thì
forum
cuốn sách
của anh Tiệp sẽ rất hữu ích. Nền tảng Toán của mình không tệ vì cũng từng học chuyên Toán. Tuy nhiên, cũng giống như câu chuyện lập trình thì mình cảm thấy cũng cần học ML bằng cách think in ML ways. Các thuật toán quan trọng trong ML hầu như đều đã được viết và tạo thành thư viện nên vài bạn có thể lười chỉ cần from sckitlearn import * và thế là ung dung chạy một cái chương trình ML. Nhưng để thực sự làm DS/ML thì nhiều khi nên bắt đầu ôn lại khái niệm đạo hàm, ma trận và toán cơ bản.

Học Thạc sỹ tại Imperial College London

Một điểm nữa mà nhiều bạn rất hay quên hoặc bỏ qua khi học DS vì nghĩ nó nhàm chán đó là database structure và data manipulation. Mình cũng vấp phải vấn đề tương tự khi mình bắt đầu học Thạc sỹ về Data Science ở Imperial College London. Ngay Kỳ 1 thì trong chương trình có một môn học mà rất nhiều bạn bỏ lớp (mình cũng cúp cua mấy lần) đó là Database Admin. Môn này phải nói là cực kỳ chán vì nó sẽ không có kết quả ngay cho bạn như khi bạn chạy môt chương trình máy tính hay vẽ biểu đồ, đem lại cảm giác cực kỳ coolI did something. Tuy nhiên khi bắt đầu thực sự làm dự án nghiên cứu ở Data Science Institute in Imperial College (mình làm cộng tác viên) thì mình có thể thực sự hiểu được tầm quan trọng kinh khủng của môn này. Bạn không thể thi triển được thuật toán hay tối ưu hóa thuật toán nếu không hiểu cấu trúc dữ liệu hay database relation, handle missing values, organizing the table in long/wide format, normalization of the database, etc.** Những việc nhỏ nhặt, *dirty jobs, tốn thời gian vậy thực ra là vô cùng quan trọng. Khi bạn hiểu cấu trúc dữ liệu thì bạn mới quay lại bước 1 được: Từ câu hỏi lớn làm sao để thi triển ra nhiều câu hỏi nhỏ và trả lời? Rốt cuộc thì DS chính là công cụ để trả lời câu hỏi mà thôi. Đừng quên mục đích ban đầu!

Microsoft AI Research

Sau rất nhiều chông gai thì bây giờ mình được gọi là data scientist tại Microsoft AI Research. Chặng đường học thì vẫn còn rất dài, bây giờ mình vẫn phải đọc forum Machine Learning thường xuyên để hiểu thêm. Dưới đây là một ít bài học mình đã đúc kết sau 4 năm ròng rã mất nhiều máu (ngã cầu thang mấy lần vì mải nghĩ) và nước mắt (khó quá làm thế nào), hy vọng sẽ giúp ích cho nhiều bạn có nền tảng giống mình.

  1. Đừng chạy theo buzzwords, cuộc sống nhiều cám dỗ, hãy bắt đầu từ những thứ căn bản nhất. Thinking và mindset là những thứ quan trọng nhất. Python hay R hay Java cũng chỉ là công cụ.
  2. Machine Learning là học máy, trước khi làm ML nếu bạn không có nền tảng về Computer Science thì hãy thử tìm hiểu về Computational thinkingcomputer logic.
  3. Data science rất rộng lớn. Hãy thử nghĩ về một mảng nhỏ mà bạn muốn theo đuổi: nhiều người có thể theo đuổi Optimization, mình thì chọn cho mình con đường đã đưa mình đến với DS ngay từ đầu: User Behavior Analytics. Điều này sẽ giúp các bạn định hình và tập trung vào những mảng lý thuyết liên quan mật thiết đến mảng này. Nghe có vẻ thực dụng nhưng mình chủ yếu tìm hiểu về các mô hình/thuật toán liên quan đến time series, sequential pattern mining, pattern recognition, clustering/classification, association mining, etc. vì đây sẽ là những thứ giúp bạn tìm hiểu về User Behavior. Các thuật toán simulation như Monte Carlo hay các thuật toán tối ưu khác mình không biết quá sâu."

Còn bạn, bạn nghĩ sao về con đường cô gái này đã đi? liệu người "ngoại đạo" có cơ hội trở thành chuyên gia Data Scientist thực thụ?

Source:

https://machinelearningcoban.com/2018/03/22/phuonghoagiang/

Từ khóa: 

trí tuệ nhân tạo

,

hướng nghiệp

Mình nghĩ mình khá phù hợp để chia sẻ về băn khoăn này của bạn, vì mình cũng từng là sinh viên Kinh tế và hiện đang làm Data Mining (Data Scientist đi cho nó mỹ miều) tại Viettel Cyberspace Center.

Phần thắc mắc thứ nhất xoay quanh độ hot của job. Mình không có ý kiến gì.

Phần thứ hai liên quan đến “cơ hội chen chân của sinh viên kinh tế”. OK. TL;DR: Cơ hội là ít hơn rất nhiều so với các bạn có background về một trong 2 mảng bạn đã nói: Toán/Xác suất thống kê, Lập trình, hoặc chí ít là thuộc khối ngành STEM. Chữ “Science” trong Data Science khẳng định rằng đây là một ngành kĩ thuật, mang nặng tính nghiên cứu, học thuật. Nếu để ý kĩ, đa số các kĩ năng mà chị Phuong Hoa Giang mạnh và yêu thích đều không mấy liên quan đến kinh doanh, kinh tế. Do vậy, nếu bạn là người ngoại đạo thì trước khi quyết định dấn thân theo đuổi “The Sexiest Job of the 21st Century”, hãy chắc chắn rằng bạn:

  • Thực sự mê làm việc với data
  • Không ngại toán, xác suất thống kê
  • Khả năng tự học và chịu đựng sự cô đơn tương đối tốt

Vậy bắt đầu như thế nào? Các bạn nào đã đọc đến đây, thì hi vọng câu chuyện về cá nhân mình sẽ giúp ích. Chính xác thì mình đã mất 6 tháng để chuyển từ một cậu sinh viên Tài chính Ngân hàng của Đại học Ngoại thương sang một chàng trai đủ điều kiện làm việc tại Viettel, vị trí Data Mining Engineer.

Tóm lại thì có 3 điểm chính:

  1. Kiên định trau dồi lý thuyết:
    https://www.analyticsvidhya.com/blog/2018/01/ultimate-learning-path-becoming-data-scientist-2018/
  2. Vừa học, vừa lắng nghe cơ hội ứng dụng, các bài toán có thể được giải. Chú ý là bạn phải khiến những người xung quanh BIẾT được bạn có mong muốn tìm kiếm những bài toán để giải!
  3. Mở rộng network, tìm kiếm người đi cùng mình

Từ khi xác định là mình muốn thử theo data, mình ngay lập tức tìm một cơ hội làm việc thực tế để kiểm định xem liệu mình có thực sự thích hay không. Mình lựa chọn thực tập tại một startup mà mình được biết là “data-driven”, tại phòng Business Analytics. Song song với đó, ngày nào mình cũng đọc và học.

Quãng thời gian 3 tháng làm BA, mình sử dụng một chút kiến thức lập trình đã có từ trước để giải quyết một số bài toán tự động hoá vận hành. Khi một thằng ất ơ ngồi code thì ắt sẽ bị vướng mắc nhiều chỗ. Mỗi khi không đi tiếp được mình lại chạy vào phòng tech. Các anh quý mình ra phết, bảo là thằng này dốt nhưng được cái ham học hỏi. Mình cũng chịu khó tham gia các cuộc thảo luận của công ty, chia sẻ ý kiến và một cách gián tiếp thông báo rằng mình là một người đang học về machine learning các thứ.

Trời không phụ lòng người, đến khi công ty có định hướng ứng dụng machine learning, mình là thằng đầu tiên được hỏi đến. Rồi mình có chỗ trong phòng tech của công ty, được giao bài toán thú vị mà lại rất cơ bản. Xong mình giải, được ứng dụng. Rồi lại tiếp tục bài khó hơn…

Đúng lúc đó, cuộc thi Entropy 2017 của viện John von Neumann xuất hiện. Thật không thể may mắn hơn khi đó là thời điểm mình vừa học lại Đại số tuyến tính, vừa ứng dụng Machine Learning giải một bài toán thực tế thành công, lại còn vừa làm xong khoá luận về ứng dụng Machine Learning nữa chứ. Mình rất nóng lòng muốn biết mình đang ở đâu và gặp gỡ những người trong ngành. Thiên thời, địa lợi, nhân hoà đưa mình đến Chung kết cuộc thi. Top 10 cuối cùng, thí sinh duy nhất là không thuộc khối ngành kĩ thuật. Wow, thích phết.

Cuộc thi này giúp mình được tiếp cận với một số các đơn vị. Mình được phần nào công nhận, rồi vậy là mình được tuyển :D

Tóm lại, mình thấy một khi đã muốn thì cứ kiên định học, thông báo cho thế giới biết về bản thân, và lắng nghe cơ hội.

Trả lời

Mình nghĩ mình khá phù hợp để chia sẻ về băn khoăn này của bạn, vì mình cũng từng là sinh viên Kinh tế và hiện đang làm Data Mining (Data Scientist đi cho nó mỹ miều) tại Viettel Cyberspace Center.

Phần thắc mắc thứ nhất xoay quanh độ hot của job. Mình không có ý kiến gì.

Phần thứ hai liên quan đến “cơ hội chen chân của sinh viên kinh tế”. OK. TL;DR: Cơ hội là ít hơn rất nhiều so với các bạn có background về một trong 2 mảng bạn đã nói: Toán/Xác suất thống kê, Lập trình, hoặc chí ít là thuộc khối ngành STEM. Chữ “Science” trong Data Science khẳng định rằng đây là một ngành kĩ thuật, mang nặng tính nghiên cứu, học thuật. Nếu để ý kĩ, đa số các kĩ năng mà chị Phuong Hoa Giang mạnh và yêu thích đều không mấy liên quan đến kinh doanh, kinh tế. Do vậy, nếu bạn là người ngoại đạo thì trước khi quyết định dấn thân theo đuổi “The Sexiest Job of the 21st Century”, hãy chắc chắn rằng bạn:

  • Thực sự mê làm việc với data
  • Không ngại toán, xác suất thống kê
  • Khả năng tự học và chịu đựng sự cô đơn tương đối tốt

Vậy bắt đầu như thế nào? Các bạn nào đã đọc đến đây, thì hi vọng câu chuyện về cá nhân mình sẽ giúp ích. Chính xác thì mình đã mất 6 tháng để chuyển từ một cậu sinh viên Tài chính Ngân hàng của Đại học Ngoại thương sang một chàng trai đủ điều kiện làm việc tại Viettel, vị trí Data Mining Engineer.

Tóm lại thì có 3 điểm chính:

  1. Kiên định trau dồi lý thuyết:
    https://www.analyticsvidhya.com/blog/2018/01/ultimate-learning-path-becoming-data-scientist-2018/
  2. Vừa học, vừa lắng nghe cơ hội ứng dụng, các bài toán có thể được giải. Chú ý là bạn phải khiến những người xung quanh BIẾT được bạn có mong muốn tìm kiếm những bài toán để giải!
  3. Mở rộng network, tìm kiếm người đi cùng mình

Từ khi xác định là mình muốn thử theo data, mình ngay lập tức tìm một cơ hội làm việc thực tế để kiểm định xem liệu mình có thực sự thích hay không. Mình lựa chọn thực tập tại một startup mà mình được biết là “data-driven”, tại phòng Business Analytics. Song song với đó, ngày nào mình cũng đọc và học.

Quãng thời gian 3 tháng làm BA, mình sử dụng một chút kiến thức lập trình đã có từ trước để giải quyết một số bài toán tự động hoá vận hành. Khi một thằng ất ơ ngồi code thì ắt sẽ bị vướng mắc nhiều chỗ. Mỗi khi không đi tiếp được mình lại chạy vào phòng tech. Các anh quý mình ra phết, bảo là thằng này dốt nhưng được cái ham học hỏi. Mình cũng chịu khó tham gia các cuộc thảo luận của công ty, chia sẻ ý kiến và một cách gián tiếp thông báo rằng mình là một người đang học về machine learning các thứ.

Trời không phụ lòng người, đến khi công ty có định hướng ứng dụng machine learning, mình là thằng đầu tiên được hỏi đến. Rồi mình có chỗ trong phòng tech của công ty, được giao bài toán thú vị mà lại rất cơ bản. Xong mình giải, được ứng dụng. Rồi lại tiếp tục bài khó hơn…

Đúng lúc đó, cuộc thi Entropy 2017 của viện John von Neumann xuất hiện. Thật không thể may mắn hơn khi đó là thời điểm mình vừa học lại Đại số tuyến tính, vừa ứng dụng Machine Learning giải một bài toán thực tế thành công, lại còn vừa làm xong khoá luận về ứng dụng Machine Learning nữa chứ. Mình rất nóng lòng muốn biết mình đang ở đâu và gặp gỡ những người trong ngành. Thiên thời, địa lợi, nhân hoà đưa mình đến Chung kết cuộc thi. Top 10 cuối cùng, thí sinh duy nhất là không thuộc khối ngành kĩ thuật. Wow, thích phết.

Cuộc thi này giúp mình được tiếp cận với một số các đơn vị. Mình được phần nào công nhận, rồi vậy là mình được tuyển :D

Tóm lại, mình thấy một khi đã muốn thì cứ kiên định học, thông báo cho thế giới biết về bản thân, và lắng nghe cơ hội.

Em thích lập trình, rồi thi đại học đưa đẩy vào tài chính FTU2, mới tìm tòi về phân tích dữ liệu mấy nay và Facebook ad đưa em đến được bài viết này. Cảm ơn đội ngũ phân tích dữ liệu của Facebook.

Đào tạo trong trường đại học chỉ là điểm xuất phát, nếu mục tiêu của bạn là trở thành Data Scientist thì đương nhiên bạn có thể làm được dù xuất phát điểm của bạn là gì.

Tại VTCC cũng có những người "ngoại đạo" đang làm về DataMining và họ cũng có những lợi thế nhất định như khả năng cảm nhận dữ liệu tốt hơn, kiên trì và quyết tâm hơn.