2023年2月22日水曜日

驚異でもあり脅威でもあるChat GPTを使ってみた

 話題のChat GPTを、試してみました。以下の例1、例2、例3に関しては、知識人の回答の如くで、素晴らしい!だが待て。必ずどこかで間違った事項が含まれる場合があるだろう。間違い(または的外れ)があっても、自信を持って、流暢に答えてくるところが恐ろしい。それを知らずに信じて利用しそうである。GPTに悪意は無いのだろうが、そこが脅威なのである。だが、とりあえず、以下の例を楽しもう!!!

●【例1】自分が書いた以下のような10行程度の文章を使って、Q & Aを試してみました。その結果は、驚異の一言です。以下の連続チャットQ1→A1→Q2→A2、何とも言えません。誰か人間と対話しているみたいにも感じられます。
-------------------------------------------------------------
私の質問(Q1): 以下の文章で作者は、なぜオオワシを登場させたのでしょうか?
「現在、機械学習、AI、IoT に関するリテラシー及び専 門的な技術教育はどの大学でも定着している。一方、不 気味に迫ってくるものを感じ取っている大学関係者も多 いであろう。それこそが「量子コンピューティング」な のである。オオワシの幼鳥が既に巣立ちを向えて羽ばた き始めているが如くである。気になっていても、どう着 手すればよいのかは悩むところである。だが、量子コン ピューティングは、そう遠くないうちに雪崩の如く押し 寄せるに違いない。早めの準備が必要であろう。政府の量子未来社会ビジョンにも、今後の量子技術の 重要性が謳われている。政府は量子技術に関するサービ スの利用者を 2030 年に 1000 万人とする目標を掲げてい て、ことしは実用化に向けた動きが加速する勢いである。 その中核は、量子コンピューティングであろう。今言わ れている IT 技術の次に注目されるのは量子コンピューテ ィングであることはほぼ間違いないであろう。大学教育おいて、すでにその取り組みを進めていると ころも増えてきた。量子コンピューティングというもの を、どのように学び教えるかについて考察する。筆者が これまでに行ってきた、量子アニーリング型とゲート型 の量子コンピューティングへの取り組みに基づいた見解 も示したい。」

-------------------------------------------------------------
Chat GPTの答え(A1):この文章において、作者がオオワシを登場させた理由は、量子コンピューティングが不気味で迫ってくる存在であることを示すためであると考えられます。オオワシは、幼鳥が巣立ちを始め、羽ばたき始めるという比喩的な表現に用いられています。同様に、量子コンピューティングも既に実用化に向けた動きが加速しており、今後さらに急速に普及していくことが予想されているため、大学関係者や学生たちは早急に準備する必要があるというメッセージを伝えるために、オオワシの比喩が使われたのでしょう。

-------------------------------------------------------------
私の質問(Q2):オオワシではなく、スズメではダメなのでしょうか?

-------------------------------------------------------------
Chat GPTの答え(A2):文章の文脈からは、オオワシが登場することで強調されるべき重要なことがあるという意図が感じられます。つまり、オオワシはその力強いイメージから、近い将来押し寄せる量子コンピューティングの重要性を表現するために選ばれたのでしょう。スズメでも同様の意図があるかどうかは分かりませんが、オオワシのイメージが持つ強さや迫力は、文脈に合っていると思われます。
実際のQ &Aの画面

●【例2】さらに、別のやさしい基本的な技術的質問をしてみました。こちらの連続チャット、Q1→A1→Q2→A2もまともです。結果だけでなく、(求めてもいないのに)計算が解説付きで正確に示されています。もっと驚きは、Q2での「|1>についてはどうですか」という質問(何を問われているのか)を的確に捉えていることです!
-------------------------------------------------------------
私の質問(Q1): 量子状態 |0> にアダマール変換を施し、さらにもう一度アダマール変換を行い、測定するとどうなりますか?

-------------------------------------------------------------
Chat GPTの答え(A1):量子状態 |0> にアダマール変換を施すと、以下のようになります。
H|0> = (1/√2) |0> + (1/√2) |1>
次に、この状態に再度アダマール変換を施すと、以下のようになります。
H(H|0>) = H((1/√2) |0> + (1/√2) |1>)
= (1/2) (H|0> + H|1> + H|0> - H|1>)
= (1/2) (|0> + |1> + |0> - |1>)
= |0>
最後に、この状態を測定すると、状態 |0> が測定される確率が100%となります。
つまり、量子状態 |0> にアダマール変換を2回施して測定すると、必ず状態 |0> が得られます。

