Chuyển đến nội dung chính

Học máy Lượng tử: Khái niệm, Thuật toán và Trường hợp Sử dụng

Tìm hiểu học máy lượng tử là gì, cách tính toán lượng tử có thể tăng tốc tác vụ học máy, và tình hình thực tế của lĩnh vực này hiện nay.
Đã cập nhật 13 thg 7, 2026  · 11 phút đọc

Một số bài toán khiến máy tính cổ điển phải “toát mồ hôi”. Mô phỏng tương tác phân tử, tìm kiếm trong không gian tổ hợp khổng lồ, phân tích thừa số các số lớn: khối lượng công việc tăng nhanh hơn khả năng bắt kịp của phần cứng. Máy tính lượng tử tiếp cận những bài toán này theo một góc khác, và một nhóm nhỏ nhưng đang tăng của các nhà nghiên cứu tự hỏi liệu sự khác biệt đó có thể giúp ích cho học máy hay không.

Đó chính là câu hỏi mà học máy lượng tử (QML) đặt ra. Hướng dẫn này sẽ đi qua QML thực sự là gì, các ý tưởng lượng tử bạn cần để theo kịp, các thuật toán chính mà mọi người đang thử nghiệm, và tình hình của lĩnh vực này hiện tại ra sao, điều mà tôi nói ngay từ đầu là sớm hơn so với những tiêu đề báo chí gợi ý. Nếu bạn đã làm việc với ML cổ điển qua một thứ như lộ trình Nhà khoa học Học máy bằng Python của chúng tôi, bạn sẽ nhận ra cấu trúc quen thuộc hơn bạn nghĩ.

Học máy Lượng tử là gì?

Học máy lượng tử sử dụng tính toán lượng tử để thực hiện, hoặc tăng tốc, các phần của tác vụ học máy. Điều đó có thể là mã hóa dữ liệu vào các trạng thái lượng tử, chạy một mạch lượng tử thay cho một thành phần mô hình cổ điển, hoặc gọi một thủ tục con lượng tử bên trong một vòng lặp huấn luyện thông thường. Nhãn gọi này bao trùm một dải rộng, từ các phương pháp chủ yếu là cổ điển với một bước lượng tử duy nhất cho đến các mô hình được thiết kế để chạy hoàn toàn trên phần cứng lượng tử.

Trước khi đi xa hơn, sẽ hữu ích nếu làm rõ QML không phải là gì, vì đây là nơi hầu hết sự nhầm lẫn bắt đầu. Nó không phải là một sự thay thế nhanh hơn, cắm-và-chạy cho các mô hình bạn đang dùng, và nó không chạy đua để thay thế ML cổ điển trên mọi mặt trận. Phần lớn lĩnh vực này ở giai đoạn nghiên cứu, chạy trên trình mô phỏng hoặc các máy lượng tử nhỏ và nhiễu. Cách diễn đạt trung thực: QML đặt một câu hỏi hẹp hơn, cụ thể là, có những bài toán ML nào mà phần cứng lượng tử mang lại điều gì đó mà phần cứng cổ điển khó có thể sánh kịp? Với một số ít loại bài toán, câu trả lời có vẻ hứa hẹn. Còn đa số, ML cổ điển vẫn là công cụ đúng đắn, và khóa học Hiểu về Học máy của chúng tôi bao quát những nền tảng mà hầu hết mọi người thực sự cần trước.

Những điều cơ bản về Tính toán Lượng tử

Bạn không cần bằng vật lý để theo dõi phần còn lại của bài viết, nhưng một vài ý tưởng sẽ khiến QML bớt bí ẩn hơn nhiều. Đây là phiên bản ngắn gọn, hãy bỏ qua nếu bạn đã quen.

Qubit so với bit

Một bit cổ điển là 0 hoặc 1. Một qubit có thể giữ một sự pha trộn của cả hai cùng lúc, và chỉ “chốt” về 0 hoặc 1 xác định khi bạn đo nó. Trước khi đo, qubit được mô tả bởi hai biên độ xác định xác suất của mỗi kết quả. Đó là mấu chốt: một thanh ghi gồm n qubit có thể biểu diễn sự kết hợp của 2ⁿ trạng thái cùng lúc, trong khi n bit cổ điển chỉ có thể giữ một trong những trạng thái đó tại một thời điểm.

