初心者データサイエンティストの備忘録

調べたことは全部ここに書いて自分の辞書を作る

【読書記録】論語と算盤

本書を手に取った理由

自分を鼓舞するためです。
仕事やりたくねー!!と思うことありませんか?私は常です。
また、かねてより大きな業績を残した人はどのような心掛けで仕事に打ち込んでいたのかに興味がありました。

その一方で、私は自己啓発本を軽んじてきたので、カリスマ経営者が書いた本を一切読んできませんでした。 しかし、今の会社に転職し、上司たちから「成長しろ成長しろ」と言われ続け、成長を支えるものは何かと考えたときに、思いついた言葉が「情熱・熱意」です。
なので、ちょっと自分も「情熱・熱意」持って生きていきたいよねということで、熱き心を持った人の本を読むことにしました。
その第一弾が「論語と算盤」です。

著者は渋沢栄一。私は埼玉出身なので郷土カルタで渋沢栄一は履修済みです。

adjust.media

本書を読んで感じたこと

一言でいえば、渋沢栄一は大志を持って仕事をしていました。 その大志とは「日本の経済を発展させ、日本を富ませる」ことです。 この大志の根底に流れる考え方を、渋沢は「論語」を始めとした中国古典から得たと書いています。
渋沢本人が本書で繰り返し言っていますが、渋沢が子どもの頃は学問といえば心を磨くための学問だったそうです。 なので、当時の人たちは論語と親和性が高かったのでしょう。

大志の立て方

大志の立て方について、渋沢は以下のように語ります。

自分の長所とするところ、短所とするところを細かく比較考察し、そのもっとも得意とするところに向かって志を定めるのがよい。またそれと同時に、自分がその志をやり遂げられる境遇にいるのかを深く考慮することも必要だ。

つまり、自分の内面を知ることと、自分の置かれた外部環境の両方を知ることが大志を立てる際には必要と渋沢は言っています。 渋沢栄一の考え方として、世の中は平等ではないという考え方があります。その不平等である現実を直視し、それを踏まえた大志を抱くべきということだと私は理解しました。
また、大志は良い習慣を通じて達成されると渋沢は述べています。自分・外部環境要因で良い習慣を身に着けることができないのであれば、大志を実現することもできないでしょう。

今後の取り組み

私も大志といえるものを心に抱きたいと思いました。 私は目先のことに汲々としがちで、大きな目的・視野で仕事を捉えられないと感じることが多々あります。 だから、目の前に存在する誘惑にも負けるし、人生の岐路において主体性のない選択をしそうです。

自分の中で「大志」と呼べるものを4月いっぱい考えてみようと思います。その上で論語そのものを読んでみたり、他の経営者の哲学が書かれた本を読みながら自分が人生でなすべきこと、目の前の仕事を通じて実現すべきことをブラッシュアップしていこうと思います。

おまけ

論語と算盤」をパラパラめくっていくと、心掛けていきたいなと感じる考え方がたくさん見つかります。例えば、「修養」について以下のような記載があります。

「修養」自分を磨くことは、(中略)。このときに気をつけなければならないのは、頭でっかちになってしまうことだ。自分を磨くことは理屈ではなく、実際に行うべきこと。だから、どこまでも現実と密接な関係を保って進まなくてはならない。

つまり、頭だけで道徳を考えたり、人のあるべき姿を考えることは必要であって十分ではないということだと思います。というのも、道徳とは基本的には自分以外の人のためのものだと思うからです。
道徳の理論はいくらでも語れるが、実践をせず、周りの人を不幸に突き落としていくのであれば道徳の意味はありません。仕事や家事、子育てなどの日常の生活を通じて自分の手で道徳の感覚を掴んでいくことが、道徳本来の機能を実現させるために必要だと思います。

【旅行記】新島・式根島(2日目)

二泊三日で行った新島・式根島の2日目の旅行記です。

2日目は、新島→式根島の移動と式根島観光がメインとなりました。

新島→式根島

新島から式根島に移動するには、新島村営の連絡船「にしき」を使います。 旅行初日は、風の影響で「にしき」が出航できませんでした。しかし、2日目は風も弱まり、無事に「にしき」に乗船できました。 www.niijima.com

