0年 0月 の投稿一覧

TODO/備忘録用のリスト作成の勧め

マインドテックの冨です。物覚えは良い方ではないですが、貸したお金は覚えています。

日々のスケジュールは作成している人は多いかと思います。ただ、いろいろな知人に話を聞いている限りでは、具体的にやらなければならない事をリストを作って管理している人は、思ったよりは少ないかな感じました。たとえば、「今日はこれをやる」「今週中にこれを終わらせないといけない」などです。

私の場合は、「そのうち時間ができたらやりたいこと」や「店にいったら買うもの」なども含めて、まとめてツールで管理するようにしています。人によっては手帳でもポストイットでも、自分が使い易いもので良いと思いますが、とにかく書き出す事が重要と思います。

メリット1:気軽に忘れられる

いきなり何言っているんだとツッコミ入りそうですが、とにかく書き出してあれば、あとは気になったらそこをみればよいという安心感が生まれます。これをやっておかないと、常に忘れないようにと頭のなかで何度もぐるぐると思い出す必要があり、その負担は自分が思っている以上に大きいと感じました。

メリット2:作業量の可視化

今日、帰宅するまでにどの程度の作業があるのかを、ある程度見積る事が出来ます。それによって仕事のペースがコントロールできるようになります。

メリット3:達成した事項をリストから削除する事による達成感

タスクが終わった後にリストから削除する際に、ささやかながら達成感が生まれます。とにかく終わらせようというモチベーションにもつながります。


私が使っているツール

Wunderlistというツールを使っています。Microsoft社に買収されましたが、PCでもWebでもスマートフォンでも統合的に利用できるのが良いです。アプリで管理する方は、他にもToodle, Remember the milkなどの著名ツールがあります。私もいろいろと使ってみましたが、最終的にWunderlistに落ち着きました。ただUIの使い勝手もふくめ、人それぞれと思いますので、自分にとって使い易いものを選んで頂ければと思います。

Wunderlistを選んだ理由としては

  • UIがサクサク動き、あまりストレスを感じない
  • サブタスクに分割して管理できる。
  • 通知機能が使える。
  • 各タスクについてメモが追加できる。(やりかけ作業の経過をメモったり、必要な資料、場所などを記録しています)

タスクの分類の仕方

タスク分類はいろいろな基準があると思います。私の場合はプライベートも仕事も区別せずに、リストに突っ込んでいます。「とにかく、これを見ていれば良い」という状況を作りたいため、あまり複数のアプリを使い分ける事は想定していません。非常にものぐさなので、ちょっとした面倒臭さがツール利用を止めてしまう原因になるんです。

Wunderlist

 

 

 

 

 

 

 

受信箱: とにかく気になったものはここに入れておきます。タスク以外にも単なるメモでも、まずはここに入れておくものもあります。定期的に見直して、タスクについては、別のカテゴリーに振り分けていきます。メモについては別のメモ帳に移したり、内容によってしかるべき対応を取ります。

星付き、今日、週: 各タスクに付与した期限などの属性により、自動的にこのカテゴリに表示されます。

優先度:高(今日中に): 字面通りで、今日はこれが終わらないと帰らない/寝ないなどのタスクを書いていきます。

優先度:中(今週中めど): こちらも字面通り。「時間が出来たらやっといて」レベルのタスクがここに入ります。

・優先度:小 : 急がなくとも、そのうち時間がある時にやっておけばよいもののメモ。「いつか、やりたいなあ」といった希望もこちらへ。

・ペンディング: タスクのうち、何らかの理由で一時中断になっているもの。

・買い物、欲しい円盤、欲しい本、欲しいものリスト: 実際に買い物に行く際のリストとしても使います。円盤=CD, DVDは趣味のもの、本などは、いずれ本屋などに立ち寄った時に買うもののメモです。

・行きたい店: 雑誌の記事やTVなどで紹介されて、いつか行きたい店をメモっています。

こんな感じで直近でやる必要があるタスクの他にも、時間があるときに仕込んでおこうと考えている事項や買い物メモまでもWunderlistで管理しています。(以前は別途にEvernoteなどを併用していましたが、いちいち別のアプリを立ち上げるのが面倒になり、全部を1つのツールにまとめました。)

作業管理や日常の物忘れ防止対策としてお勧めですので、ぜひ自分なりの使い方を模索してみてください。

学習に便利なIBM Data Scientist Workbench

マインドテックの冨です。

先月、今月とWatson Summitやdatapalooza Tokyoに出てきて、IBM社のデータ処理系のツールなどを見てきましたが、BluemixからWatsonが手軽に利用できるようになったりと、同社のいう”Cognitive”な環境とともに、分析系のツールが展示されておりました。もっとも同社は著名な統計分析ツール”SPSS”やBIツール”Cognos”を買収したという経緯もあり、幅広い製品ポートフォリオを有しています。

そんな中で面白いと思ったのがタイトルにもつけた”Data Scientist Workbench”

https://datascientistworkbench.com/

データ分析に利用できるオープンソース系のツールを、統合的に利用できるようにしたサービスです。つらつらと触ってみていましたが、どうしてこれがナカナカ便利。特に学習用途には向いているなと思った次第です。

データ投入、データ整形、分析に必要なツールが揃っています。それぞれのツールの利用方法の詳細は、それぞれググってくださいませ。

Data Scientist Workbench

Data Scientist Workbench

 

 

 

 

 

 

 

データ投入:”MyData”

データファイルのアップローダーです。ディレクトリで階層管理する事もでき、アップロードしたデータファイルは各種分析ツールから利用することができます。また有名なiris.csvなどのデモ用データなども用意されていました。

データ整形:”Open Refine”

もともとはGoogleで開発されたGoogle Refineがベースで、2012年にオープンソース化されたデータクレンジングやデータ抽出、フォーマット変換を行うためのツールです。

Text, CSV, TSV, XML, RDF, JSONなどのデータフォーマットに対応し、データの前処理を行えます。

データ分析:R studio

分析用言語”R”を使い易くするためのIDE・統合開発環境です。コードのエディタの他、コンソールやグラフ表示なども併せて行う事が出来ます。またBig RやSparkなどとも連携しており、即時に利用可能です。

データ分析: Jupyter Notebook

“Notebook”というツールはあまり馴染みが無いかもしれませんが、いわゆる普通の作業記録のためのノートのデジタル版と言ってもいいでしょう。分析用の”Notebook”は登録したコマンドとその応答結果を記録し、再現性のある分析と文書化を行えるようにしたものです。

Jupyter Notebookは、もともとはpython用に開発されたIPythonをベースに2015にリリース。作業に関するコメントの他に、R, Python, Scalaのコードを書いて実行する事が出来ます。またグラフの描画も可能です。

また作成したノートは他の人と共有することができるため、作業記録の共有や分析方法のハンズオンなどに利用することもできそうです。

データ分析: Zeppelin Notebook

こちらもJupyter同様に、作業を記録するためのツールであり、2014年にASFインキュベーションプロダクトになりました。

Webブラウザからの操作で、Python, SQL, Scala, shellコマンドなどが利用できます。

これらのツールを利用するためには、まずは環境の準備を自前でやろうとすると、それだけで結構めんどうなのですが、サインアップすればすぐに利用できる環境というのは魅力的です。

そんなに使い込んでいないため、業務でバリバリ使えるのかは分かりませんが、少なくともお手軽にRやSpark、Pythonを利用した分析を学習するための環境としては非常に優れていると感じました。

残念なビッグデータの例

マインドテックの冨です。

ビッグデータブームも落ち着きをみせ、最近はIoTだ、FinTechだと、別のキーワードにトレンドが移っているようです。そんなこともあって、以前ほどは「データ分析、いぇい!」なシーンも減ってきているかと思いますが、特にIoTではリアルタイム計測~リアルタイム処理と分析の難易度が上がってきています。Apache Sparkだ!MQTTだ!とか、いろいろと聞こえてきます。そんな中でもデータ処理関連のご相談を時々受けるのですが、少しヒアリング&サンプルを見せて頂くと、「これはシンドイなあ・・・」と思う案件がいくつかございます。(知人では「データ分析案件で出てくるデータの9割以上はゴミだ!」と言い切る人もいます。)

そんな中で「こんなデータは嫌だ!」というケースをいくつかご紹介して、他山の石と頂ければと思います。(もちろんフィクションです。かなりを脚色していますが、似たような事が起こっています・・・)

1.そもそもデジタル化されていない

「うちには大量にデータがあるから」と出かけていくと、大量の段ボール箱に入った記録シートなどがお目見えするシーンです。思わず涙がこぼれそうです。これらを実際に分析の俎上にのせるには、データの手打ちでの移し替えが常です。最近はOCRの精度も良くなってきているので、昔と比較したら格段に作業効率は良くなっているのですが、センサーの設置地点ごとに記録表の表組が変わっていたりすると目まいがします。