Điểm “gài bẫy” (và tính toán lượng tử luôn có điểm gài bẫy) là bạn không thể đơn giản đọc ra tất cả các trạng thái đó. Việc đo lường làm sụp đổ qubit về một giá trị duy nhất, vì vậy để thu lại thông tin hữu ích cần phải cẩn trọng. Giới hạn đó quan trọng hơn bạn nghĩ ban đầu, và là lý do lớn vì sao các thuật toán QML được thiết kế như bạn sẽ thấy ngay sau đây.

Chồng chập và rối lượng tử

Sự pha trộn trạng thái đó được gọi là chồng chập (superposition). Ý tưởng thứ hai, rối lượng tử (entanglement), là nơi mọi thứ trở nên thú vị: hai hoặc nhiều qubit có thể tương quan chặt đến mức bạn không thể mô tả một qubit mà không mô tả các qubit còn lại. Đo một qubit bị rối và bạn lập tức biết điều gì đó về “đối tác” của nó, về nguyên tắc ngay cả khi ở khoảng cách xa. Bit cổ điển không có tương đương cho điều này, và hầu hết các lợi thế được đề xuất của tính toán lượng tử đều dựa vào nó theo cách nào đó.

Cổng lượng tử

Vậy bạn thực sự làm việc với các qubit ở trạng thái chồng chập và rối như thế nào? Đó là lúc các cổng lượng tử xuất hiện. Chúng là những phép quay có thể đảo ngược của trạng thái qubit: cổng Hadamard đưa một qubit vào trạng thái chồng chập, cổng CNOT làm rối hai qubit. Xâu các cổng lại với nhau bạn có một mạch lượng tử, phiên bản lượng tử của một chương trình. Tất cả dựa trên đại số tuyến tính: trạng thái là vector, cổng là ma trận, và chạy một mạch là một chuỗi phép toán ma trận. Nếu phần đó còn lung lay, kỹ năng đại số tuyến tính trong các lộ trình học khoa học dữ liệu của chúng tôi chuyển sang đây một cách trực tiếp.

Với qubit, chồng chập, rối và các cổng trong tay, bạn đã có đủ để thấy các mảnh ghép này kết hợp với nhau như thế nào trong một quy trình QML.

Cách Học máy Lượng tử Hoạt động

Ở mức cao, một quy trình QML có bốn bước. Đầu tiên, bạn mã hóa dữ liệu cổ điển vào một trạng thái lượng tử, thường bằng cách ánh xạ các giá trị đặc trưng thành các góc quay hoặc biên độ. Thứ hai, bạn áp dụng một mạch lượng tử, thường là mạch có tham số điều chỉnh được. Thứ ba, bạn đo mạch, chạy nó nhiều lần vì mỗi lần đo chỉ cho một kết quả đã sụp đổ và bạn cần đủ mẫu để ước lượng kết quả một cách đáng tin cậy. Thứ tư, bạn đưa kết quả đó vào lại quá trình học.

Bước cuối cùng đó là nơi phần lớn QML thực tiễn tồn tại ngày nay. Thay vì chạy mọi thứ trên một máy lượng tử, bạn xây một vòng lặp lai: mạch lượng tử tạo ra một giá trị, một bộ tối ưu hóa cổ điển điều chỉnh các tham số của mạch, và chu kỳ lặp lại, chính xác như huấn luyện một mô hình, chỉ khác là một phần phép tính diễn ra trên phần cứng lượng tử. Các máy lượng tử hiện nay nhiễu và nhỏ (lĩnh vực gọi đây là kỷ nguyên NISQ, nghĩa là noisy intermediate-scale quantum), nên giữ phần nặng ở phía cổ điển và chỉ “đẩy” những gì có lợi sang lượng tử là lựa chọn thực tế. Tôi sẽ quay lại lý do mô hình lai thắng thế ở phần tiếp theo.

Các Cách Tiếp cận trong Học máy Lượng tử

