PythonとFoliumで簡単!地図上に位置情報の可視化

はじめに

アナリティクス&デベロップメント部のNです。
最近、Foliumという地図上に位置情報を可視化するライブラリの存在を知り、使ってみました。
Foliumというのは、Leafletというjavascriptの地図ライブラリをPythonから使えるようにしたものです。
html形式で地図を保存できるだけでなく、Jupyter上で綺麗に位置情報を可視化することができる便利なライブラリです。
この記事ではJupyterでのFoliumの簡単な使い方をまとめました。

Jupyterで地図上に位置情報を可視化

準備

ここから先ではJupyterLabを使います。
まずは、pip install foliumでFoliumをインストールしておきましょう。
インストールできたらJupyterを開き、Foliumのimportをしましょう。
ついでに、この記事で用いる位置情報をそれぞれ変数に格納します。

import folium

tokyo_station = [35.681236, 139.767125]
tokyo_tower = [35.658581, 139.745433]
gri = [35.6597, 139.75195]

位置情報の座標はそれぞれ[緯度, 経度]として宣言しています。
ちなみに、各座標は
・東京駅
・東京タワー
GRI
の2020年3月現在における位置を表しています。

地図の表示

f:id:gri-blog:20200316121830p:plain
Foliumで表示したOpenStreetMap

次に、上の地図をJupyter上に表示してみます。
以下のコードをセルに入力して実行してみましょう。

m = folium.Map(location=gri,
           tiles='OpenStreetMap',
           zoom_start=13)
m

folium.Mapの部分で地図レイヤを作成して表示しています。
locationは地図の中心となる座標、
tilesは表示する地図のタイルを指定しています。
ここではtilesとしてOpenStreetMapを使用していますが、StamenやMapboxなども使うことができます。

マーカーや座標を繋いだ線の表示

f:id:gri-blog:20200316124215p:plain
マーカーと線の表示

次はこの地図上に上の画像のように位置情報を可視化します。
座標を示すマーカー、線、ポリゴン、円などを表示できます。
ここではマーカーと線を表示してみます。 以下のコードをセルに入力して実行してみましょう。

marker = folium.Marker(
    location=[35.6597, 139.75195], 
    popup='hogehoge',                    
    icon=folium.Icon(color='orange'))

line = folium.vector_layers.PolyLine(
            locations=[tokyo_station,                     
                       gri,                          
                       tokyo_tower],                   
            color='black',                                  
            weight=10)

# マーカーと線の地図レイヤへの追加
m.add_child(marker)
m.add_child(line)
m

最初にfolium.Markerの部分でマーカーを作成しています。
locationは座標、
popupはクリックしたときに表示されるポップアップのテキスト、
iconはマーカーとして表示するアイコンを指定しています。

次にfolium.vector_layers.PolyLineの部分で線を作成しています。
locationsは線を引くための座標の系列、
colorは線の色、
weightは線の太さ(ピクセル数)を指定しています。

これらのマーカーや線を.add_childで地図レイヤの子として追加することで、地図上に表示することができます。

おわりに

いかがだったでしょうか?
PythonとFoliumでお手軽に、地図上に位置情報を可視化することができました。
地図上にマーカーなどを表示することで、位置だけでなく、周りにどのようなものがあるかを表示できます。
ぜひ使ってみてください。

NAKATA

私の情報収集方法、公開します!

こんにちは、アナリティクス&デベロップメント部のTです。

以前から「Tさんって、どうやって技術や業界トレンドの情報集めてるんですか?」的な質問を受けることがちょくちょくあるので、 思い切って公開しようと思います。

3つの原則

まず、情報収集で重要なポイントとして、以下の3点を挙げます。

  • 情報収集源を一ヶ所に集約する
  • なるべく英語の記事にあたる
  • 一次情報源を調べる癖をつける

情報収集源の集約

情報ソースはいろんな媒体に散らばりがちですので、 なるべく一か所にまとめてそこだけ見ればよいようにしましょう。

複数のブログやarXivを毎回巡回して更新チェックするのは、非効率です。

英文検索のススメ

これを見たあなた、今すぐGoogle検索は英語で入力しましょう。

英語の記事の方が、量・質ともに優れているケースが多く、何よりも情報の鮮度が高いです。

自分はGoogleの地域設定をわざと米国にして、日本語の記事があまり検索上位に現れないようにしているくらいです。

情報は大元を辿れ

基本的に、公式資料ほど網羅性の面で優れた情報源はありません。

例えば言語・ライブラリ・クラウドサービスで何かわからないことがあった時、どうしますか?

最初のうちはQiitaなどでもいいかもしれませんが、慣れてきたら優先的に公式ドキュメントで調べるようにしましょう。

たいていの場合は情報が網羅的かつ系統的に記述されているので、知りたい情報を見つけられる確度が高いです。

解説記事と比べて読みにくいのは確かですが、何度も当たるうちにコツが掴めていくはずです。