ただし、風が弱まったといっても波は高く、船はジェットコースター状態。家族3人とも船酔いしてしまいました。 写真は船のデッキにいるときの写真です。

f:id:aisinkakura_datascientist:20220410144058j:plain:w400

しくじったなあと思ったのは、空いている席を求めて船の前方に行ってしまったことです。船は前と後ろが一番揺れるのですが、座りたいという気持ちが前面に出て選択を誤りました。 船に乗っている時間は20分程度なので、座れなくても、船の中央部にいるべきでした。

時化の中を進む「にしき」の動画を発見しました。私たちが乗った時も多分こんな感じでした。


www.youtube.com

式根島観光

「にしき」で式根島に到着すると、清水屋の方が迎えに来てくれました。式根島は面積的には小さい島なのですが、高低差が激しく、歩いて宿に向かうのは骨が折れます。なので、お迎えはありがたいですね。

クジラ公園

1歳半の子どもにウケる場所に行きたいなーと思い、まず最初に公園にお散歩に行きました。

f:id:aisinkakura_datascientist:20220410144217j:plain:w400

本当の名前は「小の口公園」というのですが、クジラのオブジェがあるので勝手に「クジラ公園」と呼びます。

f:id:aisinkakura_datascientist:20220410144155j:plain:w400

クジラ公園は何といっても景色が良いです!海と空が超絶きれいです。

f:id:aisinkakura_datascientist:20220410144300j:plain:w400

ここで1時間くらい遊びました。子どもはクジラ公園がいたく気に入ったらしく、ずっとニコニコと走り回っていました。

雅湯

式根島といえば無料温泉!ということで、雅湯にやってきました。 雅湯は、式根島の中にある無料温泉の中で一番整備されている温泉です。本来は水着で入る温泉なのですが、足湯もあるため、今回はここでちょっとだけ足湯を楽しむことにします。

f:id:aisinkakura_datascientist:20220410144700j:plain:w400

源泉かけ流しで、温度調整もしていないため、夏は激熱で入れないこともあります。しかし、いまは冬。完璧な温度でした。 普段お風呂に入るのが好きな子どもも、私の膝に乗って足湯にIN。足をちゃぷちゃぷして楽しそうでした。

f:id:aisinkakura_datascientist:20220410144318j:plain:w400

ちなみに、雅湯は温泉の色が濃いです。そのため、温泉の色が服や水着、タオルについてしまうことがあります。 なので、雅湯に行く際は、色がついてしまっても良い服装で行くことをお勧めします。

f:id:aisinkakura_datascientist:20220410144347j:plain:w400

釣り

式根島のもう一つの楽しみ、それが釣りです!今回は野伏港の内側でカサゴを釣ることにします。 以前の記事で、カサゴは人がいないところでしか釣れないという仮説を書きました。

aisinkakura-datascientist.hatenablog.com

野伏港は式根島の中では一番大きい港なのですが、それでも人の出入りは伊豆半島に比べて圧倒的に少ない。 なので、勝算があります。 結果、爆釣。

f:id:aisinkakura_datascientist:20220410144426j:plain:w400

子どもの面倒を見ながらだったので、妻と交代で竿を出したのですが、1時間で2匹釣れました。しかも、サイズが良いです。 ただし、カサゴ以上にウツボがすごかったです。1時間で5匹釣れました。今回は、ウツボを捌くのが面倒なので全て海に帰ってもらいましたけどね。

ちなみに、今回のタックルは次の通りです。

  • ロッド:ディアルーナ
  • ライン:PE1号+フロロカーボン2号
  • 仕掛け:ジョイントノッカー

↓使ったのは、写真の7号ではなく2号です。

今回ラインがテトラに擦られて切れてしまったことがあったので、フロロは3号でも良いかもと思いました。また、リーダーは長めにとっておいたほうが無難です。

清水屋

民宿、清水屋に戻りお風呂に入ると夕飯の時間になりました。

f:id:aisinkakura_datascientist:20220410144451j:plain:w400

左から時計回りに、

  • タカベの煮つけ
  • 明日葉の梅和え
  • かぼちゃの煮物
  • 島海苔のお吸い物
  • アジフライ
  • カツオと目鯛の刺身

