Hiển thị các bài đăng có nhãn tính toán lượng tử. Hiển thị tất cả bài đăng
Hiển thị các bài đăng có nhãn tính toán lượng tử. Hiển thị tất cả bài đăng

Thứ Tư, 4 tháng 10, 2017

Hiện tại và lương lai của Tính toán Lượng tử đối với AI



Hiện tại và tương lai của Tính toán Lượng tử đối với Trí tuệ nhân tạo

Tính toán lượng tử vẫn còn trong giai đoạn đầu tiên, và chưa có kiến trúc phổ quát nào cho các máy tính lượng tử tồn tại tại thời điểm này. Tuy nhiên, các prototype của nó đã có và cho thấy những kết quả đầy hứa hẹn trong các nhiệm vụ như mã hóa, logistic, mô hình hóa và tối ưu hóa. Đối với các nhà nghiên cứu AI, tối ưu hóa và lấy mẫu đặc biệt quan trọng, vì nó cho phép đào tạo các mô hình Machine Learning nhanh hơn nhiều với độ chính xác cao hơn.



Hiện tại, công ty D-Wave của Canada là công ty dẫn đầu trong mảng tính toán lượng tử. Cỗ máy mới nhất của họ D-Wave 2000Q chứa 2000 qubit hoạt động ở nhiệt độ 0.015K (cao hơn một chút so với độ không tuyệt đối). Họ không hướng tới việc tạo ra một Máy tính Lượng tử Phổ biến trong tương lai gần, mà là một thứ mà các thiết bị của họ có thể làm được khá tốt – Quantum Annealing (Nhiệt luyện Lượng tử).

D-Wave 2000Q hoạt động theo thang đo mili giây để tải dữ liệu đầu vào, tìm kiếm giải pháp và đọc nó ra. Bạn có thể dễ dàng lặp lại toàn bộ quá trình nhiều lần để thu được các giải pháp khác nhau. Và nó hoạt động nhanh gấp hàng nghìn lần so với việc sử dụng GPU hiện đại cho việc Simulated Annealing (mô phỏng Nhiệt Luyện).

Quantum Annealing khá phù hợp với việc đào tạo và lấy mẫu từ các mô hình dựa trên năng lượng như Các cỗ mãy Boltmann. Đáng chú ý có Unsupervised Learning (Học không giám sát) vốn là một thách thức lớn với các nhà nghiên cứu AI, và rất có khả năng tính toán lượng tử sẽ là chìa khóa. Thật khó xử lý ngay cả với các số thập phân half-precision (kiểu số chấm động 16 bit), vì thế tại thời điểm này hầu hết các việc đều xử lý bằng các biến nhị phân.

D-Wave đang có kế hoạch tạo ra các máy tính lượng tử/cổ điển hỗn hợp dùng trong công nghiệp cho Machine Learning vào năm 2019. Ngoài ra, 1QBit cũng đang phát triển phần mềm chuyên dụng cho các cỗ máy của họ.

Quantum Annealing (QA) hoạt động như thế nào?

Nói ngắn gọn, QA là một phương thức giảm năng lượng có kiểm soát của hệ thống lượng tử bằng cách dịch chuyển các qubit từ trạng thái xếp chồng (superposition) sang trạng thái cổ điển có cấu hình năng lượng thấp. Nhiệm vụ này có thể mô tả như việc mã hóa hàm năng lượng liên kết các qubit và thông qua nhiệt luyện (Annealing), chúng sẽ di chuyển theo hướng một số cấu hình tối ưu.

Nếu quá trình chuyển đổi được thực hiện đủ chậm, thuật toán sẽ tìm thấy một trạng thái cơ bản (ví dụ: một giải pháp tối ưu chẳng hạn) với xác suất cao:



Quantum Coupling (Ghép đôi Lượng tử) cho phép các qubit khám phá tất cả các giải pháp tiềm năng đồng thời, và cùng lúc đó Quantum Tunneling (Xuyên hầm Lượng tử) cho phép chúng di chuyển xuyên qua các rào cản năng lượng cao hướng tới các trạng thái “tốt hơn”. Hai hiệu ứng này cho phép các máy tính lượng tử giải quyết nhiều bài toán tối ưu hóa khó nhanh hơn nhiều so với các máy tính cổ điển. Đoạn video này của D-Wave sẽ giải thích QA chi tiết hơn:


IBM Q

Một tay chơi lớn khác là IBM Q. Big Blue đang làm việc với tính toán lượng tử dựa trên mô hình Gate và các cỗ máy của họ là Các Máy tính Lượng tử Phổ biến. Chúng sẽ có một tập các ứng dụng rộng lớn hơn nhiều, nhưng đồng thời cũng khó kiểm soát hơn nhiều. Các bộ vi xử lý tối tân nhất ở IBM hiện có 16 và 17 qubit, và thực sự rất khó mở rộng hơn nữa.

Kiến trúc chung phổ biến hơn của các bộ vi xử lý của IBM cho phép chúng chạy được bất kỳ thuật toán lượng tử nào. Ví dụ, thuật toán Grover có thể tìm thấy đầu vào cho một hàm kín (như chiếc hộp đen) nếu hàm đó có đầu ra xác định chỉ trong các ước lượng O(√N) của hàm. Chưa cần nói đến thuật toán Shor tìm thừa số nguyên (thuật toán này gây ra rất nhiều lo ngại về tính bảo mật của nhiều thuật toán mã hóa cổ điển).

Dù sao đi nữa, phiên bản 16 qubit đang được cung cấp công khai thông qua chương trình IBM Q Experience. Danh tiếng các dịch vụ nhận dạng của IBM Watson trong cộng đồng Trí tuệ nhân tạo hiện tại khá tệ. Có lẽ IBM Q có khả năng thay đổi tình hình.

Một điều nữa, tại chỗ giao thoa giữa thế giới Lượng tử và Trí tuệ nhân tạo – Mạng neuron lượng tử (Quantum Neural Network) là một dạng sửa đổi ngẫu nhiên vốn có của mạng neuron nhân tạo cổ điển. Đây là một hướng nghiên cứu thú vị, nhưng chưa có gì có ý nghĩa được hoàn thành. Mới chỉ có nghiên cứu lý thuyết và các mô phỏng bằng các bài toán trò chơi.

Nhìn chung, tính toán lượng tử có vẻ là một hướng đi đầy hứa hẹn cho các mô hình ngẫu nhiên trong Machine Learning. Với những tiến bộ gần đây từ D-Wave và IBM, chúng ta có thể hy vọng các ứng dụng thực tế của các máy tính lượng tử trong lĩnh vực Trí tuệ nhân tạo sẽ xuất hiện vào năm 2020.

Egor Dezhic
Dịch từ Medium

Thứ Hai, 28 tháng 8, 2017

Quantum computing: Tính toán lượng tử làm việc như thế nào? Tại sao nó quan trọng?



