Trong hàng trăm năm, máy tính analog đã là những thiết bị tính toán mạnh mẽ nhất trên Trái Đất – chúng được sử dụng để dự đoán nhật thực, thủy triều và thậm chí chỉ đạo súng phòng không. Sau đó, với sự ra đời của bóng bán dẫn rắn, máy tính số bắt đầu phát triển mạnh; hiện nay, hầu hết các máy tính chúng ta sử dụng đều là máy tính số. Tuy nhiên, ngày nay một “cơn bão hoàn hảo” của nhiều yếu tố đang tạo điều kiện cho sự trở lại của công nghệ analog.
img_0
Đây là một máy tính analog. Bằng cách nối các dây theo những cách đặc biệt, tôi có thể “lập trình” nó để giải một loạt các phương trình vi phân. Ví dụ, một cấu hình cho phép tôi mô phỏng một khối vật dao động giảm dần trên lò xo, sao cho trên máy hiện sóng bạn có thể quan sát được vị trí của khối vật thay đổi theo thời gian. Tôi có thể điều chỉnh hệ số giảm chấn, độ cứng của lò xo hoặc khối lượng của khối vật, và từ đó thấy được biên độ cũng như thời gian của các dao động thay đổi như thế nào. Điều làm cho thiết bị này trở thành máy tính analog là vì nó không làm việc với các số 0 và 1; thay vào đó, nó sử dụng điện áp dao động lên xuống – giống như một khối vật trên lò xo. Mạch điện của nó hoạt động như một mô phỏng analog cho bài toán vật lý, chỉ khác là quá trình này diễn ra rất nhanh. Hơn nữa, nếu tôi thay đổi các kết nối điện, tôi có thể “lập trình” máy tính này để giải các phương trình vi phân khác, ví dụ như hệ thống Lorenz – một mô hình cơ bản của hiện tượng đối lưu trong khí quyển. Hệ thống Lorenz nổi tiếng vì là một trong những ví dụ đầu tiên được phát hiện về hiện tượng hỗn loạn, và ở đây bạn có thể thấy attractor của nó với hình dạng bướm đẹp mắt. Trên máy tính analog này, tôi có thể thay đổi các tham số và quan sát hiệu ứng của chúng theo thời gian thực.
Những ví dụ trên cho thấy một số ưu điểm của máy tính analog. Chúng là những thiết bị tính toán vô cùng mạnh mẽ, có thể thực hiện rất nhiều phép tính một cách nhanh chóng và tiêu thụ năng lượng rất thấp. Ví dụ, trên máy tính số, nếu bạn muốn cộng hai số 8‑bit, cần khoảng 50 bóng bán dẫn; trong khi đó, trên máy tính analog, bạn có thể cộng hai dòng điện chỉ bằng cách nối hai dây với nhau. Để nhân hai số trên máy tính số, bạn có thể cần khoảng 1.000 bóng bán dẫn chuyển đổi các số 0 và 1; còn với máy tính analog, bạn có thể thực hiện phép nhân bằng cách cho một dòng điện chạy qua một điện trở, sao cho điện áp trên điện trở bằng I nhân với R—tức là thực hiện phép nhân trực tiếp qua cơ chế vật lý của mạch.
Tuy nhiên, máy tính analog cũng có những hạn chế riêng. Chúng không phải là thiết bị tính toán đa năng – bạn sẽ không thể chạy Microsoft Word trên máy tính analog. Hơn nữa, vì đầu vào và đầu ra là liên tục, nên không thể nhập các giá trị “chính xác” tuyệt đối; do đó, nếu bạn lặp lại cùng một phép tính, kết quả luôn có chút sai lệch. Ngoài ra, khi sản xuất các thành phần analog như điện trở hay tụ điện, luôn có sự biến thiên nhỏ trong giá trị chính xác (thường khoảng 1%). Như vậy, mặc dù máy tính analog mạnh mẽ, nhanh và tiết kiệm năng lượng, nhưng chúng lại chỉ giải quyết được một mục đích duy nhất, không cho ra kết quả lặp lại chính xác và vốn dĩ có độ chính xác hạn chế. Đây chính là những lý do chính khiến máy tính analog bị mai một khi máy tính số trở nên khả thi.
Giờ đây, có dấu hiệu cho thấy máy tính analog có thể tái xuất hiện. Mọi chuyện bắt đầu với trí tuệ nhân tạo (AI). Một cỗ máy đã được “lập trình” để có khả năng nhận diện và di chuyển vật thể. AI không phải là khái niệm mới – thuật ngữ “AI” đã được đặt ra từ năm 1956. Năm 1958, nhà tâm lý học của Đại học Cornell, Frank Rosenblatt, đã xây dựng perceptron, một thiết bị được thiết kế để mô phỏng cách các nơ‑ron trong não hoạt động.
Đây là mô hình cơ bản về cách hoạt động của các nơ‑ron trong não. Một nơ‑ron riêng lẻ có thể “bắn” hoặc không bắn, do đó mức kích hoạt của nó được biểu diễn bằng số một hoặc số không. Đầu vào của một nơ‑ron là đầu ra từ nhiều nơ‑ron khác, nhưng sức mạnh của các kết nối này khác nhau; mỗi kết nối có một trọng số riêng biệt. Một số kết nối có tác dụng kích thích (trọng số dương), trong khi một số khác có tác dụng ức chế (trọng số âm). Để xác định xem một nơ‑ron có bắn hay không, ta nhân mức kích hoạt của từng nơ‑ron đầu vào với trọng số tương ứng rồi cộng tất cả lại. Nếu tổng đó vượt quá một giá trị ngưỡng gọi là “bias”, nơ‑ron sẽ bắn; nếu không, nó sẽ không bắn.
Perceptron của Rosenblatt sử dụng 400 tế bào quang sắp xếp theo dạng lưới vuông để “chụp” hình ảnh 20×20 pixel. Mỗi pixel có thể được xem như một nơ‑ron đầu vào, với mức kích hoạt tương ứng với độ sáng của pixel đó. Mặc dù về lý thuyết mức kích hoạt nên chỉ nhận giá trị 0 hoặc 1, nhưng trong thực tế nó có thể nhận bất kỳ giá trị nào giữa 0 và 1. Tất cả các nơ‑ron đầu vào này được nối với một nơ‑ron đầu ra thông qua các trọng số có thể điều chỉnh. Để xác định nơ‑ron đầu ra có bắn hay không, ta nhân mức kích hoạt của mỗi nơ‑ron với trọng số của nó rồi cộng lại—điều này tương đương với phép tính tích vô hướng. Nếu kết quả vượt quá giá trị bias, nơ‑ron bắn; nếu không, nó không bắn.
Mục tiêu của perceptron là phân biệt một cách đáng tin cậy giữa hai hình ảnh, chẳng hạn như hình chữ nhật và hình tròn. Ví dụ, nơ‑ron đầu ra sẽ luôn bắn khi được trình bày hình tròn nhưng sẽ không bắn khi được trình bày hình chữ nhật. Để đạt được điều này, perceptron cần được huấn luyện bằng cách cho nó thấy một loạt các hình tròn và hình chữ nhật, và sau đó điều chỉnh các trọng số cho phù hợp. Ta có thể trực quan hóa các trọng số như một hình ảnh, vì mỗi pixel đầu vào có một trọng số duy nhất. Ban đầu, Rosenblatt đặt tất cả các trọng số bằng 0. Nếu đầu ra của perceptron đúng (ví dụ, khi hình chữ nhật được hiển thị và nơ‑ron đầu ra không bắn), thì không có thay đổi nào được thực hiện; nhưng nếu đầu ra sai, các trọng số sẽ được điều chỉnh. Thuật toán cập nhật trọng số rất đơn giản: nếu nơ‑ron đầu ra không bắn khi nên bắn (do được trình bày hình tròn), bạn chỉ cần cộng mức kích hoạt đầu vào vào trọng số; nếu nó bắn khi không nên bắn (do được trình bày hình chữ nhật), bạn trừ mức kích hoạt đầu vào khỏi trọng số. Quá trình này được lặp lại cho đến khi perceptron nhận diện đúng tất cả các hình ảnh huấn luyện. Người ta đã chứng minh rằng thuật toán này luôn hội tụ, miễn là hai nhóm hình ảnh có thể được phân chia thành các nhóm riêng biệt.
Perceptron có khả năng phân biệt giữa các hình dạng khác nhau—như hình chữ nhật và hình tam giác, hoặc giữa các chữ cái khác nhau. Theo Rosenblatt, nó thậm chí có thể phân biệt được giữa mèo và chó. Ông cho rằng cỗ máy này có khả năng “tư duy nguyên bản” và truyền thông đã đón nhận nhiệt tình. The New York Times đã gọi perceptron là “phôi của một máy tính điện tử mà Hải quân dự đoán sẽ có khả năng đi, nói, nhìn, viết, tự tái sinh và nhận thức được sự tồn tại của chính nó.” Sau khi được huấn luyện với rất nhiều ví dụ, perceptron được đưa ra những khuôn mặt chưa từng thấy và có thể phân biệt thành công giữa nam và nữ – nói cách khác, nó đã học được. Tuy nhiên, về thực tế, perceptron có khả năng rất hạn chế; nó thậm chí không thể phân biệt chính xác giữa mèo và chó. Những nhận xét này cùng với các phê bình khác đã được nêu ra trong một cuốn sách của các nhà khoa học MIT, Minsky và Papert, vào năm 1969, và điều đó dẫn đến một giai đoạn “mùa đông AI” đối với mạng nơ‑ron nhân tạo và AI nói chung. Đây được biết đến như là mùa đông AI đầu tiên. Rosenblatt cũng không sống sót qua mùa đông đó; ông đã chết đuối khi đi thuyền trên vịnh Chesapeake vào sinh nhật thứ 43 của mình.
Sau đó, NAV Lab đã phát triển một chiếc xe tải có khả năng vận hành trên đường, được sửa đổi để các nhà nghiên cứu hoặc máy tính có thể điều khiển xe theo nhu cầu. Vào những năm 1980, đã có một sự bùng nổ AI khi các nhà nghiên cứu tại Carnegie Mellon tạo ra một trong những chiếc xe tự lái đầu tiên. Chiếc xe này được điều khiển bởi một mạng nơ‑ron nhân tạo có tên ALVINN. Nó tương tự như perceptron, ngoại trừ có thêm một lớp nơ‑ron ẩn giữa đầu vào và đầu ra. ALVINN nhận đầu vào là các hình ảnh của con đường (ban đầu có kích thước 30×32 pixel, sau này được hiển thị dưới dạng 60×64 pixel). Mỗi nơ‑ron đầu vào được kết nối với một lớp ẩn gồm 4 nơ‑ron qua các trọng số có thể điều chỉnh, và các nơ‑ron trong lớp ẩn này lại được nối với 32 nơ‑ron đầu ra. Để chuyển từ lớp này sang lớp khác, ta thực hiện phép nhân ma trận (nhân các mức kích hoạt đầu vào với các trọng số). Nơ‑ron đầu ra có mức kích hoạt cao nhất quyết định góc lái của xe. Để huấn luyện mạng nơ‑ron, một người lái xe đã điều khiển xe và cung cấp góc lái đúng cho mỗi hình ảnh đầu vào, sau đó tất cả các trọng số trong mạng được điều chỉnh thông qua quá trình huấn luyện (được gọi là lan truyền ngược). Khi huấn luyện tiến triển, máy tính dần “học” để nhận diện được các mẫu nhất định, ví dụ như dấu vết trên đường, và cuối cùng góc lái đầu ra hội tụ về giá trị mà người lái đưa ra. Xe được điều khiển với tốc độ tối đa khoảng một đến hai kilômét mỗi giờ, bị giới hạn bởi tốc độ mà máy tính có thể thực hiện phép nhân ma trận.
Dù có những tiến bộ đáng kể, các mạng nơ‑ron nhân tạo vẫn gặp khó khăn với những nhiệm vụ tưởng chừng đơn giản như phân biệt giữa mèo và chó, và không ai biết được liệu điểm yếu đến từ phần cứng hay phần mềm. Liệu chúng ta có một mô hình trí tuệ tốt nhưng chỉ cần thêm sức mạnh tính toán, hay chúng ta đang áp dụng cách tiếp cận sai về việc xây dựng hệ thống trí tuệ? Do đó, AI đã rơi vào một giai đoạn “ngủ đông” khác vào những năm 1990. Đến giữa những năm 2000, hầu hết các nhà nghiên cứu AI tập trung cải thiện thuật toán. Tuy nhiên, một nhà nghiên cứu mang tên Fei‑Fei Li cho rằng có lẽ vấn đề nằm ở chỗ dữ liệu huấn luyện còn thiếu. Bà quyết định lập bản đồ toàn bộ “thế giới của các đối tượng”. Từ năm 2006 đến 2009, bà đã tạo ra ImageNet – một cơ sở dữ liệu chứa 1,2 triệu hình ảnh được gán nhãn bởi con người, vào thời điểm đó là tập dữ liệu có nhãn lớn nhất từng được xây dựng. Và từ năm 2010 đến 2017, ImageNet tổ chức một cuộc thi hàng năm mang tên ImageNet Large Scale Visual Recognition Challenge, nơi các chương trình phần mềm cạnh tranh để phát hiện và phân loại hình ảnh. Hình ảnh được phân loại vào 1.000 danh mục khác nhau, bao gồm 90 giống chó. Một mạng nơ‑ron tham gia cuộc thi này có lớp đầu ra gồm 1.000 nơ‑ron, mỗi nơ‑ron ứng với một danh mục có thể xuất hiện trong hình ảnh. Ví dụ, nếu hình ảnh chứa một chú chó German Shepherd, thì nơ‑ron tương ứng với danh mục đó nên có mức kích hoạt cao nhất. Không có gì ngạc nhiên khi đây được coi là một thách thức lớn.
Hình ảnh mô tả mạng nơ-ron thần kinh của bộ não
Hình ảnh mô tả mạng nơ-ron thần kinh của bộ não
Một cách để đánh giá hiệu suất của AI là xem tần suất mà 5 nơ‑ron có mức kích hoạt cao nhất không bao gồm danh mục đúng—điều này được gọi là tỷ lệ lỗi top‑5. Năm 2010, hệ thống có hiệu suất tốt nhất đạt tỷ lệ lỗi top‑5 là 28,2%, tức là gần một phần ba thời gian, câu trả lời đúng không nằm trong 5 dự đoán hàng đầu. Năm 2011, tỷ lệ lỗi giảm xuống còn 25,8%, một cải tiến đáng kể. Nhưng năm sau đó, một mạng nơ‑ron nhân tạo từ Đại học Toronto, có tên AlexNet, đã vượt qua đối thủ với tỷ lệ lỗi top‑5 chỉ còn 16,4%. Điều tạo nên sự khác biệt của AlexNet là kích thước và độ sâu của nó; mạng này có 8 lớp với tổng số 500.000 nơ‑ron. Để huấn luyện AlexNet, 60 triệu trọng số và hệ số dịch chuyển phải được điều chỉnh cẩn thận dựa trên cơ sở dữ liệu huấn luyện, và việc xử lý một hình ảnh đòi hỏi khoảng 700 triệu phép tính riêng lẻ do các phép nhân ma trận lớn. Quá trình huấn luyện rất đòi hỏi về tính toán, vì vậy nhóm nghiên cứu đã tiên phong sử dụng GPU (đơn vị xử lý đồ họa), vốn được thiết kế cho các phép tính song song nhanh chóng. Bài báo của AlexNet đã được trích dẫn hơn 100.000 lần và nhấn mạnh rằng quy mô của mạng là chìa khóa thành công. Mặc dù việc huấn luyện và vận hành mạng đòi hỏi rất nhiều tính toán, nhưng sự cải thiện về hiệu suất là rất xứng đáng. Theo đó, tỷ lệ lỗi top‑5 trong cuộc thi ImageNet đã giảm xuống còn 3,6% vào năm 2015, tốt hơn cả hiệu suất của con người. Mạng đạt được kết quả này có tới 100 lớp nơ‑ron. Rõ ràng, tương lai sẽ đòi hỏi những mạng nơ‑ron ngày càng lớn hơn.
img_1
Tuy nhiên, xu hướng mở rộng quy mô này đặt ra một số vấn đề. Một vấn đề là tiêu thụ năng lượng; việc huấn luyện một mạng nơ‑ron có thể tiêu thụ điện năng tương đương với mức sử dụng hàng năm của ba hộ gia đình. Một vấn đề khác là “nút thắt Von Neumann”. Hầu hết các máy tính số hiện đại lưu trữ dữ liệu trong bộ nhớ và truy xuất khi cần qua một bus; trong quá trình thực hiện các phép nhân ma trận lớn cho các mạng nơ‑ron sâu, phần lớn thời gian và năng lượng được tiêu hao cho việc truy xuất các giá trị trọng số thay vì thực hiện phép tính. Cuối cùng, có các giới hạn của Định luật Moore. Trong nhiều thập kỷ, số lượng bóng bán dẫn trên mỗi chip đã tăng gấp đôi khoảng mỗi hai năm, nhưng hiện nay kích thước của bóng bán dẫn đang tiến gần đến kích thước của một nguyên tử, đặt ra những thách thức vật lý cơ bản cho việc thu nhỏ thêm.
Tất cả những yếu tố này tạo nên “cơn bão hoàn hảo” cho máy tính analog. Máy tính số đang chạm tới giới hạn của chúng, trong khi các mạng nơ‑ron—với tác vụ cốt lõi là phép nhân ma trận—không đòi hỏi độ chính xác tuyệt đối như máy tính số. Cho dù một mạng nơ‑ron tự tin 96% hay 98% rằng hình ảnh chứa một con gà, điều đó không ảnh hưởng đến kết quả; sự sai lệch nhẹ trong thành phần hay điều kiện được chấp nhận.
Một startup về tính toán analog tại Texas có tên Mythic AI. Tại đây, họ đang tạo ra các chip analog để chạy các mạng nơ‑ron và đã trình diễn một số thuật toán AI. Một ứng dụng là trong thực tế tăng cường hoặc ảo: nếu bạn và người bạn ở những nơi khác nhau, hệ thống có thể dựng hình mỗi người trong thế giới ảo bằng cách nhanh chóng nắm bắt tư thế của bạn và sau đó dựng lại hình ảnh đó theo thời gian thực. Trong một ứng dụng liên quan đến metaverse, hệ thống thực hiện ước lượng độ sâu từ một webcam đơn lẻ bằng cách tạo ra một “bản đồ nhiệt” trong đó vùng sáng biểu thị khoảng cách gần, và vùng tối biểu thị khoảng cách xa.
Mặc dù nhiều thuật toán AI có thể chạy trên máy tính số, nhưng ở đây phép nhân ma trận được thực hiện trong miền analog. Để làm được điều đó, Mythic AI đã tái sử dụng các cell lưu trữ flash số. Thông thường, các cell này được dùng làm bộ nhớ để lưu trữ số 0 hoặc số 1: khi áp dụng một điện áp dương lớn vào cổng điều khiển, các electron xuyên qua một lớp cách điện và bị “bẫy” trên cổng nổi; khi điện áp được gỡ bỏ, các electron này có thể ở lại trên cổng nổi trong hàng thập kỷ, ngăn cho cell dẫn điện. Giá trị được lưu trữ có thể được đọc ra bằng cách áp dụng một điện áp nhỏ; nếu trên cổng nổi có electron, không có dòng điện chảy (đại diện cho số 0), còn nếu không có electron, dòng điện sẽ chảy (đại diện cho số 1). Ý tưởng của Mythic AI là sử dụng các cell này không chỉ như công tắc bật/tắt mà còn như điện trở biến thiên. Họ thực hiện điều này bằng cách đặt một số lượng electron nhất định lên mỗi cổng nổi, thay vì toàn bộ hoặc không có gì. Số electron càng nhiều, điện trở của kênh càng cao. Khi sau đó áp dụng một điện áp nhỏ, dòng điện chảy qua sẽ bằng V chia cho R; theo cách khác, có thể hiểu là điện áp nhân với độ dẫn (với độ dẫn là nghịch đảo của điện trở). Như vậy, một cell flash có thể được sử dụng để nhân hai giá trị với nhau (điện áp nhân với độ dẫn). Để vận hành một mạng nơ‑ron nhân tạo, trước tiên họ “ghi” tất cả các trọng số vào các cell flash (trọng số của mỗi cell được thể hiện qua độ dẫn của nó), sau đó đưa các mức kích hoạt vào dưới dạng điện áp. Dòng điện kết quả, tương đương với tích của điện áp và độ dẫn (hay kích hoạt nhân với trọng số), được cộng dồn qua cách nối mạch, hoàn thành phép nhân ma trận.
Sản phẩm đầu tiên của họ có thể thực hiện 25 nghìn tỷ phép tính mỗi giây, chỉ tiêu thụ khoảng 3 watt điện năng. So với đó, các hệ thống số mới có thể thực hiện từ 25 đến 100 nghìn tỷ phép tính mỗi giây, nhưng chúng là những hệ thống lớn có giá hàng nghìn đô la và tiêu thụ từ 50 đến 100 watt. Dù không thể so sánh trực tiếp (vì phần cứng số vẫn cần thiết để huấn luyện các thuật toán lớn), nhưng nếu bạn triển khai các tải công việc AI, bạn có thể sử dụng giải pháp analog này. Bạn có thể tưởng tượng rằng các chip này được ứng dụng trong camera an ninh, hệ thống tự hành hoặc thiết bị kiểm tra trong sản xuất. Ví dụ, mỗi khi sản xuất một chip của Frito‑Lay, một camera kiểm tra để loại bỏ những chip lỗi, nhờ đó AI có thể phân biệt được chip tốt và chip xấu.
Một số người thậm chí đề xuất sử dụng mạch analog trong loa thông minh tại gia để chỉ “nghe” từ kích hoạt (ví dụ như “Alexa” hay “Siri”), nhờ đó tiêu thụ năng lượng thấp hơn và có thể nhanh chóng kích hoạt mạch số của thiết bị, mặc dù vẫn phải đối mặt với các thách thức của công nghệ analog. Trong một số mạng phổ biến, có thể có 50 chuỗi phép nhân ma trận được thực hiện hoàn toàn trong miền analog; nhưng nếu làm vậy, đến khi ra đầu ra tín hiệu sẽ bị biến dạng quá mức và không có kết quả hữu ích. Do đó, cần chuyển đổi tín hiệu từ miền analog sang số để xử lý, sau đó chuyển lại sang analog để bảo toàn tín hiệu.
Khi Rosenblatt ban đầu thiết lập perceptron, ông đã sử dụng một máy tính IBM số, nhưng vì tốc độ quá chậm nên đã xây dựng một máy tính analog tùy chỉnh với các điện trở biến thiên và động cơ nhỏ để điều khiển chúng. Cuối cùng, ý tưởng về mạng nơ‑ron của ông đã được chứng minh là đúng, và có lẽ niềm tin của ông vào công nghệ analog cũng là đúng.
Tôi không thể khẳng định chắc chắn rằng máy tính analog sẽ trở nên phổ biến như máy tính số trong thế kỷ trước, nhưng chúng dường như phù hợp hơn với nhiều tác vụ mà chúng ta cần máy tính thực hiện ngày nay. Thật trớ trêu khi trong suốt 50 năm qua, hầu hết mọi thứ từ âm nhạc đến hình ảnh và video đều được xử lý theo kiểu số, nhưng có lẽ sau 100 năm nữa, chúng ta sẽ nhìn lại công nghệ số không phải như đỉnh cao của xử lý thông tin mà chỉ là bước khởi đầu. Bộ não của chúng ta hoạt động theo kiểu số (một nơ‑ron hoặc bắn hoặc không bắn), nhưng cũng theo kiểu analog khi quá trình tư duy diễn ra liên tục và đồng thời. Có lẽ để đạt được trí tuệ nhân tạo thực sự – những cỗ máy có thể “suy nghĩ” như con người – chúng ta cần khai thác sức mạnh của máy tính analog.
Nguồn: Infinity News