でした。タカベやカツオ、目鯛は式根島の近くで獲れたものだと思います。 タカベや明日葉は都内に住んでいるとなかなか食べられないので、式根島に来たという感じがします。

釣ったカサゴは、子ども用に薄味で女将さんが煮付けにしてくれました。 ちょっと食べてから写真に撮ったので、汚い写真になってしまいましたが、美味しかったです。

f:id:aisinkakura_datascientist:20220410144509j:plain:w400

まとめ

2日目は式根島のクジラ公園、雅湯、釣りと私が行きたかったこと、やりたかったことがかなり達成できました! 式根島で子どもでも楽しめる場所については、3日目の記事でまとめようと思います。

クラスタリング結果の評価指標【実装編】

クラスタリング結果を評価する方法を、過去2回の記事に残してきた。 また、近接性を評価する指標については、過去文献から欲しいものを見つけることができなかったので、自分自身で考えてみた。
今回の記事では、考案した指標で実際のクラスタリング結果を評価してみようと思う。

過去の記事はこちら。 aisinkakura-datascientist.hatenablog.com aisinkakura-datascientist.hatenablog.com

4種類の凝集型クラスタリングとその実装

ここでは、評価対象のクラスタリング手法について説明する。

凝集型クラスタリングとは、カステラ本によると

凝集型クラスタリング法は、各観測がそれぞれ一つのクラスタを構成するところから始める。N-1回の各ステップにおいて、最も近い(最も非類似度が小さい)二つのクラスタを一つのクラスタに併合し、一つ上の階層ではクラスタが一つ少なくなる。

である。要するに、各観測を併合していって最終的には一つのクラスタにしますよーというのが凝集型クラスタリングである。
この併合する際にポイントなってくるのが、非類似度である。各クラスタを併合して、一階層上のクラスタを作る基準を何にするかで、クラスタリング結果が変わってくる。 この基準に応じて、単連結法、群平均法、完全連結法、ウォード法といった手法が存在する。

各手法の詳細については、下記のQiitaの記事が参考になった。(単連結法は単純連結法、群平均法は重心法に読みかえていただきたい) qiita.com

実装

単連結法、群平均法、完全連結法、ウォード法を実装し、かつそれを評価する指標を実装した。 github.com

上記git内の「評価」章内の「近接性の評価」が今回考案した指標を実装した箇所である。 前回記事で書いた指標が実装されている。

※前回記事で書いた近接性の評価に用いる指標のおさらい
クラスタリングをした結果現れたクラスの一つをGとする。また、データii ^ \prime間の距離をd _ {ii^ \prime}とする。このとき、d閾値として、


N_{G(i)} = \#\{i^\prime \in G  \ | d_{ii^\prime} \leq d \} \\
N_{\bar{G}(i)} = \#\{i^\prime \notin G  \ | d_{ii^\prime} \leq d \}

とする。また、


\varepsilon (i) = \frac{N_{\bar{G}(i)}}{N_{G(i)}+N_{\bar{G}(i)}}

と定義する。このとき、近接性を表す指標を

\frac{1}{N}\sum _ {i \in G}\varepsilon (i)

と定義する。

シミュレーション結果

下記の条件でシミュレーションを行った。

図1は、シミュレーションの結果を表したものである。図1は、横軸を併合の回数、縦軸を考案した指標の値としたものである。ここで、併合の回数とは、デンドログラムにおける下からの階層の数と言い換えることもできる。つまり、クラスタを併合するたびに現れるクラスタリング結果に対して、考案した指標を計算してプロットしたものが図1である。

f:id:aisinkakura_datascientist:20220410105122j:plain:w300
図1:近接性指標の振る舞い

図1において、単連結、群平均、完全連結の折れ線を見ると、指標の大きさについて、おおむね単連結<群平均<完全連結となっていることが分かる。
考案した指標は、値が小さいと近接、値が大きいと近接ではないクラスタリング結果であることを表す。したがって、図1は単連結の方が完全連結よりも近接なクラスタを生成しやすいことを表している。 このことは、カステラ本p603にも記載がある。

