lại A.I.

A.I. – trí tuệ nhân tạo, đó là một thuật ngữ rất chung chung, ám chỉ vô số thể loại khác nhau. Có những loại như Wolfram Alpha chuyên giải toán, có những hệ thống chuyên về xử lý, nhận dạng hình ảnh / video, đây đều là những hệ thống phần mềm siêu phức tạp, có quá trình phát triển tính bằng nhiều thập kỷ, có những cái đã bắt đầu làm từ cách đây… hơn 50 năm! Cũng có những loại LLM (large language model) mới xuất hiện gần đây chuyên về xử lý ngôn ngữ tự nhiên – NLP. Và cũng giống như rất nhiều “người sáng tạo nội dung” trên mạng xã hội Việt vậy, các mô hình LLM nói chuyện gần giống con người, nhưng hoàn toàn không có chút trí tuệ nào.

Bên trong các mô hình LLM không có các cấu trúc logic nhỏ, nó chỉ bắt chước cách nói chuyện như con vẹt mà thôi! Và vì không có logic nên rất thường khi, như người ta hay nói: anh không mở miệng ra thì không ai biết anh ngu, nhưng anh mở miệng nói ra rồi thì… người ta chẳng còn nghi ngờ gì nữa!!! Cũng chính vì lý do đó mà các hệ thống tìm kiếm có A.I. hỗ trợ, như Google thường ngu xuẩn một cách vô lý, và sự ngu xuẩn này thường khi là vô cùng “aggressive”, luôn tỏ ra “ta đây cái gì cũng biết”, xen vào những lĩnh vực chuyên môn, chuyên ngành, thậm chí tìm cách áp đặt những “kiến thức” do tự nó tưởng tượng ra chứ hoàn toàn không có thật.

Đây thực chất là cách các nước phát triển tìm cách “dắt mũi, lừa bịp, nô dịch” các dân tộc chậm tiến, khi chỉ cần vài ba dòng ba hoa, thiểu năng cũng muốn đi bịp thiên hạ, chuyện đời đâu có dễ dàng như vậy! Thậm chí ngay cả trong chuyện xử lý ngôn ngữ tự nhiên thì các hệ thống A.I. hiện tại cũng chưa có khả năng hiểu được những câu cú đơn giản nhất, chưa nói đến văn chương, điển cố hay các câu chữ tinh tế, phức tạp khác. Như cái vietsub – phụ đề Việt ngữ dưới đây cũng vậy, câu này phải hiểu đúng là: “Mọi người vì Vạn gia, Vạn gia vì mọi người”, chữ “vi” này có nhiều nghĩa: vì, là, làm, nhưng chọn nghĩa nào thì… A.I. không tự luận ra được!

Các cách sử dụng A.I. để “dịch” phụ đề các phim nước ngoài, từ tiếng Trung, tiếng Anh sang tiếng Việt đều ngu xuẩn như thế! Mới chỉ là những câu thoại đơn giản là đã có vấn đề rồi, còn những nội dung vi tế, sâu xa thì hầu như không truyền tải được! Thực chất, điều này không thể trách A.I. hoàn toàn, vì đến người sợ là dịch cũng mới ngang cỡ đó. Hơn 2000 năm, mượn người ta không thiếu thứ gì, đến độ tập từ vựng dễ có hơn 90% là từ gốc Trung, nhưng chỉ mượn một mớ từ ngữ trên bề mặt để bịp nhau mà thôi, chứ không học được nội dung, công phu bên trong! Thế rồi vỗ ngực ta đây: cùng Hán Đường Tống Nguyên mỗi bên hùng cứ một phương…

Bất định và tất định

Hơn 20 năm trước có đọc một cuốn sách tựa là “Fooled by randomness – Bị làm cho khùng bởi tính ngẫu nhiên” – Nassim Nicholas Taleb, sách rất hay! Tác giả phê phán vô số kiểu Xác suất thống kê dùng trong kinh tế, xem đó như là một thứ giả-khoa-học – pseudo-science! Muốn biết nó giả như thế nào thì cứ xem báo cáo GDP – PPP hàng năm của VN sẽ rõ, xem các bác ấy làm “pháp thuật” với các con số một cách vô cùng ảo diệu!

