投稿

4月, 2020の投稿を表示しています

データベースの意味と、構築する際の留意点

イメージ
今回は、データベースの話をしていきます。
データベースとは、データが特定の形式で蓄積されたものです。データベースはPCデータに限らず、紙の電話帳なども含まれます。データ分析を行うときに、データベースをあらかじめ、きちんと設計しておくことが非常に重要です。とりあえず記録していたようなデータベースは、データ分析を行うための前処理にいたずらに時間を要す上、有用な結果が得られないことが非常に多いです。データベースはまとめ方の違いで、1.ツリー状の「階層型データベース」、2.網状の「ネットワーク型データベース」、3.表状の「リレーショナルデータベース」があります。
実務では上記の3を使うことが多いので、今回は上記の3を構築する上で考慮することを説明します。

①データのサンプル数
データベースによってデータ入る行数・列数が異なります。例えば、Excelに関しては、2020年4月時点で、最大行数 … 1048576行 最大列数 … 16384列 となっています。これを超えるような際は別のツールでデータベースを構築する必要があります。
(以降、列のことを変数と呼んでいます。)

②キー変数を決め、データの並びや重複を設定すること
データベースを設定する際には、キー変数を設定する必要があります。キー変数とは、データベースの並び順やデータの重複を決める変数です。IDや名前、住所、年齢など様々な変数で、データの並びや重複設定をあらかじめ検討します。(重複はイメージしにくいと思います。例えば臨床データで言うと、風邪にかかった人がいたらそれを患者として考えて必ず1行のデータとするか、症状として考えてせきで1行・くしゃみで1行・熱で1行など1人1行以上にするか検討することなどです。)

③名前に規則性を持たせること、名寄せを意識すること
データベースを構築する上で、名前付けに規則を持たせることで検索・抽出機能が使えるようになります。つまり、変数の命名方法、並び順を意識する必要があります。規則性のない命名法であれば、同じ変数を作成したり、同じ値を別集計して誤った結果を出してしまうリスクがあります。それに加えて、別のデータベースと結合する場合、名寄せして結合する必要がありますが、規則性のある命名法で変数を設定していないと非常に苦労することになります。

④カテゴリカル変数と連続値の変数を使い分けること
各変…

統計基礎②(記述統計)

イメージ
今回は、記述統計を説明します。
統計学は大きく2つに分けると、記述統計と推測統計に分かれるという話を以前しました。
記述統計は以前説明した通り、簡単に言うと複数のデータから事実をまとめるというものです。では具体的に説明していきます。

①一つの変数(列、項目)の数値処理
平均値、中央値、最頻値、標準偏差、範囲など

平均値は、全データの数値を足したものを全データ数で割った数値です。平均値はよく使われる代表値ですが、外れ値(他の値と大きく離れた数値)があると、強く影響を受けてしまう傾向があります。中央値は、全データを数値順に並び替えて真ん中の並びの数値を代表値とします。全データ数が奇数だと真ん中の値を用い、偶数だと真ん中の2つに数値の平均をとります。最頻値は、一番出てきたことが多い数値を出します。標準偏差は、数値のバラつきを指します。範囲は、データの幅で最大値から最小値を引いたものです。

②二つの変数(列、項目)の数値処理
相関係数など

相関係数は、-1~1の間で2つの関連性を見ることです。-1以上0未満で負の相関(片方の変数が増えると、もう片方が減る)、0で無相関(関係性がない)、0超1以下で正の相関(片方の変数が増えると、もう片方も増える)になります。ただし、注意しないといけないのは、多くの相関係数が直線的な関係性しかみていないということです。このことを留意しておかないと、相関係数で結果を見誤ることがあります。これは別の機会で説明します。

③三つ以上の変数(列、項目)の数値処理
重相関係数、偏相関係数など

3つ以上の変数の相関係数や1つの変数に着目した相関係数などがあります。これは使う頻度がそんなに多くないので、別の機会で説明します。

④グラフ表現
ヒストグラム、散布図、クロス集計など