Tính toán lượng tử làm việc như thế nào
và tại sao nó quan trọng?

            Máy tính đã làm thay đổi hoàn toàn xã hội của chúng ta. Ngay sau khi Chiến Tranh Thế Giới II kết thúc, các nhà khoa học đã sử dụng máy tính để giải quyết tất cả các loại vấn đề. Quá trình này diễn ra nhanh chóng tới mức không tưởng. Vào những năm 1970, máy tính dùng ở nhà ra đời.
            Tuy nhiên, bất chấp quá trình đó, vẫn còn những bài toán thực sự rất khó khăn. Dù các máy tính có giỏi đến đâu đi chăng nữa, những thách thức khi nhân các số lớn hoặc tối ưu hóa đường đi nhanh nhất vẫn còn đầy gian nan.
            Nhưng các bit không phải là cách duy nhất để tính toán. Cơ học lượng tử - những qui luật thống trị thế giới các hạt nguyên tử và phân tử - cũng có thể được sử dụng để tính toán. Và các tính toán đó được thực hiện theo một cách thức hoàn toàn khác biệt.
            Hy vọng một ngày nào đó các “máy tính lượng tử” (quantum computer) này có khả năng giải quyết những bài toán khó. Nhưng các máy tính lượng tử thực sự là gì, và chúng làm việc như thế nào?
            Nhìn chi tiết vào bên dưới lớp vỏ của một chiếc máy tính lượng tử để khám phá lý do tại sao các nhà nghiên cứu lại đặt nhiều kỳ vọng rằng những máy tính này sẽ rất mạnh – không phải kiểu mạnh như bộ vi xử lý thế hệ mới của Intel. Không, một chiếc máy tính lượng tử thực sự có khả năng thay đổi thế giới. Các công ty như D-Wave, IBM, và Google, cùng với các phòng nghiên cứu trên khắp thế giới, đang cùng chạy đua nhằm tạo ra những chiếc máy tính lượng tử thực sự đầu tiên.

            Điều gì khiến chiếc máy tính lượng tử trở nên khác biệt?
            Để minh họa sự khác nhau giữa tính toán lượng tử và tính toán truyền thống, Daniel Lidar – giáo sư chuyên ngành hóa học lý thuyết cơ bản của Đại Học Nam California – đã sử dụng mô hình tương tự sau (mà tôi đã sửa lại).
           
Hãy tưởng tượng rằng mình đang tìm một quả bóng màu đen trong một cái hộp đầy bóng màu trắng, và bạn không thể nhìn vào bên trong hộp. Để tìm quả bóng đen, bạn mò mẫm bắt được một quả bóng, kiểm tra màu sắc, nếu nó không phải màu đen thì ném đi. Bạn có thể vớ được quả bóng màu đen ngay lần thử đầu tiên, hoặc có thể ở tận lần cuối cùng.
            Kết quả khả thi nhất: bạn phá tan cái hộp trong thất vọng.
           