Tuy XSTK cơ bản vẫn là một nhánh của toán học, vẫn có tác dụng mô tả thế giới thực, nhưng cần phải nói là, phần nhiều các công thức XSTK dùng trong kinh tế chỉ có tính chất mô tả, gần đúng, xấp xỉ thô, thậm chí, nhiều trường hợp vẫn còn là… giả định, giả thuyết, dùng được tới đâu còn tùy ngữ cảnh. Mà một đặc tính tâm lý mang tính chất “cố hữu” của con người là: càng nghĩ nhiều về chuyện gì thì… càng thấy mình đúng!

Vì càng ngày tôi càng phải đúng, “cái tôi” càng lúc càng trở nên “tuyệt đối”, nên càng nghĩ nhiều thì càng đi vào bế tắc tâm lý! Phần nhiều các vị dùng XSTK cũng y như vậy, xài công thức, công cụ, lý thuyết xác suất thống kê gì càng nhiều thì… càng tự thuyết phục mình rằng nó đúng, nó phải đúng! Đó là một kiểu sai lầm chết người mà tác giả Taleb đã chỉ ra rất rõ, tuy cách nói năng của ông ta rất gay gắt, không khoan nhượng!

Từ đó đến nay hơn 20 năm, không ai phản bác được Taleb câu nào, dù cách nói năng của ông ta làm nhiều người ghét. Cứ như thế, cái tranh cãi rằng thế giới này vận hành theo những quy luật “tất định” (determinism) có thể đoán biết trước, hay tất cả chỉ là những sự kiện “bất định” (Trẻ Tạo hóa đành hanh quá ngán, Chết đuối người trên cạn mà chơi) mãi mãi vẫn sẽ là tranh cãi, như đã được chỉ rõ bởi Hệ thức bất định Heisenberg!

Nhưng… con người mà, the matter of randomness is too important to be left to chance – vấn đề các sự kiện ngẫu nhiên là quá quan trọng để có thể phó thác nó… cho sự ngẫu nhiên (!!!) :D Con người vẫn tìm cách nắm bắt nó theo một cách nào đó. Nào là VaR – value at risk, nào là LaR – Liquidity at Risk, và tất cả những phương pháp XSTK khác đều có một số “giả định” ban đầu, là giả… định đấy, đừng cố chấp tin là thực!

programming

Rất lâu về trước, dễ đã đến nhiều thập kỷ, có một thời mà, khi mở một cuốn “Cẩm nang lập trình” tiêu biểu ra, câu đầu tiên nó nói cho bạn biết là… Lập trình là một nghề cao quý… Nhưng các cuốn cẩm nang của thời hiện đại bây giờ, theo đà lạm phát giá trị, đã không còn thấy có câu đó nữa! :) Thay vì tập trung vào các “logic nhỏ”, hiểu vấn đề cho thấu đáo, các “cẩm nang” hiện đại ưa chuộng sử dụng từ “công nghệ” hơn, cứ toàn ở trên mây thôi!

Thay vì tìm niềm vui trong những điều căn bản, nhỏ nhặt, các “cẩm nang” hiện đại gieo rắc những ảo tưởng rất hàm hồ về những trào lưu mới trên bề mặt… Một trong khá nhiều game tự viết để… tự chơi, trò gỡ mìn xưa cũ với các ô thay vì hình vuông kiểu truyền thống thì có thể tùy chọn là các hình tam giác, ngũ giác, lục giác, bát giác, etc… Đến giờ vẫn chơi Minesweeper, vẫn xài Norton Commander và Winamp như một cái thời… muôn năm cũ xa xưa ấy!

tidal analysis, 2

