Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
量子コンピューター超入門ハンズオン 2020/04/24
Search
Ayumu-walker
April 24, 2020
Technology
1.6k
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
量子コンピューター超入門ハンズオン 2020/04/24
Ayumu-walker
April 24, 2020
More Decks by Ayumu-walker
See All by Ayumu-walker
IBM Quantum Challenge Spring 2023 Lab5解説
ayumu0118
0
250
円周率の日スペシャル 量子コンピューターと円周率の話
ayumu0118
0
950
IBM Cloud Festa 2020 GUIから始める量子コンピューター超入門
ayumu0118
1
840
量子コンピューター超入門ハンズオン 補足資料 線形代数
ayumu0118
1
1.7k
Other Decks in Technology
See All in Technology
LLMにもCAP定理があるという話
harukasakihara
0
380
Android の公式 Skill / Android skills
yanzm
0
150
エラーバジェットのアラートのタイミングを考える.pdf
kairim0
0
150
Disciplined Vibes: Scaling AI-Assisted Engineering
sheharyar
0
150
SONiC Scale-Up Working Group から探る Scale-UpやUltraEthernet機能の実装方法
ebiken
PRO
2
350
GitHub Copilot 最新アップデート – 「一歩先」の実践活用術
moulongzhang
4
1k
中期計画、2回作ってみた ~業務委託と正社員、両方の視点から~
demaecan
1
880
Bedrock AgentCore RuntimeでAuth0 Changelog調査AIをアップグレードした話
t5u8a5a
1
160
マルチアカウント環境での コーディングエージェントを使った障害調査が大変なので AIエージェントにReadOnly権限を付与してみた / ReadOnly AI Agents for Multi-Account AWS Incident Response
yamaguchitk333
2
110
データサイエンスを価値につなげるプロジェクト設計 〜 DS一年目が現場で得た気づき 〜
ysd113
1
260
失敗を資産に変えるClaude Code
shinyasaita
0
670
なぜ Platform Engineering の土台に Kubernetes を選ぶのか
r4ynode
2
640
Featured
See All Featured
AI: The stuff that nobody shows you
jnunemaker
PRO
8
710
Building the Perfect Custom Keyboard
takai
2
790
What the history of the web can teach us about the future of AI
inesmontani
PRO
1
610
How to audit for AI Accessibility on your Front & Back End
davetheseo
0
430
JAMstack: Web Apps at Ludicrous Speed - All Things Open 2022
reverentgeek
1
470
Build your cross-platform service in a week with App Engine
jlugia
234
18k
State of Search Keynote: SEO is Dead Long Live SEO
ryanjones
0
200
Docker and Python
trallard
47
3.9k
Being A Developer After 40
akosma
91
590k
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
720
Practical Orchestrator
shlominoach
191
11k
Bash Introduction
62gerente
615
220k
Transcript
量子コンピューター超入門ハンズオン 2020/04/24
2 アジェンダ 1. 量子コンピューターの概要 2. IBM QとQiskit 3. ハンズオンの進め方について
量子コンピューター概要
4 量子コンピューターとは • 量子性を積極的に利用して計算する計算機 • 量子性とはミクロの世界で起こりうる「重ね合わせの原理」、「量子もつれ」などの人間が直感的には受け入れにくい 性質を指す • 現在利用しているコンピューター(古典コンピューターと表記)とは計算中のデータの持たせ方や、計算のルールが異 なる
5 量子コンピューターを使うモチベーション • 現在のスパコンを含むコンピューターではサイズが大きくになるにつれて解くのに必要なステップ が“爆発的に”大きくなる問題を、“高速”に解くことができる問題が存在する可能性が示唆されてい る • 例:素因数分解(RSA暗号、楕円曲線暗号など) • 現在近い将来で期待されている応用
• 量子化学計算 → 創薬、新材料の開発 • 量子機械学習 → AI開発 • ただし、量子コンピューターが全ての計算を高速化するものではなく、特定の問題に対して高速化 可能な量子アルゴリズムが適用できる場合に限られることに注意
6 量子コンピューターで一部の計算処理が高速になるイメージ 地球 (古典コンピューター) (量子コンピューター) 量子コンピューターでは計算中のデー タの持ち方やルールが違うことで、古 典コンピューターでは通れない抜け道 (量子アルゴリズム)が存在が場合が あるため、計算処理が高速化される
7 古典コンピューターと量子コンピューターの比較 • 古典コンピューター(普通のコンピューター)と量子コンピューターの決定的な違いは、計算中の データの持ち方が異なる • データはビット(0と1の2値を取るデータの最小単位)で表現される • 例えば、int型で100=01100100(2進数)と表現され、コンピューターの中で利用される •
古典ビットは、一時点でデータが確定した状態を取る • 量子ビットは、計算途中では、出現しうる全てのデータの出現する可能性の重ね合わせで表現される 0 0 0 1 0 0 0 0 0 1 1 0 0 1 1 0 0 0 1 0 0 0 0 0 or 古典ビット 量子ビット 1 1 1 1 1 and 古典コンピューターでのデータの持ち方 量子コンピューターでのデータの持ち方
8 重ね合わせの原理と測定 |量子ビットの状態> = | > +| > |0 >
|1 > ||2の確率で ||2の確率で 上向き(状態が0)でもあり 下向き(状態が1)でもある 観測すると・・・ • 測定とは計算した量子ビットの値が0と1のどちらになるかを読み出す処理であり、計算結果を確定 させることを意味する • 重ね合わせの原理によって、異なる状態(例えば、ビットの値が0と1)が測定した時にそれぞれ確 率的に出現する状態を作れる • 0か1の古典ビットと同じ形の値のどちらかが測定される • どれくらいの確率で測定されるかは、確率振幅から計算できる(以下の、αとβが確率振幅) • 確率振幅から確率を求めるには、絶対値の2乗を計算する必要がある
9 量子コンピューターが行う実際の計算イメージ • 量子コンピューターでは、最後に測定(計算結果の読み出し)のタイミングまでに、求める結果 (ビット列)の出現確率が1に近づくように実装する • 最後に|11>の状態だけが残るグローバーのアルゴリズムの確率振幅がどう変化していくかのイメージ(ハンズオン7にて実装) ①重ね合わせの原理で、全ての状態の 出現確率を均等に0.25(=0.5×0.5) に揃える
②確率を増やしたい状態|11> をマーキングする ③マーキングした確率を増幅させ、 それ以外の確率を減らす ④|11>の状態だけが、確率1で 出現する状態にできた
10 IBM QとQiskit • IBM Q:IBMが提供する量子コンピューターの実機 • Qiskit:IBMが提供するPythonベースの量子コンピューターフレームワーク(OSS) • Qiskitは量子シミュレーターと実機へのリクエストの両方の機能を持ち合わせる
• IBM Q Experience:クラウド上の実行環境 • GUIとJupyter Notebookの環境を提供 IBM Q Experience
11 ハンズオンの進め方 • ハンズオンは、Jupyter Notebookに記述されたコンテンツを利用します。 • https://github.com/quantum-tokyo/qiskit-handsonにアクセスしてください。 • コンテンツをダウンロードしてください。 •
実行環境はローカルPCか、IBM Q Experienceのどちらかを利用できます。 • コンテンツは自習可能な教材となっており、説明を読む→問題を解く→回答を確認するという流れ で進められます。 • 先に進められる方は、ご自身のペースで読み進めながら、ハンズオンを進めていただいて構いませ ん。 • ペースメーキングのために、適宜内容の解説をします。