公式ライブラリで不足すれば、GitHubソースコードや論文を探し、どんどん情報の出処に近づいていきましょう。

筆者のおすすめ

では、自分が普段からやっていることや、おすすめの情報収集源についてお話ししたいと思います。

RSSリーダーアプリの活用

技術ブログがいろいろありすぎて、情報を追いかけるのが大変...!

ありますよね?そういうこと。

そんな場合、RSSリーダーアプリが非常におすすめです。

RSSリーダーに技術ブログ等を登録しておくと、

  • 複数のリソースを一括して管理できる
  • 更新をまとめて通知してくれる

ので、非常に便利です。

複数のブログをブクマして定期巡回しなくても、 常に一か所だけを覗きに行けばよいのですから!

自分の場合feedlyというアプリを使っています。

feedly.com

これにお気に入りのブログやarXivなどを登録しておいて、 毎日出社後や昼休みなどに新着情報をチェックしています。

読んだ記事をカテゴリ別にブックマークしたり、 読む時間がなければ「後で読む」フラグも付けられるので、 後からゆっくり読み直すこともできる点もポイントです。

同様のRSSリーダーfeedlyのほかにもいくつかありますが, 実際に試してみて使いやすいものを選んでみてください。

おすすめの技術記事・ブログ

では、前述のfeedlyにどういう情報源を登録しているかですが、 海外のブログメディアや企業・個人の技術ブログなど様々です。

特におすすめなものをいくつか挙げてみたいと思います。

Towards Data Science in Medium

最もおすすめしたいのが、Mediumというブログプラットフォームの、Towards Data Scienceというセクションです。

towardsdatascience.com

Pythonやデータ分析のTips、最新のライブラリ・分析基盤の話から業界事情まで、 幅広い話題の記事が数多く集まっています。

内容と質の面でも、入門向けの噛み砕いた解説やチュートリアルから、中・上級者向けの専門的な解説まで様々です。

海外の有名企業在籍エンジニアが執筆した記事も多くあり,日本語で書かれた記事と比べると、

  • 情報の鮮度が比較的高い
  • 少し高度なトピックでも丁寧に書かれている

などといった差があり、非常に有用です。

基本的に月$5の有料制で、無料枠は閲覧可能な記事数に制限がありますが、 500円くらいであれば課金する価値は十二分にあります。

企業の技術ブログ

日本語の記事でも,国内有名IT企業のブログは業界の最新技術情勢を知るうえでとても役に立ちます。

例えば以下のような会社の技術ブログは、社員が積極的に記事を執筆していておすすめです。

他にも、SansanGunosyなどもおススメです。

ぜひ、前述のTowards Data Scienceとともにfeedlyに登録してみてください。

(ついでに弊GRI blogも...!)

その他の情報源

ブログ以外ですと、以下からもよく情報を得ています:

arXiv

arxiv.org

最新の論文を探すときはここですよね。 学生の時からお世話になっております。

arXivも前述のRSSフィードリーダーに登録できるので、 自分の場合統計や機械学習系のチャネルを、 arXiv専用カテゴリにまとめてチェックしています。

Twitter

思いのほか馬鹿にならない情報ソースがTwitterです。

IT系の人はTwitter利用者が多いので、そういった人たちをフォローしておくと耳寄りな情報が入ってくることも多々あります。

個人的にフォローをお勧めするアカウントは以下の通りです:

そのほか、海外のOSSコアコントリビューターなどのアカウントもフォローしておくと面白いです。

ただし、ハマりすぎにはご注意。*1

GitHub

Python等のライブラリを使っていて,公式ドキュメントを見てもどうしてもわからないことがあれば,GitHubで実装を確認することもあります。

それが何よりも確実です。

そうでなくても,不特定多数の人が使用し更新するOSSのコードは,読んでいて非常に勉強になります。

個人的にはscikit-learnが大好きなので,よくコードを辿っています。

汎用なライブラリをどう実装するかを考える上で,ものすごい参考になるのでオススメです。*2

github.com

また,レポジトリページ右上の方にあるwatchボタンを押しておくと、バージョンアップなどの更新通知がメールで飛んできます。

気に入ったライブラリはぜひ登録してみましょう。

勉強会

connpass, Doorkeeper, TECH PLAYなど、IT系の勉強会を募集するサイトを覗いてみましょう。

企業主催の規模の大きなものから、少人数向けの輪読会など、さまざまあります。

時間を作って積極的に参加してみましょう。

発表を聞きに行くタイプの勉強会で個人的におすすめなのは、以下の3つです。*3

ちなみに3つ目のDGWTですが、次回GoogleのデータサイエンティストTJO氏がゲスト登壇されるとのことで話題になっています。(当然申込数も多く、抽選倍率が、、、)

メールマガジン

こちらのPython Weeklyの購読はおすすめです。 www.pythonweekly.com

毎週木曜日,いい感じのチュートリアルや、注目のGitHubレポジトリ情報が送られてきます。

【追記】

機械学習系のメルマガをまとめているQiita記事がTwitterで話題になっていたので、併せて紹介します。