Như thế ta thấy từ những tò mò, băn khoăn nhỏ dẫn đến những bước tiến lớn… như kiểu bị quả táo rụng vào đầu vậy! Vấn đề thủy triều gây ra nhiều quan tâm ở châu Âu, đặc biệt là ở Anh và Pháp, nơi thủy triều cao và thấp có thể chênh nhau đến hơn 7, 8 mét và gây ra những hệ quả nghiêm trọng! Từ Newton, Laplace, đến Fourier, nhiều nhà toán học, vật lý học đã nghiên cứu về thủy triều. Đặc biệt sau khi Fourier chỉ ra rằng bất kỳ một hàm tuần hoàn nào, dù phức tạp đến đâu, cũng đều có thể được phân giải thành tổng của các hàm lượng giác tuần hoàn đơn giản có dạng f(t) = A cos(vt + p), tức là phân giải một tần số thành tổng của nhiều tần số con. Mà những tần số con này đều đã biết trước trong bài toán thủy triều, ví dụ như với mặt trăng (M2), tần số là khoảng 24.8333, vì trái đất quay (biểu kiến) quanh mặt trăng mất khoảng 24h 50 phút. Đã biết trước hầu hết các tham số, chỉ phải tính A – amplitude, biên độ nữa mà thôi.

Không khó để chứng minh rằng, tích phân của hàm g(t) x f(t) chia cho thời gian t chính là biên độ dao động A, với g(t) là hàm thủy triều và f(t) là hàm cosine đại diện cho mức độ ảnh hưởng của mặt trăng. Việc còn lại là thu thập dữ liệu lên xuống của thủy triều, bỏ vào trong cái máy tính tích phân, nhân nó với các hàm cosine và tính ra các hệ số tương ứng! Và chính là từ bài toán phân tích và dự đoán thủy triều, mà dẫn đến một loạt các phát kiến, phát minh, dẫn đến các hệ máy tính cơ học đầu tiên, dẫn đến các hệ thống tính toán và tự động hóa khác… Nhắc lại một câu chuyện tiếu lâm đã kể mấy năm trước, một người Anh bị quả táo rụng vào đầu, thế là ông ta đã phát minh ra định luật vạn vật hấp dẫn! Một người Trung Quốc bị quả táo rụng vào đầu, ông ta liền trồng cả một nông trại táo rộng lớn và bán các sản phẩm táo đi khắp thế giới. Một người VN… à không, anh ta đã bị một quả dừa to rụng vào đầu từ rất lâu về trước… :D

ball and disk integrator

Trong hình là một cái máy tính tích phân cơ khí, cơ chế hoạt động như sau: đĩa tròn quay với vận tốc không đổi, đại diện cho trục x, thường là thời gian t, đĩa quay làm quả bi tròn quay theo! Tùy theo vị trí của bi mà tốc độ quay khác nhau, nếu bi ở chính ngay tâm đĩa, thì tốc độ là 0, bi không xoay, nếu bi được di chuyển ra càng gần mép đĩa thì tốc độ quay càng nhanh hơn, nếu di chuyển ngược lại về phía bên kia đĩa thì bi sẽ quay theo chiều ngược lại. Bi xoay làm cho trục tròn nằm ngang xoay theo, nếu ta di chuyển bi qua lại dọc theo đồ thị của một hàm số f(x) thì, không quá khó để hình dung, số vòng quay tích lũy của trục chính là tích phân của hàm f(x), nói một cách đơn giản chính là diện tích phần ‘nằm bên dưới’ đường cong f(x).

Chỉ cần đếm số vòng quay của trục thì sẽ nhận được giá trị của tích phân này. Căn bản đó chỉ là một cái máy tính tích phân cơ học, nhưng ứng dụng thì quá quan trọng đến nỗi người ta cho rằng đây là thiết bị quan trọng nhất từng được chế tạo trước khi máy tính điện tử ra đời! Máy chỉ thị mục tiêu và dẫn bắn trên chiến hạm Dreadnought là sử dụng cơ chế đĩa và bi, máy tính dẫn bắn cho các loại ngư lôi trong WW2 là dạng bi và đĩa, máy quan sát ném bom – Norden bombsight cũng là dạng bi và đĩa, và vô số máy móc, thiết bị khác. Hình là máy phân tích thủy triều chế tạo bởi Sir Kelvin (William Thomson), đĩa không chuyển động tròn đều mà chuyển động hình sin, nhưng căn bản, đây chính là máy tính tích phân đầu tiên!