Nào, giờ hãy chuyển sang thuật toán lượng tử. Bàn tay lượng tử của bạn đưa vào cái hộp, nhưng không tóm lấy quả bóng nào. Thay vào đó, những bàn tay này nắm giữ xác suất tóm được một quả bóng – bao gồm cả quả bóng đen. Nếu cái hộp có 10 quả bóng, bàn tay lượng tử sẽ giữ 10 xác suất như nhau.
            Tiếp theo, bạn chạy một thuật toán lượng tử nhằm làm tăng khả năng quả bóng tóm được là màu đen. Sau đó, bạn kiểm tra bàn tay: Thật thất vọng, quả bóng lại màu trắng. Bạn quay trở lại trong hộp. Nhưng lần này, các xác suất không còn như nhau: xác suất tìm thấy quả bóng màu đen giờ đã cao hơn các quả bóng khác.
            Nó cũng giống như việc ném đi quả bóng màu trắng mà bạn tìm được lúc trước. Hành động này xảy ra đều đặn mỗi lần, vì thế khả năng tìm thấy quả bóng màu đen sẽ tăng lên rất nhanh. Chìa khóa cho cách các xác suất thay đổi nằm ở các trạng thái lượng tử - hay trong tính toán gọi là “qubit”  - được vận hành như thế nào.
           
            Các trạng thái chồng chất của lượng tử
            Chúng ta hãy cùng mổ xẻ câu chuyện cái hộp bóng ở trên để xem cách nó hoạt động ra sao.
            Bàn tay lượng tử đưa vào trong hộp và nắm giữ các xác suất. Trong tính toán truyền thống, thông tin được lưu trong các bit có giá trị xác định rõ ràng. Một bit chỉ có thể là 1 hoặc 0. Hơn nữa việc kiểm tra giá trị của một bit không làm thay đổi nó.
            Nhưng qubit không trực tiếp biểu diễn giá trị của bit; nó nắm giữ xác suất mà qubit là 1 hoặc 0. Điều này gọi là một “trạng thái chồng chất lượng tử - quantum superposition state”.
            Tuy nhiên khi chúng ta kiểm tra giá trị của qubit, chúng ta sẽ không nhận được xác suất này. Phép đo sẽ phát hiện ra đó là 1 hay 0 – lựa chọn xác định ngẫu nhiên từ các xác suất chồng chất. Làm phép đo sẽ đặt giá trị cho qubit. Nếu chúng ta đo qubit và nhận được giá trị 1, kiểm tra lại cũng sẽ vẫn cho kết quả là 1.
            Khi chúng ta cho tay vào trong hộp, chúng ta thực ra đang lấy ra một tập các qubit – đủ để đại diện cho toàn bộ số bóng. Các qubit được đặt vào một trạng thái chồng chất, nắm giữ các xác suất tìm thấy mỗi một quả bóng. Vì việc tìm kiếm này hoàn toàn ngẫu nhiên, mỗi quả bóng được biểu diễn bằng một xác suất tương đương nhau.
            Giờ chúng ta chạy một giải thuật làm tăng xác suất tìm thấy quả bóng đen.
            Bạn có thể hỏi: làm sao có thể tăng xác suất khi nó không hề bị lộ ra? Câu trả lời nằm ở cách một qubit nắm giữ các xác suất. Một xác suất được biểu diễn bởi một số từ 0 đến 1. Nhưng qubit nắm giữ các biên độ xác suất, nên nó có thể âm hoặc dương.
            Lidar nói: “Đó chính là sự khác nhau thực sự. Không có định nghĩa về xác suất âm [trong vật lý cổ điển], nó vô nghĩa… Nhưng trong lượng tử, chúng ta có thể có biên độ [xác suất] âm hủy được các biên độ [xác suất] dương. Chính nhờ thông qua các hoạt động nhiễu loạn của chúng mà chúng ta có thể bắt đầu hiểu được tính toán lượng tử có lợi thế ra sao.”
            Hai điểm chính bị che dấu đi trong lời trích dẫn trên. Khi biên độ âm gặp biên độ dương, kết quả tổng hợp sẽ gần 0 hơn, do đó xác suất của đầu ra cụ thể này sẽ giảm xuống; nếu hai biên độ dương gặp nhau, khả năng là đầu ra sẽ tăng lên. Như vậy, chúng ta có thể thao tác với xác suất của một đầu ra cụ thể mà không cần đo qubit. (Nhớ rằng, thực hiện một phép đo sẽ phá hủy trạng thái chồng chất.)
            Quan trọng hơn, qubit có thể được tạo ra để tự thực hiện điều này. Khi chúng ta nói một biên độ dương gặp một biên độ âm, các biên độ này có thể đến từ cùng một qubit. Và nếu điều đó không khiến bạn bận tâm hay kêu ca chút xíu thì chả sao cả.
            Kết quả là, máy tính lượng tử có thể nhanh chóng giảm xác suất đạt được kết quả không chính xác và tăng vận may nhận được kết quả đúng. Đây chính là mánh khôn lanh mà một máy tính lượng tử sử dụng để gia tăng xác suất tìm thấy quả bóng đúng.

            Qui trình “dễ lỗi”
            Để thực hiện tính toán, trạng thái chồng chất của nhiều qubit bị sửa lại. Giữa các sửa đổi định trước, môi trường cũng thay đổi trạng thái chồng chất. Nhiễu này là kẻ thù của tính toán lượng tử, phá hủy các trạng thái chồng chất gần như nhanh bằng lúc chúng ta tạo ra chúng.
            Kết quả là qubit không đáng tin và dễ sinh lỗi. Và những lỗi này phải được phát hiện và sửa chữa.
            Điều đó không phải là quan trọng. Lidar nói: “Chúng ta cần sử dụng một cấp độ dự phòng cao để đảm bảo tính toán lượng tử có thể vận hành đúng. Nếu vậy thì, những cái này khó mà hiểu được nếu mã hóa phải không? Phải, đây là vấn đề hoàn toàn nghiêm túc, nó có thể là hệ số của 1000 hay 1000000.”
            Nói cách khác, mỗi bit thông tin được mã hóa thành một tập qubit nhỏ thay vì một qubit đơn lẻ.

            Xây dựng một máy tính lượng tử như thế nào?
            Có vài hướng căn bản để xây dựng một máy tính lượng tử. Hướng phổ biến nhất giống như cách chúng ta xây dựng các máy tính ngày nay, gọi là mô hình mạch điện toán lượng tử.
            Mỗi chương trình chia nhỏ thành một chuỗi các phép toán logic cụ thể, phần lớn sửa đổi các biên độ xác suất của một qubit, phụ thuộc vào biên độ xác suất của qubit thứ hai. Máy tính lượng tử dùng bảng mạch dựa trên một tập qubit khởi đầu và thực hiện mỗi phép toán trong chương trình một cách tuần tự. Sau khi chạy chương trình, các trạng thái qubit được đọc để thu được câu trả lời.
            IBM xây dựng các máy tính lượng tử theo dạng này, và bạn thậm chí còn có thể chơi với chúng. Cũng chẳng có gì chắc chắn liệu máy của IBM hay bất kỳ mô hình bảng mạch nào khác sẽ thành chuẩn mực hay không. Tăng số lượng qubit và kéo dài vòng đời tới một con số hữu ích là một nhiệm vụ không hề dễ dàng.
            Các công ty khác, như D-Wave và Google, cũng có ưu điểm riêng. Hướng đi của họ hoàn toàn khác với hướng của IBM và hầu hết các phòng nghiên cứu. Hướng phổ biến nhất để xây dựng một máy tính lượng tử là gắn chặt với các ý tưởng từ máy tính bình thường: các cổng logic thực hiện các phép toán tuần tự. Nhưng cũng có khả năng làm các máy tính này hoạt động mà không cần các phép toán logic trực tiếp.
           