完全連結法では、直径(14.44)が小さいコンパクトなクラスタを生成しやすい。しかし、「近接」性に反するクラスタを生成することがある。

まとめ

今回の記事は、近接性を評価する指標を考案し、その振る舞いをシミュレーションによって確認した。 また、その振る舞いはカステラ本記載の性質(単連結の方が完全連結よりも近接になりやすい)と一致していることも、今回のシミュレーションにおいて確認することができた。

参考文献

  • カステラ本

【旅行記】新島・式根島(1日目)

3月に家族で新島・式根島に旅行に行きました!
学生の頃、式根島の民宿で泊まり込みのバイトをしていましたが、家族で行くのは初めてです。 バイトをしていた民宿「清水屋」の女将さんも、ぜひ子どもに会いたいと言ってくれていたので、家族で行くことにしたのです。

shimizuya.tokyo

1週間の有休取得を許可してくれた上司や、その間業務を肩代わりしてくれた後輩にはいくら感謝してもし足りません。
今回は、この旅行を後で振り返ることを目的として、記事を書こうと思います。

新島・式根島ってどこ?

新島・式根島は両方とも、伊豆諸島の島です。新島が伊豆七島の一つであり、式根島はそのすぐ傍にあります。

f:id:aisinkakura_datascientist:20220407142700p:plain

新島はサーフィン、釣り、温泉などが人気な島です。式根島も海水浴、釣り、温泉が人気かと思います。個人の感覚ですが、式根島の海水浴場の方が穏やかなため、家族向けの島だと思っています。

niijima-info.jp

shikinejima.tokyo

いざ出発

今回は、我が家に1歳半の子どもがいるため、時間が一番かからない飛行機で行くことにしました。 私たちの最終目的地は式根島でしたので、「調布の空港→新島の空港→歩いて港まで移動→船で式根島に行く」計画です。

ちなみに、式根島への他のアクセス手段としては、

  • ジェット船
  • 大型船(さるびあ丸)
  • カーフェリー(アゼリア丸)

などがあります。アクセス手段を比較した動画を発見したので貼っておきます。


www.youtube.com

調布の空港に到着し、飛行機の写真をパチリ。こんなに小さいプロペラ機に乗るのは初めてなので、緊張します。 f:id:aisinkakura_datascientist:20220407145206j:plain

予約時に子どもの料金がかからなかったので、どうすれば良いのかと確認すると「膝に乗せれば良い」とのこと。 離陸するときは、妻の膝に乗せていたのですが、飽きて私の膝に乗ってきたり、私と妻の膝両方を使って寝っ転がったりと子どもは自由に動いていました(笑) f:id:aisinkakura_datascientist:20220407211022j:plain

島寿司

40分程度飛行機に揺られ、新島に到着しました。ちょうどお昼ごろ新島に到着したので、かねてより食べたいと思っていた島寿司を食べることに。
お店は栄寿司。新島の中央にあるお寿司屋さんです。 tabelog.com

島寿司の特徴は、漬け魚で握ること、カラシで食べることの2点です。
目鯛、金目鯛、真鯛が3貫ずつのセットを2つ注文し、妻と食べました。

このお寿司がかなり美味しい。 まず、魚の食感が柔らかくしっとりしていて心地よいです。次に、漬けが非常にすっきりとした味わいでした。漬け汁に七味のようなものが入っていたのではないかと思いました。シャリの硬さも理想的で口の中でほどけるようでした。 f:id:aisinkakura_datascientist:20220407144938j:plain

新島に行った際は、栄寿司に行かれることを強くお勧めします。

ちなみに、新島にはもう一軒お寿司屋さんがありましたが、今は出前のみの営業だそうです。本当は両方とも行って、味の比較をしたかったのですが、それは叶いませんでした。

トラブル発生

新島でお寿司を食べていると、式根島の清水屋の女将さんから「にしきが欠航になったよ」とLINEが届きました。 にしきとは、新島と式根島の間を走っている連絡船です。つまり、式根島に渡ることができなくなってしまいました。 ちなみに、「にしき」の運行状況はツイッターでも確認できます。

twitter.com