Giờ bạn đã thấy quy trình bốn bước cơ bản, đáng để hỏi: bao nhiêu phần của quy trình đó thực sự phải chạy trên phần cứng lượng tử? Có khoảng ba cách kết hợp tính toán lượng tử với học máy, và chúng khác nhau chủ yếu ở mức độ công việc mà máy lượng tử thực sự đảm nhận.

Học máy tăng cường bằng lượng tử

Ở đây mô hình về cơ bản là cổ điển, nhưng một bước tốn kém được giao cho một thủ tục lượng tử với hy vọng tăng tốc: giải hệ tuyến tính, ước lượng kernel, lấy mẫu từ một phân phối. Phần còn lại của pipeline trông giống như học có giám sát mà bạn xây trong khóa Supervised Learning with scikit-learn của chúng tôi.

Mô hình hoàn toàn lượng tử

Ở cực còn lại, các mô hình này chạy đầu-cuối trên phần cứng lượng tử, với dữ liệu và mô hình đều tồn tại trong các trạng thái lượng tử. Đây là phiên bản tham vọng nhất của QML và, không ngẫu nhiên, hiện ít thực tiễn nhất: phần cứng hiện tại không thể hỗ trợ chúng ở quy mô hữu ích.

Mô hình lai lượng tử-cổ điển

Nằm giữa hai cực đó là cách tiếp cận thực sự hiệu quả ngày nay, và cũng là nơi hầu hết nghiên cứu QML nghiêm túc tập trung. Một mạch lượng tử tham số xử lý một phần phép tính trong khi một bộ tối ưu hóa cổ điển huấn luyện nó. Cách này lách qua giới hạn của phần cứng nhỏ và nhiễu bằng cách chỉ yêu cầu máy lượng tử làm điều mà hiện tại nó làm tốt.

Thuật toán Học máy Lượng tử

Bạn sẽ thấy lặp đi lặp lại cùng một vài họ thuật toán. Tôi sẽ giữ ở mức cao, phần toán học đi sâu rất nhanh, và bạn không cần nó để hiểu mỗi thuật toán dùng làm gì.

Mạch lượng tử biến phân (VQC)

Một mạch lượng tử biến phân là mạch lượng tử có các tham số có thể tinh chỉnh, được huấn luyện trong vòng lặp lai mà tôi đã mô tả. Đây là “ngựa thồ” của QML trong ngắn hạn và là nền tảng cho hầu hết các mô hình khác ở đây. Dưới đây là hình dung sơ lược trong PennyLane, một thư viện QML mã nguồn mở phổ biến:

import pennylane as qml

# A 2-qubit device that runs on a local simulator
dev = qml.device("default.qubit", wires=2)

@qml.qnode(dev)
def variational_circuit(inputs, weights):
    # Encode two input features as qubit rotation angles
    qml.AngleEmbedding(inputs, wires=[0, 1])
    # The trainable layer a classical optimizer will adjust
    qml.BasicEntanglerLayers(weights, wires=[0, 1])
    # Measure to get a value we can feed back into training
    return qml.expval(qml.PauliZ(0))

Các trọng số là thứ mà bộ tối ưu hóa cổ điển cập nhật qua nhiều vòng lặp, giống như cách gradient descent cập nhật trọng số mạng nơ-ron. Với khuôn mẫu đó, các thuật toán còn lại sẽ cảm giác như những biến tấu trên cùng một chủ đề.

Máy vector hỗ trợ lượng tử

Một SVM lượng tử giữ nguyên cấu trúc của SVM cổ điển nhưng sử dụng mạch lượng tử để tính kernel: độ tương đồng giữa các điểm dữ liệu. Hy vọng là không gian đặc trưng lượng tử có thể nắm bắt các mẫu mà kernel cổ điển gặp khó. Liệu điều đó có hữu ích trên dữ liệu thực hay không vẫn là câu hỏi bỏ ngỏ.

Mạng nơ-ron lượng tử (QNN)

Mạng nơ-ron lượng tử sắp xếp các mạch tham số thành các lớp và huấn luyện chúng tương tự như mạng cổ điển. Nếu bạn đã huấn luyện mô hình trong khóa Giới thiệu Học sâu bằng Python của chúng tôi, vòng lặp sẽ quen thuộc: truyền xuôi, tính mất mát, cập nhật, chỉ khác là phần truyền xuôi chạy trên mạch lượng tử.

