BÀI MỞ ĐẦU · MƯỜI CHẶNG

Máy tính là gì, thật ra?

Nó trả lời đúng chóc mọi câu Minh hỏi. Nó chấm bài không sai một li. Vậy máy tính có biết nghĩ không — hay chỉ đang giả vờ giỏi? Chào mừng đến với loạt «À Ra Là Vậy!».

? ? ? LỆNH: làm ...?
CHẶNG 1

Chuyện là thế này

Minh không nhớ mình bắt đầu tin điều này từ lúc nào. Nó cứ tự nhiên mà đúng.

Tối nào làm bài tập khó, Minh cũng gõ câu hỏi vào máy tính. Và lần nào cũng vậy — máy trả lời đúng chóc, nhanh không tưởng, đúng thứ Minh cần.

Dần dần Minh bắt đầu nghĩ: hay là máy tính cũng biết suy nghĩ, giống hệt người? Có khi còn giỏi hơn — vì nó chưa bao giờ trả lời sai, chưa bao giờ cần suy nghĩ lâu, chưa bao giờ nói "để tao xem lại đã".

Bống — bạn thân ngồi bàn trên — thì chỉ cười khì: "Ừ thì máy nó giỏi mà, hỏi gì chả biết."

Cả hai đứa đều tin như thế. Cho tới hôm ở phòng Tin, có một chuyện rất nhỏ xảy ra — nhỏ đến mức Minh suýt bỏ qua — nhưng lại làm cả cái niềm tin ấy lung lay.

Trước khi đọc tiếp, thử tự hỏi mình

Em có từng nghĩ y hệt Minh không — rằng máy tính "biết nghĩ" vì nó luôn trả lời đúng? Cứ giữ câu hỏi đó trong đầu, lát nữa quay lại nhé.

bài tập khó tối nay? đúng chóc, rất nhanh Thứ Hai — hỏi → đúng Thứ Ba — hỏi → đúng Thứ Tư — hỏi → đúng Thứ Năm — hỏi → đúng chưa lần nào sai, chưa lần nào chậm...
Đúng liên tục, đêm nào cũng vậy — đây chính là lý do khiến Minh dần tin máy tính "biết nghĩ".
CHẶNG 2

Rắc rối xuất hiện

Ở phòng Tin, thầy Huy cho cả lớp luyện gõ phím bằng một phần mềm gõ lệnh đơn giản.

Máy yêu cầu gõ đúng từng chữ một câu lệnh cho sẵn. Minh gõ nhanh, tay hơi vội — và gõ nhầm một chữ. Chỉ một chữ thôi, sai chính tả rất nhẹ, kiểu ai đọc qua cũng đoán ra Minh định gõ gì.

Nhưng phần mềm thì không "đoán" gì cả. Nó đứng hình ngay lập tức, hiện dòng chữ đỏ: Lỗi. Không nhận diện được lệnh.

Minh sửa lại, gõ đúng, máy chạy tiếp bình thường. Chuyện tưởng chấm hết ở đó — cho tới lúc ra chơi, Minh nhắn tin cho Bống, tay vẫn vội, lại gõ sai chính tả y hệt kiểu lúc nãy.

Bống đọc xong, trả lời luôn, đúng ý Minh muốn nói — chẳng hỏi lại câu nào.

PHẦN MỀM Ở PHÒNG TIN BỐNG QUA TIN NHẮN "lmm bai tap ho tui" LỖI! không nhận diện được lệnh "lmm bai tap ho tui" "ừ, làm bài tập hộ hả?" hiểu ngay, không cần hỏi lại
Y hệt một câu gõ sai — một bên đứng hình, một bên hiểu ngay. Cùng một lỗi chính tả, hai phản ứng khác hẳn nhau.
CHẶNG 3

Tại sao lại vậy nhỉ?

Minh ngồi thừ ra ở bàn máy tính, không phải vì buồn — mà vì thấy kỳ.

Cùng một lỗi gõ sai. Một câu Bống — con người — đọc xong hiểu ngay, còn máy tính thì đứng hình luôn tại chỗ, không nhích thêm được bước nào.