新島内で宿を探さなければなりません。以前、新島に遊びに来た時に泊まった宿に電話してみると快く泊めてくれるとのこと。
夏の最盛期であれば、当日予約はかなり厳しかったと思うので、運がよかったです。1歳半の子どもがいる状態で泊まる場所がないと致命的ですからね。 f:id:aisinkakura_datascientist:20220407145002j:plain

久しぶりの治五平さんは、リフォームしたらしく、かなり奇麗になっていました。 また、自炊スペースも完備してあり材料さえあれば、手ぶらで行っても普通に料理を作ることができます。 今回は、当日宿泊だったため、素泊まりになってしまったので自炊スペースが充実していることで、子ども用の食事を作ることができました。 niijima.or.jp

小さい子どもとの旅行で気をつけたいこと

離島旅行の一日目だけで、子どもと旅行する上でのノウハウをたくさん得られることができました。

一つ目は、飛行機には子ども用のお菓子や飲み物を多めに持っていくことです。 子どもが揺れや気圧の変化による耳の痛さにぐずったとき、お菓子や飲み物は正義です。 私の子どもはお菓子を食べることで耳抜きができ、かつ落ち着くことができました。我が家は和光堂の「焼き芋クッキー」を持っていきました。

二つ目は、できるだけ繁忙期を避けて行くことです。離島旅行は、行程が天候に左右されやすいため、当日その場で宿の予約が必要な場面が出てきます。 繁忙期の場合、宿を取れないということになりかねないので危険です。 また、今回は問題ありませんでしたが、行ったは良いが、天候が悪化し帰れないパターンも想定しておくべきです。

三つ目は、持ち運べる離乳食を多めに持っていくことです。治五平さんの場合、自炊スペースが完備されていましたが、他の宿はそうとは限りません。 子どもの食べるものがない!とならないように、必要以上に持っていくことをお勧めします。 我が家はベビーフードBIGを必要な食事数の2倍持っていきました。 荷物のほとんどがこれで埋まりましたが(笑)

今回の記事は、分量的に1日目しか書けませんでしたが、折を見て2日目、3日目の内容も書いていきたいと思います。

 

2022年3月TODOの振り返り

 4月に入ってしまったが、3月に設定したTODOを達成できているか振り返りたい。

 3月に設定したTODOは下記の5点である。

  1. マンダラチャートを書く
  2. Googleアラートを設定する
  3. 毎日何かを観察し、それを会社の分報に記載する(分報は社内ツイッターみたいなもの。私が働いている会社では割と何を投稿してもOK)
  4. インプットする時は、何を学ぼうとしているのか自分に問うこと
  5. 考える時は紙に書き殴ること

 上記の5点のうち、1~3はインプット大全を読んだ際に設定したTODOである。

インプット大全の感想はこちら aisinkakura-datascientist.hatenablog.com

 1個目のTODOである「マンダラチャートを書くこと」は達成できた。しかし、印刷して机の前に貼ろうと思っていたものの、いまだに印刷していない。今週末印刷してこよう。
 マンダラチャートを書きだしてみると、意外とマス目が埋まらないことに気が付く。自分は結構色々なことに興味を持つタイプだと思っていたので、意外だった。また、興味があることを十分に言語化できていないとも思った。
 一方で、マンダラチャートを作ったおかげで、このブログに書きたいことを明確化できた。このブログのカテゴリは基本的には、マンダラチャートにしたがって作ったものである。今後は、設定したカテゴリに沿って記事を作成していくことで、自分の中に蓄えたい知識や知恵の一覧ができると信じている。

 2個目のTODOである「Googleアラートを設定する」は未実施だった。ということで、今このブログを書きながらGoogleアラートの設定をした。Googleアラートを使ってみての感想は、またどこかでブログにしたいなあと思っている。

 3個目のTODOである「毎日、会社の分報を書く」はおおむね達成できている。会社の分報に何かを書きたいと思って、業務に取り組んでいると、業務で得られた学びを明文化する意識が働き、自分の中で学びが蓄積されていく実感がある。3月のTODOの中では、これが一番やってよかったと思っている。

 4、5個目のTODO「インプットする時は、何を学ぼうとしているのか自分に問うこと」「考える時は紙に書き殴ること」は、何かを達成できて終わりというものではなく、習慣化されるべきものである。今のところ、両方ともできている。
 4個目のTODOについては、本を読むときと会議に出席するときに特に効果が発揮できている。両方とも何を知りたいか明確化することで、格段に内容を覚えられるようになった。また、もし欲しい情報が得られなくても、得たい情報を得るためのネクストアクションを起こしやすくなる。
 5個目のTODOについては、紙に書くことで、頭の中では思いつかなかったことに気が付けることが良い。業務でお客さんからのヒアリングを基に分析要件を決める場面が多くあるのだが、そのときに多く役立っている。

 今回の振り返りをしての追加のTODOは2点。これらを一旦は4月のTODOにしよう。 1. マンダラチャートを机の前に貼る 2. Googleアラートを使った感想を記事にする