ヒストグラムは、1変数のデータの分布をみるグラフです。散布図は2変数の関係性を見る(データの分布をみる)グラフで、相関係数と一緒に用いることが多いです。クロス集計は、2変数以上の関係性を表にしたもので、それらの数を数えるものです。

いかがでしたでしょうか?それぞれの語句などは別の機会に深堀していこうと思います。

よろしければシェアお願いします。





社会科学と自然科学の統計リテラシー

イメージ
今回は、社会科学と自然科学の統計リテラシーの違いを説明します。自身が自然科学の学士~修士課程と社会科学の修士課程両方経験したので、その経験も交えて説明します。

結論から言いますと、社会科学研究者の方が統計レベルが総じて高いということが言えます。理由としては、社会科学の定量研究を行っている方は統計をツールとして使うことが必須だからです。自然科学の研究者のうち、「統計学」や「人口知能」、「データサイエンス」を勉強している研究者はものすごく詳しいですが、それ以外の多くの研究者は実験にリソースを集中していて、統計の知識があまりありません。一見、自然科学研究者の方が数字に強いという世間一般のイメージとは異なって違和感がある方もいると思いますが、両者の挙動は実はすごくリーズナブルです。それについて解説します。

まず、自然科学研究者は研究計画を立てた上でひたすら実験を行い、それぞれの専攻分野のフォーマットに沿ったまとめを行っていきます。仮説の構築や結果の考察をひたすら繰り返していく作業や実験に奔走し、結果のまとめ方に時間を割く余裕がない研究者がほとんどです(実験に割かれる時間が膨大で、実験助手のいない多くの研究者は余裕が全くないことがほとんど)。また、自然科学研究者は普段行っている「実験」は、実は統計的にすごく理想的な環境を作っています。Fisherの3原則というものがあり、「①ランダム化、②局所管理、③反復化」というのをコントロールできると統計的に信頼性が高いというものです(平たく言えば、条件を統一して均等に操作を行った実験を複数回行うということ)。実験は無意識のうちにこれらを満たすようにデザインされるので、統計的に信頼性の高いデータをあらかじめ集めることができています。

一方で、社会科学研究者は基本的に実験をせずに集まっているデータで研究を行うことがほとんどです。手抜きしているわけでは決してなく、理由は自然科学のように理想的な実験状況を作り出すことが困難だからです(片方の学生グループに質の高い授業をうけさせて、もう片方の学生グループを散歩だけさせておくような実験など、倫理的にできないケースや元々の条件を統一するのが難しいケースなど制約が多いから)。一部、RCTで実験を行うことはありますが、その場合は仮説設定を行い、あとは被験者にお願いすれば実験は勝手に進むので、自然科学の…

定量分析と定性分析の使い分け

イメージ
今回は、定量分析と定性分析の使い分けに関して説明していきます。
この記事の指す「定量分析」は、マーケティングリサーチや研究において、収集した各種の数値データ・文字データを数値に変換したデータなどの定量データを統計的手法などを用いてより客観的に調べる分析を意味しています。
一方、この記事の指す「定性分析」は、マーケティングリサーチや研究において、インタビューや各種の記事を収集して(収集したデータを加工することはあまりない)自身の経験や知識を絡めて独自な見解を出す分析を意味しています。

よくどちらかに優劣をつけようとする議論が挙がりますが、その議論の結論としては「使い分けが大事で、どちらか片方しか使えないと非常に勿体ない。」です。どちらも一長一短あるので、どのようなケースでも片方しか使えないと適切な分析結果を出すことができないと言えます。では、以下に特徴を書いていきます。

■特徴
・定量研究
客観性重視、事実重視(ファクトベース)、正確性重視(エビデンスベース)、物事の抽象化、過去の分析に強い

・定性研究
独自性重視、経験重視、ユーモア重視、物事の具体化、未来の分析に強い

定量研究は過去のデータからより客観的に分析して正しい事を伝える分析です。一方で、定性研究は自身の経験と過去の記事やインタビューや行動観察などから総合的に分析して斬新な切り口を示す分析です。次に、上記を踏まえた上でメリットとデメリットを見ていきましょう。

