エロと研究と日々の徒然

即答ツール

人工知能学会誌(29巻6号)のSFショートショートに掲載された「即答ツール」というお話が面白かったです。

 

〜ストーリー紹介〜

舞台はちょっとだけ未来。
優柔不断な主人公が、彼女のミユキに「ソクツー(即答ツール)入れてよね!」と怒られるところからストーリは始まります。
このソクツーは受信したメール等の連絡に対して、精神状態のモニタリング結果から最も適切な返事を自動で即答してくれるというツールです。

そして、彼女に言われるがまま家電量販店で最新のソクツー対応スマホを購入した主人公は・・・

〜ストーリー紹介おわり〜

 

実際あったら便利ですね。
自分自身、連絡返すのがめんどうになってしまいついつい遅くなってしまうのですが、このツールがあればすべて自動でやってくれそうです。

 

最近は、より速いレスポンスが求められるようになってきています。
LINEなどが広まって、メールとチャットの境界線も曖昧になってきています。
そんなことから「メール、早く返事してよね!」などと言われることも多くなってきました。

 

そういった
「早く返事をくれ」
「めどくさいけど、早く返事しなきゃ。」
などの欲求を突き詰めていくと、この”即答ツール”になるのかもしれません。

 

マイクロマシンの研究が進んだら、NTTとかで作ってくれないかなぁ・・・。

巡回ディズニー問題

こんばんは。昼のプルさわです。
みなさんディズニーは好きですか?
私は大好きです。

この前友人とディズニーランドの話をしていたところ
「行きたいアトラクション最短で回るコース、パッと出してくれる何か作ってよ~。」
と言われたので、ちょっと取り組んでみました。

ということで、

目的のアトラクションを最短距離で回る問題

を考えてみたいと思います。

巡回セールスマン問題

 さて、このディスニーランド最短距離で回りたい問題は、有名な「巡回セールスマン問題」として考えることができます。
「え、巡回セールスマン問題って何?」
という感じですね。
ググればすぐに分かりますが、簡単に言うと以下のような問題です。

地図上にある指定のポイントを最短距離で回るためにはどのように回れば良いか?

この問題は非常に奥が深く、多くの研究者が取り組んできた問題です。
そのため解法などが充実しているのですが、今回は無視してすべての経路を求める力技を使おうと思います。*1

距離データを集める

さて、問題を解くためにはアトラクション間の距離を集めたデータが必要です。
どっかに落ちてないかな~と思って調べたのですが、ちょろっと検索しただけでは見つからなかったので作りました。
本来なら道を歩いて距離を計測するべきなんですが、面倒だったので地図上の直線距離で近似しました。

SK ロードカウンタ RM-3MW

SK ロードカウンタ RM-3MW

 

 さて、アトラクションですがこちらも本来ならすべてのアトラクションに関するデータを収集する必要があるのですが、めんどくさいので人気アトラクション(ファストパスを発行しているアトラクション)のみに絞ってデータを取ってきました。

以下が、アトラクション間の距離を集めたデータです。

f:id:oscillograph:20141016211556p:plain

最も離れているのは「スプラッシュ・マウンテン」と「スターツアーズ」です。
逆に最も近いのはスプラッシュ・マウンテン」と「ホーンテッドマンション」です。

これはディズニー好きなら納得の結果になっています。

ちなみにアトラクション間で平均の距離は326mですので、単純に考えると8つのアトラクションをすべて回ると

326×7=2282m=2.2km

となり結構な距離を歩くことになります。

最短経路を見つける

今回は高々8地点なので、高度なアルゴリズムを使わずともすべての経路をリストアップして距離を計算し、距離が短い順に並べることで解を求めようと思います。

さて、どのような道順があるかを考えます。
どのような道順をたどるかという問題は「組み合わせ」として捉えることができます。

なので8地点を回る道順は

8!=8×7×6×5×4×3×2×1=40320(通り)*2

あることになります。かなり様々な種類の道順がありますね。

というわけで計算してみました。*3