Khác biệt giữa hai hướng đi rất sâu sắc. Trong máy tính sử dụng logic tuyến tính, nền tảng vật lý của máy tính tương đối đơn giản, nhưng chuỗi phép toán (hay chương trình) có thể rất dài và phức tạp. Khi bỏ qua logic tuyến tính, chương trình trở nên rất đơn giản – thực tế, hầu như không còn khái niệm lập trình – nhưng nền tảng vật lý lại trở nên rất thách thức, vì mọi qubit đều phải được kết nối với tất cả các qubit khác.
            D-Wave, một công ty khởi nghiệp từ Canada, đã đưa ra một dạng hạn chế của tính toán lượng tử cho vài tình huống, nhưng tại một thời điểm, các bộ vi xử lý của nó vẫn quá nhỏ để giải quyết các bài toán thực tế. Nền tảng bộ vi xử lý D-Wave không kết nối toàn bộ qubit với nhau. Kết quả là, nó chỉ có thể được sử dụng để giải quyết vài dạng bài toán nhất định.
            Với các bài toán phức tạp, từ hiệu năng máy tính, không thể biết được đó là máy tính lượng tử hay không. Trong trường hợp này, một máy tính truyền thống cực hiệu quả cũng có thể thay thế được. Google và Lidar (người không làm việc cho Google) đều đang sử dụng hướng đi tương tự D-Wave; tuy nhiên sự khác biệt là, họ nhắm vào việc điều khiển cách các qubit tác động lẫn nhau. Từ đó, họ hy vọng sẽ chứng minh được hướng đi đó sẽ dẫn tới một máy tính lượng tử.

            Bài toán tìm kiếm giải pháp lượng tử
            Hầu hết mọi người, nếu họ nhận thức được về máy tính lượng tử, sẽ gắn nó với bẻ khóa. Mã hóa thời hiện đại phụ thuộc thực tế rằng, cực kỳ khó tìm ra các hệ số chính của một số lượng các số vô cùng lớn.
            Một máy tính lượng tử thực sự sẽ gần như đặt dấu chấm hết cho điều này. Nhưng có các ứng dụng ít lỗi hơn.
            Ứng dụng thú vị nhất đang được phát triển là dùng máy tính lượng tử giải quyết các bài toán cơ lượng tử. Đây chính là ứng dụng có khả năng sẽ thay đổi thế giới.
            Cơ lượng tử mô tả các thuộc tính của các vật liệu, từ cotton trong vải vóc quần áo của bạn tới quang hợp của cây xanh. Thậm chí với cả các máy tính truyền thống mạnh nhất, chúng cũng hoàn toàn không thể tính toán được các thuộc tính của bất kỳ phân tử nào chứa nhiều hơn 30 nguyên tử. Thay vào đó, chúng ta lấy bản ngắn gọn mà chúng thường chẳng phải lúc nào cũng làm việc ngon lành.
            Máy tính lượng tử có thể cực kỳ chính xác, vì vậy chúng ta có thể tin tưởng hơn vào các tính toán kiểu này. Các nhà khoa học có thể tưởng tượng ra nhiều thuộc tính kỳ lạ hơn, chẳng hạn như các vật chất làm mát khi tiếp xúc với ánh sáng mặt trời, rồi sau đó sử dụng máy tính lượng tử xác định cấu trúc yêu cầu. Các thuộc tính kỳ dị thực sự bất khả thi có thể được loại bỏ nhanh hơn rất nhiều.

            Chúng ta đang gần đến mức nào?
            Các máy tính lượng tử xuất hiện dưới dạng lý thuyết được trình diễn đầu tiên vào những năm 1990. Các bí mật của bạn vì thế vẫn an toàn, và bạn sẽ không thấy máy tính lượng tử làm những điều bất chính với tài khoản ngân hàng của mình. Các nhà nghiên cứu như Lidar chưa kỳ vọng một máy tính lượng tử thực sự trong thực tế vào thời điểm cụ thể nào.
            Lidar nói rằng, với 100 qubit trong một thế giới không cần sửa lỗi lượng tử “Chúng ta có khả năng bắt đầu tiến hành mô phỏng các hệ thống lượng tử sử dụng các máy tính lượng tử trong phạm vi nhất định mà vẫn vượt trội những máy tính truyền thống mạnh nhất.”
            Nhưng các nhà nghiên cứu cũng có một mục tiêu, gọi là siêu lượng tử (quantum supremacy). Bỏ qua tên gọi rất hùng vĩ của nó, thực chất, siêu lượng tử chỉ cho thấy rằng, bất kỳ bài toán nào vượt quá khả năng của một máy tính truyền thống, thậm chí không có giá trị thực dụng, vẫn có thể giải quyết được trong một máy tính lượng tử.
            Mô phỏng các máy tính lượng tử có thể thực hiện được như tiên đoán là một bước quan trọng, nhưng không ai có thể chắc chắn tuyệt đối là nó có thể thành hiện thực. Chỉ khi chúng ta thực sự tin rằng các máy tính lượng tử của tương lai có thể cho ra các kết quả như hứa hẹn.
            Lidar hy vọng nhìn thấy một máy tính có khả năng thành siêu lượng tử trong 12 tháng tới. Cụ thể hơn, Google dường như đang nhắm tới xây dựng thành công siêu lượng tử càng nhanh càng tốt, còn IBM cũng đang theo đuổi một hướng đi thận trọng hơn.
            Sau cùng, một tương lai mù mờ nhưng thú vị đang chờ đợi chúng ta.

            Chris Lee

           


Chuẩn bị cho một khóa thiền Vipassana 10 ngày như thế nào?

Vì liên tục có nhiều bạn hỏi về các khóa thiền Vipassana mà mình thi thoảng tham gia, để không phải giải thích lại nhiều lần, mình viết các ...