■メリット・デメリット
・定量分析
メリット ⇒ 
①主観を極力除いた客観的な結果を得やすい
②物事を俯瞰しやすい
③手法や対象が同じだと、同じ結果が得られるはずなので、分析者の違いで評価が変わりにくい(実績や経験が少なかったり、斬新な切り口を考えることが苦手だとメリット)
デメリット ⇒ 
①データがないと分析できないので、過去の挙動をとらえることしかできない(過去からの予測はできても新しい流れを生み出せない)
②全体の意見を集約することが多いので、平凡な結果が出やすい

・定性分析
メリット 
①自身の経験を活かした独自の結果を得ることができる
②物事を具体的にとらえることができる
③自身の経験・知識・立場・思考法によって評価が変わりやすい(社会的立場がある人や、経験・知識が豊富な人や、斬新な切り口を考えるのが得意な人だとメリット)
④マイナーな意見や独自な思考を取り入れるこ…

統計と、機械学習・深層学習(マシーンラーニング・ディープラーニング)の違いとは?

イメージ
今回は、統計と機械学習・深層学習の違いについて説明します。そもそも深層学習は機械学習の一部で、機械学習はAIの一部です。定義は以下の通りです。

■定義
AI(人工知能):人間が行う作業を知的なシステム、技術(一例として)
機械学習:データを学習して分類や予測を行うモデルを自動的に構築する技術
深層学習:ニューラルネットワークが多層構造になった機械学習

そこで、統計と上記がどう違うのか説明します。まず、AIですがこれはデータ分析の概念が必須ではなく、機械学習の概念でようやくデータ分析の意味合いが付随されます。つまりここでようやく、統計との概念が一部重複します。深層学習になると、また統計とは異なる概念となってしまいます。つまり、下図のように統計と機械学習で重複する分析手法が多数存在します。
①人間が予測・分類する特徴を選択する分析が統計と機械学習2つで一致しています。
②統計独自分析は、t検定などの各種検定や基本統計量など数値の差の分析です。
③機械学習独自手法は、ランダムフォレストなどの複数の分析を組み合わせる分析です。
④深層学習は自動で特徴を決めるニューラルネットワークによる分析です。

また、統計と深層学習にて、どちらも値の予測・分類を行うのですが、以下のような違いがあります。

①統計は結果がシンプルで説明力が高い一方、複雑な問題に対する精度が低くなる傾向
深層学習は結果が複雑で説明力が低い一方、複雑な問題に対する精度が高くなる傾向
⇒結果の説明が必要か vs 高い予測・分類精度が必要か
②深層学習は自動で特徴を選択するので、ビッグデータ分析に向いている
③深層学習は音声データ、画像データに向いている

以上となります。使い分けとしては、統計がシンプルな分析で、深層学習がビッグデータ・音声データ・画像データなどです。また、説明力と精度のどちらを重視するかにもよります。

AIを学ぶにはディープラーニングG検定を受験して勉強することをお勧めします。




いかがでしたでしょうか。今後、各手法に関して触れていきます。

よろしければシェアお願いします。









リサーチ(調査)の基本

イメージ
今回は、リサーチに関して説明します。データ分析において、どのように全体を設計するかが非常に重要になってきます。リサーチ設計はデータ分析にてかなり重要な要素で、ここをきちんと設計することはマストで、下流工程でリカバリーできません。そんなデータ分析の鍵を握るリサーチの流れを説明していきます。

データ分析の流れは、以下のようになっています。リサーチは設計をする際に、下流工程を十分考慮してやっていく必要があります。そのために、考えるべきはゴールのKPI(目標)・アクション設定と、それから逆算した課題・目的設定です。データサイエンティストに陥りがちな傾向として、きれいなモデリングをすること、きれいな分析をして明確な数字を出すことに収支して課題設定とゴールの設定をあいまいにしてしまうことがあります。そうならないために、調べる事象の背景をよく調べて分析する前にゴールとスタートを設定することが必須です。

