Just $ A sandbox

プログラミングと計算機科学とかわいさ

可愛いは、測れる?

SNSのプロフィールなどを見ていてふと気がついたのですが、「可愛いプロフィール」というものが存在するとすれば、それは一体どういうものでしょうか?
それは定量化できるものなのでしょうか?

安易に考えればひらがなのような柔らかい文字列+記号の多用が可愛い、と考えてしまいますが、以下の例をごらんください。

サンプル1
こんにちゎ♡♡♡ ゎたしのなまえはみ♪ょ♪んだょ♪ どうぞょろしくね(*・ω<)-☆

サンプル2
こんにちはですっ♪ 私の名前はみょんです>< よろしくおねがいしますね〜☆

私としては下のほうが女子力高い気がするんですがいかがでしょうか…?*1

さて、上の文章と下の文章が与えられた時、互いの「可愛さ」をアルゴリズム的に定量評価可能かどうかが気になります。
サンプルを見て分かる通り、以下の点が重要になると考えられます。

  • ひらがな、記号などは確かに効果はある
  • ただし多用するのはあざとい
  • 小さい「ぁ」「ゎ」「ょ」などもあまり効果はない*2
  • 文章の中に記号をはさむと読みにくい

つまり、「定期的に」ひらがなが多く混じり、「文末などに」「適切に」記号などが見られる文章が目指すべき(?)可愛い文章なのかもしれません。
また、これも私の経験則ですが、1つの文があまり長くなるのも可愛くないと思います。つまり、このようにタラタラ書くのはよくない、ということですね(まぁこのブログではあまり可愛くする方向性でも無いのである程度はわざと多少硬く書いているところはありますね)。
さて、つまり各文を同じような長さと仮定してしまうと、結局のところ「定期的に」ひらがな、記号が表れるもののみを考えれば良いことになります。

同じ種類の文字がどのくらいの頻度で(≠割合で)表れるかを定量化する方法は何でしょう?
私が思いついた(安直な)方法はFourier級数展開*3を施すことです。

しかしここで先に文字の種類をどのように判別するかが問題になってきます。
ひらがなは一般に画数が少ないですし、可愛い文章で用いられる漢字も画数はそんなに多くないでしょう。画数に注目するのは良い着眼点かもしれません、しかし記号はどうやって取り扱いましょう?

というわけで、おそらくこれを解決してくれるものとして「密度」があげられます。1文字のスペースに対する点の密度を考えましょう。
たくさんの文章をFourier級数展開し、横軸に文字の密度、縦軸に強度を取れば、上で述べた「可愛い文章」は綺麗にある部分にピークが出るはずです。
つまり
「ひらがなの平均文字密度のピーク」と「><や☆などの記号のピーク」です。
これらは明らかに漢字の平均密度とは異なりますから、展開すれば簡単にピークを見ることが可能なはずです。

というわけで実験して見ました〜となればいいんですが。
………すいません、まだやってません。

今回はアイディアとしてまとめたかっただけなのでどなたか実験したら結果をご報告いただけるとありがたいです(人頼み><;)。
しかし個人的にもこの方法でどのくらい文章の可愛さ判定につながるのかが興味深いので是非やってみたいと思います。
(サンプル用意するのが大変そうですが…まぁ実験結果が出ましたら、こちらにもまとめたいと思います。)

上の方法で本当に上手くいったなら、「可愛い文章」は判定できることになり、上手く行けばこれを元に可愛い文章を作ることができるようになるかもしれません。
そうすれば、某CMのように、「可愛いは、作れる!」を実証することができちゃいますね!
((割とダサい

*1:ちなみにこの意見に賛同して頂けない場合は以下の議論は全て無意味ですので戻ったほうがいいのではと思いますってこんな所に書いてももう手遅れかもしれませんねてへぺろっ☆

*2:これは人によって意見が分かれるかもしれませんが、少なくとも私は日本語として成り立たない表記だと思っています

*3:参照→[http://ja.wikipedia.org/wiki/%E3%83%95%E3%83%BC%E3%83%AA%E3%82%A8%E7%B4%9A%E6%95%B0:title]、簡単に言えば周波数分解です