![見出し画像](https://assets.st-note.com/production/uploads/images/109935496/rectangle_large_type_2_09ac3098dfa5c87e58eb01ac3160d011.png?width=1200)
スマホ利用時間データをノーコードツールで解析してみる|②AIでデータ比較を省力化編
こんにちは。ヒューマノーム研究所・次世代先端教育特命研究員の辻敏之と申します。普段は中学・高校の教員をしながら、ヒューマノーム研究所のお手伝いをさせていただいています。
前回は総務省が作成し、e-STATで公開されている、社会生活基本調査 平成28年社会生活基本調査 調査票Aに基づく結果 生活時間に関する結果 生活時間編 をHumanome CatData(以下 CatData)を用いて解析してみようということで、CatDataの持っている可視化機能を使ってデータの観察を行いました。
その結果、「パソコン・スマートフォンの使用時間と15〜19歳の方が学業に費やした時間」には相関がありそうなこと、また「学業に費やした時間と睡眠時間」には負の相関があることが見いだされました。このことから以下が浮き彫りになりました。
中高生は睡眠時間を削って勉強するという傾向があること
パソコン・スマホをよく使う人はよく寝ること
なんですって!!想像と全く違う驚きの結果!! ・・・というわけではありませんが、思ってたのとちょっとだけ違ったのではないでしょうか。データを様々な角度から観察することでより深く、データを採取した状況を理解することができます。これがデータ解析の醍醐味です。
CatDataを用いると、マウス操作で項目を選択するだけで、1次元、2次元のグラフを作ることができます。グラフを作るのって意外と手間なんですよね。CatDataのBIツールとしての側面はあまりフィーチャーされませんが、かなり使い勝手の良いものになっています。ぜひお試しください。
というのが時の彼方に行ってしまった前回までのおさらいです。
今回の解析テーマ
さて、今回はAIをつくることで得られる変数の重要度*を逆手にとり、「パソコン・スマートフォン使用時間と関連のある項目を探索しよう」をテーマに解析を進めていきます。
Random Forest法などを利用してAIを作成すると、説明変数(結果に影響を及ぼすと考えられる要因となる変数)の寄与率を知ることができます。
「変数の重要度」については、リンク先の記事で、実例をあげて解説しています。
このデータは、以下のように「パソコン・スマートフォンの使用時間」を基準にグルーピングし、それぞれのグループの人が1日の中で「なにをしていたか」について調査し、まとめたものです。「なにをしていたか」のグルーピングは20種類あるのでここでは割愛します。
パソコン・スマートフォン使用時間がゼロ
1時間未満
1〜3時間未満
3〜6時間未満
6〜12時間未満
12時間以上(数が少ないので使用しませんでした)
このデータを解析することで、様々な年代の人がパソコン・スマートフォンをどのくらい使って、どんな生活をしているのかぼんやり分かりそうです。上に書いたように、前回の解析で若年層ではパソコン・スマートフォンの使用時間と睡眠時間には関連性があまりないことなどが分かりました。他にはどんな項目と関連性があるのでしょうか。
「なにをしていたか?」に着目して、20種類のグラフを作ってみてそれを眺める? もちろん、それも悪くはないでしょう。が、せっかくなので2項目を軸にした散布図をつくって2変数の関係を観察したいですよね!
しかし、この方法で全パターンの散布図を作成すると190通りのグラフを比較することになります。CatDataを使って作業をショートカットしたとしても、ちょっと気が遠くなりますね。 そこで、さらに比較作業を省力化するために、CatDataにAIを構築してもらうことを考えてみます。
予測してどうする?と思った方、ちょっと違います。
今回は予測ではなく、CatDataでAIを構築すると自動的に生成される「変数の重要度」に注目します。AI 構築を行う際に、構築手法として Random Forest、XGBoost、LightGBM を用いると、AIモデルが何を重視して予測しているのかを確認することができます。CatDataには、この「そのデータで重視される要素」を重要度順に表示する機能が搭載されています。つまり、AIを構築することで、予測したい項目と関係の深い項目がわかり、データの意味を見いだす目的にも利用できる、と考えられます。
XGBoost・LightGBM はKaggleなどのデータ解析のコンペでよく使われている機械学習モデルです。最近CatDataに実装されました!
今回の解析方針概要
今回は単純に20種類の「なにをしていたか」を使ってスマホの使用時間を予測するAIを作り、どの行動と携帯電話の使用時間の関係が深いのか、寄与率という形で示されるのでこれを観察します。CatDataを使ったAIの構築方法については、下記リンクをご覧ください。
前回は15〜19歳のデータを取り上げましたが、ここからは20〜60歳以上のデータを加え、7つの年齢区分ごとにデータを観察していこうと思います。もちろん全てまとめて解析することも可能ですが、年齢区分によって行動が異なるのでは?と考えました。例えばこの調査に「学業」と答えるのは主に24歳以下の区分になる、というようなことです。
このようにして、年齢区分ごとにRandom Forest法を使って学習モデルを作成し、説明変数(なにをしていたか)の寄与率を示すグラフを7つ得ました。7つのグラフの比較にあたり、スクリーンショットを枚数分並べてもいいのですが、せっかくなのでCatDataの「レポート機能」を使ってみます。
レポート機能はCatDataで作成したさまざまなグラフを並べることができる機能です。詳しくは下記リンクをご覧ください。
データ解析において「比較」は欠かせない分析方法ですが、この機能を使えば異なるテーブル同士を簡単に比較することができます。作り方も簡単です。無料版ではレポートを1つ作成できますので、ぜひお試しください。
実際に変数の重要度を比較してみる
では、「60歳以上」において寄与率の高かった説明変数のランキンググラフをレポートに追加し、1,2位の変数はどんな関係にあるのか、散布図を追加して眺めてみたいと思います。
ホーム画面(テーブル一覧が表示されている画面)で「レポート一覧」を選択します。「レポートの新規作成」ボタンが出現するのでこちらをクリックします(図1)。
![](https://assets.st-note.com/img/1688446057847-CTSw0ylffY.png?width=1200)
すると図2Aに示したように空のレポートが作成されます。こちらを確認したら、クリックしてレポートを表示させてみます。「グラフを追加」ボタンを押してグラフを追加しましょう(図2B)
![](https://assets.st-note.com/img/1688446370524-dXT89T96eO.png?width=1200)
「グラフの追加」をクリックすると、テーブル一覧が表示されます(図3A)。モデル作成時の寄与率のグラフが欲しいので「学習」テーブルだけを表示し、「60歳以上」のテーブルを選択します。すると、学習済みのモデル一覧が表示されるので、モデルの評価結果を表示します(図3B)。評価ページが表示されたら、一番下にある「変数の重要度」まで進み「レポートに追加」をクリックします(図3C)。
![](https://assets.st-note.com/img/1688446409681-vYHNM6C6va.png?width=1200)
![](https://assets.st-note.com/img/1688446688385-rknSkMMxYu.png?width=1200)
寄与率の高かった説明変数は「趣味」と「睡眠」であることが分かりました。ではこれらの関係はどのようになっているのでしょうか? グラフをつくってレポートに追加してみます。
レポートの画面から「グラフを追加」をクリックし、テーブル一覧が表示されたら「可視化」テーブルを選択します。そこから先ほどと同じカテゴリである「60歳以上」テーブルを選択し(図4A)、列1・列2が「趣味」「睡眠」となる散布図を作成します(図4B)。
レポートに散布図など、可視化したグラフを貼りたい場合には、可視化テーブル上でグラフを作成する作業が必要となります。
![](https://assets.st-note.com/img/1688447115869-KDiol1sINM.png?width=1200)
![](https://assets.st-note.com/img/1688447118978-CqcOhgaqlj.png?width=1200)
このようにしてできたのが図5のレポートです。
左のグラフは、60歳以上のパソコン・スマートフォンの利用時間を予測するには、どの行動の利用時間が大きく影響するのかを示しています。ここから「趣味」「睡眠」が大切だとわかります。右のグラフはこれらの関係を示した散布図です。パソコン・スマートフォンを使わない人ほど趣味に費やす時間が短く、睡眠時間が長くなる傾向があることが分かります。
![](https://assets.st-note.com/img/1688447346985-LnSJWy55jX.png?width=1200)
このようにレポートを作成することで、データの傾向をわかりやすく説明することができます。
また、このレポートは外部公開することができます。レポート右上のShareボタン(図6A)をクリックして表示される「URLを作成」ボタンを押すと(図6B)外部公開用URLが生成されます。これを共有してください(図6C)。
![](https://assets.st-note.com/img/1688447686853-oAWOz1uAJd.png?width=1200)
![](https://assets.st-note.com/img/1688447703420-ySjWoqoGXk.png?width=1200)
先ほど作成したレポートの公開URLは以下の通りです。レポート内では、各プロットの詳細情報についても確認できます。
また、年齢区分ごとに学習モデルを作成し、年代ごとの寄与率ランキンググラフをレポートにまとめたものが以下のレポートになります。
レポートに掲載されていたグラフをもつテーブルは削除することができません。上記のように3つ以上のテーブルからグラフを引用し、比較する場合はPro版の利用をご検討ください。
今回の解析のまとめ
さて、先ほどのレポートを確認してみましょう。パッと見て分かるのは、全ての年代で「パソコン・スマートフォンの利用時間」と最も関係性が深いのは「趣味」だということです。2位は年代によって異なります。
15〜19歳:学業
20〜24歳:仕事
25〜29歳:睡眠
30〜39歳:休養
40〜49歳:睡眠
50〜59歳:睡眠
60歳以上:睡眠
24歳までは学業や仕事に励むことができるものの、25歳を境に睡眠や休養が必要になるという恐ろしい事実が突きつけられているように感じてゾッとしてしました。
長くなってしまいましたので、今回はここまでにします。次回はこの結果をより深く解析してどんなことが起こっているのか調べていきたいと思います。
※ 筆者紹介
辻敏之:機械学習やIoTデバイスを用いた先進的な教育活動に興味があります。好きなことは写真撮影と美味しいものを食べること。普段は中高生に理科を教えたり、研究指導したりしています。
関連記事
データ解析・AI構築の初学者向け自習テキスト
表データを利用したAI学習テキスト(Humanome CatData)
画像・動画を利用したAI学習テキスト(Humanome Eyes)
AI・DX・データサイエンスについてのご質問・共同研究等についてはお気軽にお問い合わせ下さい!