リサーチ設計には以下のような内容が含まれます。 ①背景、②目的、③地域、④対象者、⑤回答者数、⑥リサーチ手法、⑦項目、⑧時期、⑨費用
ちなみに、調査の基本を勉強するおススメ本としては、「マーケティングリサーチとデータ分析の基本」です。
いかがでしたでしょうか。上記を設定し、ゴールと連動させることが必要です。課題設定にて、基本的には仮説を作って検証していく必要があります。つまり、データ分析はアクションの伴った仮説構築が最も重要です。

よろしければシェアお願いします。




MECEとは?

イメージ
今回は、データを整理する上で重要な考え方である、MECEについて説明します。
データセットを作成するにあたって、カテゴリ設定などをどのようにすべきか悩むと思います。そのときに使える考え方がMECEです。

MECEとは、「Mutually Exclusive and Collectively Exhaustive」の頭文字をとっていて、漏れなくダブりなくという意味です。下図のように、データを分類する際には、MECEの考え方を基本的に適用します。カテゴリが数値区間だと、未満・以下などの符号に気を付けます(例:1以上と1超、2以下と2未満の違い)。文字のカテゴリだと、グループ範囲を考えます(例:近畿地方と中部地方や、フリーターとアルバイトと学生など)。ただし、いつでもMECEにするべきということではなく、重複回答を許容するケースや全てのクラスを取得する必要がない場合も多いので、MECEが適用される状況かどうかを毎回考える必要があります。










ちなみに、MECEやロジカルシンキングを学ぶためには、以下の本がおススメです。



いかがでしたでしょうか。MECEの考え方がデータ分類で非常に重要な考え方です。常に①MECEを適用すべきか、②MECEを適用する場合はMECEになっているか、以上を考えてデータ分析を行いましょう。

よろしければシェアお願いします。





データエンジニアリングにおけるプログラミングの重要性

イメージ
今回、データエンジニアリングとプログラミングについて説明します。データ分析を行う際、皆さんは何のツールを使いますか?この質問に対して、Excelと答える方は多いと思います。実際に、自身も5年前まではExcelのみを使っていました。しかし、Excelには大きな欠点がいくつかあります。BI(ビジネスインテリジェンス)ツールと答えた方もいらっしゃると思いますが、これも一長一短あります。データ分析で食べていくデータサイエンティストになるのであれば、プログラミング言語を一つ以上マスターするのはマストです。データサイエンティストでなくても、データ分析の業務に携わる人は最低限、簡単なコードを読むくらいのスキルは必要だと思います。以下にその理由を説明します。

データ分析を行う上で、(VBAは除いた)Excelはデータハンドリング(データ加工)がしやすく、多くの人が少しは触ることができるという最大の長所がある一方、5つの大きな欠点があります。

■(VBAを除いた)Excelの欠点
①データを取得できる量に限りがある
 これは、昨今のビッグデータ時代のデータ分析において、大きな弊害になっています。データを貯蓄・分析が一緒になっていることでこのような問題が発生します。
②まとまった処理を行いづらい
プログラミングのような、一括処理をExcelは行うことができず、クリックやドロップなどを何度も行うことで多くの時間を浪費します。
③データ分析を再現、微修正しづらい
Excelだと、一度行った複雑なデータ分析を再現することはかなりの手間になってしまいます。プログラミングであれば、一部のコードを修正するだけで簡単に再現をすることができます。
④複雑なデータ分析ができない
Excelに入っている分析ツールは回帰分析や一部の検定は可能ですが、ロジスティック回帰などの多くの分析を行うことができません。自分で数式を組んで分析を行うことは可能ですが、それよりプログラミングを覚えた方が早いです。
⑤自動化できない
②の内容に少し被るのですが、Excelはデータ分析の自動化ができません。データ分析を毎回手動で行う必要があるので、必要以上に時間を取られます。結果の確認ツールなども全て手動になってしまいます。

以上のように、Excelはデータ分析を仕事にする人にとっては大きな欠点があります。やはりデータ分析を仕事にする…

データプライバシー

