ラベル Google Trends の投稿を表示しています。 すべての投稿を表示
ラベル Google Trends の投稿を表示しています。 すべての投稿を表示

2016年2月1日月曜日

Googleトレンドの利用上の注意点(平成28年版パート2)

 #前記事の短い続きである。



 氏は、福島第一原発事故の影響をGoogleトレンドを利用して見極めようとする中で、
日々トラフィックは増大しているので、どんな検索ワードも増えていくのかと思いましたが、ちゃんと全体の中の割合として、トレンドを表示できるようになっているようです。まあ当たり前ですが。
と述べている※1が、この見解は、すべての検索ワードが全期間にわたり「全体の中の割合として」当該セグメントにおけるシェアを算出されるというわけではなさそうである、トレンドのユーザが指定した検索ワードが加工されることなくそのままの文字列として、全期間にわたり集計され、次いで、セグメント(期間の単位)ごとのシェアを算出しているわけではない、という点において正確ではない。そのヒントは、同氏の提示する各種のグラフで用いられている検索語に隠されている。「"腰が痛い"」「"腰痛"」「腰 痛」という3フレーズをGoogleトレンド上で比較すると、私の主張する理由がおぼろげながら見えてくる。「"腰が痛い"」というフレーズ(日本語では一文になる!)は、「"腰痛"」または「腰痛」という単語(名詞)に比較して、圧倒的に少ない検索クエリ数である。「腰痛」は「腰 痛」と同じ単語として検索されてしまう。この差が何を意味しているのか。検索クエリと利用者との間に日本語入力システムという媒介者が存在することに留意すると、2006年以降の「腰が痛い」という表現の増加は、主にスマホの日本語入力システムの先読み機能に起因すると考えても、理屈は通じることになる。日本語入力システムの先読み機能は、統計学における考え方を準用すると、交絡要因ということになろう。あるいは、「腰が痛い」という一文は、クエリ発行上の内部処理としては、平仮名が削除され、「腰痛」に変換されている可能性がある、とも読むことができる。実際、検索用語としての「腰痛」と「腰が痛い」を人間が解釈する場合、両者に何らかの意味の差を認めることは、難しいものである。ユーザが「腰痛」と入力しようと、「腰が痛い」と入力しようと、腰痛に興味を持つから検索している、と推論するのが普通の人間であろう。両者を同じクエリとしてまとめて保存しておくことにも、問題はなく、合理的である。

 Googleトレンドの日本語利用の際、解釈に困るのは、「腰 痛」と「"腰痛"」のクエリが同一のものとして保存されているように見えることである。両者の検索語(フレーズ)は、本来、別物の検索事情を背景に含みうるものである。たとえば、「"情報共有"」と「"共有情報"」は、日本語としては、一応使いさばきが可能である。ATOK風の辞書の品詞分類を想定すると、「"情報共有"」は、「名詞サ変」である。「共有情報」の品詞は、「名詞サ変」にはならず、「名詞」としておくのが通常であろう(少なくとも、私はそうしている)。通常、Google検索においては、「共有 情報」という二つの単語に対して、「"情報共有"」と「"共有情報"」の両方を返してくることが期待されよう。しかし、Googleトレンドでは、スペースで間を空けたはずの単語群を連結した結果を返すのである。"snow man"と"man snow"は、明らかに検索結果が異なるが、Google Trends英語版の結果では、これらを異なる検索語として扱うようである。しかし、日本語版Googleトレンドでは、そのような使い分けがなされていない。これは、as isでサービスを利用する我々ユーザの側で気付くべきことであり、注意すべきことである。

※1 Googleトレンドに見る放射能の影響
http://mononomikata-kerogg.blogspot.jp/2015/04/google.html


※2 Google トレンド - ウェブ検索の人気度: "腰が痛い", "腰痛", 腰痛 - すべての国, 2004年 - 現在

https://www.google.co.jp/trends/explore#q=%22%E8%85%B0%E3%81%8C%E7%97%9B%E3%81%84%22%2C%20%22%E8%85%B0%E7%97%9B%22%2C%20%E8%85%B0%20%E7%97%9B&cmpt=q&tz=Etc%2FGMT-9

図1:Googleトレンドによる「"腰が痛い"」「"腰痛"」「腰 痛」の結果
(2016年2月1日のスクリーンショット)

平成28年7月25日修正・追記

文章を読み直してみて、私自身が大変に分かりにくく感じたので、私が再度読み直しても分かりやすく理解できるように文章を訂正してみた。意味するところを変えないように注意したが、内容が変わっているやん!と思うのであれば、それは、当時の私の実力不足ということで、お詫びする。

 なお、セグメント(期間の単位)は、Googleトレンドの場合には週・月であったはずである。計算をさせ続けるコストを考慮すると、Googleトレンドに対して問合せのあった検索ワードや、そもそもGoogleに対して問合せの多かった検索ワードについては、たとえば毎日・毎週・毎月、集計をあらかじめ行っておき、その結果で対応しているのではないか。

 アップデートとして有用な結果を記しておくため、本日、同様の作業を試みた際のスクリーンショットを掲載しておく。「"腰が痛い"」というフレーズが、2016年7月までに単調増加していることを確認でき、「"腰痛"」←「"腰 痛"」も多少増加していることが認められる。

