見出し画像

HappyDB :) 幸せな瞬間データベース

突然ですが、この1日の間で、幸せだと感じた瞬間ってありますか?

日本語で「幸せ」と言うとやや仰々しい感じがするので、
この1日の間で、良かったことってありますか?
という質問と捉えてもらってよいと思います。

この質問に対する回答を集めたデータベースが「HappyDB」です。
その数なんと、100,000個、です!

少し前にこのHappyDBの存在を知り、とても興味深く感じたので、簡単に紹介したいと思います。

なお、本記事は、"HappyDB: A Corpus of 100,000 Crowdsourced Happy Moments" (Asai, et al., 2018)を基に作成した記事になります。
(本記事は私の解釈も含まれますので、詳細や正確な内容は原著をお読みいただければ幸いです。)

HappyDBとは?

本題に入る前に、最初に簡単にまとめておきます。

「HappyDB」は、リクルートのAI研究所 Megagon Labsが2017年に作成した、「幸せな瞬間」("Happy Moment")の記述文を集めたデータセットです。言語は英語です。

クラウドソーシングサービスAmazon Mechanical Turkを使用して、10,843名の人に、24時間/3ヶ月の間にあった「幸せな瞬間」を記述してもらったもので、合計100,922個にも及ぶ「幸せな瞬間」の記述文が含まれています。

・【データ収集期間】 2017/3/28 〜 2017/6/16(約3ヶ月)
・【サンプル数】 100,922 個
・【データ収集の協力者数】  10,843 名
・【協力者の年齢層】 10代〜80代(ただし、20〜30代で約8割)
・【使用されている全単語数(英語)】 38,188 個
・【1サンプルの平均単語数(英語)】 19.66 個

文献[1] Table1, Table11より作成

記述文の例

My son gave me a big hug in the morning when I woke him up.
(今朝、息子を起こすと、ギューっとハグをしてくれた。)

I finally managed to make 40 pushups.
(ついに40回の腕立て伏せが出来るようになった。)

I had dinner with my husband.
(夫とディナーを食べたこと。)

Morning started with the chirping of birds and the pleasant sun rays.
(鳥のさえずりと心地よい日の光で朝が始まりまったこと。)

本データベースの用途としては、
①「幸せな瞬間」やその構成要素(行動や出来事)そのものに関する分析
②「幸せな瞬間」を記述する言語表現に関する分析

の、大きく二つがあります。

まだまだ謎多き「Wellbeing」や「幸福」そのものに関する知見の進化や、ヘルスケア・メンタルケア分野へのテクノロジー応用の加速の可能性を秘めているデータベース。ワクワクしてきますね。

なお、GitHubやKaggleで公開されており、ダウンロードできます。
▶︎ GitHub - megagonlabs/HappyDB
▶︎ Kaggle - HappyDB
(ライセンスについて、Kaggleのページには"CC0: Public Domain"と記載があります。ただ、Megagon Labsの公式ページやGitHubには特に記載がはありませんでした。)

データベース作成の背景

「ポジティブ心理学」という学問分野があります。

従来の心理学は、治療的な側面が強く、主にメンタルの不調を研究対象としていました。一方で、ポジティブ心理学では、より広い範囲の人を対象に、Wellbeing(よく生きる)やその向上策の研究がなされています。

エド・ディーナー氏によると、人間の幸福度のうち、50%は遺伝で、10%は生活環境で決まるものの、残る40%は「行動」によって決まるとのことです。行動は自分で制御可能であり、これはすなわち、幸福度の約半分は自分自身で制御可能、ということです。

実際、ポジティブ心理学の研究によって、行動がWellbeingに影響を与えることが確認されています。
ポジティブ心理学のよく知られた手法に「3つのよいこと」(英語では、"Three Good Things"や"What Went Well")があります。これは「毎日寝る前に、その日あった良かったこと3つを書き出す」というものなのですが、セリグマンらは、これを1週間取り組むことで、Wellbeingの向上や抑うつの軽減が見られることを示しました。

こうした流れもあり、近年では、ユーザのWellbeing向上をサポートするようなアプリケーションやテクノロジーの開発に注目が集まっています。
その一方で、文章から、何にその人は幸せを感じているのか、誰がそれに関わっているか、といった情報を解析することには、複数の技術的な課題が存在するとのことです。

そこで、これらの課題解決に関する研究を促進するために、HappyDBを作成し公開した、とのことでした。

HappyDBの分析で見えてくるもの

ここからは、HappyDBを分析することで見えてくることを、3つ紹介します。

この3つは、わかりやすかったものをピックアップしたものです。原著論文には他の分析も載っていますので、興味のある方はぜひ読んでみてください。

(1) 9つのトピック

著者らは、幸せの瞬間の記述文に出現するトピックを、以下の9つに分類しました。

HappyDB内の、9つのトピック
“people”(人)
“family”(家族)※ "people"の部分集合
“pets”(ペット)
“work”(仕事)
“food”(食)
“exercise”(運動)
“shopping”(買い物)
“school”(学校)
“entertainment”(娯楽)

各トピックに特有の単語を抽出した辞書を作成しており、それを用いることで、ある記述文がどのトピックに該当するのかを特定します。

例えば、「愛犬とジョギングをした」という文章は、「犬」「ジョギング」というキーワードから、"pets"、"exercise"のトピックと特定されます。(このように、一つの記述文に複数のトピックが該当するものもあれば、いずれにも該当しない記述文もあります。)

