Skip to main content

Tư duy xâu chuỗi

Nguyễn Vinh Tiệp

Tại sao cần tư duy xâu chuỗi

Gần đây, tôi đã phát minh ra một phương pháp tư duy xâu chuỗi các kiến thức đã học giúp mọi người có thể:

  • "Nhớ bài" lâu hơn
  • Kể lại câu chuyện một cách logic và thuyết phục
  • Có định hướng để giải quyết vấn đề

Phương pháp tư duy ở đây chính là Problem-Why-Solution. Phương pháp này ra đời trước hết là để đáp ứng nhu cầu giảng dạy của bản thân. Các bạn sinh viên thường hay gặp các vấn đề sau:

  • Không biết làm sao "người ta" có thể nghĩ ra một thuật toán. Ví dụ, Convolutional Neural Network - CNN ra đời bằng cách nào? Do may mắn nghĩ ra? Đương nhiên là không. Vậy thì làm sao họ có thể nghĩ ra được mô hình này?
  • Trong một thuật toán, tại sao xử lý thế này, mà không phải là thế khác. Ví dụ: Tại sao hàm mất mát (loss function) của mô hình hồi quy tuyến tính (Linear Regression) lại dùng công thức MSE (Mean squared error) mà không phải là tính hiệu số đơn giản?
  • Các mô hình na ná nhau, khi nào cần sử dụng mô hình nào? Ví dụ: Thuật toán Naive Bayes, Neural network đều có thể dùng cho bài toán phân lớp. Vậy khi nào dùng Naive Bayes? Sự khác nhau giữa các mô hình là gì?

Đó là do các bạn sinh viên chưa có kỹ năng sâu chuỗi được các kiến thức với nhau, mà chỉ tìm hiểu (hoặc học) các kiến thức một cách rời rạc, thiếu sự xâu chuỗi các kiến thức. Để minh họa cho phương pháp xâu chuỗi kiến thức này, tôi sẽ sử dụng bảng Problem-Why-Solution. Trong đó:

  • Problem: Vấn đề hiện tại phát sinh
  • Why: Tại sao vấn đề này còn tồn tại
  • Solution: Giải pháp để giải quyết vấn đề hiện tại

Ví dụ về tư duy xâu chuỗi

Quá trừu tượng phải không? Vậy thì hãy bắt đầu bằng ví dụ đơn giản sau: Xâu chuỗi "Các phương tiện di chuyển" của con người. Dưới đây là chuỗi tiến hóa của các phương tiện:

ProblemWhySolutionMinh họa
Đi bộ (phương tiện đơn giản nhất)walking
Mỏi chân khi đi xaDo dùng sức của bản thân điCưỡi ngựa (lợi dụng sức ngựa)riding
Không đi được quá xaDo ngựa phải nghỉ ngơi, ăn uốngXe máy (dùng độ cơ đốt trong)motorbike
Không an toàn khi di chuyểnKhông được bảo vệ khi ngã, gặp thời tiết xấuXe hơi (che chắn người lái và di chuyển nhanh hơn)driving
Không di chuyển qua các địa hình phức tạpXe không di chuyển được qua núi, sông, đại dươngMáy bay (di chuyển trên không trung)driving
Không đi ra ngoài trái đất đượcDo không trang bị cho môi trường phi trọng lựcTàu vũ trụ (bảo hộ không trọng lực + oxy)rocket
............

Thường xuyên xâu chuỗi vấn đề trong cuộc sống giống như trên, bộ não ta sẽ quen với việc:

  • Phát hiện vấn đề của giải pháp hiện tại
  • Tò mò tìm cách lý giải
  • Tìm kiếm giải pháp giải quyết vấn đề

Các nhà sáng chế, nhà khoa học luôn thấy vấn đề cần phải giải quyết chính là vì tư duy xâu chuỗi này và biết được đâu là vấn đề cốt lõi của một bài toán cần giải.

Bài tập

  1. Hãy xâu chuỗi các phương tiện truyền thông tin của con người: nói trực tiếp, viết, gọi điện, ứng dụng internet, live stream.
  2. Hãy xâu chuỗi các loại động cơ: hơi nước, động cơ đốt trong, động cơ điện.
  3. Hãy xâu chuỗi các mô hình máy học: Logistic Regression, Softmax Regression, Neural Networks, Convolutional Neural Network.
  4. Hãy xâu chuỗi các mô hình máy học: Recurrent Neural Network, Sequence-to-Sequence, Attention, Self-Attention,...