[Root talk] Về kinh nghiệm nghiên cứu của một chú gà tập sự

Lưu ý rằng bài viết chỉ nêu cảm nghĩ của cá nhân. Không có tính khái quát hóa và chỉ nên đọc để tham khảo (hoặc giải trí) thôi nhé.

Chào mọi người, dạo này mình không viết blog nhiều cho lắm. Nhưng gần đây cũng có nhiều suy nghĩ về quá trình làm nghiên cứu của mình nên phần nào muốn viết một cái gì đó để lưu lại. Hiện tại, mình đang làm nghiên cứu trong lĩnh vực AI, chủ yếu là về Computer Vision. Nói sao nhỉ? Nói là nghiên cứu vậy thôi nhưng vẫn chưa có kết quả nào đáng kể. Nếu bạn không biết, đối với một nhà nghiên cứu khoa học thì thứ quan trọng nhất trong sự nghiệp của họ chính là có đóng góp cho lĩnh vực mình tham gia. Cụ thể hơn, đó là thông qua xuất bản các paper hoặc journal trên các tạp chí hoặc hội nghị khoa học uy tín. Bạn càng xuất bản nhiều, bạn càng có nhiều đóng góp trong lĩnh vực đó. Bài báo của bạn càng có nhiều người trích dẫn (hay còn gọi là cite), bạn càng có nhiều đóng góp trong lĩnh vực đó. Có bài báo đã xuất bản (dù là tác giả hay đồng tác giả) phần nào cũng giúp bạn có lợi khi xin học bổng học cao hơn (đó là mình nghe nói thế).

Về phần mình, mình đã từng thử qua nhiều chủ đề nghiên cứu khác nhau, lúc thì cố gắng reproduce lại một bài báo nào đó, lúc thì tìm hướng để cải tiến một phương pháp có sẵn. Đa phần, kết quả đều là không thành công hoặc nếu có thì nó cũng không đáng kể. Khi hồi tưởng lại, phần nhiều mình thấy sai lầm của mình nhằm ở điểm mình luôn dính chặt lấy một hướng đi từ đầu mà không mở rộng thêm hướng tiếp cận, trong khi thời gian thì giới hạn. Với đa số các chủ đề nghiên cứu, dù trong học thuật hay trong doanh nghiệp, thì vẫn không thể thoát được sự hiện diện của deadline vì không phải lúc nào bạn cũng làm nghiên cứu tự do cho bản thân mà là có một tổ chức hoặc cá nhân thuê bạn để thực hiện nghiên cứu đó. Lúc này, nghĩ đến việc làm sao để kiểm tra một ý tưởng thật nhanh là một điều cực kỳ quan trọng để tổ chức tài nguyên hợp lý. Nói từ kinh nghiệm của bản thân trong lĩnh vực AI, đây là một lĩnh vực dù có liên quan nhiều đến toán như giải tích và xác suất nhưng vẫn mang tính thực nghiệm khá cao. Đó là do chưa có lý thuyết nền tảng nào hỗ trợ cho việc xây dựng một hình cả, cũng không có cách nào chứng minh là mô hình của bạn sẽ hội tụ. Vậy nên đa phần sẽ là bạn xây dựng một mô hình, huấn luyện nó thử trên một tập nhỏ để chắc rằng nó hoạt động tốt, rồi huấn luyện trên tập dữ liệu chính và (đa phần) cố gắng tinh chỉnh cả đống tham số để mô hình đạt độ chính xác cao (và bước này cực kỳ tốn thời gian). Nếu bạn "may mắn" (giống mình), vì quá tin rằng ý tưởng của mình sẽ hoạt động thì bạn sẽ vô thức mắc kẹt ở bước cuối cùng với một kết quả không đến đâu cả. Đây là một lỗi mình đã mắc quá nhiều lần nhưng vẫn không thể nào phòng tránh kịp thời.

Nhưng nói vậy thì có phải chúng ta nên thử qua mọi hướng tiếp cận một cách hời hợt? KHÔNG.

Mình nghĩ sẽ hợp lý hơn nếu mình biết điều chỉnh kỳ vọng bản thân một cách đúng đắn. Có một niềm tin nhất định vào ý tưởng của mình là đúng và sẽ giúp bạn làm cẩn thận hơn để cho ra kết quả nhưng vẫn luôn phải giữ trong đầu là nó có thể sẽ thất bại. Cách nghĩ này phần nào sẽ giúp mình bớt sa đà hơn. Ngoài ra, có một người hướng dẫn hoặc một vài đồng nghiệp để chỉ ra rằng bạn đang tiếp cận sai cũng là một điều hữu ích. Mới gần đây mình đã trải nghiệm qua trường hợp này, khi mình tốn quá nhiều thời gian vào chuẩn bị dữ liệu cho mô hình của mình nhưng lại không kiểm tra nhanh liệu mô hình đó có hoạt động hay không. Chính các anh làm chung với mình đã chỉ ra điều này và đề xuất hướng tiếp cận mới cho mình. Dù có hơi buồn vì mình lại chứng nào tật đấy (cứng đầu thật đấy) nhưng cũng mừng vì luôn có người sẵn sàng chỉ ra khi mình làm sai. Tuy vậy, cũng rất khó để nói khi nào bạn nên thay đổi cách tiếp cận, và nếu thay đổi thì thay đổi thế nào. Nên chỉnh sửa một phần nhỏ trong ý tưởng của bạn hay nên thay đổi hoàn toàn hướng tiếp cận với một ý tưởng hoàn toàn mới. Đây là một trong những quyết định theo mình là khó khăn và câu trả lời mình chưa thể biết được. Hy vọng một ngày nào đó mình sẽ tìm ra.

Nhận xét

Bài đăng phổ biến từ blog này

Phép phân tích ma trận A=LU

Độc lập tuyến tính và phụ thuộc tuyến tính

Thuật toán tính lũy thừa nhanh. Giải thích một cách đơn giản