K-means lượng tử

Quantum k-means là bài toán phân cụm: nó sử dụng các thủ tục con lượng tử để ước lượng khoảng cách giữa các điểm, phép toán chi phối k-means cổ điển ở quy mô lớn. Đây là ví dụ trực diện nhất của “thay một bước tốn kém bằng phiên bản lượng tử” trong danh sách này.

Bạn có thể đang tự hỏi, với tất cả các thuật toán này, liệu cái nào thực sự hiện thực hóa lời hứa tăng tốc lượng tử. Đó chính là điều chúng ta sẽ xem tiếp theo.

Lợi thế Tiềm năng của Học máy Lượng tử

Ba khả năng lợi thế thường được nhắc đến nhất. Một số bài toán có cấu trúc nhất định, chẳng hạn mô phỏng hệ lượng tử trong hóa học và vật liệu, ánh xạ tự nhiên lên phần cứng lượng tử, và đó là khu vực nơi lợi thế trông có vẻ khả tín nhất. Không gian đặc trưng lượng tử cũng có thể biểu diễn các mối quan hệ phức tạp vốn khó nắm bắt bằng phương pháp cổ điển. Và với một vài thuật toán cụ thể, lý thuyết chỉ ra những tăng tốc lớn, thậm chí theo cấp số mũ.

Lưu ý tôi luôn nói là tiềm năng. Những lợi thế này phần lớn được chứng minh trên lý thuyết, dưới các giả định mà phần cứng thực tế chưa đáp ứng. Một ví dụ ưa thích về khoảng cách đó: vài tăng tốc lý thuyết giả định dữ liệu của bạn đã được nạp vào trạng thái lượng tử, nhưng việc nạp dữ liệu cổ điển vào trạng thái đó có thể tốn kém ngang với phần tăng tốc tiết kiệm được. Kiểu nút thắt ẩn đó chính là lý do vì sao danh sách “lợi thế được tuyên bố” và “lợi thế đã chứng minh” vẫn rất khác nhau.

Trước khoảng cách đó, đáng để lùi lại và đặt ML cổ điển và ML lượng tử cạnh nhau một cách trực tiếp.

Học máy Lượng tử so với Học máy Cổ điển

Cách rõ ràng nhất để thấy sự khác biệt là đặt cạnh nhau.

 

ML cổ điển

ML lượng tử

Mô hình tính toán

Bit, phép toán tất định

Qubit, chồng chập, rối lượng tử

Khả năng mở rộng

Công cụ trưởng thành, chạy ở quy mô sản xuất

Bị giới hạn bởi phần cứng nhỏ, nhiễu

Mức độ trưởng thành

Hàng thập kỷ nghiên cứu, ứng dụng rộng rãi

Mới nổi, chủ yếu thực nghiệm

ML cổ điển chiếm ưu thế trong công việc thực tế ngày nay và sẽ còn như vậy trong tương lai gần: công cụ, phần cứng và nhân lực đều đã sẵn. QML là kẻ thách thức ở giai đoạn sớm có thể sẽ dần tạo chỗ đứng ở những bài toán mà cấu trúc lượng tử của nó phát huy tác dụng. Xem chúng như đối thủ bỏ lỡ trọng tâm. Hiện tại chúng chơi ở những “hạng đấu” khác nhau, và câu hỏi thú vị là những bài toán nào rồi sẽ bắc cầu giữa hai bên.

Cách nhìn “hạng đấu khác nhau” đó cũng là liều thuốc tốt nhất cho những ngộ nhận thường đi kèm lĩnh vực này, vậy hãy nói thẳng vào chúng.

Những Hiểu lầm Phổ biến về Học máy Lượng tử

Một vài lầm tưởng luôn bám theo QML, và chúng đáng để làm rõ.

"ML lượng tử nhanh hơn cho mọi thứ." Không phải vậy. Các tăng tốc được đề xuất áp dụng cho những thuật toán cụ thể trong những điều kiện cụ thể. Với phần lớn tác vụ ML, máy lượng tử không mang lại lợi thế, và chạy chậm hơn nếu tính đến phần cứng hiện nay.

"Máy tính lượng tử sẽ thay thế máy tính cổ điển." Không. Chúng là các bộ gia tốc chuyên dụng nhắm tới một lớp bài toán hẹp, không phải sự thay thế mục đích chung. Laptop của bạn sẽ không đi đâu cả, và phần cổ điển trong mọi mô hình QML lai cũng vậy.

"QML đã sẵn sàng cho sản xuất hôm nay." Điều này làm người mới dễ vấp. Lĩnh vực còn thực nghiệm, phần cứng hạn chế và nhiễu, và gần như mọi thứ chạy trên trình mô phỏng. QML là thứ để học và theo dõi ngay bây giờ, không phải thứ để triển khai.

Khi gạt bỏ lớp thổi phồng, bạn còn lại một lĩnh vực thực sự thú vị đáng để học theo đúng nghĩa của nó. Vì vậy nếu bạn đủ tò mò để muốn viết chút mã, đây là nơi bắt đầu.

Bắt đầu với Học máy Lượng tử

Nếu các khái niệm khiến bạn muốn viết mã, tin tốt là công cụ mã nguồn mở và thân thiện với người mới. PennyLane (thư viện trong ví dụ trên) và Qiskit là hai điểm vào phổ biến nhất, và cả hai chạy trên trình mô phỏng, vì vậy bạn không cần truy cập máy lượng tử thực để bắt đầu thử nghiệm. Mô-đun học máy của Qiskit cung cấp sẵn các kernel, bộ phân loại và mạng nơ-ron lượng tử, và nó kết nối với PyTorch, giúp cầu nối từ công việc cổ điển trở nên thoải mái.

Lời khuyên của tôi: hãy vững nền tảng cổ điển trước. Vòng lặp lai, các bộ tối ưu, cách một mô hình được huấn luyện, tất cả đều là cổ điển, và đó là phần bạn sẽ dựa vào nhiều nhất. Lộ trình Nhà khoa học Học máy bằng Python của chúng tôi bao phủ nền tảng đó, và từ đó các phần đặc thù lượng tử chỉ là phần bổ sung chứ không phải bắt đầu lại. Hãy học bằng cách chạy mạch và tinh chỉnh tham số; đọc về chồng chập chỉ đưa bạn đến một điểm nào đó thôi.

Kết luận

Học máy lượng tử nằm ở giao điểm của hai lĩnh vực phát triển nhanh, vay mượn cách biểu diễn thông tin của tính toán lượng tử để đảm nhận các phần trong pipeline ML. Tôi đã cố giữ mọi thứ có cơ sở, vì chủ đề này thu hút nhiều thổi phồng hơn gần như bất cứ thứ gì trong công nghệ hiện nay, và tóm tắt trung thực là khiêm tốn: QML còn sớm, chủ yếu thực nghiệm, và thực sự chưa chắc chắn sẽ phát huy ở đâu.

Đó không phải lý do để bỏ qua nó. Đó là lý do để hiểu những điều cơ bản ngay bây giờ, khi lĩnh vực còn đủ nhỏ để học từ đầu đến cuối. Nếu phần cứng lượng tử trưởng thành như những người lạc quan kỳ vọng, những ai đã nắm được cách qubit, mạch và huấn luyện lai khớp với nhau sẽ là những người sẵn sàng sử dụng nó. Còn nếu nó không phát huy ở mọi nơi, bạn vẫn sẽ học được một góc cạnh hấp dẫn của tính toán, mà thật lòng, cũng chẳng phải kết cục tệ.


Vinod Chugani's photo
Author
Vinod Chugani
LinkedIn

Vinod Chugani bắt đầu sự nghiệp tại Tokyo với vai trò Trưởng bàn giao dịch bán hàng Quỹ phòng hộ trẻ nhất của JPMorgan, sau đó lập kỷ lục doanh số cá nhân tại Lehman Brothers, rồi xây dựng một doanh nghiệp phân phối điện tử tại 30 quốc gia vượt mốc doanh thu 100 triệu đô la Singapore trước khi chuyển hướng sang dữ liệu. Tốt nghiệp Kinh tế Duke và là cựu học viên NYC Data Science Academy, anh là một trong ba người nhận học bổng trong hơn 100 ứng viên cho khóa học Building AI Applications của Hugo Bowne-Anderson trên Maven. Hiện nay, anh viết cho DataCamp, KDnuggets, Machine Learning Mastery và Statology về các chủ đề từ thống kê đến AI hành động, và cố vấn cho các chuyên gia dữ liệu tại NYC Data Science Academy với hơn 1.000 buổi kèm 1-1 đã thực hiện.

 

