Quantum Bayesian Networks

February 6, 2016

Quantum Open Source 2016

Filed under: Uncategorized — rrtucci @ 7:31 am

big-bro-anim

Big Brother is saying: Microsoft’s “Liqui|> is closed source for your own good. Quantum open source is EVIL. Using it will harm you!”


Quantum Carly Fiorina

Quantum Carly Fiorina

Big Brother is saying: Vote for Quantum Carly Fiorina, my handpicked leader

Big Brother is saying: Vote for Quantum Carly Fiorina, my handpicked leader


apple1984-anim


quantum-open-source

On 2016, the quantum open source community will finally prevail, and you will see why future quantum computer software won’t be like “1984”

Advertisements

May 28, 2016

Don’t tell Microsoft. Qubiter, an open source platform, can now do quantum chemistry too

Filed under: Uncategorized — rrtucci @ 8:10 pm

I’ve uploaded to

https://github.com/rrtucci/my-chemistry

a small collection of classes called `my-chemistry’ that allow one to construct a gate model quantum circuit for calculating the ground state energy of molecules using Kitaev’s Phase Estimation Algorithm.

Notice that I am releasing my-chemistry under my name only. Although this is an add-on to the artiste-qb.net Qubiter project, the Artiste company is free of any legal liability, as I have not merged it with the main code branch, and the company is not deriving any use of it at this time.

The docstrings of each class describe in detail how it works. All my classes have a main method at the end with examples and tests of the class. In addition, I have written a pdf document describing the more technical details of the quantum circuit involved. The pdf document is part of the my-chemistry distribution.

Here is an excerpt from the Introduction section of that pdf document:

This paper describes the particular circuit used by a Python software package called “my-chemistry”, written by R.R.Tucci, and available at GitHub, Ref.[1]. The software can be used in conjunction with “Qubiter”, another Python software package available at GitHub, Ref.[2].

A quantum circuit that is very similar to the one presented in this paper has previously been implemented FIRST in Ref.[4] and more recently and exhaustively in the closed source software package called Liqui|\rangle produced by Microsoft, with Dave Wecker as main author.

Here is a super brief, by no means exhaustive review of some of the highlights in the history of this quantum computing approach to chemistry.

The person deserving the lion share of the credit for this method is A. Kitaev, who in 1995, Ref.[3], was the first to propose the PEA. Also very deserving are Trotter for his expansion, and Jordan/Wigner for their transformation.

The first paper to present an actual computer program for calculating the ground state energy of an $H_2$ molecule using PEA appears to be Ref.[4], by Whitfield, Biamonte and Aspuru-Guzik.

Researchers working for Microsoft applied the method to more complicated molecules and found some very clever optimization methods, such as using the identity (CNOT)^2 = 1. Here is their epiphany paper Ref.[5], and here is their most recent paper Ref.[6]. The latter is recommended for what appears to be a very fair and exhaustive list of references of this approach.

Finally, one should mention that Microsoft has several patents on this method, so it is possible that Microsoft will claim in the future that the software described in this paper infringes on one of their patents. Going to the USPTO website and using the query IN/wecker AND AN/Microsoft, I located 4 patents Refs.[7][8][9][10] on Liqui|\rangle. There might be more pending.

Patents alluded to

Quantum gate optimizations
https://patents.google.com/patent/US9064067B2/en

Optimizing quantum simulations by intelligent permutation
https://patents.google.com/patent/US8972237B2/en

Language integration via function redirection
https://patents.google.com/patent/US9292304B2/en

Quantum annealing simulator
https://patents.google.com/patent/US9152746B2/en

August 18, 2018

Invest in our Canadian Quantum Computing Company as Hedge Against Imminent American Economic Crisis

Filed under: Uncategorized — rrtucci @ 5:32 pm

Our quantum computing software company Artiste-qb.net is based in Toronto and incorporated only in Ontario, Canada. This makes us partly immune to:

  • America’s import restrictions, imposed due to national security concerns, on software, especially those restrictions regulating commerce with China. Our software is all open source, we are an OpenSaaS (open software as a service) company, but those import restrictions plus Trump’s tariff wars, would curtail our business activities if we were based in the US. Actively pursuing the Chinese market is an important part of our business plans. One of our co-founders, Dr. Tao Yin, who lives in ShenZhen China, is spearheading our Chinese activities.

  • what I believe is an inevitable, imminent crisis in the American economy. And I am far from being alone in having such a pessimistic outlook for the near term American economy (for example, check out the following opinion piece entitled “Another Epic Economic Collapse is Coming” by the famous conservative pundit, George Will). Consider the impact on the current American economy of the following driving factors:
    1. A probably ultimately counterproductive tax cut for big business,
    2. tariff wars in which everyone loses, waged against our biggest trade partners China, Mexico, Canada, EU, …,
    3. a steep rise in the national debt,
    4. A renouncing of America’s Land Of Immigrants heritage, which is what, more than anything, once made America great,
    5. A population bitterly divided along party lines,
    6. Huge income disparity in population. 1% of Americans now own 70% of the wealth,
    7. a resurgence and acceptance of racial, religious and LGBT prejudice,
    8. A president who on a daily basis Tweets lies, and dumb, banal, embarrassing, racists, misogynist statements. And once he is impeached, we will get Pence, who is another strongly polarizing figure,
    9. removal of regulations that were supposed to protect us from a repeat of financial crisis of 2007–2008
    10. renouncing of any attempts to control or mitigate the very disruptive and costly problem of climate change
    11. disastrous foreign policies
    12. Denigration of the free press, the FBI and our intelligence agencies by Trump and his supporters,
    13. A badly broken Health Care system and no improvement in sight,
    14. A malicious, intransigent and politically super powerful NRA

    This spells “trouble with a capital T” for America.

My advise to you is to invest in our Canadian quantum computing software company artiste-qb.net as a hedge against the looming, imminent American Economic Crisis. Now is the best time to invest in us; the biggest fortunes are made during times of upheaval, not during steady, predictable times.

August 14, 2018

What programming languages are available for quantum computers? What is the best quantum language?

Filed under: Uncategorized — rrtucci @ 1:07 am

Answering this question is Easy Peasy.

Qubiter is the Greatest. It floats like a butterfly and stings like a bee. If Qubiter were a heavy weight fighter, it would be called Muhammad Ali.

Qubiter is insanely great software.

Many supposedly exhaustive lists of quantum languages do NOT list Qubiter; this probably indicates that the list’s authors are DISHONEST people who want to suppress knowledge of the existence of Qubiter because they have an affiliation or conflict of interest with the authors of a competing quantum language. Alas, hype and outright dishonesty in quantum computing is not uncommon in both Academia and Industry. In reality, Qubiter (open source under BSD license) is an excellent alternative to the following popular quantum languages:

  • Google Cirq
  • IBM qasm/qiskit
  • Microsoft Q# (its former version was called Liqui|>)
  • Rigetti PyQuil
  • Project Q
  • Quipper

Caveat Emptor: Here are some features of Qubiter that the other quantum languages may not have:

  • Automatically creates 2 files for the quantum circuit, a Qubiter qasm file and an ASCII picture file. This makes debugging easier (can also draw fancy LaTex picture of circuit but that is slower so only optional) The ascii file and qasm file correspond line by line, so line 5 in each gives 2 representations, ascii and qasm, of the same gate. For example, consider Teleportation. Here is
    Qubiter’s ASCII Picture file for that:

    teleportation-qubiter-pic

    and here is the corresponding qasm (English) file:

    teleportation-qubiter-eng

    Bellissimo!

  • Only uses quantum bits instead of quantum and classical registers. Classical registers are an unnecessary and bothersome complication. For example, If you continue developing the classical register operations of PyQuil, you will eventually end up reinventing Python inside PyQuil, which is itself inside Python. That would be the logical conclusion of PyQuil’s classical registers, wouldn’t it?
  • Translates Qubiter qasm to IBM qasm, Google’s Cirq and Rigetti’s PyQuil.
  • Only Qubiter has PRINT statement in its qasm that prints to screen the state vector at the position of the PRINT statement in the qasm
  • Expands arbitrary one qubit gates with any number of controls to a sequence of cnots and single qubit rotations
  • Includes quantum CSD compiler. This compiler can expand an arbitrary n qubit unitary matrix into a sequence of CNOTs and single qubit rotations. The compiler also expands quantum multiplexors and diagonal unitary matrices which are very useful in dealing with Quantum Neural Networks.
  • Is written in Python (Q# is written in Q# and Quipper in Haskell)
  • Gates controlled by classical qubits are handled much more clearly
  • Has nice library of Jupyter notebooks, not as large as IBM qiskit’s, but other languages besides IBM qiskit have almost no Jupyter notebooks
  • 100% object oriented, like JAVA and C++. Other quantum languages written in Python are partly object oriented and partly procedural, which is not as well organized as 100% object oriented.
  • Not made by an international monopoly trying to control the quantum computing field
  • (this is only important to Canadians) Made in Canada, eh. Oh Canada!

August 8, 2018

I am being bullied and harassed at Quantum Computing Stack Exchange (branch of StackOverflow)

Filed under: Uncategorized — rrtucci @ 1:52 am

Today almost all of my replies at Quantum Computing Stack Exchange (a branch of StackOverflow) were edited or deleted in a very disdainful way, by a bully called Heather. I politely objected to the moderators by email and received the following reply

http://www.ar-tiste.com/bullying-stackoverflow/response-mods1.txt

According to them, I don’t answer the questions and instead use my replies to advertise my products and my website. This is total BS, I always do the utmost to answer the questions in a polite way, and I’ve never mentioned my website. I do give links to some of my jupyter notebooks iff they directly address the issue being asked. Sometimes I also give a link to the Qubiter repo (Qubiter is open source under the BSD license, so it is hardly “a product”), but the Qiskit, pyQuil and Cirq people link to their repo too. If not they should. It’s pretty ridiculous and inconsiderate to the readers to talk about a software program without giving the URL of its github repo.

The bullies also claim that I don’t mention that I’m the author of the software that I link to. Bizarre claim. If I were plagiarizing someone else’s code, that would be a crime. But since when does one have to explicitly state before every line of code that one cites at Quantum Stack Exchange

# I wrote the following line of code all by myself. My mama did not help me.

Other people from IBM, Rigetti and Google frequently answer questions about their software products at Quantum Stack Exchange and are never taken to task for not mentioning their affiliation or conflict of interest. The double standards of these bullies is hilarious in a Sarah Huckabee Sanders, Fox News kind of way.

After receiving the above unacceptable reply from the moderators, I sent the following email to Tim Post, “Director of Community Strategy, Stack Overflow.” Quite frankly, I expect Tim Post will ignore my email, or else will side with the rapists and blame me, the victim, for dressing provocatively. Typical response by authority figures to harassment claims, you know.

​Dear Sir,

I am rrtucci (Robert Tucci) I would like to point out that I am being bullied and harassed at quantum stack overflow. A person called Heather ( a high school student) has just edited ALL my posts in a very disdainful way that implies I am doing something dishonest by explaining my open source software Qubiter. I don’t see why that is dishonest, the IBM, Google and Rigetti people do it all the time and she doesn’t object to that. Who better than the author of a software to explain it? I have worked in quantum computing for more that 15 yrs and have a PhD in physics. I assure you that everything I say in my comments is true.

This is an example of her bullying. My blog post has received a -2 rating and has been edited by her in a disdainful bullying manner whereas the other dishonest posts that omit mentioning my software have received a rating of 26 points
https://quantumcomputing.stackexchange.com/questions/1474/what-programming-languages-are-available-for-quantum-computers

I very much expect that because of this blog post, I will soon be banned from Quantum Stack Exchange and all my posts there will be deleted. Even if they don’t do that, they have succeeded in intimidating me so that I can’t post replies there anymore. Before the above webpage disappears, or is censored, I saved a copy of it. Here it is

http://www.ar-tiste.com/bullying-stackoverflow/What%20programming%20languages%20are%20available%20for%20quantum%20computers%20%20-%20Quantum%20Computing%20Stack%20Exchange.htm

The disingenuousness of the replies, other than mine, in that webpage, is obvious and palpable. None of them mentions Qubiter, an excellent, free, open source under BSD license, and very up-to-date alternative. Instead of mentioning Qubiter, they pad the list with dozens of very old, outdated, softwares. Despite their disingenousness, Heather objects only to my reply. Heather doesn’t claim that something that I say in my reply is false, because my reply is 100% true. Instead, she is outraged that I didn’t explicitly state that I wrote Qubiter (she forcibly inserted the sentence “(Disclaimer: I wrote the code for Qubiter.)” implying that I was doing something very dishonest by not mentioning this) but she doesn’t mind that nobody else mentions their affiliations or conflicts of interest. #MeToo

Update: new blog post
https://qbnets.wordpress.com/2018/08/09/the-world-sorely-needs-alternative-to-nasty-stackoverflow-build-one-and-you-will-get-rich/

August 2, 2018

Konnichiwa (Hello) Nihon (Japan,日本). Quantum Computing MOOC from Keio Univ. in Tokyo

Filed under: Uncategorized — rrtucci @ 8:41 pm

This week, two of our company’s co-founders, Henning Dekant and Tao Yin, were in Tokyo to attend the Quantum Computing Symposium organized by the Canadian Embassy in Tokyo. An important goal of the trip was to promote: our Bayesforge docker image comprising a vast collection of classical and quantum open source softwares, and our softwares combining classical AI and music.

During our stay, we were honored to meet representatives from various Japanese companies and universities interested in Quantum Computing, such as Fujitsu and Keio University.

Keio University, located in central Tokyo, offers an excellent MOOC on quantum computing taught by Profs. Rodney Van Meter and Takahiko Satoh. (By the way, according to Wikipedia, the term MOOC was coined in Canada to refer to one of the first MOOCs ever offered. Hurray, Canada! I am a passionate advocate of MOOCs)

Prof. Van Meter, who was an undergrad at Caltech where he played a mean game of basketball, is much admired by everyone at artiste-qb.net for his unwavering dedication to teaching. Henning, Rodney, and Tao can be seen below.

July 24, 2018

Are You a Young Male Interested in Quantum Computing? We Recommend a Date with ROSA (Write Once, Simulate Anywhere)

Filed under: Uncategorized — rrtucci @ 12:44 am

Five days ago (7/19), Google released it’s long awaited language for quantum computers, called Cirq. Cirq is available at Github as open source under the Apache license. I expect that Google’s 72 qubit quantum computer and accompanying cloud service, also long awaited, will be unveiled soon too.

(Yes, I am referring to the same company that on (7/18), one day before Cirq was released , was fined $5B by the European Union because it favors Google’s search engine in Android devices, and it also is gradually making closed source and proprietary all the new R&D for the key apps in the Android ecosystem, and it also ruthlessly excommunicates anyone who tries to fork the Android repo to produce a serious competitor to Android. It also excommunicates any company that uses any Android fork in any of its products. Google, please say it ain’t so!… and say you won’t try to destroy Qubiter—my qc language and simulator, a microscopic competitor to Cirq.)

Qubiter is available at Github as open source under the BSD license.

So as not to be destroyed by the bad hombres at Google, a mere five days after the release of Cirq, I have given to Qubiter amazing new superpowers. Qubiter now has the ability to translate Qubiter qasm to Google Cirq, IBM qasm and Rigetti Pyquil. I equate these superpowers to the ability to go out on dates with an Italian bombshell actress called ROSA. ROSA is an acronym for

    Write Once, Simulate Anywhere (ROSA)

Let me explain further. In the Qubiter language, you can use as an operation: any one qubit rotation or a swap of two qubits, with any number of controls attached to them. Qubiter has tools (this Jupyter notebook shows how to use those tools) which allow you to expand such multiply controlled operations into simpler “qasm” that contains only single qubit rotations and cnots. If you want to run that Qubiter qasm on IBM’s, Rigetti’s, or Google’s hardware, Qubiter can also translate its qasm to IBM qasm, Rigetti PyQuil and Google Cirq. The notebook below shows how to do this translation

https://github.com/artiste-qb-net/qubiter/blob/master/jupyter-notebooks/translating-qubiter-english-file-to-AnyQasm.ipynb

So, the previous notebook in effect shows you how to go on a date with beautiful Miss ROSA. Hurry up and call her before she is all booked up. Signorina ROSA also enjoys befriending other females interested in quantum computing.

Me_Love_Rosa

me_love_rosa-ducks

May 24, 2018

Quantum Computing and a new book, “The Book of Why”, by Judea Pearl and Dana Mackenzie

Filed under: Uncategorized — rrtucci @ 5:23 am

“Leaping the Chasm” (1886) by Ashley Bennett, son of photographer Henry Hamilton Bennett, jumping to “Stand Rock”. See http://www.wisconsinhistory.org


Judea Pearl, UCLA professor, winner of the Turing Prize in Computer Science, is a hero to all Bayesian Network fans like me. Pearl has several books on B nets, as you can see at his Amazon page.. This blog post is to alert my readers to his most recent book, written in collaboration with Dana Mackenzie, released about a week ago, mid May 2018, entitled “The Book of Why: The New Science of Cause and Effect”.

To commemorate the release of the new book, I also wrote, besides this blog post, a small comment about the new book at the Edward Forum, and Dustin Tran, main author of Edward, responded with a comment that cites a very nice paper, less than 6 months old, by Dustin and Prof. Blei, Dustin’s thesis advisor at Columbia Univ, about the use of Judea Pearl’s causality ‘do-calculus’ within Edward.

I’ve been interested in the do-calculus for a long time, and have written two arxiv papers on the subject:

  1. Introduction to Judea Pearl’s Do-Calculus, by Robert R. Tucci (Submitted on 26 Apr 2013)
  2. An Information Theoretic Measure of Judea Pearl’s Identifiability and Causal Influence, by Robert R. Tucci (Submitted on 21 Jul 2013)
    This paper is for classical Bayesian Networks, but it can easily be generalized to quantum Bayesian Networks, by replacing probability distributions by density matrices in the information measure proposed there.

There exist more than a dozen packages written in R that implement at least partially the do-calculus. They are available at CRAN (the main R repository, named after cranberries).
This 2017 paper
contains a nice table of various R packages dealing with do-calculus.

It’s also interesting to note that BayesiaLab, a commercial software package that I love and recommend, already implements some of Pearl’s do-calculus. (full disclosure: the B net company that I work at, artiste-qb.net, has no business connections with BayesiaLab.)

By the way, artiste-qb.net provides a nice cloud service that allows you to run all these open-source do-calculus R packages on your browser, without any installation hassles. How? you ask, and if not, I’m going to tell you anyway.

***Beep, Beep, Commercial Alert***

artiste-qb.net is a multilingual (R, Python, Java, C++, English, German, Spanish, Chinese, Italian, French, you name it, we speak it) quantum open source software company.

We offer an image on AWS (the Amazon cloud service) called BayesForge.com.

BayesForge.com comes fully loaded with the Python distribution Anaconda, all of R, etc.

Bayesforge comes with most major Artificial Intelligence/Bayesian Networks, open-source packages installed, both classical ones (eg. TensorFlow, Edward, PyMC, bnlearn, etc) and quantum ones (eg., IBM Qiskit, DWave stuff, Rigetti and Google stuff, our own Quantum Fog, Quantum Edward, Qubiter, etc).

BayesForge allows you to run jupyter notebooks in Python, R, Octave (an open source matlab clone) and Bash. You can also combine Python and R within one notebook using Rmagic.

We have succeeded in dockerzing the BayesForge image and will be offering it very soon on other cloud services besides AWS, including a non-AWS cloud service in China, where AWS is so slow it is non-usable. One of our co-founders, Dr. Tao Yin, lives in ShenZhen, China, and is in charge of our China branch.

February 9, 2018

Today Enrolled our Baby (Quantum Fog) in gambling school taught by famous Monte Carlo gamblers (PyMC3, Edward, Zhusuan)

Filed under: Uncategorized — rrtucci @ 4:57 am

In the beginning, there was Matlab, which grew out of the Fortran lib Lapack (Linear Algebra Package, still one of the main software libs used to benchmark supercomputers). Matlab’s tensor stuff was copied and improved by the Python borgs to produce numpy, which handles tensors really nicely but doesn’t do it in a distributed “parallel” fashion. Then, starting about 10 years ago, some guys from the University of Montréal had the brilliant idea of writing the Theano Python Library (Theano was a Greek mathematician thought to have been the wife of Pythagoras). Theano replaces most numpy functions with Theano functions that are namesakes of the numpy ones and do the same thing in a distributed fashion. Then Google came out with the TensorFlow Python Lib, which copied Theano and improved on it. TensorFlow can do most numpy operations using multiple CPUs, GPUs and TPUs. But TensorFlow and Theano are much more than tools for doing tensor operations in a distributed fashion. They also do differentiation in a distributed fashion (such differentiation is often used to train neural nets). They are also designed to help you do fast prototyping and distributed running of artificial neural nets. In the last year, some new Python libraries built on top of TensorFlow and Theano have appeared that allow you to do fast prototyping and distributed running of Bayesian networks. B nets are dear and near to my heart and I consider them even more powerful than artificial neural networks. And I’m far from being alone in my love of b nets. Judea Pearl won the prestigious Turing prize for his pioneering work on them. Those new Python libs that I alluded to are PyMC3 (built on top of Theano), Edward (on top of TensorFlow) and Zhusuan (on top of TensorFlow). Added later: Forgot to mention that Facebook & Uber have their own Theano equivalent called PyTorch and also an Edward equivalent called Pyro. But I haven’t used them yet.

The main architect of Edward is Dustin Tran, who wrote Edward as part of his PhD thesis at Columbia Univ. Dustin now works at Google, and the TensorFlow team is working with Dustin to integrate Edward with TensorFlow.

Zhusuan is the art of using an abacus. The word means literally “bead counting” in Chinese. The Zhusuan lib is a fine open-source (under MIT license) product of the Tsinghua University in Beijing, China. It demonstrates that China is already very advanced in AI.

According to Google Trends, “TensorFlow” is at least 10 times more popular than “quantum computing” as a search term, even though TensorFlow has many competitors that started before it did and it was open sourced for the first time only 2 years ago.
qc-tf-interest-April-2018

qc-interest-April-2018

tf-interest-April-2018

One of the aims of artiste-qb.net is to participate in the revolution of extending Edward & Tensorflow so that it can do both classical and quantum Bayesian Networks. Today we took a small, initial step in that direction. We added a folder

https://github.com/artiste-qb-net/quantum-fog/tree/master/jupyter-notebooks/inference_via_ext_software

which contains a file called ModelMaker.py and two jupyter notebooks. Both notebooks do MCMC for the classical Bayesian network WetGrass. One notebook does this by invoking the external software PyMC (a.k.a. PyMC2, the precursor of PyMC3), whereas the other does it via PyMC3. Both notebooks start by loading a .bif file for the WetGrass bnet. From that alone, they construct an X native model and analyze that model using X, where X = PyMC2, PyMC3. In the near future, we will also add a notebook that does the same thing for X=Edward, Zhusuan.
Addendum(Feb.16, 2018): Added support for Edward

climbing-mt-qc(Image by Henning Dekant)

December 3, 2017

You are invited to the wedding of Quantum Computing and TensorFlow

Filed under: Uncategorized — rrtucci @ 6:42 pm

The quantum computerization of TensorFlow (TF) is a quixotic dream that no doubt has crossed the minds of many, both technically and not technically savvy, people. Here at artiste-qb.net, we are very committed and well underway to achieving this goal. Since our company is fully committed to open source, it doesn’t really matter if we achieve this goal before anyone else. If someone else beats us to it, we will learn from their code and vice versa. That is, as long as they too deliver open source to the world. And if they don’t, we think that their software is doomed…quantum open source rules! How did Google vanquish, or at least de-fang, the Microsoft monopoly? To a large extent, by using Open Source. Open source rules AI, the cloud and mobile.

So, let me tell you how we are using TF for quantum computing.

When Google first open sourced TF a mere 2 years ago, I wrote a blog post to mark the occasion. In that post, I called TF a platform for Fakesian networks instead of Bayesian networks. My beef was that TF had only deterministic nodes, which are standard in the field of artificial neural nets. It had no probabilistic nodes, which are standard in the 2 fields of classical Bayesian networks (BNets) and Hierarchical models (HM). But this past year, the open source community has fallen into the breach, filled in the gap, with a software library called Edward built on top of TF, that adds probabilistic nodes (the buzz word is “Probabilistic Deep Thinking”) to TF. And Edwards has been approved for integration into TF, so soon it will be seamless integrated into TF. Thus, soon, TF will combine artificial neural nets and BNets seamlessly. It will have superpowers!

Of course, in quantum mechanics, one must use complex amplitudes instead of probabilities for the nodes, and one must use an L2 norm instead of an L1 one with those amplitudes, so you can’t use Edward to do quantum mechanics just yet. Edward will have to be made “quantum ready”. By that we mean that one will have to rewrite parts of Edward so that it has a “quantum switch”, i.e. a parameter called ‘is_quantum’ which when True gives a quantum BNet and when False gives a classical BNet. That is precisely what artiste-qb.net’s open source program Quantum Fog already does, so our company is uniquely placed to make a quantum version of Edward.

Another obstacle to marrying TF and quantum computers is that the quantum BNets will have to be compiled into a sequence of elementary operations (SEO) such as control nots and single qubit rotations. Once again, our company artiste-qb.net is uniquely placed to accomplish this task. Our open source quantum simulator Qubiter is the only one in the business that includes a “quantum csd complier”, which is a tool that will help express quantum BNets as a SEO.

HMs are really a subset of BNets. However, the BNet and HM communities have historically grown somewhat independently. The BNet community is centered around pioneers like Judea Pearl (at UCLA), inventor of some of the most important BNet methods, whereas the HM community is centered around pioneers like Andrew Gelman (at Columbia), author of many great books and a great blog in the HM field. The HM tribe only uses continuous distributions for node probabilities, and they are very keen on MCMC (Markov Chain Monte Carlo). The BNet community uses both discrete (expressed as matrices or tensors) and continuous distributions for their node probabilities, and they use MCMC and other methods too, like the junction tree method, to do inferences.

Edward has a distinguished pedigree in both the BNet and HM communities. Edward originated in Columbia Univ. One of its main and original authors is Dustin Tran, currently a PhD student at Columbia. So you can be sure that the Edward people are in close communication and receive useful feedback from the Gelman tribe. Another distinguished author of Edward is Kevin Murphy, who has been working on BNets for more than a decade. Murphy wrote the oldie but goodie Bayes Net toolbox for Matlab. He has also written several books on bnets and machine learning. He previously worked as a prof at the Univ. of British Columbia but he now works at Google. He is one of the main organizers of the young (2 year old) Bayesian Deep Learning conference, which, by the way, will have its annual meeting in less than a week (Dec. 9, 2017).

Classical BNets are a very active field, both in academic research and in commerce. Judea Pearl won a Turing award for them. BNets are very popular in bioinformatics, for example. Whereas no qc company has yet broken-even financially, there are classical BNet companies that have lasted and been profitable for almost 2 decades, such as Bayesia, Hugin and Norsys/Netica.

Oh, and one last thing. It’s called TensorFlow, not TensorNetwork, for a very good reason. If you try to use TF to implement the “tensor networks” used in quantum computing, you will fail, unless you start using BNets instead of Tensor Networks and pretend these 2 are the same thing, which is probably what the Tensor Networks people will do. In TF (and BNets), the lines emanating out of a node carry in them a full tensor that they pass along to other nodes. In a Tensor Network, a Tensor does not Flow into the arrows emanating out of its node. The tensor just sits in the node. For more discussion about the important differences between a quantum BNet and a Tensor Network, see this blog post.
https://qbnets.wordpress.com/2015/03/26/tensor-networks-versus-quantum-bayesian-networks-and-the-winner-is/

November 18, 2017

Strange Connection Between ATOS corporation and Oak Ridge National Laboratory (ORNL) Quantum Computing Division

Filed under: Uncategorized — rrtucci @ 2:30 pm

The ATOS corporation, based in Bezons, France, has a really bad reputation in some countries like the UK. To see this, check out, for example, the “Controversy” section of the Wikipedia entry on ATOS.

On October 20, 2017, ORNL put out a press release entitled:
“Two ORNL-led research teams receive $10.5 million to advance quantum computing for scientific applications”

On Nov 13, 2017, ATOS put out the following press release: click here

This is very odd because a quantum simulator of 30 qubits is not considered leading edge nowadays. Google/ProjectQ have simulated 45 qubits and IBM has simulated 56 qubits. Furthermore, ORNL owns the Titan supercomputer, one of the largest supercomputers in the world. ORNL is at the forefront of HPC, so why did they buy an expensive albeit not very powerful French machine to do quantum simulations? Like selling coals to Newcastle, isn’t it? ATOS claims to offer a “Quantum Learning Machine” that runs a quantum language called aQasm, but their language is closed source. I haven’t found any tutorial, or examples, or open source software for it, no matter how hard I’ve looked. Why did ORNL, a DOE weapons lab in the very red #MAGA state of Tennessee, do something so un-MAGA and unpatriotic by MAGA standards, namely, to buy expensive French closed-source software and hardware when American companies like IBM and Google already provide an open-source quantum language and development kit and cloud usage of it for quantum simulations? Is this evidence of government waste, abuse or corruption, and does the government care?

October 23, 2017

Vicious Game of Battleship Currently Being Played in Quantum Computing Software World Between IBM and Google

Filed under: Uncategorized — rrtucci @ 4:48 pm

The competition between IBM and Google to hog the quantum computing limelight has been fairly intense this year. The following 2 high stakes games of Battleship are currently being played. Yikes. (Footnote: Google seems to have decided to marry the opaque, poorly designed software of ProjectQ so I lump them together below.)

original-battleship-game

Thanks son. You have crushed my spirit and now I will divorce your mom and leave you to her with no alimony.

August 15, 2017

Resistance is Futile: Jupyter Borg Threatens to Assimilate Quantum Computing Universe

Filed under: Uncategorized — rrtucci @ 5:00 pm

A week ago, IBM announced at its Quantum Experience usegroup that it had uploaded to github a large collection of jupyter notebooks exhibiting the use of their gate model quantum computer (previously 5 qubits, currently 16 qubits). I consider this an excellent addition to the quantum open source and free jupyter notebook universe and ecosystem. I’ve advocated for quantum open source and jupyter notebooks many times before in this blog, so it’s a pleasure for me to echo their announcement.

Pow! Right in the kisser of Microsoft’s Liqui|> software. Liqui|> is closed source software.

Google has announced that it will deliver by year’s end a 49 qubit gate model qc with accompanying open source software and cloud service. The jupyter ball is now in your court, Google.

Artiste-qb.net, the company that I work for, already provides a large and ever growing library of jupyter notebooks for both of its quantum open source offerings, Qubiter and Quantum Fog.

Rigetti’s PyQuil and ProjectQ are two other gate model qc simulators analogous to IBM quantum experience. So far these two have very few jupyter notebooks. Wimps! Laggards! Let them eat cake!

borg-cake

Borg Cake

jupyter-cake

Jupyter Cake

April 29, 2017

Miss Quantum Computing, may I introduce to you Miss Bayesian Hierarchical Models and Miss MCMC?

Filed under: Uncategorized — rrtucci @ 5:49 pm

Warning: Intense talk about computer software ahead. If you are a theoretical computer scientist, you better stop reading this now. Your weak constitution probably can’t take it.

When you enter the nerd paradise and secret garden that is Bayesforge.com (a free service on the Amazon cloud), you will see one folder named “Classical” and another named “Quantum”. Here is a screenshot of this taken from Henning Dekant’s excellent post in Linkedin

The “Quantum” folder contains some major open source quantum computing programs: Quantum Fog, Qubiter, IBM-QisKit (aka kiss-kit), QuTip, DWave, ProjectQ, Rigetti

The “Classical” folder contains some major Bayesian analysis open source programs: Marco Scutari’s bnlearn (R), Kevin Murphy’s BNT (Octave/matlab), OpenPNL (C++/matlab), PyMC, PyStan.

The idea is to promote cross fertilization between “Quantum” and “Classical” Bayesian statisticians.

Today I want to talk mostly about PyMC and PyStan. PyMC and PyStan deal with “Hierarchical Models” (Hmods). The other programs in the “Classical” folder deal with “Bayesian Networks”(Bnets).

Bnets and Hmods are almost the same thing. The community of people working on Bnets has Judea Pearl as one of its distinguished leaders. The community of people working on Hmods has Andrew Gelman as one of its distinguished leaders. You might know Gelman (Prof. at Columbia U.) from his great blog “Statistical Modeling, Causal Inference, and Social Science” or from one of his many books

Both PyStan and PyMC do MCMC (Markov Chain Monte Carlo) for Hmods. They are sort of competitors but also complementary.

PyStan (its GitHub repo here) is a Python wrapper of a computer program written in C++ called Stan. According to Wikipedia, “Stan is named in honour of Stanislaw Ulam, pioneer of the Monte Carlo method.” Prof. Gelman is one of the fathers of Stan (I mean the program, of course).

PyMC comes in 2 incompatible versions: 2.X and 3.X. Version 3 is more advanced and intends to replace Ver 2. PyMC2’s best sampler is a Metropolis-Hastings (MH) sampler. PyMC3 contains an MH sampler, but it also contains the “No U turns” or “NUTS” sampler that is supposed to be much faster than MH for large networks. Currently, Bayesforge contains only PyMC2, but the next version will contain both PyMC2 and PyMC3. As an added bonus, PyMC3 comes with Theano, one of the leading deep neural networks frameworks.

Check out this really cool course:

Sta-663 “Statistical Programming” , available at GitHub, taught at Duke U. by Prof. Chi Wei Cliburn Chan.

This wonderful course has some nice jupyter notebooks illustrating the use of PyMC2, PyMC3 and PyStan. Plus it contains discussions of many other statistical programmimg topics. I love it. It has a similar philosophy to BayesForge, namely to do statistical programming with jupyter notebooks because they are great for communicating your ideas to others and allow you to combine seamlessly various languages like Python, R, Octave, etc

February 22, 2017

Quantum Fog’s weight in bnlearn units

Filed under: Uncategorized — rrtucci @ 2:42 am

In a recent blog post entitled “R are Us. We are all R now”, I expressed my great admiration for the R statistical computer language, and I announced the addition to the Quantum Fog (QFog) GitHub repository of a Jupyter notebook called “Rmagic for dummies” which explains how something called Rmagic allows one to run both Python and R in the same Jupyter notebook.

In 2 other earlier blog posts, I also expressed great admiration for something else, bnlearn, an open source computer program written in R by Marco Scutari for learning classical Bayesian networks (cbnets) from data. I consider bnlearn the gold standard of bnet learning software.

The main purpose of this blog post is to announce that the QFog GitHub repo now has a folder of Jupyter notebooks comparing QFog to bnlearn. This is a perfect application of Rmagic to comparing two applications that can do some of the same things but one app is written in R while the other is written in Python. Pitting QFog against bnlearn is highly beneficial to us developers of QFog because it shows us what needs to be improved and suggests new features that would be worthwhile to add.

QFog can do certain things that bnlearn can’t (most notably, QFog can do both classical and quantum bnets, whereas bnlearn can only do classical bnets), and vice versa (for instance, bnlearn can do bnets with continuous (Gaussian) node probability distributions, whereas QFog can only handle discrete PDs), but there is much overlap between the 2 software packages in the area of structure and parameter learning of classical bnets from data.

A cool feature of the folder of Jupyter notebooks comparing bnlearn and QFog is that most notebooks in that folder can be spawned and run from a single “master” notebook. This amazing ability of the “master” notebook to create and direct a zombie horde of other notebooks is achieved thanks to an open source Python module called “nbrun” (notebook run).

qfog-bnlearn-scales

Next Page »

Create a free website or blog at WordPress.com.

%d bloggers like this: