Closed forest1040 closed 1 year ago
これ、つまり、 3bitで4つの分類をするために、 期待値の実数値が-1.0~-0.5 →① -0.5~0→② 0~0.5→③ 0.5~1→④ みたいにしたいということですか?
それとも、測定を2進法でとって、 上2bitが00→① 01→② 10→③ 11→④ ですか?
期待値の実数値が-1.0~-0.5 →① -0.5~0→② 0~0.5→③ 0.5~1→④ でよいかと思います。
この「期待値」は1ビットからすべて取ってきますか?
回路全体の期待値でいいかなと思っています。
ん、回路全体とは、 3bitなら0~7 を取る値ですか? それとも、各bitが-1~1を取り、 その合計値や平均値ですか?
各bitが-1~1を取って、その平均値でいいかなと思います。
冷静に考えてきつい気がしてきました、 例えば①か④かで迷ったとき、 ①なら-1,-1,-1 、④なら1,1,1 を取る必要がありますが、 その境目だと回路が0,0,0になり、②や③になってしまう気がします
測定を2進法でとって、最大2^n 択から選ぶパターンなら 割と行ける気がしてきました(それでも勾配消失などが大変ではありますが)
なるほど。それでお願いします。
すみません。これですが状態ベクトルが|000>をとる確率
でよいかなと思います。。
https://trello.com/c/zy0enTWS/15-%E3%82%BD%E3%83%95%E3%83%88%E3%83%9E%E3%83%83%E3%82%AF%E3%82%B9%E9%96%A2%E6%95%B0%E5%AF%BE%E5%BF%9C%E3%81%AE%E6%A4%9C%E8%A8%8E
の件です。
もともと量子ビット分の分類だったのが、量子ビット+1 になります。 1つ増加するだけでいいんですか?
分類しなきゃいけない数がビット数より明らかに多い場合を想定していたハズなのに、 分類数=ビット数+1 では不足するのでは?
すみません。自分がソフトマックス関数を勘違いしていたのですが、 分類数でスライスしておけば、期待値で該当する分類に割り当てられるかと思いました。
はい。 それでは、 これまで通りの実装で行きます。
例えば、A,B,C〜Jまでの10個に分類したい場合、 量子ビットを4個使って、|0000>が0.24だった場合、Cとする事を想定しています。
例えばAかJかで迷ったとき、 Aなら|0000> の確率=0.0、Jなら|0000> の確率=1.0を取る必要がありますが、 その境目だと確率が0.5になり、EFになってしまう気がします
すみません。ようやく理解しました。 学習がうまく進まないということですね。。 現状の実装の2進数方式でお願いします!
AかJかで迷う時点で学習がうまく行っていないような気がしました。 学習がうまく進めば、特徴ベクトル的に近い辺りで迷うようになるのかなと思いました。 が、まぁ学習が進まない感じになってしまうのですかね。。
一応、ABC... が順序を持つなど、 AC間の違いがAB間やBC間よりも大きい などであれば成り立ちますが、そうではなさそうです
現在、分類の場合、量子ビット数に1対1対応になっているので 量子ビット数分の分類しかよい精度でできないはず。 回路の期待値に対して、最後にソフトマックス関数で分類するようにすればできるかも。