M-1が明日なので、ここまでのシステムで挑戦することにして、その後のことを考えている。
今回、他の辞書やwikipedia関連のデータはraspberrypiのmariadbデータベースに組み込めたが、word2vecは色々形を変えて組み込もうとしたが、結局うまくいかず断念した。
冷静に考えると、80万語ものword2vecデータを、ある語の類似の言葉を探すために、ベクトル計算を全体にわたってやるというのがそもそも無理がある。word2vecがやっていることは、例えば、一つの後を200次元のベクトルにして、ある語が与えられた時に、同じように200次元のベクトルを持つ80万語との間の距離をベクトル積で計算して、あたいの大きい20語を選び出すという計算である。こんなことを、パワーのないraspberrypiでせいぜい1秒以内、100m秒くらいで計算させようとするのがそもそも無理なのである。
そこで考えたのは、(1)wikipediaから作ったword2vecのベクトルにも、twitterから作ったそれにも、言葉ではない、ほぼ記号のようなもの、とか、「の」「が」などの助詞系などが結構入っている。どれかはわからないが、それらを除外すること。ただ、大した数ではない可能性がある。
それよりも(2)に、そもそもそんなことをその場で、たとえネタの本番で計算させようとすることに無理があるので、類似語を、80万語の全部にわたって、事前に計算しておいて、それを組み込むといのがある。計算さえて着れば、mariadbに組み込むことができるだろう。そうすれば、近隣語の抽出は、ほぼ、即座にできるはずだ。
そのようなことをやっていけば、もっともっとロボットの漫才は面白くなると思う。基本的な、方向がすでにわかってきたので。