Minh tự hỏi: nếu máy tính thật sự "biết nghĩ" giống người, sao nó lại thua Bống ở ngay cái việc đơn giản này?

Đây đúng là lúc Minh nên dừng lại hỏi thẳng thầy Huy — và Minh đã làm thế, ngay giờ ra chơi tiếp theo.

Thầy Huy chỉ hỏi ngược lại một câu

"Em nghĩ xem — Bống hiểu được câu sai chính tả của em là nhờ cái gì mà máy tính không có?"

Minh nghĩ mãi không ra. Bống cũng ngồi cạnh, gãi đầu, cười trừ. Cả hai đứa cùng thắc mắc y hệt nhau.

BỐNG hiểu ngay ? MÁY TÍNH đứng hình cùng một lỗi gõ sai — vì sao phản ứng khác hẳn nhau?
Nếu máy tính "biết nghĩ" như người, sao nó lại thua Bống ngay ở việc đơn giản này?
CHẶNG 4

À!

Thầy Huy giải thích, và câu trả lời hoá ra đơn giản đến bất ngờ.

Bống hiểu được vì Bống có kinh nghiệm sống. Bống từng đọc hàng trăm tin nhắn gõ vội, từng tự mình gõ sai không biết bao nhiêu lần, nên não Bống tự động "đoán bù" ra ý định thật đằng sau mấy chữ sai đó.

Còn máy tính thì không đoán ý định. Nó chỉ làm đúng một việc: so khớp chính xác với những gì nó đã được lập trình sẵn để nhận ra. Gõ đúng y chang — nó chạy. Lệch một chữ — với nó, đó là một thứ hoàn toàn khác, chẳng liên quan gì đến lệnh đúng cả.

Vậy máy tính không "kém thông minh hơn" Bống ở khoản này. Nó chỉ đơn giản là không có khả năng đoán bù — trừ khi có người lập trình sẵn cách xử lý riêng cho đúng tình huống ấy.

Bống đoán được nhờ từng sống, từng sai, từng đoán.
Máy tính thì chỉ biết đúng những gì
người ta đã viết sẵn cho nó nhận ra.
BỐNG — ĐOÁN BÙ ĐƯỢC tin nhắn gõ vội lần tự gõ sai nghe bạn nói lẫn đọc chữ viết tắt đoán ra ý MÁY TÍNH — CHỈ SO KHỚP lệnh đã lập trình sẵn đúng y chang? → chạy lệch 1 chữ? → thứ khác hẳn
Bống có cả một kho kinh nghiệm để đoán bù; máy tính chỉ có đúng-hoặc-không-đúng với những gì được viết sẵn.
CHẶNG 5

Gọi tên nó

Vậy rốt cuộc, máy tính — nói cho đúng — là gì?

Máy tính là một cỗ máy thực hiện chính xác các lệnh theo một chương trình đã được viết sẵn.

Chỉ vậy thôi. Không hơn. Nó không tự nảy ra ý tưởng, không tự đặt mục tiêu riêng, không tự "muốn" làm gì cả. Mọi thứ nó làm đều bắt nguồn từ một chương trình mà con người đã viết trước, từng bước một, từ rất lâu trước khi Minh ngồi xuống gõ câu lệnh hôm đó.

Nghe có vẻ làm máy tính bớt "ngầu" đi một chút. Nhưng nếu nó chỉ làm đúng-y những gì được viết sẵn, vậy sao đôi khi nó vẫn khiến Minh bất ngờ vì đúng quá? Thầy Huy bảo: hiểu đúng điều này còn thú vị hơn nhiều so với tưởng nó biết nghĩ.

Vì sao lại thú vị hơn?

Vì một khi biết máy tính chỉ làm đúng-y-những-gì-được-lập-trình, em sẽ hiểu được vì sao nó có thể vừa cực kỳ hữu ích, vừa đôi khi "cứng đầu" đến khó chịu — cả hai đều từ một quy luật.

Chương trình người viết sẵn Máy tính Kết quả đúng-y theo lệnh không có mũi tên nào đi ra từ "ý riêng của máy" — vì nó không có
Ba mắt xích, một chiều: người viết chương trình, máy chạy đúng chương trình, ra đúng kết quả — không có chỗ nào cho "ý riêng" của máy.
CHẶNG 6