当然、手打ち写経で打ち間違いなどの作業ミスも発生しますし、なかなか困難を極める現場となりますね。

2. フォーマットがバラバラ

取得した時期、拠点などで、フォーマットが異なっていたりすると、単純にデータストアにロードできず、整形など何らかのプレ処理が必要になります。こちらも最近はETLなどのローダーが普及してきていますし、インポート処理も親切な作りになっているツールも多いので、何らかのデータストアに格納されているものであれば、変換は容易になりました。単純に数字だけといったものは意外とやりやすいのですが、手入力したコメントのような文章が入ってくる平文のテキストファイルだとツライ事が多いです。’  や ” 、,  :; スペース、タブ文字など、どんな文字でも入りうると、正規表現を駆使してもデータの区切りを定義する難易度が跳ね上がります。レコード数が多いと「おお!やっと入った!」と一時的に安心しても、途中から列がずれているのを見つけて落胆すること数限りありません。

3. データの連結を考慮していない。

最近のアドテク関連は、いかにしてデモグラ情報と行動ログを関連づけるかとか、同一人物が違うデバイスを使った時の記録をどのように突合させるかなど、データ連携をさせるための工夫の歴史といっても過言ではないと思います。そんな中、結合に必要なキー情報(会員番号とか、機器の識別コードとか)が無い状態で、「年齢別とか男女別の売上比を出してみて」と言われましても、どうしようもないんですね。あとから追加できる情報ではないため、お手上げ状態になります。

似たような例としては、名寄せを全く考慮していないケースもあります。例えば「NTT東」「NTT東日本」「東日本電信電話株式会社」は一般的に同一会社とみなされます。これを何も前処理をしないで単純に集計すると、異なる3つの会社があると見なされるんですね。そうすると結果を見誤る事になります。こちらもデータ名寄せを支援するためのツールやサービスも出てきていますが、もともとはデータ取得時に考慮されているとベストです。

4. 必要なデータが取れていない

データマイニングといった探索的な処理の場合には、あまり表だった問題にならないわけですが、知りたい集計結果、KPIを出すために必要なデータが、なぜか取れていないというケースが、ちらほら見かけます。分かりやすい例えでいうと、コンビニの売り上げ分析で「年齢別」「男女別」の集計をしたいというニーズがある場合、レジに登録する際に「**歳台」「男性」といった情報も併せて登録する必要があります。または「”**ポイントカード”はお持ちですか?」といった具合に、カードの登録情報と上記のような名寄せを行って得られる場合もありますが、いずれにせよ、何らかの手段でデータ化しないと分析に使えないわけです。

この逆もしかりで、欲しい分析結果に関連性が薄いデータを大量に渡されることもあります。「とりあえず何かの役に立つかもしれないから」と言われましてもねえ。

5. 欠測が多い、精度が怪しい

データ前処理の段階で、クレンジング等を行う際に、ひとまず仮にデータを可視化して傾向を見るといった作業をすることが多いです。その際に極端に大きい/小さい値を異常値として取り除く事があります。すると、明らかに異常値だらけというデータを見つける時があります。センサーの管理が無茶苦茶だったりするわけですね。同様に欠測期間がやたらに長いものが見つかることもあります。メンテナンス期間とか停電など、ある程度の期間に固まっているとかであれば、比較的対応しやすいのですし、一時的な欠損であれば前後の値の平均を暫定的に使うなどで処理できます。ついでに言うと、データソースが複数にわたっている場合、それぞれの時計が同期しているかも重要です。

 

現場のトラブルは挙げていくとキリがないわけですが、他には保存メディアに関するトラブルは比較的多いですね。保存したCD-ROM, DVD-ROMが読めなくなったなどが典型例ですね。(「”MOドライブ”, “zipドライブ”, “DATテープ”に入っているんだよ」みたいな希少メディア関連は、最近はほとんど無くなりました 🙂 )

こんなわけで、ただただ「大量にあるデータを使って、何かうまい事を言ってみせろ。ビッグデータだろ」的なケースにおかれましては、しばしばご期待にお応えしかねるケースも出てくるわけですが、逆に言えば、これからのデータ分析プロジェクトにおいて、欲しい成果が決まっているのであれば、それに合わせる形で分析手法、取得データの設計をされるのが望ましい限りです。