図2:Googleトレンドによる「"腰が痛い"」「"腰痛"」「腰 痛」の結果
(2016年7月25日のスクリーンショット)


 「腰が痛い」という語の単調増加は、スマホ用の日本語IMEにおいて、「こし=腰」と入力し始めたときに、「腰が痛い」という共起関係が「腰を曲げる」とか「腰が凝る」といった共起関係よりも多いものと判定されるようになった、という事情が関係しているように予想される。「腰がこった」という表現は、皆使わなくなったのであろうか、それとも、真に重大な病因に伴う「腰痛」なのであろうか。「腰痛」の読みは、「ようつう」であるから、「ようつ」と入力し出したときに、「ようつべ」=「YouTube」と競合する単語の候補として取り上げられやすいように思われる。確認もしないで書き飛ばした感はあるが、本段落は、所詮予想について述べているから、ご容赦願いたい。

 なお、氏の懸念は、私も共有している。であるからこそ、いくつかのチキンな条件を設けつつも、研究者としては戦かざるを得ないような内容についても、私は踏み込んでいる。先進国に住んでいる人間であれば、本来、臆することなく表明できる意見ばかりに過ぎないのであるが。私の取り扱う題材は、指摘すること自体が色々と現象を生む可能性があるがゆえに、誰でも正当に後追いできる知識によって、足場を固めた形の論述が必要となる内容のものである。その内容には、Googleトレンドの有用性とその限界について、正しく予測することも含まれる。



Googleトレンドの利用上の注意点(平成28年版パート1)

#本記事以降も、Googleトレンドの有用性と限界を現時点の公知の情報だけを元に推測する予定である。本記事のまとまりのなさは、ご容赦いただきたい。

 Googleトレンドというツールは、データベース技術という観点からみれば、きわめて優れたサービスである。超多量のデータを擁するデータベースを、多数のネットユーザの誰もが簡単迅速に利用できることは、どれだけ驚異的なことか。私の作るプログラムが50000件のデータを10万回シミュレーションするだけで2時間ほどPCを固めてしまうことを思えば、3秒もせずに、恐ろしいデータ量を検索した結果を返す、ということの技術力のすごさには、恐れ入るばかりである。雑駁に日本語での検索クエリのデータベース容量を見積もってみると、※1に示した数値はまったくの当てずっぽうであるが、日本語検索クエリデータ容量だけで、4万テラバイトということになる。(なお、※2は※1に影響を受ける数値である。)通常の家庭で保管されているデータ容量の1万倍は軽く超えるということになろう。