Bản chất thật sự

Chặng này giải thích kỹ hơn máy tính "làm việc" như thế nào — chặng quan trọng nhất bài.

Mọi việc máy tính làm đều đi theo đúng ba bước, không thiếu bước nào:

  1. Nhận lệnh (input)

    Một câu gõ, một cú nhấp chuột, một tín hiệu từ cảm biến — bất cứ thứ gì được đưa vào cho máy.

  2. Xử lý đúng theo các bước đã lập trình sẵn

    Không phải "suy nghĩ" kiểu não người. Máy chỉ chạy đúng trình tự các bước mà chương trình đã quy định — bước nào cũng có, không tự thêm bớt, không tự sáng tạo ra bước mới.

  3. Trả kết quả (output)

    Đúng theo những gì bước xử lý cho ra — dù kết quả đó có đúng ý người dùng thật sự muốn hay không.

Nói cách khác, máy tính vâng lời tuyệt đối: làm đúng-y-những-gì được ra lệnh, kể cả khi lệnh đó có lỗi, hoặc không đúng ý người dùng thật sự muốn. Nó không "cãi", cũng không "sửa hộ" — trừ khi chính chương trình đã được viết sẵn để làm việc sửa hộ đó.

NHẬN LỆNH (input) XỬ LÝ đúng các bước đã lập trình sẵn TRẢ KẾT QUẢ (output) không có bước nào là "tự suy nghĩ" cả — chỉ có các bước đã viết sẵn
Ba bước này diễn ra y hệt mỗi lần, không đổi — dù người dùng gõ đúng hay gõ sai.

Vậy vì sao máy tính nhiều khi "có vẻ" thông minh đến thế — trả lời trúng phóc, gợi ý đúng ý? Không phải vì bản thân nó biết tự suy luận như con người. Mà vì đã có rất nhiều người ngồi lập trình sẵn cách xử lý cho rất nhiều tình huống khác nhau — càng nhiều tình huống được nghĩ trước, máy càng có vẻ "hiểu" rộng.

Một chữ nhỏ, dặn kỹ để khỏi nhầm

Vậy còn AI thì sao — nó cũng chỉ vâng lời như vậy thôi à? AI "học" theo một cách khác hẳn với việc con người thật sự hiểu, phức tạp hơn nhiều so với ba bước ở trên. Chuyện đó dài, nên loạt này sẽ dành hẳn một bài riêng để kể — bài này chỉ nói về máy tính nói chung thôi, đừng lẫn hai chuyện vào nhau nhé.

CHẶNG 7

Một ví dụ khác — ngay trong nhà

Không cần máy tính để bàn mới thấy được điều này. Có khi cái máy giặt ở nhà cũng đang chứng minh y hệt.

Nhiều máy giặt bây giờ quảng cáo là "thông minh" — tự chọn đúng chu trình giặt cho từng mẻ đồ. Nghe cứ như nó cảm nhận được quần áo bẩn cỡ nào, giống người mẹ nhìn chồng đồ là biết ngay.

Nhưng thật ra máy giặt chẳng "cảm nhận" gì cả. Nó có một cảm biến đo độ đục của nước giặt. Đo xong, nó so con số đó với các mức đã được lập trình sẵn từ trước — đục cỡ này thì chọn chu trình A, đục cỡ kia thì chọn chu trình B.

MÁY GIẶT đo độ đục MỨC ĐỤC đã lập trình sẵn CHU TRÌNH ĐƯỢC CHỌN không phải "cảm nhận" mà là so khớp con số
Máy giặt không hề "biết" quần áo bẩn — nó chỉ so một con số đo được với các mức đã lập trình sẵn.

Y hệt cái máy tính ở phòng Tin. Không có bước nào là "cảm nhận thật" cả — chỉ có đo, so khớp, và làm đúng theo điều đã được viết sẵn từ trước.

CHẶNG 8

Nếu không có nó thì sao?

Thử tưởng tượng ngược lại một chút: nếu máy tính KHÔNG vâng lời tuyệt đối, mà "tự ý" đoán ý định giống người, thì sao?