機械学習の情報収集に役立つ14のメルマガ - Qiita

おわりに

以上が自分が日頃行っている情報集めの方法です。

もし皆様の参考になるものがありましたら幸いです。

といっても、もっといい方法もあると思うので、これもやった方がいいぞ的なのがあったらぜひコメント等でお寄せください!

(TAMIYA)

*1:思わぬバズりによる社内への垢バレにも要注意。

*2:ついでながら超個人的なお話をすると,自分は学生時代に現ソフトバンク加藤はむかずさんの講演を聞き,Pythonの言語としての面白さと数理系出身データサイエンティストの目指すべき姿に感化されました。その際に機械学習の実装で参考にすべき資料として挙げられていたのが,O'Reillyの「ハイパフォーマンスPython」とscikit-learnのソースコードでした。

*3:本稿執筆時点では新型ウイルスの影響で中止・延期が相次いでいますが、、、

ビジネスデータとAI技術(機械学習)の相性の良さ

適切な問いとは

AI技術を上手に利用するための最重要ポイントは適切な問いを作ることです。

現状のAIが返答に困る質問は、このようなものです。Hey Siri,

  • 優良顧客になりそうな見込み客を教えて?
  • どうしたら優良顧客を増やせるの?

先ほどのAIが困る質問に手を加え、良い精度を実証できている手法があります。それは「機械学習」を用いた手法で、以下のような付帯事項を付けます。

  • 大量の顧客リスト(属性、過去の行動、趣味、嗜好のデータ)と優良顧客の条件を教えるので

この付帯条件と共に機械学習を活用する手順を紹介します。解きたい問いを下記に設定

  • 優良顧客の態度変容の予測

この問いに答える機械学習モデルを構築するために、図1(訓練データの例)のような表形式の顧客リストを訓練データとして用意します。訓練データは顧客IDごとの例題と回答の組み合わせのようなもので、例題は顧客IDごとに優良顧客を見分けられそうな特徴量データ(顧客ごとの属性、過去の行動、趣味、嗜好など)で構成され、その回答は正解データ(それぞれの顧客が態度変容したか否かの2種類を示す優良顧客フラグ)で表現されます。訓練により、特徴量を与えられたらどのように回答を提示する関係性(法則)をモデル化します。この態度変容を予測する機械学習モデルを使うと、図2(推論データの例)のように新しい特徴量データがあれば優良顧客の態度変容予測(推論)を得ることができます。

 

f:id:gri-blog:20200222155525j:plain

図1(訓練データの例)

f:id:gri-blog:20200222160147j:plain

図2(推論データの例)

このような機械学習モデルがビジネスの実践現場に使えるようになってきたのは様々な要因が絡み合っています。ここでは、6つの理由と共に説明をしていきます。

1.未来の事象の予測

第1点目として、機械学習は過去のデータを利用して未来の事象に焦点を当てていることです。従来のマーケティング現場でのデータ活用の代表例であるRFM分析やデシル分析は、優良顧客の特定やセグメント分けによる顧客の特徴を明らかにできます。ただし、顧客は製品やサービスの購入体験済みなので、全て過去の話に閉じています。つまり、これからの顧客行動が分からない物足りなさがあります。一方、機械学習モデルでは正解データと特徴量に時間差を付けることにより、将来の予測をモデル化できます。学習済みの機械学習モデルは、顧客の購入体験状況に応じた未来の予期を表現したものとなります。

f:id:gri-blog:20200222164034j:plain

図3(未来の予期)

2. 高速化による顧客理解の多角化

第2点目は、超高速に高精度で学習できる機械学習アルゴリズムが開発されたことが挙げられます。特徴量と正解データの関係性を学習する方法は、いくらでも存在しており、高精度な予測モデルを構築するには、最近までは計算時間がとてもかかるものでした。例えば高性能サーバで夜間バッチでも学習が終わらないようなことは、よくありました。高速に処理ができるということは、多くの種類の特徴量を機械学習モデルに使えることを意味します。より多くの特徴量を使えば、顧客の特徴を多角的に検討できるので、より立体的に顧客を理解できることになり、より良い施策立案できる可能性が広がります。

3. ETLツールによる前処理の現場への浸透

第3点目は、機械学習用のデータを準備しやすくなった点が挙げられます。企業と顧客の接点は大幅に増え、顧客IDと共にCRM、EC、コールセンター、SCM、基幹システム、位置情報収集システムなどにログとして保存されるようになりました。これらのログを組み合わせるだけでなく、政府の提供しているパブリック・データや気象データなどを付与することも一般的になってきました。これらのログをまとめて扱うのは、SQLなどでデータを取り出し、Java、RやPythonなどで前処理のためのプログラムをエンジニア素養のある人が書くのが主流でした。これらは機械学習プロジェクトの消費時間の80%と呼ばれており、ビジネスのドメイン知識を有していないエンジニアには、ビジネスの背景をデータから理解する時間も多く費やす必要があります。最近では、データの前処理が得意なETLツール(図4)が広まり、現場の施策立案担当者が特徴量の準備を簡単にできるようになりました。例えば、AlteryxやTableau Prepなどを使うとGUIの操作で、多様なソースシステム(サイトアクセス解析ツール、CRMシステム、クラウドサービス、RDBMS、業務システム、NoSQL、Hadoop)からデータを取得し、データの整形処理ができます。これらのツール活用で大幅な時間短縮が見込まれます。よって、今まで何年もビジネスをやってきて、こんな短時間で多角的に顧客の特徴を理解できるとは思わなかったという感想が出てきます。