tidal analysis

Thủy triều được dự đoán, tính toán như thế nào? Vì có quá nhiều tham số tác động đến thủy triều, như M2 (moon) hay S2 (sun), và nhiều hành tinh khác, nên dự đoán thủy triều được bắt đầu bằng việc… thu thập, ghi chép số liệu thực nghiệm tại một cảng nào đó, số liệu này được thu thập trong nhiều năm và sau đó dùng một phép biến đổi Fourier để phân tích hàm thủy triều (số liệu) này thành tổng của các hàm lượng giác con, mỗi hàm con có dạng f(t) = A x cos(st + p), với A (amplitude) là độ lớn, biên độ dao động, s (speed) là vận tốc góc, p (phase shift) là độ lệch pha, và t là thời gian. Mỗi hàm lượng giác điều hòa con này là đại diện cho mức độ ảnh hưởng của một yếu tố riêng biệt, như mặt trời, mặt trăng, các hành tinh, etc…

Nhưng ngày xưa chưa có máy tính điện tử, người ta phân tích Fourier như thế nào? Cũng lại là dùng các máy tính cơ học, trong ảnh là máy phân tích thủy triều được chế tạo bởi Sir Kelvin (William Thomson) năm 1878, máy dài 6m. Sau khi đã phân tích dữ liệu quá khứ đã thu thập và có được các tham số thì lại nhập các tham số này vào máy dự đoán thủy triều (đã nói ở bài trước) để tính thủy triều tại một thời điểm cụ thể nào đó trong tương lai. Về máy phân tích thủy triều thì có nhiều chuyện phức tạp, nhưng về máy dự đoán thủy triều, cơ chế vận hành của nó lại khá đơn giản. Hình thứ 2 là cơ chế máy dự đoán thủy triều, hàng bánh xe trên là cố định, hàng bánh xe dưới có thể chỉnh được tốc độ, độ lớn cũng như độ lệch pha!

Chính là biểu diễn các tham số A, s và p trong công thức nói trên. Sau đó thông qua những cái “Scotch yoke” (cái này không biết phải dịch ra tiếng Việt thế nào) để biến chuyển động quay thành chuyển động tịnh tiến, kéo các ròng rọc chạy! Nguyên hệ ròng rọc chạy và kéo một sợi dây, sợi dây này kéo một cây bút trên bề mặt một băng giấy xoay tròn, vẽ thành đồ thị thay đổi lên xuống của thủy triều theo thời gian. Hàm tổng (thủy triều) được tổng hợp lại từ các hàm con đơn giản như thế! 150 năm trước người ta đã tìm cách phân tích và tổng hợp chính xác, 150 năm sau, chúng ta tổ chức giải đua ghe, nhưng rút cuộc không đua được vì còn phải chờ đến “giờ lành” để bắt đầu, đến “giờ lành” thì nước triều đã rút cạn chỉ tới đầu gối!

duck test

Mấy năm trước, có sự kiện một người làm thiết kế – designer sử dụng “AI”… đương nhiên AI hiểu trong ngữ cảnh thiết kế tức là “Adobe InDesign” chứ không phải là “Artificial Intelligence”, nhưng mấy ku “nhà báo thiểu năng” VN thì chớp được đúng một chữ AI, vội vàng tán láo thế này thế kia, đến nhiều ngày sau còn chưa hiểu ra được mình ngu chỗ nào. Những ví dụ dạng này là… hằng hà sa số, mang tiếng là con người, nhưng trí thông minh chưa bằng được máy, các hệ thống AI bây giờ có thể phân biệt ngữ cảnh khá tốt! Và đến tận bây giờ vẫn thế, tràn đìa trên mặt báo, viết câu tiếng Việt đơn giản không thông, ngoại ngữ đọc không hiểu, nhưng suốt ngày la liếm khắp nơi, chỗ nào cũng có mặt, vấn đề nào cũng hiểu, tạo ra một đám bụi mù thông tin, kích động người này người khác đánh nhau.

