Summary Quantum computers promise the ability to execute calculations at speeds several orders of magnitude faster than what we are used to. Machine learning and artificial intelligence algorithms require fast computation to churn through complex data sets. At Xanadu AI they are building libraries to bring these two worlds together. In this episode Josh Izaac shares his work on the Strawberry Fields and Penny Lane projects that provide both high and low level interfaces to quantum hardware for machine learning and deep neural networks. If you are itching to get your hands on the coolest combination of technologies, then listen now and then try it out for yourself. Announcements Hello and welcome to Podcast.__init__, the podcast about Python and the people who make it great. When you’re ready to launch your next app or want to try a project you hear about on the show, you’ll need somewhere to deploy it, so take a look at our friends over at Linode. With 200 Gbit/s private networking, node balancers, a 40 Gbit/s public network, fast object storage, and a brand new managed Kubernetes platform, all controlled by a convenient API you’ve got everything you need to scale up. And for your tasks that need fast computation, such as training machine learning models, they’ve got dedicated CPU and GPU instances. Go to pythonpodcast.com/linode to get a $20 credit and launch a new server in under a minute. And don’t forget to thank them for their continued support of this show! As a developer, maintaining a state of flow is key to your productivity. Don’t let something as simple as the wrong function ruin your day. Kite is the smartest completions engine available for Python, featuring a machine learning model trained by the brightest stars of GitHub. Featuring ranked suggestions sorted by relevance, offering up to full lines of code, and a programming copilot that offers up the documentation you need right when you need it. Get Kite for free today at getkite.com with integrations for top editors, including Atom, VS Code, PyCharm, Spyder, Vim, and Sublime. You listen to this show to learn and stay up to date with the ways that Python is being used, including the latest in machine learning and data analysis. For even more opportunities to meet, listen, and learn from your peers you don’t want to miss out on this year’s conference season. We have partnered with organizations such as O’Reilly Media, Corinium Global Intelligence, ODSC, and Data Council. Upcoming events include the Software Architecture Conference in NYC, Strata Data in San Jose, and PyCon US in Pittsburgh. Go to pythonpodcast.com/conferences to learn more about these and other events, and take advantage of our partner discounts to save money when you register today. Your host as usual is Tobias Macey and today I’m interviewing Josh Izaac about how the work that he is doing at Xanadu AI to make it easier to build applications for quantum processors Interview Introductions How did you get introduced to Python? Can you start by describing what you are working on at Xanadu AI? How do the specifics of your quantum hardware influence the way in which developers need to build their algorithms? (e.g. as compared to DWave) What are some of the underlying principles that developers need to understand in order to take full advantage of the capabilities provided by quantum processors? Can you outline the different components and libraries that you are building to simplify the work of building machine learning/AI projects for quantum processors? What’s the story behind all of the Beatles references? How do the different libraries fit together? What are some of the workloads and use cases that you and your customers are focused on? What are some of the most challenging aspects of designing a library that is accessible to developers while being able to take advantage of the underlying hardware? How does the workflow for machine learning on quantum computers differ from what is being done in classical environments? Given the magnitude of computational power and data processing that can be achieved in a quantum processor it seems that there is a potential for small bugs to have disproportionately large impacts. How can developers identify and mitigate potential sources of error in their algorithms? For someone who is building an application or algorithm to be executed on a Xanadu processor, what does their workflow look like? What are some of the common errors or misconceptions that you have seen in customer code? Can you describe the design and implementation of the Penny Lane and Strawberry Fields libraries and how they have evolved since you first began working on them? What are some of the most ambitious or exciting use cases for quantum systems that you have seen? How are you using the computational capabilities of your platform to feed back into the research and design of successive generations of hardware? What are some useful heuristics for determining whether it is worthwhile to build for a quantum processor rather than leveraging classical hardware? What are some of the most interesting/unexpected/useful lessons that you have learned while working on quantum algorithms and the libraries to support them? What is in store for the future of the Xanadu software ecosystem? What are your predictions for the near to medium term of quantum computing? Keep In Touch josh146 on GitHub Website LinkedIn Picks Tobias Knives Out movie Josh Baking Sourdough Bread Closing Announcements Thank you for listening! Don’t forget to check out our other show, the Data Engineering Podcast for the latest on modern data management. Visit the site to subscribe to the show, sign up for the mailing list, and read the show notes. If you’ve learned something or tried out a project from the show then tell us about it! Email hosts@podcastinit.com) with your story. To help other people find the show please leave a review on iTunes and tell your friends and co-workers Join the community in the new Zulip chat workspace at pythonpodcast.com/chat Links Xanadu AI Strawberry Fields PennyLane Quantum Physics ASIC == Application Specific Integrated Circuit FPGA == Field Programmable Gate Array GPU == Graphics Processing Unit Quantum Photonics Qubit Trapped Ions Quantum Optics Coherent Light Heisenberg’s Uncertainty Principle Wave/Particle Duality Continuous Variable Quantum Computation NetworkX Tensorflow The Walrus Rigetti Computing PyTorch Podcast Episode The Walrus Operator (Assignment Expressions) Fortran NumPy SciPy IPython Podcast Episode Jax Quantum Machine Learning Xanadu User Discussion Forum The intro and outro music is from Requiem for a Fish The Freak Fandango Orchestra / CC BY-SA