f:id:gri-blog:20200222170754j:plain

図4(ETLツールの位置付け)

4. 機械学習の解釈性の向上

第4点目は、機械学習モデルの解釈のしやすさが向上した点が挙げられます。旧来の機械学習のコミュニティでは、予測精度の向上と高速化のみが最大の関心事でした。以前は機械学習の判定過程はブラックボックスで、人が理解できるようなものではありませんでしたが、機械学習の実用性が実証されはじめると、機械学習の解釈性や公平性が議論されるようになり発達してきました。例えば、図5に示すような優良顧客を判別するための重要特徴量トップ10や、それぞれの特徴量がどのように判別に寄与しているかの感度分析(Partial Dependence Plot)により、施策担当者が機械学習モデルを理解しやすくなりました。つまり、どの特徴量がどのように効いているか見えるようになり、現場で納得感のある機械学習モデルの選定、及び特徴量と施策立案の関係を思考レベルで結び付けやすくなりました。機械学習を導入した現場で真っ先に選ばれることは、効果の薄い施策を廃止することだったりします。

f:id:gri-blog:20200222171006j:plain

図5(機械学習の解釈)

5. PDCAやOODAサイクルへの機械学習推論結果の組み込み

第5点目は、機械学習の効率的な推論利用が挙げられます。最新の状態の顧客データから機械学習モデルより、優良顧客の態度変容確率を得ることができます。これらは機械学習モデルと先ほどのETLツールやBIツールと連携させることにより、施策立案担当者自ら無限の組み合わせを全自動化させることができます。つまり、いつでもどこでも顧客行動の予測結果を立体的に可視化したダッシュボード(図6)で確認することができます。今までのようにデータの準備やグラフ作成に時間を浪費することなく、お客様に製品やサービスの良さを理解してもらうための施策実施に時間を集中することができます。さらに、最新の顧客データに対して、ETLツールやBIツールでシミュレーション・データを増幅させ、いくつかのWhat-ifシナリオを作った上での優良顧客になる確率を可視化することも可能です。よって施策の効果検証PDCAやOODAサイクルに組み込みやすいメリットが挙げられます。

f:id:gri-blog:20200222171931j:plain

図6(推論結果ダッシュボード)

6. AutoML(自動機械学習基盤)の広がり

第6点目は、機械学習を上手く活用するための自動化プロセスが整備されたことが挙げられます。機械学習モデルの実装(アルゴリズムの選定や最適パラメタの探索)は、データサイエンティストの高度なスキルが必要な領域でしたが、弊社GRIの開発したForecastFlowをはじめ、DataRobot, dotData, H2O, Sony Prediction One, MatrixFlow, Google AutoML Tables, AWS Sagemaker, Azure Machine Learningなど、多くのAutoML(自動機械学習基盤)が存在します。どのAutoMLも、トップ・データサイエンティストが構築する機械学習モデルの精度に肉薄するレベルに達しているのが現状です。ただ、これらは施策立案に役立つ特徴量を自動生成するまでには達していません。トップ・データサイエンティストは、ビジネスの環境やデータから顧客理解を深め、施策立案に役立つ特徴量を構築します。ただ、この領域はドメイン知識を有した現場の施策立案者こそ得意な領域なので、AutoMLを現場の人が使うのが、良い特徴量作りに役立つと考えております。

ForecastFlowの大切にしていること

自動機械学習基盤ForecastFlowは、現代的なデータ利活用プロセスにおいて、現場が機械学習を業務の中で活用しやすくするという実践的な考えの元、クラウド上に開発されています。現場の施策担当者が何回も高速で特徴量を作り直しながら機械学習モデルを作り、新しい施策の効果検証を繰り返すことにより顧客理解を深め、良い製品やサービスの提供に繋がることを心がけています。よって、現実的な価格帯で、データソースからETLツールやBIツールと連携しやすく、現場の担当者が業務に組み込みやすい特徴を持っています。ただし、優良顧客の育成や離反防止を進める有機的な組織の構築は企業により千差万別なので、初期導入コンサルテーションをお薦めしています。機械学習の扱いをご存知の方は、アカウント作成と同時に機械学習モデルの構築へと進むことができます。

 

古幡征史

MBO、KPIとOKR 〜組織の目標管理について考える〜

