ถ้าจะกล่าวถึงเทคโนโลยีในปัจจุบัน คงจะเคยได้ยินเรื่องราวของเทคโนโลยีที่เกี่ยวกับการวิเคราะห์ข้อมูลรวมไปถึงการเรียนรู้ของเครื่อง (Machine Learning) ซึ่งเป็นศาสตร์ที่ใช้ข้อมูลในการสร้างแบบจำลองทางคณิตศาสตร์ เพื่อใช้ในการตอบโจทย์หลาย ๆ ด้าน อย่างเช่น การทำนาย หรือหาความสัมพันธ์ของข้อมูล เป็นต้น สำหรับการทำนายข้อมูลอนาคต เราอาจมองภาพกว้าง ๆ และแบ่งออกเป็น 2 ประเภท ได้แก่ การทำนายข้อมูลโดยการเรียนรู้ของเครื่องแบบมีผู้สอน (Supervised Learning) และแบบไม่มีผู้สอน (Unsupervised Learning) สำหรับการเรียนรู้แบบมีผู้สอนนั้นสามารถแบ่งการทำงานออกเป็น 3 ขั้น ได้แก่ (Step 1) การจัดการข้อมูลเข้า (Step 2) รูปแบบของสมการที่จะให้เครื่องคอมพิวเตอร์เรียนรู้เพื่อหารูปแบบของข้อมูลที่คล้ายคลีงกันและนำสมการเหล่านั้นมาใช้ในการแยกรูปแบบที่มีโอกาสจะเกิดขึ้นอีกในอนาคต (Step 3) ตรวจสอบความถูกต้อง กล่าวได้ว่าเราสามารถให้คอมพิวเตอร์เรียนรู้จากข้อมูลที่มีและตรวจสอบความถูกต้องของผลลัพธ์ แล้วปรับเปลี่ยนตัวแปรในส่วนของสมการ เพื่อสร้างสมการที่สามารถทำนายผลลัพธ์ของข้อมูลนั้นได้อย่างแม่นยำ
เมื่อมาพิจารณาการคำนวณทางควอนตัมนั้นก็มีอัลกอริทึมของการเรียนรู้ของเครื่องเช่นกัน แต่การทำงานภายในจะมีองค์ประกอบ 3 ขั้นที่มีการปรับเปลี่ยน ประกอบด้วย (Step 2.1) การแปลงข้อมูลจากรูปแบบ Classical Data ให้อยู่ในรูปแบบของ Quantum State (Step 2.2) การสร้างวงจรที่สามารถให้ควอนตัมคอมพิวเตอร์สามารถเรียนรู้และทำนายรูปแบบของข้อมูลได้ และ (Step 2.3) การวัดผลของวงจรควอนตัม [7]
การเตรียมข้อมูลที่อยู่ในรูปแบบ Classical Data ให้อยู่ในรูปแบบของ Quantum State (Step 2.1) โดยมีวิธีอยู่หลายวิธี ขึ้นอยู่กับชนิดของข้อมูล ยกตัวอย่างเช่น ข้อมูลอยู่ในรูปแบบ 0 หรือ 1 (binary data) เราอาจจะเข้ารหัสข้อมูลโดยใช้ Pauli-X Gate เพื่อที่จะให้คิวบิต |0⟩ เป็น |1⟩ หรือ หากข้อมูลไม่ใช่ binary data แต่เป็น continuous data สามารถเข้ารหัสโดยใช้ Quantum Gate ที่สามารถควบคุมคิวบิตให้หมุนไปในทิศทางที่ต้องการได้ยกตัวอย่างเช่น Rotation Y Gate ที่สามารถหมุนแกน Y ไปในทิศทางใด ๆ ได้ สมมติว่า ต้องการหมุนแกน Y ไป 2 rad ผลลัพธ์ก็คือคิวบิตจะตกไปอยู่ในสถานะ |+⟩ จากวิธีการนี้เอง สามารถที่จะเข้ารหัสข้อมูลให้อยู่ในรูปแบบสถานะใด ๆ ของคิวบิตได้ (จะเรียกการเข้ารหัสแบบนี้ว่า Angle Encoding) ซึ่งการเตรียมสถานะทางควอนตัมของแต่ละคิวบิต เพื่อแปลงข้อมูลเป็นสถานะทางควอนตัมใด ๆ
จากนั้นในขั้นต่อไป (Step 2.2) มีวัตถุประสงค์เพื่อสร้างวงจรที่สามารถให้ควอนตัมคอมพิวเตอร์สามารถเรียนรู้และทำนายรูปแบบของข้อมูลโดยจะมีตัวแปรชุดหนึ่งที่สามารถใช้ทำนายรูปแบบของข้อมูลได้ โดยจะนำข้อมูลจากขั้นก่อนหน้าไปเข้า Unitary Gate ที่ประกอบไปด้วย Quantum Gate ที่สามารถปรับค่าได้ (Parameterized Circuit) โดยอาจจะแทน Gate นี้ด้วย U(θi) ; θ คือตัวแปรที่ใช้สำหรับเปลี่ยนแปลงค่าภายในวงจร ตัวอย่างเช่น รูปวงจรนี้ประกอบไปด้วย 1 คิวบิตของ Rotation Gate (Ry) ที่มีตัวแปรที่ปรับค่าได้ 8 ตัว (θ1, θ2 , θ3 , …, θ8)
ขั้นตอนสุดท้าย (Step 2.3 และ Step 3) คือการวัดผลและปรับปรุงค่าตัวแปรของวงจรนี้ โดยนำผลที่ได้จากการวัดจาก quantum computer (Step 2.3) เพื่อนำค่ามาใช้การคำนวณ Cost และ Loss ได้เหมือนกับการคำนวณทางฝั่ง Classical Machine Learning (Step 3) อย่างเช่น MSE (Mean Square Error) จากนั้นจะนำผลที่ได้จากขั้นตอนการวัดมาหาค่าของตังแปรที่ต้องการจะปรับ โดยในที่นี้ วิธีการที่ใช้จะคล้ายคลึงกับการทำ Optimization ใน Neural Network โดยอาจจะใช้ Gradient-based Optimization อย่าง Gradient Descent หรือ Adam ในการทำปรับปรุงค่าสำหรับทำ Optimization
การออกแบบวงจรทางควอนตัมเพื่อใช้ในการจัดหมวดหมู่ของข้อมูล (Data Classification) เป็นอีกหัวข้อหนึ่งที่น่าศึกษาต่อในเชิงลึก อัลกอริทึมทางควอนตัมที่กำลังเป็นที่สนใจคือ Variational Quantum Classifier ซึ่งวิธีการนี้เป็นเทคนิคในการสร้างวงจรทางควอนตัมชนิดหนึ่งที่สามารถปรับเปลี่ยนค่าในวงจรได้ เพื่อให้ผลลัพธ์สุดท้ายแล้ว เราสามารถสร้างวงจรที่จะจัดหมวดของข้อมูลได้สะดวกมากขึ้น
Reference
[1] Qiskit https://qiskit.org/documentation/
[2] Qiskit Circuit https://qiskit.org/documentation/apidoc/circuit_library.html
[3] Pennylane https://pennylane.ai/
[4] Qiskit machine learning tutorial https://qiskit.org/documentation/machine-learning/tutorials/
[5] Breast Cancer dataset https://archive.ics.uci.edu/ml/datasets/breast+cancer+wisconsin+%28original%29
[6] SPSA https://www.jhuapl.edu/SPSA/
[7] M. Weigold, J. Barzen, F. Leymann and M. Salm, “Expanding Data Encoding Patterns For Quantum Algorithms,” 2021 IEEE 18th International Conference on Software Architecture Companion (ICSA-C), 2021, pp. 95-101, doi: 10.1109/ICSA-C52384.2021.00025.
[8] M. Schuld, A. Bocharov, K. M. Svore, and N. Wiebe, “Circuit-centric quantum classifiers,” Physical Review A, vol. 101, no. 3. American Physical Society (APS), Mar. 06, 2020. doi: 10.1103/physreva.101.032308.
[9] M. Schuld and F. Petruccione, Supervised Learning with Quantum Computers. Springer International Publishing, 2018. doi: 10.1007/978-3-319-96424-9.
[10] M. Weigold, J. Barzen, F. Leymann and M. Salm, “Expanding Data Encoding Patterns For Quantum Algorithms,” 2021 IEEE 18th International Conference on Software Architecture Companion (ICSA-C), 2021, pp. 95-101, doi: 10.1109/ICSA-C52384.2021.00025.