イメージ
今回はデータプライバシーについて説明します。
昨今、プライバシー保護やGDPRなど、データプライバシーについての議論が多くなされています。アンケートで、「このアンケートでは個人情報を十分に配慮し、個人を特定するようなことは致しません。」などの記載がよくありますが、本来データを読まないように頑張るのではなく、個人情報を収集・加工・分析する過程で適切なスキームで匿名化処理を施す設計を考える必要があります。日本では、個人情報保護法で守られているということは多くの方がご存知だと思いますが、匿名化データをうまく説明できますでしょうか。おそらく以前の自身と同じく、個人を特定することができない情報としか説明できない人が大部分であると思います。その匿名化データに関して具体的な説明を行います。

匿名化データとはざっくりいえば前述の通りですが、もっと具体的に言うと、データ(グループ)に含まれる全ての個人に関して、各個人と全く同じ属性データ(年齢・性別・学歴・職歴など)が自分以外にいるというものです(同じ属性の人が2人以上いたら、その回答が誰のものかわからない)。個人を特定できない属性データを収集するために、収集予定の標本グループを見て、柔軟に年齢⇒年代、出身校⇒学歴、社名⇒職種などデータを丸める(大きいカテゴリにする)必要があります。ただ、量的データを用いた分析を行いたいこともあるので、その際は収集時には細かくカテゴリし、大きいカテゴリに加工して最終結果を出すことはもちろん可能です。つまり、データ分析では一連の流れを考え、できるだけ上流の過程で匿名化処理を盛り込む必要があるということです。

また、多くの方が誤解していることとしては、属性データ以外のデータからも個人を特定できるということが抜け落ちていることです。属性データを隠したり、大まかにすれば完全な匿名化データになるということではありません(なる場合もありますが)。例えば、フリーコメントで、「私は2020年4月現在の日本の総理大臣です。」と書いてあったら安倍首相が特定されます。上記は大げさですが、「○○会社の第一営業部の部長」みたいな記載があれば特定できます。それ以外にも、利用の少ない(時間によっては1時間に一人程度)コンビニのEdy電子決済の利用履歴を見て、個人を特定するようなこともできます。インターネット、電子改札、スマホア…

統計基礎①(記述統計と推測統計の違い)

イメージ
今回、統計学の基礎について学んでいきます。
統計学は、普段何気ない行動の意思決定に役立っています。どこのスーパー、家電量販店が安い商品が多いのか?平均偏差値の高い大学はどこか?など、これらは全て統計学的思考に基づいており、多くの方が無意識のうちに使っています。これを意図的に使えるようになると、人生がより豊かになります。初めての方でもわかるように、今回は数式を一切使わずに統計学の基本について説明していきます。

まず、統計学は大きく分けると、
 ①記述統計学
 ②推測統計学
以上に分かれています。


①記述統計
記述統計は、今ある複数のデータから事実のまとめた数値を出す統計です。
どういうことか例を出すと、
「土日のキャベツ1玉の価格が、A店はそれぞれ180円・170円の平均175円で、B店はそれぞれ160円・170円の平均165円だったので、B店の方が2日間トータルでお得だった。」
ということです。
つまり、すでにある複数の数値で、過去の事実を述べているだけにすぎません。ただ、記述統計のメリットとして、事実の数値を出すことができるということが挙げられます。しかしながら、データの事実を知りたい際に、記述統計をいつも使えるわけではありません。データを集める調査など、全ての対象に増やすのは無理があるケースが多いです。キャベツの価格に関して、日本全国のスーパーの価格を調べるのは無理があります。そこで、一部のデータから結果を推測する推測統計が活躍します。

②推測統計
推測統計は、今ある複数のデータから、「全体の傾向」もしくは「未来」を推測する統計です。
どういうことか例に出すと、
「土日のキャベツ1玉の価格が、A店はそれぞれ180円・170円と推移し、B店はそれぞれ160円・170円と推移したので、月曜のキャベツの価格はA店160円、B店が180円になると予想したので、月曜はA店に行くべきではないか。」
ということです。(上記の例はわかりやすくするため、かなり無理やりです。)
つまり、すでにある複数の数値から、「未来」か「全体の傾向」を予測いて、事実を伝えているわけではありません。事実を知ることを目的とせず、推測することを目的としているので、全体の傾向を知りたいときに、全てのデータを知る必要がないことが最大のメリットです。(例えば、日本人全体の消費行動を知りたいときに、いちいち全員を…