KPIの策定に関するプロジェクトがいくつか重なって、年末年始にいくつか本を読んだので整理をしたいと思います。ちなみに弊社には、KPIと比較されるMBOはありますが、正直いい感じに機能はしていないという印象です(2020.1.31現在)。

f:id:gri-blog:20200131150244p:plain:w400
読んだ本

目標管理をやる目的は、緊急でないけど重要なことを思い出すためだと思います。そしてそれらに期限を設け、成功 or 失敗のフィードバックを得て前に進めることが出来るためです。凡人はつい、目先の緊急なクライアントワークに没頭してしまって、1年経ってあれ自分は今年何を成し遂げったっけな?って思ってしまったりしたりしなかったりすると思います。現時点で今年の目標の1/12が達成出来ていると言えない時点で、もちろん私も他人事ではないです。

そうならないためにどうすればいいか?結論としては、OKRのやり方をマスターして実践するのが良さそうです。OKRはミッションドリブン型のクリエイティブよりの組織にも使えるKPIの進化形みたいなもので、3つくらい大切なポイントを挙げると

  • 指標が目的とセットである
  • 半分はボトムアップで決め、途中で修正可能
  • 1サイクルは四半期程度

があります。

導入を検討するにあたって本を一冊読むとしたら、『OKRシリコンバレー式で大胆な目標を達成する方法』クリスティーナ・ウォドキー (著)が良いと思いました。

書籍レビュー

簡単にレビューします。

『OKRシリコンバレー式で大胆な目標を達成する方法』クリスティーナ・ウォドキー (著)

ROIが最大の一冊を読むとしたら、これだと思います。 OKRとは何かから、どう運用していけばいいかまで書いてあるのことがおすすめです。

『Measure What Matters 伝説のベンチャー投資家がGoogleに教えた成功手法 OKR』ジョン・ドーア (著)

これは、OKRという手法を形にしたアンディ・グローブの言葉や事例が載っているの点がおすすめです。 二冊目に読むならこれです。

『「管理会計の基本」がすべてわかる本 第2版』金子智朗 (著)

管理会計を一通り理解するには、この本が分かりやすかったです。

PIXAR 世界一のアニメーション企業の今まで語られなかったお金の話』ローレンス・レビー (著)

各部署のKPIをトップに向かって集約すると会社の財務情報等になると思います。KPIが馴染むカルチャーと馴染まないカルチャーの会社があると思っており、馴染まなそうな会社の代表としてはクリエイティブなPIXERみたいな会社です。そんな会社をCFO目線で見たらどう見えるのかということに興味があり読んでみました。ただ、ジョブズとローレンス・レビーは制作チームに口出しをしないことにしたとあり、KPIの参考にはならなかったです。読んで単純にとまらなくなるほど面白かったのはこの本である。

MBOとKPI, OKRとは

MBOとKPIとOKRの関係について整理してみます。

MBO

MBOは多くの人が知っているかもしれません。一年とか半年に一回目標を立てるやつである。先輩に一年前のMBOをもらって適当に修正して出したりするアレです。なんとなく、つい70%くらいの力で達成できる目標を書いたりしてしまったりして、見返すと形骸化していて意味を成さなかったりします。

頻繁に更新しないために停滞したり、タコツボ化という罠にはまることもあった。

中略

致命的だったのは、ほとんどの企業がMBOを給与や賞与と連動させたことだ。 リスクを取ることがマイナス評価につながるのなら、なぜわざわざリスクを取る必要があるだろう。

『Measure What Matters 伝説のベンチャー投資家がGoogleに教えた成功手法 OKR』 ジョン・ドーア (著)

実現しやすくなる目標の原則に、SMARTの法則があります。ちゃんとこの法則に沿って目標を立てている場合、MBOももう少しうまく使いこなせるのかもしれません。

  • S 具体的
  • M 計測できる
  • A 達成できる
  • R 価値観に沿った
  • T 時間軸がある
KPI

KPI (Key Performance Indicator)は、KGI (Key Goal Indicator)を達成するためにどのプロセスを踏んでおけば良さそうか、の指標である。長大な組織がトップダウンで隅々まで業績管理していく必要がある場合、KPIはマッチするのかもしれないが、クリエイティビティが求められる組織には向かないかもしれない。

また、KPIを売上よりも利益からトップダウンで落とし込む方が目的に沿うことがあります。特にモノを売るビジネスでは、大きく展開すればするほど規模の経済が効いてくるので、損益分岐点がどこかを意識して今年度の計画を立てKPIを設定するということをする。というとき、ある程度の管理会計の知識が必要になってきます。管理会計とは、意思決定のための会計なのだそうです。 手っ取り早くKPI&管理会計のことを知りたい場合、『2時間でわかる図解KPIマネジメント入門』堀内智彦 (著) がおすすめです。この本は、最初に限界利益や機会損失などの説明が書いてあり、後半にKPIの設定方法や具体例まで書いてあります。 成功するポイントについては以下のように書いてあります。

また戦略マップから、落とし込んでビジネスを整理しKPIにしたい場合は、『KPIで必ず成果を出す目標達成の技術』 大工舎 宏 (著), 井田 智絵 (著) が参考になりました。