Có một bài kiểm tra trong giới CS (computer science) gọi là “Duck test – kiểm tra vịt”: nếu nó đi lạch bạch như vịt, bơi như vịt, và kêu quác quác như vịt, thì chắc chắn nó là vịt rồi. Hay như một chính trị gia Mỹ: tôi không biết hắn ta có phải là CS (cộng sản) không, nhưng một con chim chân có màng, bơi như vịt, kêu quác quác như vịt thì chắc là vịt rồi? Hay gần đây hơn, ngoại trưởng Larov nhận xét các nhóm Hồi giáo thân Tây phương, như một kiểu châm biếm: nhìn giống như khủng bố, nói năng như khủng phố, đánh đấm như khủng bố, vậy chắc chắn là khủng bố rồi!? Cái gọi là AI – artificial intelligence, dù vượt qua được Turing-test, nhưng đến nay vẫn không thể nào vượt qua được Duct-test và Chinese-room-test để có thể chứng minh là có tư duy thật sự, thì rồi cũng chỉ là “vịt” mà thôi!

Đến một lúc, ta sẽ thấy, cái gọi là AI, hay chí ít là các thể loại “AI hạ cấp, tào lao”, chính là phản ảnh cái “não trạng” của cái cộng đồng sử dụng nó! Thậm chí còn tệ hơn cả wikipedia, trên wiki, ít ra còn có người này người kia, phe này phe kia đánh nhau, tranh dành nhau chỉnh sửa nội dung, ít ra còn có sự đấu đá, tranh luận qua lại, thể hiện các luồng suy nghĩ đối lập nhau. Còn “AI”, ít nhất là các phiên bản “đại chúng, phổ thông” chính là một kiểu “núp lùm” và “đội lốt”, nó đưa quan điểm, ý kiến như thể được rút ra từ khoảng không vậy, mà cái khoảng không này, xui rủi thay, chính là phản ánh sự “vô tri, thiểu năng” của cái cộng đồng xài nó, ai cũng là “tác giả” mà đồng thời, cũng không có ai là “tác giả” cả, không một ai đứng ra chịu trách nhiệm về tính đúng đắn của nguồn tin, của suy nghĩ!

AI, 2

Hơn 25 năm trước, hồi đang còn ngồi trên ghế nhà trường, Bộ môn Trí tuệ nhân tạo, Khoa CNTT, ĐH KHTN… tôi có xài một cái chương trình tên là Eliza, dạng chương trình chat, mình gõ một câu, nó trả lời một câu, hoàn toàn command-line: “- Hi, how are you today!? – Thanks, but I don’t feel very well”, câu chuyện bắt đầu như thế, vì không muốn khởi đầu có vẻ rập khuôn nên tôi trả lời không được khỏe lắm… Nói chuyện một hồi lâu, sau nó hỏi: “- How do you feel now? – I feel better now!” Thế là cái chương trình máy tính kia nó văng ra một câu làm mình sững sờ: “You’ve felt better cause you’ve been talking with me!” – Anh đã cảm thấy tốt hơn là do nói chuyện với tôi nãy giờ đó!!! Đó là lần đầu tiên, cũng là lần cuối cùng tôi xài Eliza! Không phải là vì “sợ” cái trí thông minh của nó…