Nghe thì có vẻ tiện hơn — máy sẽ "hiểu" mình hơn. Nhưng thầy Huy chỉ ra một vấn đề lớn: nếu máy tự đoán, kết quả sẽ không đoán trước được nữa.

Mỗi lần chạy có thể ra một kiểu khác nhau, tuỳ vào máy "đoán" thế nào hôm đó. Vậy thì ai còn dám tin dùng máy tính cho việc quan trọng nữa — tính tiền trong ngân hàng, giữ điểm số của cả lớp, lưu bài kiểm tra của em?

NẾU MÁY TỰ ĐOÁN Ý ĐỊNH Hôm nay tính đúng 50.000đ, mai tính "na ná" 51.000đ
Điểm số có thể tự đổi vì máy "nghĩ" khác đi
Bài lưu hôm nay, mai mở ra lại thành bài khác
VÌ MÁY VÂNG LỜI TUYỆT ĐỐI Tính tiền lần nào cũng ra đúng một kết quả
Điểm đã lưu thì giữ nguyên, không tự đổi
Bài kiểm tra hôm nay mở lại vẫn y hệt

Cái "cứng đầu" làm Minh bực ở chặng 2 — hoá ra chính là thứ khiến máy tính đáng tin cậy. Hai điều đó là một, chỉ là nhìn từ hai phía khác nhau.

CHẶNG 9

Em đã gặp nó ở đâu rồi?

Chuyện này không chỉ có ở phòng Tin của Minh. Rất có thể chính em cũng đã gặp nó — mà chưa để ý.

Gõ sai một chữ trong ô tìm kiếm Google, đôi khi vẫn ra đúng kết quả mình cần. Vậy Google có "tự nhiên hiểu" chính tả sai không?

Không hẳn. Có một dòng nhỏ hiện ra: "Có phải ý bạn là...?" — đó chính là một tính năng đã được lập trình sẵn, chuyên đi so khớp những lỗi gõ phổ biến với từ đúng. Không phải Google "tự nhiên hiểu" — mà là có người đã lập trình sẵn cho đúng tình huống đó.

con voii to nhat the gioi Có phải ý bạn là: con voi to nhất thế giới ? — một tính năng có người lập trình sẵn, không phải máy "tự nhiên hiểu"
Gõ sai vẫn ra đúng kết quả — không phải máy đoán được ý, mà vì có người đã lập trình sẵn cách xử lý cho đúng tình huống này.

Đọc xong rồi, thử tự kiểm tra nhé

Không chấm điểm đâu — bấm vào câu em nghĩ là đúng, xem gợi ý bên dưới.

1. Vì sao Google đôi khi vẫn ra đúng kết quả dù em gõ sai chính tả?

2. Máy giặt "tự chọn" đúng chu trình giặt là nhờ đâu?

3. Vì sao máy tính đôi khi "có vẻ" rất thông minh?

Còn phần em — câu hỏi của riêng em là gì?

Đọc xong bài, chắc em còn thắc mắc gì đó chưa được giải thích hết. Viết ra đây, không cần đúng-sai, chỉ cần thật.

    Cuộn nốt xuống dưới nhé — sắp xong trang này rồi!

    CHẶNG 10

    Kể lại trong 30 giây

    Nếu chỉ được nhớ một câu từ cả bài này, hãy nhớ câu này.

    Minh về nhà tối đó, thử kể lại cho bố nghe những gì thầy Huy giải thích — bằng đúng một câu, ngắn nhất có thể.

    Máy tính không thông minh —
    nó chỉ cực kỳ vâng lời.

    Nghe đơn giản vậy thôi, nhưng từ giờ mỗi lần dùng máy tính, điện thoại, hay bất cứ thiết bị "thông minh" nào — Minh sẽ nhớ tự hỏi: cái vừa xảy ra là máy "tự nghĩ" ra, hay là có ai đó đã lập trình sẵn cho đúng tình huống này?

    MINH BỐ "Máy tính không thông minh — nó chỉ cực kỳ vâng lời." một câu, đủ để kể lại cho bất kỳ ai trong 30 giây
    Minh thử kể lại cho bố nghe — chỉ một câu, mà gói gọn cả bài học tối nay.