Machine Learning trên Quora hỏi gì đáp nấy

Machine learning Quora

Machine learning Quora

Trong quá trình theo đuổi sự nghiệp của mình về Machine learning, tôi cũng có nhiều thắc mắc và những câu hỏi liên quan đến công việc của mình cần được giải đáp như: làm thế nào để trở thành data scientist, không có bằng tiến sĩ liệu có theo đuổi lĩnh vực này được không, tôi nên sử dụng ngôn ngữ lập trình nào để phân tích dữ liệu, … Thật hay biết mấy nếu có chuyên gia bên cạnh để trả lời cho mình tất cả những vấn đề này. Vậy nên, tôi sẽ tận dụng bài viết này để tổng hợp lại những câu hỏi mà tôi đã đặt ra và được các chuyên gia trên Quora trả lời để làm một nơi tham khảo đầy hữu ích.

Có phải machine learning chỉ dành cho những thiên tài? Tôi có nên bận tâm theo đuổi nó?

Vâng, bạn hoàn toàn có thể làm như vậy! Nguyên tắc làm việc và niềm đam mê quan trọng hơn nhiều so với khả năng toán học & kĩ năng coding.

Khi tôi bắt đầu học về machine learning, tôi đã rất bối rối trước tất cả các kí hiệu toán học và những khái niệm trừu tượng. Nhưng theo thời gian, tôi đã đạt được trình độ cho phép tôi có thể sử dụng toán học để diễn giải các khía cạnh trong machine learning một cách hiệu quả. Dù sao, toán học cũng chỉ là một ngôn ngữ, dù cho nó có phức tạp hay đòi hỏi nhiều sự chính xác và nghiêm ngặt đi chăng nữa.

Yisong Yue, Machine Learning Researcher.

Có cần bằng tiến sĩ để có thể làm việc trong lĩnh vực Machine Learning?

Dĩ nhiên là không. Tôi nghĩ cách đây 10 năm thì điều này là đúng. Machine Learning là lĩnh vực rất mới và những ai hiểu về nó đều cố gắng đi đầu để áp dụng nó vào trong các doanh nghiệp. Nhưng ngày nay, tôi gặp rất nhiều bạn trẻ, những người có hiểu biết vững chắc về những khái niệm cơ bản và có thể làm việc với chất lượng rất tốt.

Ngược lại, với kiến thức nâng cao về khoa học máy tính, nếu bạn muốn sáng chế ra các giải thuật mới – như tạo ra các thuật toán PageRank mới – thì bằng tiến sĩ sẽ giúp bạn khai phá lĩnh vực này và bạn sẽ có nhiều thời gian cũng như sự tự do trong việc phát minh ra những tri thức mới có tiềm năng mang lại những cuộc cách mạng sau này.

Charles H Martin, Calculation Consulting

Ngôn ngữ lập trình nào là tốt nhất để làm việc với machine learning hay phân tích thống kê? Ngôn ngữ R hay Python?

Sử dụng R để phân tích thống kê và prototype các mô hình dự đoán của machine learning. Sử dụng Python trong quá trình phát triển sản phẩm thực tế. R tốt hơn Python trong phân tích dữ liệu bởi vì R ban đầu được thiết kế để tính toán các số liệu thống kê và có nhiều gói phần mềm thứ 3 phục vụ cho các tác vụ phân tích này.

Boxun Zhang, Data Scientist at Spotify; PhD in Computer Science.

Nghiên cứu học thuật về Computer Science có thật sự mang lại giá trị gì không?

Có lẽ bạn nên review lại các bài báo về deep learning. Trong một thời gian dài, nhiều người nghĩ rằng những bài báo này không có giá trị. Nhưng bây giờ, deep learning và machine learning trên các bài toán quy mô lớn đang nhanh chóng trở thành một ngành công nghiệp triệu đô. Đó là minh chứng rõ ràng nhất về giá trị nghiên cứu học thuật về lĩnh vực này.
Yisong Yue, Machine Learning Researcher

Đâu là nguồn tài liệu tập dợt SQL để chuẩn bị cho buổi phỏng vấn về data science?

Tôi đã thử qua SQLZoo và làm tất cả các bài tập của họ đề ra. Trang web này có một giao diện cực kỳ thuận lợi, bạn có thể viết các câu truy vấn SQL trực tiếp trên trang web cũng như cho phép bạn chạy các câu truy vấn SQL tùy ý trên các table được cung cấp sẵn. Ngoài ra, trang web còn cung cấp cho bạn các câu trả lời để tham khảo.