Mà vì không muốn bận tâm bởi những câu trả lời, mà tôi nghĩ là, nó có một bộ thư viện hàng chục ngàn câu có thể khiến cho bạn phải “ngạc nhiên”, oh, hóa ra máy tính “thông minh” đến vậy! Tư duy của con người, đó là phân tích độc lập, tìm tòi, liên hệ, hình dung, tưởng tượng, đến cả những loại tư duy bằng hình ảnh, âm thanh chứ không phải chỉ bằng ngôn từ, nếu chỉ lặp lại một số lượng lớn ngôn từ theo dạng “thiểu năng” thì con người không thể bằng máy, bắt so với máy khác nào bắt con cá phải leo cây! Chốt lại một điều là: A.I. có xu hướng lặp lại cái “não trạng” của cộng đồng, cộng đồng như thế nào thì họ sẽ có được thứ A.I. giống như thế, giống như thứ họ muốn có mà thôi! Một cái hang trống hoác vang vọng trở lại những cái thế giới nội tâm cũng trống hoác giống y như thế!

height map

Viết lại nhân có trao đổi với một người bạn, trước đây radar địa hình là cái gì đó vô cùng tiên tiến, các phi cơ cường kích có thể bay sát mặt đất, cách các tòa nhà, ngọn cây, núi đồi chỉ cỡ 10m mà không sợ đâm va, vì được điều khiển bằng radar địa hình chứ không phải do người điều khiển, khả năng xử lý, phản hồi của phi công không đủ nhanh so với tốc độ máy bay. Nhưng ngày nay, radar địa hình đã trở nên phổ biến đến mức nó hiện diện trên nhiều loại UAV dân sự, như loại dùng trong nông nghiệp, và chỉ nhỏ bằng bàn tay như hình bên dưới! Vừa bay, nó vừa vẽ bản đồ 3D của địa hình!

Cái bản đồ độ cao – height map này được so khớp với thông tin địa hình đã được chụp và lưu sẵn từ trước trong máy tính, nhờ đó UAV có khả năng bay bám địa hình. Bay bằng radar địa hình là xu hướng chủ đạo hiện tại của các loại UAV dân sự lẫn quân sự, giúp quản lý tài nguyên một cách chính xác với UAV dân sự, và giúp bay trong mọi điều kiện gây nhiễu, mọi điều kiện thời tiết với UAV quân sự. Và bài toán so khớp bản đồ độ cao, một cái mảng 2 chiều chứa các con số, từ đó nhận dạng địa hình để điều khiển UAV, là dạng bài toán kinh điển của các kỳ thi Olympic tin học!

Jacquard loom, 2

Mấy năm trước, có viết một đoạn về Jacquard loom, tiền thân của các loại máy dệt tự động hóa hiện đại, dùng bìa đục lỗ (punched card) để mã hóa thông tin hoa văn trên vải dệt. Thay một cái bìa là nó sẽ dệt ra một kiểu hoa văn mới, hoàn toàn tự động. Mới nghe thì có vẻ không có liên quan gì, nhưng máy dệt Jackquard có thể được xem là “sơ tổ” của các loại máy tính hiện đại. Nói thêm một chút về số phận của Joseph Jacquard, người phát minh ra cái máy dệt này. Hôm nay, ta hãy ngồi vào cỗ máy thời gian, thời điểm là năm 1802, điểm đến là tp. Lyon nước Pháp! Allez-y, maintenant!

Joseph Jacquard cầm cố tài sản đến mức khánh kiệt để chế tạo ra cái máy dệt đi trước thời đại này! Kết quả là… các công nhân dệt sợ máy cướp hết công việc nên đã tập hợp lại, đập phá cái máy, còn bản thân Jacquard bị ném xuống sông, may mà không chết! Ở Đức, tình hình còn phát triển đến mức cực đoan hơn, công nhân biểu tình phản đối, bạo động tràn lan, chính quyền phải ra lệnh tử hình đối với những người phát minh ra các loại máy dệt mới để trấn an dân chúng! Nên chuyện trí tuệ nhân tạo – A.I. hiện đại thực ra không phải là vấn đề gì mới, chỉ là lịch sử đang lặp lại chính nó mà thôi!