Tư duy trừu tượng
Một sinh viên trong lớp tôi, dù đã dành nhiều thời gian, vẫn không thể hiểu được khái niệm vector space với số chiều nhiều hơn 3. Lý do chính anh ta đưa ra là: I can’t visualize n-dimensional spaces. Hừm, làm thế nào bây giờ? Trong quyển linear programming, Chvatal viết: “Do not try to visualize n-dimensional objects for n>=4. Such an effort is not only doomed to failure – it may be dangerous to your mental health. (If you do succeed, then you are in trouble!)” Bây giờ tôi trở nên nghi ngờ các lớp đại số tuyến tính dạy ở bậc đại học. Tôi đã từng học một lớp như thế, và hoàn toàn không nhớ là thầy giáo đã giảng một cách trực quan không gian n-chiều như thế nào. Một trăm phần trăm trừ epsilon những gì tôi biết/hiểu về đại số tuyến tính tôi đều học/đọc được từ quyển Matrix Analysis của Horn và Johnson. Dĩ nhiên, đọc thêm Gilbert Strang thì càng tốt.
Quay lại đề tài chính: visualize không gian (tuyến tính) n-chiều thế nào? Với tôi, câu trả lời là: tùy ngữ cảnh. Có lúc tôi chỉ cần một định nghĩa cơ học kiểu:
là tập hợp tất cả các bộ n số thực; đôi khi tôi hình dung nó như một tập hợp “quai quái” và vẽ trong đầu một cái Venn diagram cho nó; hoặc tôi hình dung một mặt phẳng trong không gian 3 chiều (chứa tâm); vân vân. Khi đối mặt với một vấn đề trong đại số tuyến tính, tôi nhìn vấn đề bằng tất cả các cách này (trong tiềm thức), và áp dụng cái trực quan “gần” vấn đề nhất để hiểu và giải quyết nó. Ví dụ: để hình dung ra phần giao của hai không gian tuyến tính là một không gian tuyến tính khác (với số chiều lơn lớn), có lẽ cách tốt nhất là dùng cái Venn-diagram quai quái nọ. Bài tập 1: bạn hình dung kernel và image của một linear transformation thế nào? Bài tập 2: bạn hình dung eigenvalues của một matrix thế nào? Bài tập 3: bạn hình dung một không gian tuyến tính hữu hạn (trên trường
) thế nào? Bài tập 4: thế còn các không gian Hilbert hay Banach thì sao?
Thế nhưng, sinh viên nọ, vì chưa phát triển được các trực quan này (dù đã học đại số tuyến tính), không “chịu” các giải thích của tôi. Tôi dùng tất cả các analogies có thể có để giải thích rằng các vectors độc lập tuyến tính không nhất thiết phải vuông góc với nhau, nhưng anh ta vẫn nhăn nhó.
Bây giờ, có hai lối ra: một là tôi nghi ngờ khả năng giảng dạy của mình, hai là tôi phải tin rằng “phát triển tư duy trừu tượng” về đại số tuyến tính không phải là việc ngày một ngày hai cho sinh viên nọ. Cơ chế tự bảo vệ bắt tôi chọn chọn lựa số hai
.
Chọn lựa số hai dĩ nhiên là hữu lý! Pythagoras vĩ đại còn không “visualize” được — và vì thế không tin vào — các số vô tỉ nữa mà! Ta hoàn toàn có thể visualize một số hữu tỉ m/n bằng cách chia một đoạn thẳng chiều dài m thành n phần bằng nhau. Bạn thử hình dung
xem sao?
Các câu hỏi tự nhiên kế tiếp là: làm thế nào để ta phát triển trực quan trừu tượng về một đề tài nào đó? Có thể nào tồn tại những đề tài mà đầu óc ta không đủ thông minh để làm một cú quantum leap như kiểu từ 3-chiều lên n-chiều không? Tôi dành câu trả lời cho các bạn.