Nếu có một khái niệm nào đó đỏi hỏi bạn phải thuần thục, ví dụ như phép kết (JOIN) thì nơi đây sẽ giúp bạn đạt được điều đó.

William Chen, Data Scientist at Quora

Top 10 giải thuật cho data mining hay machine learning là gì?

  • Kernel Density Estimation and Non-parametric Bayes Classifier
  • K-Means
  • Kernel Principal Components Analysis
  • Linear Regression
  • Neighbors (Nearest, Farthest, Range, k, Classification)
  • Non-Negative Matrix Factorization
  • Support Vector Machines
  • Dimensionality Reduction
  • Fast Singular Value Decomposition
  • Decision Tree
  • Bootstrapped SVM

Jeff Hammerbacher, Curious


Để trở thành một data scientist trong một công ty công nghệ cao (Google, Microsoft, Facebook), tôi cần phải biết các thuật toán machine learning đến mức nào?

Như John L. Miller và John Eysman đã chỉ ra rằng, thật hiếm khi các data scientist phải cài đặt lại các thuật toán machine learning từ đầu.

Tuy nhiên, tôi muốn nhấn mạnh tầm quan trọng của việc thật sự hiểu các thuật toán machine learning về cách mà nó hoạt động như thế nào và đâu là điểm hạn chế trong các thuật toán ấy. Ví dụ:

  • Kĩ thuật feature engineering có liên quan gì đến Random Forests không?
  • Thuật toán xây dựng cây nào là tốt nhất để cài đặt random forest và tại sao?
  • Bạn có thể giải thích một cách trực quan về gradient descent hay không?

Boxun Zhang, Data Scientist at Spotify; PhD in Computer Science.

Data scientist nên làm việc cho công ty lớn hay công ty startup?

Tôi nghĩ rằng chất lượng của dữ liệu là một vấn đề ở đâu cũng có, và kỹ thuật phân tích dữ liệu sẽ chiếm hầu hết thời gian của bạn. Tôi thích làm mỗi thứ một chút trong tiến trình này. Nhưng có vẻ như bạn muốn tập trung nhiều hơn vào việc xây dựng các mô hình dự đoán. Khi đó, các công ty lớn sẽ phù hợp với bạn hơn. Tuy nhiên, tôi muốn có một buổi nói chuyện về công ty hiện tại của bạn để xem bạn có nên chuyển đổi vai trò của mình sang công việc mà mình muốn làm hay không.

Sean Owen.

Làm sao để trả lời các câu hỏi về lập trình trong buổi phỏng vấn?

Luôn nhớ rằng: Nói ra bất kỳ suy nghĩ nào mà bạn đang nghĩ.

Có thể bạn sai nhưng hãy xem đây là một buổi thảo luận có tính xây dựng, người phỏng vấn sẽ giúp bạn trong quá trình này. Không nhất thiết phải có câu trả lời đúng, hầu hết những người phỏng vấn quan tâm nhiều hơn về cách mà bạn suy nghĩ.

Sahil Sareen, Software Engineer at Arista Networks, Foundation Member and Game Dev at GNOME.

Tôi không giỏi toán và thống kê. Tôi là một lập trình viên giỏi. Tôi muốn phát triển trong lĩnh vực machine learning và deep learning. Tôi nên bắt đầu từ đâu và làm sao để tiếp tục?

Không giỏi toán và thống kê là một sai lầm. Hãy thử cách này: nếu bạn có hứng thú về machine learning thì hãy bắt đầu tìm hiểu cũng như rèn luyện kĩ năng về nó. Trong quá trình này, bạn sẽ cần lật lại các kiến thức toán học và thống kê để tham khảo “những cái mà bạn chưa giỏi”.

Ricardo Vladimiro, Game Analytics and Data Science Lead @ Miniclip.

Phải mất bao lâu để có thể trở thành data scientist? Tôi có bằng về Khoa học máy tính và có 1 năm kinh nghiệm làm việc trên các tập dữ liệu mặc dù tôi chưa từng làm nhiều về machine learning hay mô hình hóa chúng.

Với bằng cử nhân Khoa học máy tính, bạn hầu như có thể giải quyết các phần liên quan đến lập trình. Đây chỉ là vấn đề bạn có biết cách sử dụng các gói thư viện và các hàm cài đặt sẵn hay không. Điều quan trọng hơn đó là nắm được các khái niệm và thuật toán đằng sau machine learning cũng như kĩ thuật xử lý dữ liệu. Tôi nghĩ sẽ không mất nhiều thời gian nếu bạn đam mê về nó.