FAQs

Học máy lượng tử là gì theo cách hiểu đơn giản?

Đó là việc sử dụng tính toán lượng tử để chạy hoặc tăng tốc các phần của tác vụ học máy. Ví dụ, mã hóa dữ liệu vào các trạng thái lượng tử hoặc thay thế một bước của mô hình bằng mạch lượng tử. Phần lớn QML ngày nay là lai, nghĩa là mạch lượng tử xử lý một phần nhỏ trong khi máy tính cổ điển làm phần còn lại.

Tôi có cần biết vật lý lượng tử để học QML không?

Không cần quá sâu. Bạn cần nắm vững một vài ý tưởng (qubit, chồng chập, rối lượng tử và các cổng lượng tử) cùng sự thoải mái với đại số tuyến tính. Bản thân quá trình huấn luyện bám sát ML cổ điển, nên nền tảng ML vững sẽ hữu ích hơn vật lý.

Học máy lượng tử có nhanh hơn học máy cổ điển không?

Chỉ với các bài toán cụ thể trong những điều kiện cụ thể, và chủ yếu trên lý thuyết. Với đa số tác vụ ML, phần cứng lượng tử không mang lại tăng tốc và hiện chạy chậm hơn vì máy ngày nay nhỏ và nhiễu. Hãy hoài nghi với các tuyên bố kiểu “lượng tử nhanh hơn” trên diện rộng.

Những công cụ lập trình nào được dùng cho QML?

PennyLane và Qiskit là hai thư viện mã nguồn mở phổ biến nhất, và cả hai chạy trên trình mô phỏng nên bạn có thể luyện tập mà không cần phần cứng lượng tử thực. Mô-đun học máy của Qiskit cũng kết nối với PyTorch, giúp việc chuyển từ học sâu cổ điển trở nên mượt mà hơn.

Sự khác biệt giữa mô hình tăng cường lượng tử, hoàn toàn lượng tử và lai là gì?

Mô hình tăng cường bằng lượng tử chủ yếu là cổ điển với một bước được chuyển sang thủ tục lượng tử. Mô hình hoàn toàn lượng tử chạy toàn bộ trên phần cứng lượng tử và hiện chưa thực tiễn. Mô hình lai lượng tử-cổ điển chia công việc giữa mạch lượng tử và bộ tối ưu cổ điển (cách tiếp cận hiện đang hiệu quả).

Tôi có thể dùng QML trong dự án sản xuất ngay bây giờ không?

Thực tế là không. Lĩnh vực còn thực nghiệm, phần cứng hạn chế và nhiễu, và gần như mọi thứ chạy trên trình mô phỏng. QML đáng để học và theo dõi, nhưng chưa sẵn sàng để đưa vào sản xuất.

Người mới nên bắt đầu với thuật toán nào?

Mạch lượng tử biến phân (VQC) là điểm khởi đầu tự nhiên, vì chúng là nền tảng cho hầu hết mô hình QML khác, bao gồm QNN và SVM lượng tử. Hãy quen với vòng lặp huấn luyện lai trên VQC trước khi mở rộng.

Máy tính lượng tử có thay thế máy tính cổ điển và ML cổ điển không?

Không. Máy lượng tử là bộ gia tốc chuyên dụng cho một tập vấn đề hẹp, không phải sự thay thế mục đích chung. Ngay cả trong QML lai, phần lớn pipeline vẫn là cổ điển, và ML cổ điển sẽ tiếp tục thống trị công việc thực tế trong tương lai gần.

Chủ đề

Học cùng DataCamp

Courses

Machine Learning cho Kinh doanh

2 giờ
46.5K
Hiểu các nguyên lý cơ bản của học máy và cách nó được áp dụng trong thế giới kinh doanh.
Xem chi tiếtRight Arrow
Bắt đầu khóa học
Xem thêmRight Arrow