-------------------------------------------------------------
私の質問(Q2): では、|1> についてはどうですか?

-------------------------------------------------------------
Chat GPTの答え(A2):量子状態 |1> にアダマール変換を施すと、以下のようになります。
H|1> = (1/√2) |0> - (1/√2) |1>
次に、この状態に再度アダマール変換を施すと、以下のようになります。
H(H|1>) = H((1/√2) |0> - (1/√2) |1>)
= (1/2) (H|0> - H|1> + H|0> + H|1>)
= (1/2) (|0> - |1> + |0> + |1>)
= |1>
最後に、この状態を測定すると、状態 |1> が測定される確率が100%となります。
つまり、量子状態 |1> にアダマール変換を2回施して測定すると、必ず状態 |1> が得られます。
-------------------------------------------------------------


●【例3】最後に、Chat GPT自身に、驚異/脅威についての見解を聞いて見ました!これも立派な答えですね。
-------------------------------------------------------------
私の質問(Q1): チャットGPTは驚異的な結果を与えてくれますが、人間社会で脅威となることはありませんか?

-------------------------------------------------------------
Chat GPTの答え(A1):人工知能技術の進歩は、将来的には人間社会にいくつかのリスクをもたらす可能性があると考えられています。たとえば、人工知能が人間の仕事を奪うことや、悪意ある人々が人工知能を悪用して攻撃的な目的を達成することが懸念されています。

私が人間社会に脅威となる可能性があるとすると、それは私を使用する人々が私を悪用することがあるためです。例えば、私を使用してフィッシング詐欺、スパムメール、あるいは偽の情報を拡散することが考えられます。しかし、OpenAIは私を使用する人々に対して、適切な使用を促すためのガイドラインを提供しています。

人工知能技術が進歩するにつれて、社会に対するリスクを最小限に抑えるために、倫理的な問題についての対話や議論がますます重要になってきています。人工知能技術の使用に関しては、適切な倫理規範を策定し、私たちが人工知能を使用することの倫理的な影響を考慮する必要があります。

-------------------------------------------------------------
私の質問(Q2): 人間もあなた(chat GPT)も間違った答えを返すことがあるでしょう。それに関するあなたのお考えを述べてください。

-------------------------------------------------------------
Chat GPTの答え(A2):はい、人間も私(chat GPT)も、間違った答えを返すことがあります。私は機械学習に基づいており、トレーニングに使用されたデータに基づいて応答を生成するため、トレーニングデータに存在しない情報や、不正確な情報に基づいて応答を生成する可能性があります。

同様に、人間も誤った情報や先入観に基づいて、不正確な情報を提供する可能性があります。私と同様に、人間も知識や経験に基づいて判断を下すため、限定された視点でしか情報を処理することができません。

誤った情報を提供するリスクを最小限に抑えるためには、情報源を確認し、複数の情報源を比較することが重要です。また、私たちは常に疑い深く、自分たちの知識の限界を認め、誤った情報を受け入れないようにする必要があります。
-------------------------------------------------------------

2023年2月19日日曜日

しっかり学べる量子コンピューティング入門書二部作

 量子コンピュータ関係の洋書の新刊は増え続けている。和書はまだ少ないが、こちらも徐々に増えてきた感がある。どの書もそれぞれ特色があるのだが、今回は以下の2冊を(出版から2、3年経過しているのだが)簡単にご紹介したい。
 高校数学程度から出発して、(著者が言っているとおり)ゆっくり丁寧に説明されていて、実際とても分かりやすい。それでいて、量子コンピューティングの基本がしっかり身に付くと実感できる。素晴らしい!多くの人々に推奨したい本である!

 「はじめに」に書かれている以下の文言にも同感できる:
"国際的な量子コンピュータの開発競争は激しくなっており、日本でも国として「ムーンショット型研究開発制度」「統合イノベーション戦略推進会議」等により量子コンピューティング関連技術を支援することが決まりました。量子コンピュータを学ぶ動機は大きくなる一方です。

