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
量子コンピューター超入門ハンズオン 補足資料 線形代数
Search
Ayumu-walker
April 24, 2020
Science
1.7k
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
量子コンピューター超入門ハンズオン 補足資料 線形代数
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
量子コンピューター超入門ハンズオン 2020/04/24
ayumu0118
1
1.6k
Other Decks in Science
See All in Science
なぜエネルギーは保存する? 〜自由落下でわかる“対称性”とネーターの定理〜
syotasasaki593876
0
180
機械学習 - pandas入門
trycycle
PRO
0
620
データベース08: 実体関連モデルとは?
trycycle
PRO
0
1.2k
AkarengaLT vol.41
hashimoto_kei
1
140
HDC tutorial
michielstock
2
710
Wet Active Matter
rajeshrinet
0
100
CVPR2026_VGGTとその仲間たち
mickey_0226
0
830
先端因果推論特別研究チームの研究構想と 人間とAIが協働する自律因果探索の展望
sshimizu2006
3
940
主成分分析に基づく教師なし特徴抽出法を用いたコラーゲン-グリコサミノグリカンメッシュの遺伝子発現への影響
tagtag
PRO
0
270
Non-Gaussian, nonlinear causal discovery with hidden variables and application
sshimizu2006
0
130
明治薬科大学講義_ビッグデータ解析を支えるデータベース技術とクラウドコンピューティング
ktatsuya
1
110
機械学習 - K-means & 階層的クラスタリング
trycycle
PRO
0
1.7k
Featured
See All Featured
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
31
3.2k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
49
10k
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
0
530
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
Why You Should Never Use an ORM
jnunemaker
PRO
61
9.9k
Thoughts on Productivity
jonyablonski
76
5.2k
Building Flexible Design Systems
yeseniaperezcruz
330
40k
The Cult of Friendly URLs
andyhume
79
6.9k
Facilitating Awesome Meetings
lara
57
7k
The AI Search Optimization Roadmap by Aleyda Solis
aleyda
1
5.9k
Paper Plane
katiecoart
PRO
1
51k
Taking LLMs out of the black box: A practical guide to human-in-the-loop distillation
inesmontani
PRO
3
2.3k
Transcript
量子コンピューター超入門ハンズオン 補足資料:線形代数
2 簡単なベクトル/行列計算の復習 • 始める前に、ちょっとした計算ルールを頭に入れておきましょう! • 量子コンピューターの世界では、数学の世界と以下のような対応関係があります。 11 ⋯ 1 ⋮
⋱ ⋮ 1 ⋯ 1 ⋮ ベクトル 行列 量子状態 (計算に使うデータ) 量子状態(データ)に 対する操作(ゲート) 1 … 量子コンピューターの世界 (量子力学) 数学の世界 計算上の表現 縦ベクトル 横ベクトル
3 簡単なベクトル/行列計算の復習 1 ⋮ + 1 ⋮ = 1 +
1 ⋮ + 1 … + 1 … = 1 + 1 … + 11 ⋯ 1 ⋮ ⋱ ⋮ 1 ⋯ + 11 ⋯ 1 ⋮ ⋱ ⋮ 1 ⋯ = 11 + 11 ⋯ 1 + 1 ⋮ ⋱ ⋮ 1 + 1 ⋯ + 縦ベクトル: 横ベクトル: 行列: • ベクトル/行列は、同じ成分の箇所通しを足し引きすることが可能です。 • 構造の同じもの同士でしか、演算はできません。 • 引き算についても同様です。
4 簡単なベクトル/行列計算の復習 • ベクトルと行列の定数倍 • 全ての成分に定数倍を掛けるだけ • 行列とベクトルの掛け算 • 黄色の行と青色の列の成分を、1つずつ掛けて、全て足し合わせて、ベクトルの1つの成分(緑色)とな
る • 行列同士の掛け算 • 行列とベクトルの掛け算と同じ計算をして、行列の1つの成分(緑色)となる 11 ⋯ 1 ⋮ ⋱ ⋮ 1 ⋯ 1 ⋮ = 11 1 + … +1 ⋮ ⋮ 1 1 + … + 11 ⋯ 1 ⋮ ⋱ ⋮ 1 ⋯ 11 ⋯ 1 ⋮ ⋱ ⋮ 1 ⋯ = 11 11 + … + 1 1 ⋯ 11 1 + ⋯ + 1 ⋮ ⋱ ⋮ 1 11 + … + 1 ⋯ 1 1 + ⋯ + 1 ⋮ = 1 ⋮ 11 ⋯ 1 ⋮ ⋱ ⋮ 1 ⋯ = 11 ⋯ 1 ⋮ ⋱ ⋮ 1 ⋯
5 簡単なベクトル/行列計算の復習 • 以下のベクトルと行列を使って計算の仕方を学びます。 • ベクトル/行列の足し算/引き算 • ベクトル/行列の定数倍 v= 1
3 w= 2 5 A= −2 4 3 1 B= −1 1 3 6 v+w= 1 2 + 2 5 = 1 + 2 2 + 5 = 3 7 v-w= 1 2 − 2 5 = 1 − 2 2 − 5 = −1 −3 A+B= −2 4 3 1 + −1 1 3 6 = −2 − 1 4 + 1 3 + 3 1 + 6 = −3 5 6 7 A-B= −2 4 3 1 − −1 1 3 6 = −2 − (−1) 4 − 1 3 − 3 1 − 6 = −1 3 0 −5 2v=2* 1 3 = 2 ∗ 1 2 ∗ 3 = 2 6 3A=3 ∗ −2 4 3 1 = 3 ∗ −2 3 ∗ 4 3 ∗ 3 3 ∗ 1 = −6 12 9 3
6 簡単なベクトル/行列演算の例 ~続き~ • 行列とベクトルを掛ける例(量子状態にゲートを通した後の状態を計算していることに等しい) • 行列同士の掛け算 Av= −2 4
3 1 1 3 = −2 ∗ 1 + 4 ∗ 3 3 ∗ 1 + 1 ∗ 3 = −2 ∗ 1 + 4 ∗ 3 3 ∗ 1 + 1 ∗ 3 = −2 + 12 3 + 3 = 10 6 AB= −2 4 3 1 −1 1 3 6 = −2 ∗ −1 + 4 ∗ 3 −2 ∗ 1 + 4 ∗ 6 3 ∗ −1 + 1 ∗ 3 3 ∗ 1 + 1 ∗ 6 = 2 + 12 −2 + 24 −3 + 3 3 + 6 = 14 22 0 9 BA= −1 1 3 6 −2 4 3 1 = −1 ∗ −2 + 1 ∗ 3 −1 ∗ 4 + 1 ∗ 1 3 ∗ −2 + 6 ∗ 4 3 ∗ 4 + 6 ∗ 1 = 2 + 3 −4 + 1 −6 + 24 12 + 6 = 5 −3 18 18 *行列の掛け算は順番を変えても同じになるとは限らない! → どのゲートをどの順番で通すかを慎重に考えることが必要になる!
7 量子計算に使う量子状態のベクトル表現 • 古典ビットと同様に、1つの量子ビットも、2つの値を持ちえる • これは、古典ビットにおける0と1に相当 • 通例として、|0>と|1>のように表現する • この表現方法は、ブラケット表記と呼ばれ、上記はケットベクトルと呼ぶ
• 便宜的に、|0>と|1>は次のようなベクトルとして表現すると、演算が簡単になる • 後続のハンズオンでは、以下を使って計算を行う • 2量子ビットの場合は4つ(00、01、10、11)を使って表現できる |0>= 1 0 |1>= 0 1 |00>= 1 0 0 0 |01>= 0 1 0 0 |10>= 0 0 1 0 |11>= 0 0 0 1
8 量子計算に使う量子状態のベクトル表現の例 |+>= 1 2 |0> + 1 2 |1>=
1 2 1 0 + 1 2 0 1 = 1 2 1 2 |->= 1 2 |0> − 1 2 |1>= 1 2 1 0 − 1 2 0 1 = 1 2 − 1 2
9 量子計算に使う量子状態のベクトル表現の例 |>= 1 2 |00> + 1 2 |01>
+ 1 2 |10>+ 1 2 |11> = 1 2 1 0 0 0 + 1 2 0 1 0 0 + 1 2 0 0 1 0 + 1 2 0 0 0 1 = Τ 1 2 Τ 1 2 Τ 1 2 Τ 1 2
10 代表的な量子ゲート一覧 10 行列表現 Qiskitでの コード Qiskitでの 回路表示 Xゲート x
Yゲート 0 − 0 y Zゲート − z Hゲート − h CNOTゲート cx Sゲート 1 0 0 s Tゲート 1 0 0 2 t |0>と|1>の状態を入れ替える |1>の状態の確率振幅の 符号を逆にする |0>もしくは|1>の状態から 重ね合わせ状態を作りだす 上の状態が|1>なら下の状態 にXゲートと同じ操作をする。 それ以外は何もしない
11 • |0>の状態にXゲート(|0>と|1>を入れ替える)に通した場合 • |0>の状態をHゲート(重ね合わせ状態を作る)に通した場合 ゲートの計算例 X ۧ |0 =
0 1 1 0 1 0 = 0 ∗ 1 + 1 ∗ 0 1 ∗ 1 + 0 ∗ 0 = 0 1 = ۧ |1 H ۧ |0 = 1 2 1 1 1 −1 1 0 = 1 2 1 ∗ 1 + 1 ∗ 0 1 ∗ 1 − 1 ∗ 0 = 1 2 1 1 = 1 2 1 0 + 1 2 0 1 = 1 2 ۧ |0 + 1 2 ۧ |1 = ۧ |+