Yilun (Tom) Zhang, Learning data science (Actively using R and Python), Statistics and Computational Math at University of Waterloo.

Tôi có thể nhận được công việc về data science hay không nếu như không có bằng thạc sĩ?

Thật khó khi đòi hỏi phải là một bậc thầy trong lĩnh vực phân tích số liệu thống kê đối với những người mới nhảy sang lĩnh vực này. Hãy thử qua các chương trình “bootcamp” – đây như là một cách tương đối phù hợp hơn để giúp bạn khởi động trong lĩnh vực này. Đồng thời cố gắng tìm được một công việc mà bạn có thể đầu tư thời gian vào việc học để nắm bắt các kiến thức nền còn lại.

May mắn thay data science đang có nhu cầu lớn mà số lượng này có thể thay thế được. Những nhà tuyển dụng thực sự muốn thuê những người thông minh, có thể làm được nhiều việc cùng lúc và hầu hết các vị trí đều không đòi hỏi phải là ‘full stack data science’.

Sean Owen, Director, Data Science @ Cloudera.

Advertisements

4 thoughts on “Machine Learning trên Quora hỏi gì đáp nấy

  1. Chao ban, blog cua ban that su rat huu ich! Minh dang bat dau tu hoc ve data science thong qua cac tai lieu online (Data Science Specialization cua Coursera). Minh co can ban ve lap trinh va kha nang phan tich thong ke tuong doi tot (minh tot nghiep ky su). Minh du dinh se hoc them song song tu blog cua ban nua, sau do se tham gia Kaggle de co project khi di xin viec. Ban nghi plan cua minh tu hoc nhu vay co kha thi ko, hay minh nen hoc lay mot tam bang? Kaggle co that su huu ich? Va ban co the tu van cho minh nen bat dau tu dau voi Kaggle ko? Ban nghi minh se mat khoang bao lau de co the bat dau xin viec? Minh dang rat phan van la nen tap trung vao viec hoc nay full-time hay chi nen lam part-time thoi vi co the se rat rui ro va mat nhieu thoi gian de xin viec? Cam on ban nhieu.

    Like

    • Hi bạn, để có thể kiếm được một công việc tốt thì plan của bạn khá rủi ro. Lý do,
      1. Ở VN thường ưu tiên có bằng cấp (Master/PhD) nên hồ sơ có bằng cấp cao sẽ lọt vào mắt xanh của nhà tuyển dụng, và đặc biệt hơn nếu bạn tốt nghiệp ở một trường ngoài nước.
      2. Kaggle là bề nổi chỉ phù hợp cho các cuộc thi, giúp bạn hiểu được ứng dụng của Machine Learning vào lĩnh vực thực tế. Để đi xa hơn bạn cần có kĩ năng nghiên cứu (đặt vấn đề, nghiên cứu tài liệu, thực nghiệm, đánh giá, và trình bày). Một bài báo khoa học được accept tại hội nghị/tạp chí khoa học sẽ có tính thuyết phục hơn.
      3. Data Science đòi hỏi bạn làm full-time, part-time sẽ không có thời gian thực nghiệm tìm ra giải pháp.

      Mình xin nêu ra một vài hướng đi, bạn có thể sáng tạo tự định hướng thêm cho riêng mình
      Hướng 1: apply vào công ty có bộ phận R&D. Ưu: đúng lĩnh vực, deal lương cao nếu bạn có năng lực. Khuyết: rủi ro không trúng tuyển vì đòi hỏi cao, phải có bằng cấp và kinh nghiệm nghiên cứu ít nhất có luận văn và bài báo khoá học liên quan. Thời gian: 4 năm ĐH, 2 năm Master hoặc + 3 năm PhD
      Hướng 2: làm thực tập sinh nghiên cứu về Data Science. Ưu: được bắt đầu ngay lĩnh vực của mình. Khuyết: thường lương khởi điểm không cao, tầm 8-10tr. Thời gian: 4 năm ĐH chuyên ngành Khoa học máy tính hoặc + 2 năm Master.
      Hướng 3: apply vào công ty có bộ phận R&D nhưng bắt đầu với vai trò là Data Analyst/Data Engineer. Ưu: được học hỏi kinh nghiệm do hỗ trợ xử lý dữ liệu cho nhóm Data Scientist, có kỹ năng kỹ thuật cao khi chuyển qua vai trò Data Scientist sẽ dễ dàng hơn, lương khởi điểm khá tốt khoảng 20-25tr. Khuyết: đi đường vòng, đòi hỏi đam mê và kiên trì học hỏi. Thời gian: 4 năm Đh chuyên ngành Phần mềm/Khoa học máy tính hoặc + 2-3 năm làm việc thực tế.

      Bạn có thể đặt bản thân mình vào nhà tuyển dụng và quan sát ngược lại bản thân.
      Liệu tôi có nên tuyển ứng viên này không?
      Dự án hiện tại của tôi cần giải quyết vấn đề này, vấn đề kia… ứng viên này đáp ứng được bao nhiêu phần trăm?
      Sự nghiệp cho đến thời điểm hiện tại của ứng viên có phù hợp với vai trò và vị trí này không?
      Ứng viên có lý lịch nghiên cứu tốt không? Có làm luận văn về khoa học không và đề tài có liên quan đến yêu cầu công việc không?
      Có tham gia cùng đội nhóm các cuộc thi thực tế chưa (ví dụ Kaggle)? Và giành được giải thưởng gì không?
      Ứng viên có đủ tố chất để giữ vai trò này không? Cần cù, chịu khó, kiên trì, teamwork, biết lắng nghe, chịu khó học hỏi hay không?
      Mỗi doanh nghiệp sẽ có một yêu cầu riêng. Do đó, bạn nên tham khảo các trang web tuyển dụng (itviec.com, http://www.vietnamworks.com)
      https://itviec.com/it-jobs/knorex-software-engineer-rtb-real-time-bidding-c-2520
      http://www.vietnamworks.com/senior-research-scientist-1-725974-jv
      http://www.vietnamworks.com/data-scientist-algorithms-2-1-722316-jv

      Chúc bạn thành công và yêu nghề nhé.

      Liked by 1 person

      • Cam on ban nhe ve cau tra loi chi tiet voi nhieu thong tin thu vi. Ban co the noi mot chut ve su khac biet giua data scientist va data analyst ko? Minh tim hieu tren mang thi thay co nhieu cach dinh nghia khac nhau, va moi cong ty cung co cac yeu cau cong viec khac nhau cho cung mot chuc danh nen minh khong duoc ro lam. Ngoai ra con co BI analyst, luc dau minh tuong BI analyst la thien ve business hon va thuoc nhom business analytics nhung lai thay cac job ad cua BI analyst deu yeu cau bang cap ve khoa hoc may tinh? Thanks ban!

        Like

        • Đúng như bạn đề cập, hiện nay các chức danh chỉ mang tính hình thức tương đối. Nhiều lúc DS làm luôn công việc của DA và ngược lại. Nhưng về cơ bản DS thiên về thực nghiệm về Machine Learning hay Data mining, DA đóng vai trò về chuẩn bị dữ liệu là chủ yếu, có khi họ kiêm luôn xây dựng hệ thống nếu công việc yêu cầu.
          BI về lý thuyết thì họ làm về Data warehouse cho doanh nghiệp (aggregate dữ liệu từ nhiều nguồn theo tuần, tháng, và năm để tiện cho các nhà lãnh đạo đưa ra quyết định từ các con số thống kê vì khi cần mà mới tổng hợp thì sẽ rất lâu, nếu dữ liệu lớn có khi tổng hợp cả 2-3 ngày là bình thường), chuyên ngành hệ thống thông tin (bên các nước bạn họ nhóm chuyên ngành này vào Khoa học máy tính). Nhà tuyển dụng nếu không tham khảo rõ cách tổ chức của các trường ĐH ở VN thì có thể lẫn lộn về điều này.
          Theo mình thì các công ty hiện nay đều mong đợi ở ứng viên kiêm nhiều vai trò và có nhiều kĩ năng (full stack) hơn là chuyên môn hoá, vì đầu tư vào DS khá cạnh tranh và rủi ro, họ muốn ROI thu được nhiều từ dự án của mình nên giảm được bao nhiêu chi phí càng tốt bấy nhiêu.

          Liked by 1 person

Trả lời

Mời bạn điền thông tin vào ô dưới đây hoặc kích vào một biểu tượng để đăng nhập:

WordPress.com Logo

Bạn đang bình luận bằng tài khoản WordPress.com Log Out / Thay đổi )

Twitter picture

Bạn đang bình luận bằng tài khoản Twitter Log Out / Thay đổi )

Facebook photo

Bạn đang bình luận bằng tài khoản Facebook Log Out / Thay đổi )

Google+ photo

Bạn đang bình luận bằng tài khoản Google+ Log Out / Thay đổi )

Connecting to %s