(A)束野仁政、高校数学からはじめる量子コンピュータ第2版
・量子コンピュータへの誘い
・1量子ビットの世界
・1量子ビットの量子回路
・2量子ビットの世界
・2量子ビットの量子回路
・量子プログラミング入門編
・量子プログラミング実機編
・数学に関する補足
(B)束野仁政、高校数学からはじめる量子コンピュータ2
・n量子ビットの世界
・n量子ビットの量子回路
・量子プログラミング
・ドイチェのアルゴリズム
・量子テレポーテーション
・量子誤り訂正入門
 これら2冊に含まれる内容は、(既にこのブログに何度も登場した)Prof. Chris Bernhardtの書籍(C)の一部とほぼ同程度の詳しさであり、叙述のコンセプトも似ているように思われる。実際、(A)(B)の著者、束野仁政氏は巻末に、「書籍(C)は、本書を読まれた方が次のステップで読むのにも向いています。」と記している。

 この2冊(A)(B)のもう一つの特色として、Qiskitによるプログラミングを行なって理解を確かめられる点が挙げられる。すなわち、IBMの量子回路シミュレータ、またはIBM Quantum 実機を動かせる楽しみ、嬉しさは読者の学習意欲を大いに鼓舞することになろう。Qiskit (Python) ソースコードはGitHubで提供されているので、すぐに動かせる。

 初心者は、量子の性質に戸惑うことが多いだろう。それは色々あるのだが、(A)では、例えば「量子状態の区別」という章が早めに設けられているのはとても良い。具体的には、2つの量子状態
 (|0⟩+|1⟩)/√2と(|0⟩-|1⟩)/√2は
一見、異なるように思えるが区別はできない。しかしアダマール変換後は区別できること。
また、(|0⟩+|1⟩)/√2と-(|0⟩+|1⟩)/√2
も一見、異なるように思えるが、これは区別できない。などの理由が丁寧に説明されている。区別できる/できない、とは、量子の測定結果(の確率)がどうなるかということである。

 書籍Vol.2である(B)では、ドイチェの量子アルゴリズムがある。そこで使われるオラクル論理ゲートの仕組みとアダマール変換、テンソル積、排他的論理和を使った説明もとても詳しいのでフォローしやすい。そして、それをQiskitプログラム作成へ無理なく導いている。
 
 また、量子テレポーテーションは、「量子もつれ」が効果的に利用されているのだが、その、CNOTやアダマールゲートを使った計算式はかなり混み入ったものになるが、これもドイチェアルゴリズムの場合と同様、丁寧な説明に助けられるのである。

 書籍(B)の最後の項目である「量子誤り訂正入門」では、ビット反転の訂正に加えて、位相反転の訂正、さらにそれら同時発生の訂正についても解説している。入門レベルの書としては、かなり頑張っていると感じられる。

#本書の購入について
(A)と(B)はAmazonや紀伊國屋Webでは買えません。下記から購入できます。電子版と紙版があります。ただし、(A)の紙版は売り切れのようです。
https://snuffkin.booth.pm/
両方とも100ページ程度、価格1,000円となっています。

(補足)------------------------------------------------------
 同じ著者、束野仁政氏による第3作目の書籍も発売されていました。ただし、pdf版のみであり、紙版は無いようです。これは、第1作、第2作を読まなくても、これだけで閉じていますので、この第3作から学び始めることもできます。前の2作では、Qiskitにより、IBM量子回路シミュレーション、またはIBM Quantum実機による実行を行なっていたのですが、この第3作では、Amazon Braket(Python SDK)を利用します。Qiskitの場合と同様に、同じプログラムでシミュレータでも実機でも動かせます。AWSの他のサービスとの連携もしやすいようです。
 Amazon Braketでは、シミュレータ2種の他に、D-Wave、IonQ、Rigettiという量子コンピュータ実機を利用できます。ただし、利用時間に応じて課金されますので、それは意識しておく必要があります。

2023年2月17日金曜日

ITシンポジウムで量子コンピューティングに関して発表

 神奈川工科大学主催の「ITを活用した教育研究シンポジウム(2023-3-10)」で、以下の発表を行います。大学にも迫り来る量子コンピューティングに関して、短い拙論ですが、小生の経験と見解を述べます。何らかの意義はあると信じます。ご参考にして戴ければ幸いです。

 講演ビデオ(約12分間)は、ここに(Youtubeに)公開しました。
 以下は、発表スライドのドラフト18枚の縮小版です。正式版ではありません。