事例についてです。 限界利益額や在庫回転率などのメジャーなKPIだけでなく、もう一歩踏み込んでひと捻りしたKPIの事例は、以下のようなものがありました。

・提案依頼書獲得数

・定期的にメンテナンスで来店する顧客数(サイクルベースあさひ

・売上の新製品寄与率(小林製薬

・ありがとう率(SBI証券

『人と組織を効果的に動かす KPIマネジメント』楠本 和矢 (著)

OKR

次に、OKRです。

f:id:gri-blog:20200131150248p:plain:w250
OKRの例 『Measure What Matters 伝説のベンチャー投資家がGoogleに教えた成功手法 OKR』 ジョン・ドーア (著)

OKR (Objectives and Key Results)は、KPIの進化形とも言えると理解しました。Objective (O)は定性的なものをひとつだけ、Key Results (KR)は定量的なものを3つくらい決める。これらを使って、グループや個人を大胆なゴールに集中させる。Oは一定期間(たいていは四半期)のゴールを定める。KRは、期間の終わりにOを達成できたかどうかを判定するのに使う。

目標(O) 重要で、具体的で、行動を促し、人々を鼓舞するようなもの

主要な結果(KR) 具体的で時間軸がはっきりしており、意欲的であると同時に現実的だ。測定可能で検証可能でなければならない

『Measure What Matters 伝説のベンチャー投資家がGoogleに教えた成功手法 OKR』 ジョン・ドーア (著)

Objectiveから定める部分などからも分かるように、会計的な視点よりもまず、会社のミッションからObjectiveにブレイクダウンし、更にKey Resultsを決めていく。単に売上の数字目標を押し付けられるのではなく、Objectiveが先にあるのでみんなで同じ方向に向かっていけるしモチベーションを維持しやすい。『OKRシリコンバレー式で大胆な目標を達成する方法』クリスティーナ・ウォドキー (著) に良くない"O"とObjectiveがどんなものかについてこうある。

売上30%アップ なぜダメなのか。それは、KRにすべき内容だからだ。

Oは次の文を満たすひとつの文とする ・定性的で人を鼓舞する内容にする

・時間的な縛りをつくる

・各チームが独立して実行できるようにする

『OKRシリコンバレー式で大胆な目標を達成する方法』クリスティーナ・ウォドキー (著)

Key Resultsに関してはKPIに似ている点もあり、KRが満たすべき条件は以下のようにあります。

「重要な結果指標」が満たすべき条件

・「目的」への結びつき

・計測可能

・容易ではないが達成可能

・重要なものに集中

『本気でゴールを達成したい人とチームのためのOKR』奥田 和広 (著)

OKRの特に何がいいかというと、やはり緊急でないが重要な事柄に対して指標と期限を設定できるということです。実際のプロジェクトのタスクなど緊急なことは通常勝手に遂行されていく。しかし大きなビジョンを見据えgrowthしていく場合、重要な事柄のことを常にに考えているかが重要で、そのための仕組みとしてOKRは有用であると言えます。

まとめ

まとめとしては、会社が目指している方向性を揃えてOKRをやるといいよってことです。

かくいう私も、目標を立てて満足するタイプであるし、管理されずにできればPIXERの制作チームみたいなところでゼロイチを作る仕事をしてみたいとも思ったりもします。

Hiroki Saito

SPSS Modeler まめちしき8つ

f:id:gri-blog:20200130212448p:plain

SPSS Modelerってググっても情報が少ないですよね

データを扱う場面によっては、使えるツールは手元の環境に用意されたものだけってこと、ありますよね。ツールの使い方がわからない場会、ネットが使えれば検索で何とかしたいところですが、歴史の長い統計ソフトの場合、ネットで調べるのはかなり難儀します。そんなソフトの1つ、SPSS Modeler *1を使ってる人だけに向けて書きました

前提

データソース関係

CSVファイルをドラッグアンドドロップ

拡張子.csvのファイルは、ストリームキャンバスにドラッグアンドドロップで可変長ファイルとして認識されます。.tsvとか.xlsxには対応してないようです。

テーブル名検索

テーブル/ビューの選択 > オプション > 名前 。「%」がワイルドカードで使えます

*2

オプション関係

ストリーム自動保存

ツール > システムオプション > ストリーム自動保存間隔

クラッシュしやすいので短めで。一見5分が最低値だけど、手入力で5分以下にできます。

上書き警告外す

ツール > ユーザーオプション > ノードがファイルを上書きするときに警告

ツール > ユーザーオプション > ノードがデータベース テーブルを上書きするときに警告

スクリプトで出力回す場合、この警告で止まってたりがあるので外してます。

外すとまずい場合も多々あると思うので参考程度に。

画面表示の数値をカンマ区切り表示

ストリームオプション > 全般 > グループ化記号

記号が入るのは画面表示だけで、ファイル出力には記号入りません。

プレビュー行数を増やす

ストリームオプション > 全般 > データプレビューに表示する最大行数

100とか適当に増やしましょう。

進捗レコード数表示を外して高速化

ストリームオプション > ログとステータス >レコードのステータスを表示

画面下に表示される入力/出力レコード数。あるとまあまあ便利だけど、高速なストレージで読み書きする場合は「しない」にすると進捗が早くなります。

ノードの配置設定

ストリームオプション > レイアウト > グリッドセルサイズ

好みがわかれる部分だと思いますが、ノード位置がずれてると気になっちゃってという場合「2.00」にするとノード同士の間隔が揃います。ただし、同じノードが同位置に重なってしまったとき*3に気づきにくいという欠点もあります。

参考資料

SPSS Modeler関連本はこの1冊だけでしょうか。秒で買いました 

実践 IBM SPSS Modeler~顧客価値を引き上げるアナリティクス

実践 IBM SPSS Modeler~顧客価値を引き上げるアナリティクス

  • 作者:西牧 洋一郎
  • 出版社/メーカー: 東京図書
  • 発売日: 2017/10/10
  • メディア: 単行本
 

 (take)

*1:SPSS Statistics(別製品)の情報が大多数

*2:これ最近教わったのだけど、言われてみれば確かに!

*3:画面を縮小→拡大したりすると起きる

色々なBIツールの特徴について考えてみた

近頃、可視化分析の研修ではTableauと他のBIツールの比較のお話を依頼されているので、この際に記事にまとめてみた。

世の中に多くの種類が存在するBIツールたちには、共通な目的がある。BI = Business Intelligence という名前が付いているには、ビジネスに役に立つ知恵・知見を引き出すことが目的である。社内・外部に散らかっている様々な種類のデータを統括管理し、分析に使いやすくしてくれる。迅速かつ的確な経営判断を実現すべく、より多くの時間を施策・思考を考えるようにするために、データ分析の労力を最小限にするのがポイントである。

f:id:gri-blog:20200130102051p:plain

 

BIツールの導入意義

主に以下が考えられる:

  • 効率性・スピード(優れた操作性、レポーティングの自動化)
  • データドリブンな意思決定を支援

         システムを横断してあらゆるデータを統合した上、複数の軸・角度からビジネスを俯瞰できる為、データそのものの中から法則・インサイトを引き出しやすい

  • 表現能力が高い

インタラクティブダッシュボードのおかげで見る人の視覚・直感に訴えることが出来、思考過程をストーリーで伝えやすい

  • 分析の属人化防止、労力の低減

専門スキルがなくとも、データの準備と分析を実施し情報を活用できる。複数人で分析機能を活用でき、分析結果も共有しやすい。

 

Tableauの特徴と他のBIツールの比較

Tableauの特徴

Tableauとは何かを、それを全く聞いたことがない方に向けて「可視化分析を行うツールの1種で、それを用いてダッシュボードを作れる」と一言で説明できるでしょう。しかしメインの利点ダッシュボードが出来上がることではなく、Tableauを使う人も、そして作る人も見る人も触れば触るほどデータからインサイトを引き出せることにある。Tableauというツールの特徴をもっと言及すると以下となる(一部は他のBIに共通)

  1. 一般的に言われるのは、誰でも使いやすい・比較的短時間でそこそこ使える状態になるまで学べる。つまり習得に費やすコストを抑えられる。早く施策に役に立って欲しい想いで導入したのに使えるまで長い時間がかかるようでは元も子もないですから。これは、使いやすい・分かりやすいインターフェイスを持っていることにも起因する。
  2. もう1つは、インパクトのある可視化・分析ができること。TableauBIツールの中でも優れたデータ表現力、豊富な機能を実装可能の方と言われている。実装する側のみならず、閲覧する側も直感的な操作性から恩恵を受けている。
  3. 最後に、これは分析専門家や可視化分析を推進する側からの観点ではあるが、Tableauは何よりも「有名」であり、「ビジュアル分析のゴールドスタンダード」 のとして売りやすく、お客さんに勧めしやすい。

 もちろんデメリットもある。日本語ヘルプの質がよく苦情に出る。マニュアル系の日本語訳が不自然、日本語化された学習用動画が少ないのが改善すべき点である。コミュニティも英語が苦手な方は使いづらいことが多い。別件で、高度な機能を自ら実装できるとはいえ、スキルが不十分なユーザが不適切な使い方をすると、知見を得るまで遅く感じてしまう。また、高度なビジュアルや表現をを実現しようとハマりやすくて、、望む通りのグラフが作れず悩んでしまい、ついつい時間を忘れてしまいがちである(私もそう)。つまり、Tableauは特別なものだと思わずに、あくまでも開発自由度のやや高めのBIツールの1種であると受け止めるべきでしょう。

他のBIツールの特徴は?

では、上記で述べた特徴のどれが他のBIツールも持っている点でしょうか。ここではTableauを他のいくつかの著名なBIツールと比較してみた。GRI では従来Tableauをメインに知見を貯めてきているので、仕様経験のある人の声やウェブ上の情報を参考にした。

今回比較するのは、Power BIMicrosoft)、DOMOMotion Boardである。これらのツールの間の共通点は、BIツールであるだけに、比較的簡単な操作で分析と可視化(ダッシュボード作成)が出来る点である。細かい相違点は以下にあると思われる:

  • ターゲットユーザーの範囲
  • 使い勝手・機能・表現力(ユーザーの背景、相性にも依存)
  • 導入・運用の価格帯
  • 導入実績 / 知名度 / コミュニティの大きさ
  • サポート・サービス

f:id:gri-blog:20200130103532p:plain

Tableauは先述のように、一般的に使いやすい、何がどこにあるかわかりやすく、そして柔軟に計算法・表現をカスタマイズ可能、美しいダッシュボードで大きなインパクトを醸し出しやすい、作る側も見る側も直感的に操作しやすい、が特徴と言われている。

Power BI

Power BI もTableauと並んで知名度が高く、Microsoft製品ならではの明瞭さ・安心感があり、特にExcelユーザが馴染みやすく、まるで、大容量データを扱えるEXCELの感覚で使われたりする。そしてかなり嬉しいのは、安価で手軽に始めやすいこと( wowed within five minutes”)。抜群に手頃な利用料のおかげで、 BI利用の入口として社内決裁取りやすい。特徴的な機能としては、自然言語クエリでチャートが返される、データソースからの定期更新が可能であることが挙げられる。ただし(特に無料版は)データ容量は少な目なのでビッグデータ向けとは言えない。

DOMO

500種類程度の豊富なデータソース対応できて、可視化以外にデータの統合・集約・加工機能がオールインワンに統括されている。使い勝手や管理性上の利便性の多いクラウドBIツールとして、ETLなどのインテグレーションに必要な技術のない一般的なビジネスユーザーにも使いやすいと言えるでしょう。また統合基盤はトータルで導入コストが低い(データウエアハウスETLのインテーグレーション不要)とか投げられる。

Motion Board

Excelと連動しやすく、円滑な業務を支援する機能が充実している。例えば、Excelで入力・加工して更新するとMotion Board上で自動連動され、ExcelPPTPDFへの出力、自動メール配信機能、業務・業種に合わせたテンプレートが様々内蔵されてる。一方で、高度な機能が作り込まれているということもあって(?)、月額料金が割高の方である。

 

更に俯瞰的にマッピングすると(以下は「どちらかというと、的な話」)以下の図にまとめられるでしょう。

f:id:gri-blog:20200130104215p:plain

 

結局、社内のリソースと何を重視するかに依存し。。。高度な視覚化、見栄え、計算機能、カスタマイズの柔軟性を選ぶならTableau、「誰でも使える」操作性を重視なら、Power BI, DOMO, MotionBoard など掲示板らしいツールが良いと言えるでしょう。

価格帯

導入に関して誰もが気になる利用料金は以下となる。DOMOのみ非公開なので省略。

f:id:gri-blog:20200130104639p:plain

作者:アナリティクスチーム ・ヤン

 

GCP Dataprepで大規模データを扱うときネックになるポイント

どうも、アナリティクス&デベロップメント部のTです。

GCPのサービスの一つ、Dataprepを使えば、GUI上でインタラクティブにデータの集計~整形・加工を行うことができます。

プログラミングコードを書けない人でも手軽にBigQueryやGCS上のデータをいじることができるので、

このサービスを利用してデータ加工パイプラインを組めば、ビジネス側の人も触れる大規模データの分析基盤を構築できるのでは...!

という話になり、機能調査してみました。

・・・

結論からお話ししますと、機能的には不足はないものの、オープンデータを使って基本的な処理を行う実験から以下の難点が見つかりました。

  • 処理速度が遅い
    • 特にCOUNT DISTINCTやJOINはデータ量が増えると結果が返ってこない
  • 課金額の予測が困難
    • 処理時間×使用CPU数による課金、ただしCPU数は自動でスケールされるので制御が効かない。

そもそも数MB程度のデータでも処理に5~10分程度かかってしまうのですが、それが数億行・数十GBのデータになると、処理によってはいつまでも結果が返ってこず時間課金だけ積もっていき、つらいです。

プログラミングができない人向けの小~中規模データのアドホック分析ツールとしてはよいかもしれませんが、

ビジネスサイドの人もいじれるETL(Extract, Transform, Load)ツールとして運用に乗せるのには、無理があるように思いました。

  • Dataprep #とは
    • 概要
    • できること・できないこと
    • 設定可能な項目
      • データソース
      • 処理パフォーマンス
    • 料金体系
  • 実験:大量データの扱い
    • 概要
    • データ内容
    • 実験内容
  • 実験結果
    • 処理時間
    • 料金
  • 考察:何故こんなにコスパが悪いのか?
    • なぜ遅い?
    • なぜ高い?
  • まとめ

Dataprep #とは

概要

続きを読む