クラスタリング結果の評価指標【近接性指標の考察編】

 前回の記事に引き続き、クラスタリングを評価する指標について考察していきます。 ↓前回の記事 aisinkakura-datascientist.hatenablog.com

今回はクラスタリングにおける「近接性」の概念について深堀し、近接性を評価する指標を提案します。

近接性の概念

 前回記事で近接性について簡単に説明しましたが、あらためてカステラ本を引用しようと思います。

(前略)「近接」性に反するクラスタを生成することがある. つまり、あるクラスタに割り当てられた観測が, 同じクラスタの観測よりも, 他のクラスタの観測に近くなることがある。

(ちなみにカステラ本とは↓の本のことです)

近接性を理解するため、クラスタリング結果が近接になったパターンと近接ではないパターンを図1に書きました。

f:id:aisinkakura_datascientist:20220403230231j:plain
図1:近接なクラスタと近接ではないクラスタ

 これを見るとわかるように、クラスタリング結果が近接なとき、自分と同じクラスタに所属する観測が自分の近くに多くいる状態になっています。逆に、クラスタリング結果が近接ではないときは、自分の近くに他のクラスタに所属する観測が多くいる状態になっています。
 このことから、「ある観測の周囲にある観測が、自分と同じクラスタに所属しているのか、それとも他のクラスタに所属しているのか」ということを定量的に評価できれば、近接性を評価できそうです。

近接性を評価する指標の感覚的な定義

 ある観測の周囲に集まっている観測のうち、どれくらいの観測が他のクラスタに所属しているかで近接性を評価しようと思います。つまり、ある観測から近い順に観測を並べたときに、上位に占める他のクラスタに所属する観測の個数の割合で近接性を評価します。これのイメージ図は図2です。この割合のクラスタごとの平均を評価指標とします。このように定義した評価指標が小さければ、近接なクラスタであり、大きければ近接ではないクラスタとします。

f:id:aisinkakura_datascientist:20220403230318j:plain
図2:近接性指標を検討するための図

近接性を評価する指標の数式的な定義

 ある分割結果に対する近接性を評価する指標を提案します。 まず、クラスタリングをした結果現れたクラスの一つをGとします。また、データii ^ \prime間の距離をd _ {ii^ \prime}とします。このとき、d閾値として、


N_{G(i)} = \#\{i^\prime \in G  \ | d_{ii^\prime} \leq d \} \\
N_{\bar{G}(i)} = \#\{i^\prime \notin G  \ | d_{ii^\prime} \leq d \}

とします。また、


\varepsilon (i) = \frac{N_{\bar{G}(i)}}{N_{G(i)}+N_{\bar{G}(i)}}

と定義します。このとき、近接性を表す指標を

\frac{1}{N}\sum _ {i \in G}\varepsilon (i)

と定義します。
 この指標のイメージとしては、近接ではない、つまり自分の近くに、他のクラスタに所属する観測が多く存在する状態になっているときは、N_{\bar{G}(i)}の値が大きくなり、定義した指標も大きくなります。一方で、分割結果が近接なときは、自分の近くに、自分と同じクラスタに所属する観測が多くなるため、N _ {\bar{G}(i)}の値が小さくなり、定義した指標も小さくなります。

まとめ

 今回は近接性の概念を説明し、それを評価するための指標を定義しました。 近接性とは、ある観測の近くに自分と同じクラスタに所属する観測が集まっているかどうかを評価する概念です。また、その評価指標として、\frac{1}{N}\sum_{i\in G}\varepsilon (i)を定義しました。
 次回は、今回の記事で定義した式を実装していきます。

