I am currently trying to implement a boosting algorithm akin to XGBoost with a quantum device. The reason is that I want to make use of a quantum device to train weak classifiers. However, as far as I know, the current quantum device can only be used for binary variables including both input variables and outputs.

Is it possible to use all binary variables to implement the additive training as it does in the XGBoost?

XGBoost GitHub Project

  • 1
    $\begingroup$ Welcome! Might you edit your question, perhaps making it more verbose? Details and explicit references/links can help improve the clarity and readability for people that are less familiar with your particular problem. $\endgroup$ – agaitaarino May 15 '18 at 5:21
  • 1
    $\begingroup$ Imagine that most people don't know what XGBoost is or how it works. Perhaps some general overview would be beneficial? $\endgroup$ – DaftWullie May 15 '18 at 5:38
  • $\begingroup$ @DaftWullie I added a link to the Github project if that helps. I guess you'll find a tutorial for XGBoost there. $\endgroup$ – Sanchayan Dutta May 15 '18 at 6:40
  • $\begingroup$ @QuanFinance: What is the exact problem that you wish to solve on a quantum computer? XGBoost does more than just one thing. $\endgroup$ – user1271772 May 15 '18 at 19:09

Boosting Algorithms are considered as iterative functional gradient descent algorithms. These algorithms optimize a cost function over function space by iteratively choosing a function (weak hypothesis) that points in the negative gradient direction. Like other boosting methods, gradient boosting combines weak "learners" into a single strong learner in an iterative fashion.

In the quantum realm, it may be a good idea to invoke the Grover search algorithm to construct the gradient boosting algorithms in an unstructured database with the data structure of a binary tree or another suitable tree structure. Following sample code is an interesting customization of XGBoost in the classical setting. There is a reference implementation of Grover Search in Q# in the following repository. Instead of a single marked state as in this Q# example, we could construct a tree state as an input to implement Grover Search to run through a decision tree to realize quantum gradient tree boosting.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.