項目数値
日本人人口125000000
日本語検索クエリ数※120
年間日数365.25
年間当たり日本語検索クエリ数※29.13125E+11
クエリ当たり容量(kb)※14
年間当たりクエリデータ容量※23.6525E+12
1テラバイトあたりkb数1073741824
年間テラバイト数※23401.655704
2004年から2015年までの年数12
Googleの日本語検索クエリデータ容量※240819.86845


 しかしながら、Googleトレンドの使用にあたり、ユーザに相応の統計上の知識が求められることは、ここで私があらためて指摘するまでもない常識である。ユーザが最も留意すべき問題は、Googleトレンドにおけるセグメント(時空間単位)あたりの、また検索手段別(スマホ、ガラケー、PCなど)の検索クエリ数がユーザには開示されていないことである。2009年頃からiPhoneのヒットにより、わが国でもスマートフォン保有者が急増したが、この結果、Google検索の形も相当変化したであろうと推認できる。具体的には、スマートフォンから気軽に(スマホ用の)Google検索をかけられるようになったことによって、多くの人々の検索シーンは大きく変化したであろう。とはいえ、検索をかけるのは、基本的に、一人以上の人間である。このため、セグメントごとの検索クエリ数という情報が開示されていなくとも、たとえば、自社製品のトレンドを知るという目的の下では、Googleトレンドに表れた数値をそのまま解釈することに、何ら問題はない。

 Googleトレンドの使用方法として典型的かつ正当なものに、広告企業が、自社クライアントの製品の広告効果を計測する場合が挙げられる。このような用法においては、広告企業の側に社会に対するイニシアティブがある。いつ・どこで・どの媒体で広告を流したのか、自社クライアントの製品がどこに流通したのかという能動的な情報は、広告企業の手元にあるはずである(。なければ、その広告企業は、広告企業としては、不充分な働きしかしていないであろう)。Googleトレンドは、その結果を計測するためのセンサとして機能する。この場合、自社クライアントの製品の競合製品が比較対象としてキーワードに入力されるであろう。自社クライアントの、ほかの商品が比較対象でも構わない。比較対象が存在しているときに初めて、Googleトレンドに示されたグラフは、「比較対象と比較して○○である」と素直に読み取っても、さほど問題のないものとなる。このような方法は、準実験計画的デザイン(quasi-experimental design、訳はやや適当)と呼ばれており、多くの社会現象を相手にする研究分野では、この方法論についての理解が進みつつある。

 他方で、広告効果を知ろうとするときとは異なり、世の中においてある事象が流行していることを観察しようとしてGoogleトレンドを用いる場合、ユーザには、相当な注意が求められることになる。観察という行為が一つの手法として定着している学術分野では、ほぼ例外なく、観察研究に対しては、実験研究に対するよりも慎重な解釈を求めている。広告効果を確認するという先の事例は、制御できない要因が存在するものの、それでもまだ実験的である。能動的な入力(インプット)が存在している(はずだ)からである。食品業界では、新商品を東海地方や山陽地方などで先行販売し、成果の程度を検証すると聞く。一昔前にいう「太平洋ベルト地帯」、「ものづくり」マインドが定着していると思われる地域において、実験的に先行販売が行われるというのは面白い話であると思う。

 福島第一原発事故後、放射能による健康被害を調査すべく、一般人がGoogleトレンドを利用するようになっているが、この方法論は、観察研究そのものである。比較対象もないまま、Googleトレンド上の時系列の推移が上昇傾向にあるからと言って、現象そのものが増加していると判断することは、いくつかの飛躍を伴う、大変危険な解釈である。いくつかの飛躍があることは、おいおい説明することとする。

 もっとも分かりやすい(避けがたい)技術的問題を、次の二者の福島第一原発事故の健康影響についてのツイートラインを参照しつつ示すことにする。いくらGoogleトレンドが圧倒的な処理能力でグラフを返すにしても、稀な表現については、検索がかけられてから初めて集計を始めるものと思われる。これは、明らかにGoogleにとって、正当な資源の節約方法であり、誰にも責めることはできない。ユーザの側で注意する必要がある。現在、※3に添付されたイメージは、再現できないが、※5に見ることができるように、※4で示された画像のグラフが再現されるようになっている。これは、おそらく、Googleトレンドの集計機能が当該の検索語についてのデータベースの要約を、Googleトレンドのサーバが※4のツイート主の発言前までに完了したからであろうと推測できる。

 今回は、尻切れトンボであるが、ここでおしまい。

※3 War Is Over(@kenshimada)
https://twitter.com/kenshimada/status/655778472686546944

※4 Tsukada Hisanori(@lensmanjp)
https://twitter.com/lensmanjp/status/655923911075364864

※5 同じ検索語を比較するためのグラフ
https://www.google.co.jp/trends/explore#q=%22%E5%85%8D%E7%96%AB%E5%8A%9B%E4%BD%8E%E4%B8%8B%22%2C%20%E5%85%8D%E7%96%AB%E5%8A%9B%E4%BD%8E%E4%B8%8B&cmpt=q&tz=Etc%2FGMT-9

図: 2016年1月31日時点の「"免疫力低下"」及び「免疫力低下」のGoogleトレンドのグラフ
(スクリーンショット、一部マスキング済み)

2015年5月30日土曜日

RからGoogle Trendsを呼び出す方法(日本国内)

#『R 3.2.0』からGoogle Trendsを呼び出すには、RGoogleTrendsを使えば良い、という記述がRjpWikiにありますが、平成27年5月現在、日本国内では動作しません。タイムアウトしてしまいます。そこで、Christoph Riedl氏のウェブサイトに掲載されているスクリプトにひと工夫加えるのが、現状では、最善の方法だと思います。許諾を取っていませんので、変更箇所のみ示します。

  1. 日本国内のGoogle TrendsのURLは、"http://www.google.co.jp/trends/"です。このため、合計2カ所、変更すべき箇所があります。
    1. gLogin関数内のpostForm関数中の引数を"http://www.google.co.jp/trends/"とする。
    2. 最後のgetForm関数中の引数を"http://www.google.co.jp/trends/trendsReport?"とする。
  2. 最後のgetForm関数に渡す検索語の文字コードは、UTF-8でないといけません。現時点ではWindows版でしか確認していませんが、次のスニペットのように変換すると、うまく動きます。getForm関数の引数urlは、上で指摘したように変更済みです。

searchWords <- c("冷やし中華", "担々麺")
searchWords <- enc2utf8(paste(searchWords, collapse=","))
res <- getForm("http://www.google.co.jp/trends/trendsReport?",
               curl = ch,
               .params = c(q = searchWords,
                           hl = "ja",
                           cmpt = "q",
                           content = 1,
                           export = 1))
これらを用いて、別の記事では、Google Trendsにおける検索語の推移を見てみることにします。