この方法によって、HappyDBの全てのサンプルのトピックを特定した結果が、以下の表です。左側の数字("% of Sentences in Topic")が、全サンプルのうちそのトピックに該当した割合を示しています。

HappyDBのトピックの分布 (Table 2)

やはり、人("people")が、大きな割合を占めていますね。その中でも、家族("family")が半数以上を占めています。
また、自分自身で「3つのよいこと」を実施した際には、仕事や食事に関わることが結構メインだったので、食("food")や仕事("work")が次いで上位にあるのは納得感があります。
一つ以外だったのは、該当なし("none")が20%、という点で、意外に多いなと感じました。「ズボンのポケットに$100見つけた」とか「道路が全く渋滞していなかった」といったものが含まれるようです。

(2) 24時間 と 3ヶ月 の違い

HappyDBの「幸せな瞬間」には、過去に遡る時間が「24時間」のものと「3ヶ月」のものがあります。サンプル数としては、ほぼ同数です。

これら2つの間で、記述内容に違いがあるのかを、
① 9トピックの分布
② 単語の発生頻度

という観点で比較しています。

① 9トピックの分布の差分は、以下の表の通りです。
"people"や"family"といった「人」に関するトピックは、3ヶ月の方がより多く出現するようになっていますね。また、"food"や"entertainment"といった、毎日発生する類のトピックは、24時間の方がより大きい割合を占めています。
"work"が、2つでほとんど同じ割合なのは何故だろう…と若干気になりました。仕事には、短期のものと長期のものが混在するからでしょうか。

24時間/3ヶ月の違い(トピックの分布)(Table 8)

② 単語の発生頻度に関する分析は、いずれか一方での発生頻度の多い単語を抽出する、というもので、以下のような結果になっています。
割と納得感がある結果かなと思います。(個人的には、「親権」に存在感を感じたのと、「悲しみ」はどういう文脈で出てきたのか…と少し気になりました。)

24時間で、より高頻度
bedtime(ベッドタイム) / custard(カスタード) / spoon(スプーン) / burittos(ブリトス) / nachos(ナチョス) / opener(栓抜き)
3ヶ月で、より高頻度
valentine(バレンタイン) / scenario(シナリオ) / sorrow(悲しみ) / gender(ジェンダー) / thousand(1,000) / custody(親権)

(3) 幸せな瞬間の7カテゴリー

著者らは、「幸せな瞬間」のカテゴリーを以下の7つ定義し、約15,000サンプルに対して人手によるラベル付けを行っています。

Achievement(達成)
Affection(家族やペットとの愛)
Bonding(人との繋がり)
Enjoy the moment(楽しい時間)
Excercise(運動、エクササイズ)
Leisure(趣味、娯楽)
Nature(自然を感じる)

人手でのラベル付けは、各サンプルに対して、5人がラベル付けを行い、3人以上でラベルが一致したもののみを採用する、という形で実施したとのことです。

さらに、そのラベルを教師データとして、機械学習を実施しています。具体的には、シンプルな方式(Bag of Words + ロジスティック回帰)を用いて、文章分類モデルを作成しています。

以下の表がその結果で、①各カテゴリー毎の精度と、②24時間/3ヶ月のサンプルに対するカテゴリーの分布、を示しています。

文章のカテゴリー分類 (Table 10)

精度に関して、"Enjoy the moment"の精度は若干いまいちですが、全体的にはある程度の精度が得られており、何かしらのアプリケーションにつながりそうな期待を個人的には持ちました。

24時間と3ヶ月の比較に関しては、上述の(2)の9トピックでの結果と近しいように感じます。
個人的に気になったのは、"Achievement"の割合です。"Achievement"(達成)と聞くと、"work"(仕事)を連想したのですが、"Achievement"が約3割な一方で、"work"は約1割なので、人やペットとの関係や、食事、買い物に関わるものも含まれているのかもしれないと思いました。

なお、この正解ラベルと推定ラベルはいずれも、冒頭で示したダウンロード可能なデータ内に含まれています。

おわりに

10,000人の、100,000個の「幸せな瞬間」を集めたデータベース「HappyDB」について、私なりにまとめて、紹介してみました。

トピックやカテゴリーの分布など、全体的な傾向を概観してみましたが、いかがだったでしょうか?意外に感じた部分や、気になった部分などありましたでしょうか?
データベースには(当然ながら)全ての記述文が含まれていますので、1つ1つのサンプルについて見ていくのも面白そうですね。

興味を持っていただいたり、何か参考になる部分がありましたら嬉しいです。

また機会を見て、関連する研究やサービス、関連するデータベース等について調べ、noteに投稿したいなと思っています。

最後までお読みいただき、ありがとうございました!

おまけ(宣伝)

noteにて、本記事の「幸せな瞬間」に関連した記事を投稿しています。

「寝る前に、その日あった良かったことを、3つ書く」という「3つのよいこと」について、やり方や効果を解説した記事と、実際に1週間取り組んだ結果と感想を書いた記事、の2つです。

もしよろしければ、お読みいただけると大変嬉しいです m(_ _)m

参考文献

  1. "HappyDB: A Corpus of 100,000 Crowdsourced Happy Moments" (Asai, et al., 2018)

  2. Megagon Labs - HappyDB

  3. GitHub - megagonlabs/HappyDB

  4. Kaggle - HappyDB

この記事が気に入ったらサポートをしてみませんか?