Bạn thử hình dung \sqrt{2} xem sao?
\sqrt{2} có thể hình dung là đường chéo của một hình vuông cạnh bằng 1 chăng? Còn những thứ khác thì em cũng không hiểu lắm, mặc dù cũng đã được học.
Ý tôi nói là hình dung một số vô tỉ như thế nào? Ngày xưa Pythagoras biết rằng đường chéo đó bằng căn 2, nhưng từ chối không tin căn 2 là vô tỉ.
Liệu có thể trực quan trừu tượng mọi lý thuyết được không ? Nói về lý thuyết tương đối nổi tiếng trước đi. Ta hoàn toàn có thể cảm nhận bằng kinh nghiệm, có thể không phải bằng kinh nghiệm khoa học hay công thức mà là từ cuộc sống thực tế, rằng, không có một trục thời gian trước – sau cố định theo qui ước, mà là một chiều khác của không gian. Ngay cả định nghĩa “không gian”, cũng không nên hiểu là không gian chúng ta đang sống và thở, cái này thì nhiều người đánh đồng lắm. Về số vô tỉ thì không biết có nên hình dung như là một tam giác Sierphenski hay không ? Rất mong anh NQHưng bàn luận thêm về vấn đề này và cũng trả lời luôn các bài tập anh đã cho .
Về việc hình dung eigenvectors hay không gian Hilbert, tôi sẽ viết thành một bài riêng. Câu trả lời ngắn gọn là: cũng có rất nhiều cách, và tùy ngữ cành của bài toán mà ta áp dụng một kiểu hình dung nhất định.
Mấy tháng trước tôi có đọc monograph (chỉ khoảng 50 trang) này “Keith Ball, Elementary introduction to modern convex geometry”. Rất hay và dễ đọc. Nói về hiện tượng concentration trên high-dimensional space rất phản trực quan:
http://www.msri.org/communications/books/Book31/files/ball.pdf
em cung dang co doc tai lieu ve may thu eigenvalue voi eigenvector ma chua hinh dung duoc no the nao. Em chi nho mang mang may cai ma tran hoc hoi dai hoc. Gio em doc mai van ko hieu lam sao tinh dc no ma ap dung Principle component analysis. Co le la dau oc em co van de.
Neu ko co hinh dung truc quan nao thi cung ko sao, ko can guong ep. Nhieu khi ban can lam viec mot cach truu tuong. Eigenvector va eigenvalue thuan tuy Toan thi khi ban hoc den Jordan form se thay nhung ban cung se biet la Jordan form khong phai luc nao cung ton tai vi polynomial ko phai luc nao cung co nghiem. Cho nen Jordan form cung la cach hinh dung tren algebraic closed fields ma thoi. Intuition nhieu khi cung nguy hiem day. Trong Toan co hang loat bai tap de nhac nho moi nguoi, vi nhu su khac biet giua khong gian vector huu han va vo han chieu.
Nhan tien cac anh dang noi ve gia tri rieng va vector rieng cho toi duoc tho lo la toi cung chua hieu duoc la lam sao lai co the dung vector rieng de thuc hien viec xoay (rotation) va dan (dialation). Toi di hoi ban be la cac cuu sinh viec Bach Khoa cung khong ai biet. Neu ai do lam cho toi hieu duoc se giai thich lai cho ban be toi ngay.
Xin chan thanh cam on
Theo cách em hiểu thì một vector có độ dài và hướng. Một biến đổi tuyến tính sẽ thay đổi cả chiều dài và hướng vector. Vector riêng của một biến đổi tuyến tính là một vector sinh ra bằng cách nhân thêm giá trị riêng (hằng số) trong quá trình biến đổi. Do đó hướng và độ dài của vector riêng có thể bị thay đổi sau quá trình này.
Tôi sẽ viết một bài nhỏ về hai cách hiểu khác nhau của eigen-values/vectors để giải thích hai câu hỏi ở trên: một liên quan đến PCA, một liên quan đến linear transformations. Các bác cố … chờ nhé
(Đoạn sau đây tôi sẽ copy vào bài định viết.)
Trả lời nhanh cho bác Hà: nếu tôi đoán không lầm thì bác hỏi theo nghĩa sau đây.
Các phép quay và dãn chỉ là hai ví dụ của một khái niệm tổng quát hơn là “biến đổi tuyến tính” (linear transformation). Mỗi một biến đổi tuyến tính có thể được biểu diễn bằng rất nhiều ma trận khác nhau — miễn là ta chịu khó đổi hệ cơ sở. Có thể chứng minh được rằng tập hợp các ma trận đại diện cho cùng một BĐTT thì “tương đương” nhau (similar matrices). Cụ thể hơn,
và
đại diện cho cùng một BĐTT thì có thể viết
Trong đó
Ma trận đường chéo
chính là ma trận mà các số trên đường chéo là các eigenvalues của
, còn các cột của
là các eigenvectors. Các eigenvectors trỏ đến các hướng không bị thay đổi khi áp dụng BĐTT
. Độ dài của eigenvectors không quan trọng vì có co dãn chúng thì chúng vẫn là eigenvectors.
Eigenvalues và eigenvectors có cái chết tiệt gì mà sao ai cũng quan tâm? Cháu thì hiểu thế này: các eigenvectors tạo thành một orthogonal basis của 1 vector space, nghĩa là bất kì vector nào cũng biểu diễn được dưới dạng linear combination of eigenvectors. Basis này “quan trọng” vì:
* Làm việc trực tiếp với 1 hệ tuyến tính (linears system) thông thường rất messy. Dùng biểu diễn linear combination of eigenvectors thì các tính toán trên ma trận trở thành scalar computations => rất dễ dàng
* Eigenvectors “vuông góc” nên inner products rất đẹp mắt.
* Hệ quả nói chung là nhiều
Nếu ma trận tổng quát hóa lên thành linear operator (infinitely dimensional) thì việc decompose ra như thế (nếu được) là một điều tuyệt vời.
Nhiều linear algebra courses (or textbooks) khi dạy về eigenvalues thường bắt đầu bằng eigenvalue problems (giải bài toán Au = au), hoặc “a là 1 eigenvalue nếu det(A-aI)=0″: rất vô vị.
Nghe mọi người bàn luận hay quá. Mình đang cần lý thuyết về PCA bằng tiếng Việt. Mong mọi người có ai có thì share cho mình với. Thành thật cảm ơn. Mail add của mình là : caongoctrinh2003@yahoo.com
các bạn có thể tư duy sqrt(2) là một hình vuông mà chọn các cạnh sao cho diện tích hình vuông đó bằng 2 thế là ok do đó bạn phải chọn cạnh hình vuông bằng sqrt(2) thì mới thỏa.