因果関係を表現した資料を作成するためのtips

 データサイエンティストとして働いていると、何らかの因果関係を表現した表や図を作成し、お客様に提示することが多い。今回は、因果関係が正しく表や図で表現されているかセルフレビューする方法について書く。
 なお、この方法は最近私が気が付いたものであるので、もっと良い方法あるよーって方は是非コメントをしていただければ嬉しい。
 また、ここでいう因果関係はあくまで資料作成上のものであって、統計的因果推論などには触れないのでご了承いただきたい。

 資料作成にあたり、最初にすべきことは資料に書くことを整理することである。因果関係を資料上で表現したい場合は、まず各要素の因果関係を明確にすることから始める。そこで役に立つのが、因果グラフである。
 因果グラフとは、各要素の矢印の始点に原因となる要素、終点に結果となる要素を配置した図である。例えば、

  • 例1:「ご飯をたくさん食べる」(原因)と「太る」(結果)

を因果グラフで表現すると図1のようになる。

f:id:aisinkakura_datascientist:20220403201226j:plain:w300
図1:因果グラフの例

 また、要素が増えた場合も因果グラフで因果関係を表現することができる。例えば、下記の例では図2、3のような因果グラフで因果関係を表現できる。

  • 例2: ご飯をたくさん食べる(原因1)かつ家で座っている時間が長い(原因2)と太る(結果)。(図2)

  • 例3:ご飯をたくさん食べる(原因1)と太る(結果1)。太る(原因2)と立ち上がることが億劫になり家で座っている時間も長くなる(結果2)。(図3)

f:id:aisinkakura_datascientist:20220403201328j:plain:w300
図2:因果グラフの例2

f:id:aisinkakura_datascientist:20220403201357j:plain:w300
図3:因果グラフの例3

 資料を作成する前(可能ならば、分析に着手する前)にこのような因果グラフを書いておき、これから作成資料に記載する因果関係が適切なのか、この段階でセルフレビューするべきである。

 次に、これらの因果関係を資料に落とし込む際の原則を説明する。要素が2個の場合、原則は下記の通りだ。

  • 表の場合:左側に原因となる指標、右側に結果となる指標を配置する

  • グラフの場合:X軸に原因となる指標、Y軸に結果となる指標を配置する

 この原則がどういうことなのか、 「ご飯をたくさん食べる」(原因)と「太る」(結果)を例にして説明する。 まずは、表に対する説明である。図4は、「ご飯をたくさん食べる」を定量的に表した指標「一日の摂取カロリー数」でデータを層別化し、「太る」を表す指標「体重」の各層の平均を示した表である。このように、原因を左側に、結果を右側に配置した表は、因果関係を理解しやすいと私は感じている。

f:id:aisinkakura_datascientist:20220403201443j:plain:w300
図4:表の原則

 次に、グラフに対する説明をする。図4の表をグラフにする。このとき、X軸に「一日の摂取カロリー数」、Y軸に「体重」を配置すると良い(図5)。

f:id:aisinkakura_datascientist:20220403201525j:plain:w300
図5:グラフの原則

 これらの原則は、人間の理解に対してとても自然である。表については、(原因)だから(結果)のような言葉で因果関係を説明するときの配置と対応している。また、グラフにおいては、Xを入力するとYが出力されるといった関数の考え方と対応している。

 このような原則を自分の中で持っていると、セルフレビューが格段にしやすくなる。

 例えば、

  • ご飯をたくさん食べる(原因1)かつ家で座っている時間が長い(原因2)と太る(結果)

を表で表現することを考える。このとき、誤って図6のように表現してしまったときでも、原則「左側に原因となる指標、右側に結果となる指標を配置する」が頭の中にあれば、即座に誤っていると気がつくことができる。

f:id:aisinkakura_datascientist:20220403201602j:plain:w300
図6:原則に沿わない表

 コンサルの仕事をする上で、因果関係を適切に表現してお客様に提示できる能力は非常に重要である。今後自分で作成した資料に対して、セルフレビューする際には、このような原則を意識していきたい。