結果

 計算の結果

  1. ビッグサンダー・マウンテン
  2. スプラッシュ・マウンテン
  3. ホーンテッドマンション
  4. プーさんのハニーハント
  5. スペース・マウンテン
  6. スターツアーズ
  7. モンスターズ・インク
  8. バズ・ライトイヤー

 の順で回ると総距離が1056mとなり、最短となることが分かりました。

先ほどの平均的な距離が2.2kmだったことを考えると、計算することによって総距離が半分以下になりました。

この結果はちょっと参考になるかもしれません。ちょっと。

f:id:oscillograph:20141016233000p:plain

 

(あるか分からない)今後の展開

今回はいくつか問題点が残っていて、主に3つあります。

  • 地図上の直線距離は実際の歩く距離でないこと
  • 待ち時間が考慮されていないこと
  • アトラクション数が絞られていること

これらを解決できればそれなりに役立つ何かができるかもしれません。

 おまけ

ちなみに、ディズニーランドの全アトラクション数は公式的に67あるそうです。
67個のアトラクションを考えたときの全組み合わせは94ケタ(!)の数です。

3600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 通り

(ちなみに64ケタが不可思議、68ケタが無量大数

こうなってくると全ルートを求めるのはとても大変です。
なので、前述の巡回セールスマン問題で考えられた様々なアルゴリズムが有効になってくるのです。
それらのアルゴリズムを駆使すれば、すべてのルートを調べなくても良かったりします。

数学者様々ですね!


おまけ その2(参考文献)

 

追記(2014/10/18)

後から気づいたんですが、スタート地点に戻ってきてないので、正確には巡回じゃないっすね…。

ということで、タイトルに偽りありでした。すみません。

*1:「じゃあ、なんで巡回セールスマン問題を出したんだ?」という感じですが、とりあえずこんなものがあるんですよ~という話題までに出してみました。

*2:正確にはどこからスタートしても良いことと、行き帰りの距離が同じことから 「7! / 2 」となりますが、簡単のため「 8!」としました。

*3:Ruby大好きなのでRubyで実装

線形代数と美女画像

こんにちは。昼のoscillographです。
このところ画像認識を勉強しているのですが、とても楽しいのでどんなことやっているのか紹介したいと思います。

最近線形代数の勉強を始めたけれどモチベーションが上がらない人とかおすすめです。
自分はそこまで数学とかできないのですが、ぜひ数学できるとこんな楽しいことができる!というのは知ってほしいです。
ベクトルの基礎と画像認識の橋渡しをしてから、美女空間の設計とその応用について考えていきます。

 

画像はベクトルだ…!

画像認識の分野では画像をベクトルとして扱うのが一般的です。
画像はピクセルの集まりなのでそのピクセルに入っている数値を並べてひとまとめにしてしまえば、ベクトルとして扱えます。
ベクトルとして抽象化された画像は、線形代数で用いる様々な演算を適用することができます。

f:id:oscillograph:20140605170551j:plain

 

ベクトルの平均

画像認識(データ分析)的には、ベクトルの平均をとるというのはそのデータ群の代表的な特徴を表現するということになります。
例えば、私の好きな女優(※後述)の画像を100枚集めて平均を取ると以下のような感じになります。

f:id:oscillograph:20140710120426p:plain

 

ベクトルの射影

3次元空間のある平面を考えてみます。
このときある平面に1本のベクトルを射影するということは、その平面の成分を抽出(もしくは平面の成分を除去)するということです。

詳しく説明すると、以下のようになります。

f:id:oscillograph:20140710123324j:plain

このx,y,zで張られる空間が人の顔画像を表す空間として(3画素の画像を考えてみてください)
P:佐々木君の顔画像
A:日本人の顔が多く分布している空間(日本人顔画像空間)
などどしたとき、
P':佐々木君の日本人成分
| P'-P |:佐々木君の日本人じゃない度合
などと解釈できます。

この例では3次元で考えていますが、この考えは多次元に拡張することができます。
つまり、ある画像を○○な画像空間に射影することによって○○な成分を取り出すことができるというものです。

美女空間の設計

ということで、美女空間を設計してみましょう。
つまりどんなにヤバい顔画像を射影しても美人な画像ができる魔法のような画像空間です。
今回は主成分分析(PCA)という方法を使って、空間を設計してみようと思います。
いくつかの(正規)直交ベクトルによる部分空間による美女空間です。

 

さて、美女画像空間を作成するために美女画像を集めます。
今回は(私が好きな)
広末涼子能年玲奈新垣結衣麻生久美子道重さゆみ
の5名の画像を各20枚ずつ、計100枚ネット上から収集してきました。

それらの画像に対してOpenCVというライブラリを用いて顔領域を抽出し、PCAにかけて作成した空間が以下のようなものです。

f:id:oscillograph:20140710125550j:plain

これらの画像はまさしく直交しています。つまり画像同士の内積は0になります。
 

本当に美女になるのか

さてここで作成した美女空間に人の画像を射影してみます。

今回は、なかやまきんに君さんと山崎邦正(月亭方正)さんの画像を使わせていただきました。

f:id:oscillograph:20140710133516j:plain

なんか美人になっている!?

というか別人な気もします。

ということで画像を重ねて徐々に透過させていくと…

f:id:oscillograph:20140710133605j:plain

なるほど、似てるっちゃ似てます。
美人な人ほど、変化は少ない訳ですので、差が大きかったということでしょうか。

結論

まあ、美人空間は作れたといっていいのではないでしょうか。

とりあえず、数学やっとくとこんな楽しいことができるということを伝えたかったです。

画像系は楽しいですね!

 

部屋の汚さの単位

今日は天気がいいのに、部屋が汚いので
部屋の汚さを示す単位(MR)
を作りました。現実逃避です。

汚さというか、単位面積あたりの細菌数を表す単位はあるみたいで、ベンザという名前みたいです。(参考:汚さを表す新単位「ベンザ」: あんどコンサ

このMR(Messy Room度)を使えば、日ごろの会話の中で
A「今日お前ん家でミーティングしよう!」
となったときに
B「俺ん家今、6MRくらいよごれてるから…。」
A「俺の家は3MRくらいだから、我が家でやるか。」
といったように客観的部屋の汚れを示すことができます。

 

汚さの指標

汚さの指標として、精神的な苦痛から肉体的苦痛に上がるにつれて汚さが上昇するものと仮定します。
一番クリーンな状態を整理整頓されている状態とします。
ここでは

地震の震度を参考にしてどの程度人の精神または肉体を揺らすかといった観点から1~7の数値で表現したい

と思います。

 

MRの詳細

MRには以下の4つの観点があります。

  • 屋内の様子
  • 屋外の様子
  • 精神の状態
  • 肉体の状態

です。MRは以下の4つの状態の総合的評価によって数値化されます。

 
MR表

どんどん使いましょう。

f:id:oscillograph:20140427080422p:plain

 

参考画像

MR4

f:id:oscillograph:20000310233005j:plain

引用:http://f.hatena.ne.jp/h-moto/20000310233005

 

MR6弱

f:id:oscillograph:20140427081215j:plain

引用:http://kuroroku.seesaa.net/article/236255239.html

 

MR6強

f:id:oscillograph:20140427081439j:plain

引用:http://hamamuratakuo.blog61.fc2.com/blog-entry-267.html

 

終わりに

汚部屋を片付けます。

AmzonとXVideosの共通点

こんにちは。oscillographです。

先日

XVideosコミュニティーで用いられるタグの分析(共起ネットワークグラフを用いて) - oscillographの日記

を書いたのですが、全タグの頻度情報をプロットしてみたところ以下のようなグラフが得られました。(注:X軸は対数スケール)

f:id:oscillograph:20140326152457p:plain

 あれ? こ、これは…

f:id:oscillograph:20140326152658p:plain

図:総務省3 ロングテール現象 : 平成18年版 情報通信白書.(参照:2014-03-26)


ロングテール現象だ~!

 

ロングテール現象とは

上の図の説明を読んでいただければだいたいわかると思いますが、要するにちりも積もれば山となる的なことです。総務省の情報通信白書によると

Web2.0の進展により、ロングテールと呼ばれる多様で小規模な商品需要であっても、魅力ある市場として成立する可能性が高まった。これまでは、多様で小規模な商品需要は、市場として成立する場合であっても、ごく限られた利益しか期待できなかったが、幅広い利用者の参加等を特徴とするWeb2.0の進展により、そのような商品需要を効率的に集積、顕在化させることが可能となり、一般市場とそん色のないレベルの市場として形成することが期待できるようになったのである。(総務省3 ロングテール現象 : 平成18年版 情報通信白書

 ということを言っています。

 

 

実は、XVideosはweb2.0を特徴づける存在であったのですね。

ロングテール現象に当てはまったということが、XVideos的にどういうことかと言うと、
マイナーな趣味の人たちも相当数いらっしゃって、みんなよろしくやってるよ
ということになります。

 

ということで、社会科の教科書に次の一文を加えていただけると嬉しいです。

ロングテール現象は社会の様々なところで見られる。例えばe-コマース最大手のamazon.comにおける人気商品と販売数の関係や、アダルト動画最大手のXVideos.comにおけるタグの頻度と順位の関係などである。

 

 

ちなみに…

20%点までの頻度合計は「36081432」で、残りの80%の頻度合計は「170395」でした。

f:id:oscillograph:20140326162754p:plain

 

というと、わずか0.5%なので、実はそこまでチリは積もってなかったということが分かりました。まあ、売上とかじゃないので、「視聴数」なんかが分かればもっと変わってくるかもしれません。

しかし、こういう事実が明らかになるのは楽しいですね~。

 

ではでは。

 

XVideosコミュニティーで用いられるタグの分析(共起ネットワークグラフを用いて)

こんばんは。夜のOscillograohです。

本日はXVideos VIDEO DATABASEのデータを用いてXVideosコミュニティーの分析を行ってみました。

 

XVideos VIDEO DATABASEとは??

これは過去にXvideosに投稿された動画データをもとに、Xvideosの動画をWebサイトへ埋め込むためのものです。
公式ページには

It contains about 130,000 videos with video URL, thumb URL, tags, duration, title, and embed code.

とあります。今回は動画に付随している「タグ」に注目していこうと思います。

ちなみに、CSV形式(主にエクセルなどで開くファイル)なのに1.64GBありました。重すぎる上に普通のテキストエディターだとメモリ不足で開けませんでした…。

 

今回のブログ記事で明らかにすること

ということで、上記のデータを用いて

  1. XVideosコミュニティーに住む人々はどんなジャンルが好きなのか
  2. エロ動画において、関係の強い単語はどんなものがあるのか(共起の計測)
  3. よく使われる単語間の関係にはどのような構造が潜んでいるのか

を調べてみようと思います。

 

 タグの集計結果

プログラムを組んでせっせと集計しました。

全タグ数:133257件

のうち、上位20位を図にまとめると以下のようになります。

f:id:oscillograph:20140325032559j:plain

 

上から順に

フ○ラ、露骨、素人、10代、brunette(ダークブラウン色の髪の女性)、ブロンド、ア○ル、おま○こ、ぱいおつ、口内射精、お口で、ゲイ、尻…

などとつながりあます。

一番下のinterracaial(異人種で)なんかもXvideos独特って感じですね。

Xvideosの人々(男ならだれでも?)はお口でしてもらうのが好きなようですね。

他にも素人が良いというのは世界共通のようです。

 驚くべきことに「ゲイ」が上位20に含まれています。
「gaysex(213527件:23位)」「gayporn(件:39位)」は別に存在しているのでそれを考えると、ゲイビデオもかなり市民権を得ていると言えるでしょう。

また、「lesbian(155208件:38位)」「japanese(119447件:53位)」も特筆すべき点だと思います。

 

よく使われる語の組み合わせ

同じビデオに含まれる単語の組み合わせ(いわゆる共起)を調べてみました。
こちらもせっせとプログラムを組んで集計したところ、以下のようになりました。

f:id:oscillograph:20140325061031j:plain

色々分かりますが、とりあえず 

露骨なフ○ラが圧倒的に人気

ということが言えます。

他には10代とエロ要素が組み合わさっていたり、ハードコアも結び付きが強そうです。

 

ネットワーク分析

これらの共起情報をもとにグラフを描いてみると(Rのigraph, Kamada-Kawaiモデル使用)以下のようになりました。

f:id:oscillograph:20140325065201j:plain

 

 上のネットワーク図をみてください。

これは共起語をとあるモデルを用いてネットワーク図にしたものです。
特筆すべきは右上のゲイに関するタグです。
やはり普通の部分からは大きくはずれたところに位置しているようです。

次にハブ(ネットワークの中心)を見てください。
ハブはきれいにハードコアとフ○ラになっています。

特にフ○ラに注目すると、

  • Xvideosの動画(というかエロビデオ全般に言えそう)にとってフ○ラは欠かすことのできない重要な要素であること
  • フ○ラを通じて様々なエロ要素がからみあっていること

が分かります。

分かりやすくたとえますが、日常生活で友達が多い奴っていますよね。
仮にA君としておきましょう。その友達と付き合っていると新しい友達ができたり、今まで会ったことのない人にあったりすることができます。
(Xvideosコミュニティーというかエロ動画全般においては)
そのA君が「フ○ラ」なのです。

 

まとめ

という訳でイントロのおさらいです。

  1. XVideosコミュニティーに住む人々はどんなジャンルが好きなのか
    フ○ラ、素人、10代、ぱいおつ、ゲイ などが人気

  2. エロ動画において、関係の強い単語はどんなものがあるのか(共起の計測)
    「ハードコア」と「フ○ラ」が圧倒的、「10代」と「ハードコア」「フ○ラ」「素人」などもよく組み合わされている

  3. よく使われる単語間の関係にはどのような構造が潜んでいるのか
    ゲイ関連は独特なポジションを占めていることと、「フ○ラ」がハブとなっている

以上でXvideosの解析を終わりにします。
あ、でも今後もうちょっと分析するかもしれません。

 

おわりに

くだらないことに時間を割きすぎてしまいました。
反省していますが、日ごろの勉強の復習になったのでまあいいかなって感じです。

それから、調べたらこんな記事

satomacoto: XVIDEOS' Entire Video Databaseのタグの頻度と共起

も見つかりました。同じようなことをやってます。

内容をあんまり鵜呑みにしないようにお願いします。ガチなつっこみが怖いです。

アドバイスはたくさんください。あれをやれ、ここをこうした方がいいなどの意見は喜んで承ります。

最後まで駄文を読んでいただきありがとうございました。

 

※この記事は真面目なジョーク記事です。

流行ラノベのタイトルは本当に長いのか検証してみた(ついでに2050年時点のタイトルの長さを予測してみた)

最近ラノベのタイトルが長く、複雑になっているような感じがします。

ということで、流行っている(いた)ラノベの文字数の増減を調査しました。

 

データ:

このライトノベルがすごい! - Wikipedia

から、2005~2014年まで

 

調査方法:
年ごとに文字数の平均を算出。
(「シリーズ」という文字列は集計の際に削除)

 

結果:

f:id:oscillograph:20140125222752j:plain

 

2008年に一回落ち込みを見せましたが、グラフのように年々上昇し続けています

Excelを用いて直線回帰を行うと、以下のようになります。

f:id:oscillograph:20140125233018j:plain

このままいくと将来的に人気ラノベの平均文字数は30文字を超えてしまうかもしれません。(2050年問題)

 

ちなみに30字は
「流行ラノベのタイトルは本当に長いのか検証してみたらかなり長かった」
くらいの長さです。
結構長いですね。

まあ、こうなることはないと思いますが、年ラノベの文字数が増えていっているというのはゆるぎない事実のようですね。

 

※補足

単回帰はExcelのデータ分析を使用。一応変化分に関する単回帰を行いました。
傾きの係数に対するP値は0.5%水準で有意にゼロと異なり、決定係数も0.69とそこそこだったので、あながち年々の文字数増加はバカにできないかもしれないですね…。