どうしたら「彼女」から「奥さん」になれるかを『Word2Vec』に聞いてみた

工学部女子大生のranranです。

私は彼氏のことが大好きで、いつも彼氏のことばかり考えています。もちろん、将来的には彼氏の「奥さん」へと昇格したいと考えています。しかし、このまま時間の流れに身を任せていてれば、自然と「彼女」から「奥さん」になれるのでしょうか?

非常に不安です。

既婚者に聞いてみた

不安で居ても立っても居られなくなったので、AINOW編集長であり…

左手の薬指に婚約指輪をキラリと輝かせている…

既婚者の亀田さんに聞いてみました。

ranran
亀田さん! 私はどうしたら「彼女」から「奥さん」になれるんでしょうか?
亀田さん
…急な質問だね。
ranran
亀田さん的に奥さんに必要な要素ってなんだと思いますか?
亀田さん
一緒に生活することをイメージできるか…みたいなことが奥さんに必要だとは思うけど。
ranran
なるほど。ちゃんと生活する能力があるかってことですかね?
亀田さん
僕の場合はそんな感じかな。まあ、人によって奥さんに求めるものって違うとは思うけどね。
ranran
……人によって違うのか。

ということで、多くの人が考える「彼女」になくて「奥さん」にあるものを調べてみることにしました。

Word2Vecに聞いてみた

Word2Vecは自然言語処理の手法の1つで、単語をベクトル化することで定量的に扱うことができます。これによって、単語同士の類似度を出したり、単語間での意味の足し算・引き算も可能になります。

…という説明だと、いまいちピンとこない人も多いと思うので、わかりやすい有名な例を挙げます。

Word2Vecを使うと、このように「王様」という言葉の意味から「男」を引いて「女」を足すと、「女王」という言葉になる…といったような言葉の意味の計算式を作ることができます。今回はこのWord2Vecを使って、「奥さん」から「彼女」を引くとなにが残るのかを調べてみたいと思います。「奥さん」から「彼女」を引くまでの手順は、以下の通りです。言語はPythonを使用しました。

学習データとなる文章の取得する

まずは、Word2Vecでベクトル化する単語を含む文章を用意します。今回は、恋愛や結婚についての文章がたくさんありそうな読売新聞が運営する女性向け掲示板「発言小町」を使います。発言小町の「恋愛・結婚・離婚」のカテゴリから閲覧数が多い投稿100件の文章データをWebスクレイピングを使って取得しました。

こんな感じで文章データを取得できました!(発言小町より取得)

PythonのHTMLやXMLからデータを取得することのできるライブラリ「Beautiful Soup4」を使いました。詳しいWebスクレイピングのやり方については、下記サイトがとても参考になりました。

文章を分ち書きにする

分ち書きとは文書を単語ごとに区切って記述することです。これを手動でしようとするとめちゃくちゃ大変なので、自動で行ってくれる形態素解析エンジンというものを使いました。形態素解析エンジンにもいくつかの種類がありますが、今回は「MeCab」を用いました。

分ち書きにするとこんな感じになります。(発言小町より取得したデータを使用)

このキャプチャを見てもらっても分かる通り、ネット上に書かれている文章で教科書のように正しい文法で書かれているものは少ないです。そのため、うまく句切れていない部分があったりします。本来であれば、このような部分ができるだけ少なくなるように工夫をする必要があったりもします。(今回はそのまま使います…)

Word2Vecでベクトル化する

Pythonの「gensim」というライブラリを使うと超簡単にWord2Vecを実装することができます。

14行くらいです(…感動)

まじで、Python優秀。

こんな感じでモデルが生成されます(約3秒)

具体的な実装方法については、下記サイトを参考にしました。

「奥さん」ー「彼女」=「?」

ついに…ここまできました…!


先ほど生成したモデルを読み込み、「奥さん」から「彼女」を引いた値とcos類似度が高い単語の上位10個を表示させてみます…(ドキドキ)

……子供!!!

ん〜、これだけでは「彼女」から「奥さん」になるために何をしたらよいかはっきりとは分かりませんが、子供が欲しい相手であれば子供を育てる能力が必要…ということなのでしょうか? 9番目の「暮らし」という単語に注目してみると、はじめに亀田さんから聞いた「生活する能力」みたいなものも重要だったりするのかな…? と思ってみたり。

再び既婚者に聞いてみた

ranran
「奥さん」から「彼女」を引いたら「子供」になったんですけど、既婚者の亀田さん的にはこの結果についてどう思いますか?
亀田さん
すごく納得感はあるね。子供を作るかどうかは夫婦にもよると思うけど、結婚して奥さんになったら必ず子供についての話題は出るからね。逆に、彼女の段階だと子供について話すことってそんなにないんじゃないかと思うから。
ranran
なるほど…
亀田さん
あと、女性目線っぽい結果ではあるな〜と思った。確かに子供についての話題はあるだろうけど、男性から話題に出す人ってそんなに多くはないと思うから。学習データの文章を男性が多く書き込んでいる掲示板から取ってきたりしても結果が変わりそうで面白いかもね。
ranran
で、結局私はどうしたら「奥さん」に昇格できるんでしょうか…?!
亀田さん
んーーー。どうしたらいいんだろうね…。
ranran
……あっ。ちなみに、「夫」から「彼氏」も引いてみたんですよ! 見てください!
ranran
「小遣い」とか「収入」が上位にきてましたよ!!!
亀田さん
……檻に入れられていく感がつらい。確かに、彼氏を選ぶときは経済的な面をあまり気にしないけど、夫となるとそうはいかないのも分かるけど…。

まとめ

どうしたら「彼女」から「奥さん」にランクアップできるのかを知りたくて、Word2Vecを使って「奥さん」から「彼女」を引いたら何が残るかを調べてみました。しかし、今回の結果では明確にどうすれば、よりヒエラルキーの高い「奥さん」という地位に登りつめることができるかは分かりませんでした。

恋愛ってそんなに単純じゃないんだということは分かりました。とりあえずはもっと彼氏から愛されるように自分磨きを頑張ろうかなと思いました。あと、結婚情報誌とか買って部屋の片隅に飾って置こうかな…

しかし、このWord2Vec、なかなか面白くないですか? 今後もWord2Vecを使っていろんな言葉の意味を比較してみたいと思います!

この記事を作成したのは…

AINOWのインターンです!「奥さん」から「彼女」を引いたりしたい方はぜひ!

ranran
彼氏を束縛するAIを開発するのが夢です。工学部情報システム学科所属。大学院では計量言語学を専攻予定。

無料メールマガジン登録

週1回、注目のAIニュースやイベント情報を
編集部がピックアップしてお届けしています。

こちらの規約にご同意のうえチェックしてください。

規約に同意する