盆暗の学習記録

データサイエンスを中心とした学んだことの備忘録としていく予定です。初心者であり,独学なので内容には誤りが含まれることがある点にご留意ください。

日本の臨床心理士は根拠のない治療を行っているのかも

心理職のためのエビデンス・ベイスト・プラクティス入門―エビデンスを「まなぶ」「つくる」「つかう」という本を,心理統計が好きな友人から借りて読みました。

この本では,

  1. エビデンス(根拠)に基づく臨床の実践(Evidence-Based Practice)がいかに重要か
  2. エビデンスとは何か。EBPの実現のためには何をすれば良いのか。
  3. 日本の臨床心理においてエビデンスに基づく実践がいかに為されていないか

といったことが書かれていて,

私は最初「心理学系の実証分析の話をざっくり掴めたら良いかな」という意識で読んでいたのですが, それだけでなく,上に挙げた3番目の「日本でEBPがいかに遅れているか」という部分も大変ショッキングな事実を知ることができて,

「心理職のための」と書かれているものの,私のように一般の人にとっても有益な本だと思いました。

エビデンスに基づく実践(Evidence-Based Practice:EBP)とは

心理学におけるエビデンスに基づく実践とは,患者の特性,文化,好みに照らし合わせて,活用できる最善の研究成果を臨床技能と統合することである。

エビデンス至上主義ではなく,エビデンスは患者のためであり,患者の特性に合わせることを重視するという点は,治療の相手がいる臨床心理特有のものがあり,計量経済学のテキストとの雰囲気の違いを感じました。

エビデンスの質

エビデンスにはレベルがあり,質の高いものから順に

  1. RCT(ランダム化比較試験)の系統的レビュー(メタアナリシス)
  2. 個々のRCT
  3. 準実験
  4. 観察研究(コホート研究,ケース・コントロール研究)
  5. 事例集積研究
  6. 専門家の意見(研究データの批判的吟味を欠いたもの)

となり,EBMエビデンスに基づく医療)においてエビデンスと言うときは1・2を指します。

この本の実証分析の手法について触れている部分は,専門家でなくてもわかりやすく書かれていて,計量経済学分野の一般向けの本『原因と結果の経済学』を思い出します。

「原因と結果」の経済学―――データから真実を見抜く思考法

「原因と結果」の経済学―――データから真実を見抜く思考法

『原因と結果の経済学』ではエビデンスのレベルは

  1. RCTのメタアナリシス
  2. ランダム化比較試験
  3. 自然実験と疑似実験
  4. 回帰分析

と書かれていて,3以降が異なります。

心理学的な実証分析の手法の用語まとめ

  • 準実験:実際に何らかの介入を行ってその変化を測定する研究(臨床研究,介入研究)のうち,ランダム化した対照群を有しないもの

    • 前後比較研究:参加者の一群に介入を行って,その前後の状態を比較する研究
    • 不等価2群比較デザイン:介入群と対照群の比較をするが,割り付けは参加者の希望によるもの
  • 観察研究:研究者が実際に介入を行うことはなく,既に行われた介入や何らかの要因の影響を観察する研究

    • ケース・コントロール研究(症例対照研究):疾病に罹患した集団を対象に、曝露要因を観察調査する。次に、その対照として罹患していない集団についても同様に、特定の要因への曝露状況を調査する。以上の2集団を比較することで、要因と疾病の関連を評価する。
      • 例えば,現在うつ病に罹患している人と健康な人の群を比較し,過去に遡って親子関係の特徴を検討するような研究
    • コホート研究:特定の要因に曝露した集団と曝露していない集団を一定期間追跡し、研究対象となる疾病の発生率を比較することで、要因と疾病発生の関連を調べる
      • 例えば,現在の親子関係の特徴に着目し,アタッチメントに問題のある群とない群に分けて,将来に渡ってフォローアップし,うつ病を発症するか否かを比較するような研究

日本の臨床心理学研究の現状

「臨床研究と言うと事例研究のことだと理解されている向きがある」

  • 日本の学術誌『心理臨床学研究』の2011年から2014年8月までに発表された論文311件のうち,事例研究が198件(63.7%),準実験16件,RCTは0件
  • 一方,アメリカの学術誌 "Journal of Consulting and Clinical Psychology"では,203論文のうちRCT論文が118本,メタアナリシスが11本で,掲載された論文の約59%がRCTまたは系統的レビューで,事例研究は0件

だそうで,日本の臨床心理学研究は「エビデンスに基づかない医療」へとガラパゴスな進化をしたようです。
確かに,論文サイトで検索してみても,臨床心理学系でRCTの論文はなかなかヒットせず,数が少ないようでした。

この本では,執筆時点での疾患別エビデンスも述べられていました。

例えば,箱庭療法という,患者に砂場の箱庭におもちゃを並べさせる治療法が日本で好まれていて(箱庭療法の論文自体が少なく,その多くは日本語で書かれていて),箱庭療法にはエビデンスがないということも述べられていました。
私は小学生の頃に不登校になりカウンセラーに箱庭療法を受けた記憶があり,私にとって身近な臨床心理の治療法は箱庭療法だったわけですが,あれもまさに「エビデンスに基づかない治療」だったんですね。

私が箱庭療法を受けたのは10年前くらいですが,現在も日本臨床心理士会のWebサイトにも載っているくらいなので,おそらく今も現役の治療法なのでしょう。

本書では,害があることが2002年の論文で示されていた「心理的デブリーフィング(被災者に被災した時の状況を語らせたり,描かせたりすること)」という治療法を東日本大震災の被災者に対して行った臨床心理士の話も当時の新聞の画像とともに掲載されていました。エビデンスに基づかない治療の危険性は当時話題に上がったのだと思いますが(検索するとデブリーフィングを使わないようにと政府が注意喚起した文書も出てくるくらいなので),上に述べたように少なくとも2014年までの論文ではEBPは全然進んでいなさそうです。

今後,自分や自分の身近な人がカウンセリングのお世話になることがあったときには(なかなか無いと思いますが),「日本の臨床心理士の多くは根拠のない治療を行っているのかもしれない」ということを心に留めておき,ちゃんとした臨床心理士を選ぶよう努力する必要がありそうです。その時までに日本の臨床心理の状況が変わっていると良いのですが‥。

Rとe-statAPIで在庫循環図

「公的統計の読み方」をテーマにした一般教養科目を履修したところ,
景気判断の指標の一つである在庫循環図を書く機会があったのでメモします。

在庫循環図とは

  • 縦軸に鉱工業指数の在庫指数の前年比を、横軸に同生産指数の前年比をプロットしたもの
  • 通常,反時計回りに回りながら短期の景気循環を表す

f:id:nigimitama:20180505072058p:plain:w700

Rで実行

1. データの取得

2つの方法があります

  1. 経産省のサイトからダウンロードする
  2. e-stat APIからデータを取得する

私はe-statAPIを使いましたが,実は最終更新日が2017年の5月となっており,それ以降のデータはサイトからダウンロードするしかありません。

## 在庫循環図(鉱工業) ----------------------------------------------------
library(dplyr)

# e-stat
library(estatapi)
AppID <- "" # 自分のAPIのIDを入力

# 1. 統計を検索
#ResultData <- estat_getStatsList(appId = AppID, searchWord = "鉱工業生産・出荷・在庫指数")
#ResultData_df <- ResultData %>% as.data.frame()
#ResultData_df %>% head()

# 2. データの取得:0003181031 業種別/四半期、年、年度/原指数 付加価値額生産(平成22年=100.0) ----
#estat_getMetaInfo(appId = AppID, statsDataId = "0003181031")
output <- estat_getStatsData(appId = AppID,
                             statsDataId = "0003181031",
                             cdCat02 = "0001000" # 鉱工業
                             )

# 3. データの取得:0003181068 業種別/四半期、年、年度/原指数 在庫(期末)(平成22年=100.0) ----
#estat_getMetaInfo(appId = AppID, statsDataId = "0003181068")
stock <- estat_getStatsData(appId = AppID,
                            statsDataId = "0003181068",
                            cdCat02 = "0001000" # 鉱工業
                            )

# 4. merge ---------------------------------------------------------
df = data.frame(QE = output[20:56, c('統計項目A')][[1]],
                output = output[20:56, c('value')][[1]])
df = merge(df, 
           data.frame(QE = stock[20:56, c('統計項目A')][[1]],
                      stock = stock[20:56, c('value')][[1]])   )

# 5. 前年同期比を計算する。{(当期ー前年同期)/前年同期}----------
# 前年同期比関数
Year_on_year_rate <- function(x) {
  y <- NA
  for(i in 5:length(x)){
    y[i] = (x[i] - x[i-4])/x[i-4] # 四半期を使ったので-4
  }
  return(y)
}

# run
df <- data.frame(df,
                 output_r = Year_on_year_rate(df$output),
                 stock_r = Year_on_year_rate(df$stock)
                 )
df <- na.omit(df)

2. プロット

# 6. plot:2009Q1 ~ 2017Q1 ------------------------------------------------------
# デフォルトの関数でplot
plot(df$output_r, df$stock_r, type = 'l')
points(df$output_r, df$stock_r)

f:id:nigimitama:20180505064414p:plain:w700

# ggplotでplot
library(ggplot2)
windowsFonts(Yu = windowsFont("Yu Gothic UI")) #新しいフォントファミリーを定義

g <- ggplot(df, aes(x = output_r, y = stock_r)) +
  geom_point(color = "royalblue", alpha = 0.7, size = 2) +
  geom_path(color = "royalblue", alpha = 0.7)+  # geom_lineではなくpathを使う
  labs(x = "生産前年同期比(%)", y = "在庫前年同期比(%)",
       title = "在庫循環図(鉱工業)")+
  theme(text = element_text(family = 'Yu'))+ # 日本語フォント指定
  # 軸
  geom_vline(xintercept = 0)+
  geom_hline(yintercept = 0)+
  geom_abline(intercept = 0, slope = 1, lty = 2)+
  geom_abline(intercept = 0, slope = -1, lty = 2)+
  # データラベル
  geom_label(aes(label = QE, x = output_r, y = stock_r),
             alpha = 0.3, vjust = 0, color = "steelblue")
g

f:id:nigimitama:20180505064537p:plain:w700

# 7. plot:2014Q1 ~ 2017Q1 ------------------------------------------------------

g <- ggplot(df[21:33,], aes(x = output_r, y = stock_r)) +
  geom_point(color = "royalblue", alpha = 0.7, size = 2) +
  geom_path(color = "royalblue", alpha = 0.7)+  # geom_lineではなくpathを使う
  labs(x = "生産前年同期比(%)", y = "在庫前年同期比(%)",
       title = "在庫循環図(鉱工業)")+
  theme(text = element_text(family = 'Yu'))+ # 日本語フォント指定
  # 軸
  geom_vline(xintercept = 0)+
  geom_hline(yintercept = 0)+
  geom_abline(intercept = 0, slope = 1, lty = 2)+
  geom_abline(intercept = 0, slope = -1, lty = 2)+
  # データラベル
  geom_label(aes(label = QE, x = output_r, y = stock_r),
             alpha = 0.3, vjust = 0, color = "steelblue")
g

f:id:nigimitama:20180505072505p:plain:w700

文系学部生・新卒からデータサイエンティストになるには?

文系学部生というデータサイエンスの王道からはやや外れた立場から,「データ分析を仕事にする(総合職ではなく職種別採用で働く)」という軸で就職活動をしてみて分かってきたことをメモします。

まず,ビジネスにおけるデータ分析の使われ方を確認し,その次に具体的な「データ分析を使う業界」について述べていくという構成になっています。

1. ビジネスにおけるデータ分析の使われ方

1-1. データ分析のレベル

「データ分析」といってもレベルは様々です。「我が社ではデータ分析の業務ができます!データサイエンティストになりたい学生募集中!」みたいな企業があったとしても,話を聞いてみると集計して表やグラフを作り,解釈する業務だったり…なんてこともありました。

まずビジネスでのデータ分析の種類を把握する必要があります。

有名どころの「データ分析のレベル」の分類方法では,以下のような分け方をしているようです。

1. Descriptive Analytics(記述的分析)
データから,「何が起きたのか」を明らかにする。
グラフや表で可視化する,データを解釈するストーリーを考えるなど。

2. Diagnostic Analytics(診断的分析)
データから,「なぜ起きたのか」を明らかにする。相関関係を調べるなどして,より深く調べていく。

3. Predictive Analytics(予測的分析)
確率的な予測を行うモデルを構築する。

4. Prescriptive Analytics(処方的分析)
データから,「何をすべきか」を明らかにする。予測されたモデルから最適な方策を立案する。
例えばレコメンデーションシステムのように,予測結果から提案を最適化するようなもの。

とりわけ,「記述的・診断的な分析」をするレベルなのか,それともより高度に「予測的・処方的な分析」をするレベルなのかが業務の性質を大きく変えると思います。

就職活動の会社探し・業界探しの観点で言うと,私は就職活動を初めた頃にマーケティングリサーチ最大手の株式会社インテージを知り,そこのデータアナリストはマーケティングの分析だけでなく広告予算配分の最適化という「予測的・処方的な分析」も行っているようで,マーケティングリサーチ業界に興味を持つようになりました。

その後もマーケティングリサーチ業界を見ていたのですが,次第にミスマッチを感じるようになりました。というのもマーケティングの場合は予測して自動化とかよりも原因を診断するほうが重要なので,多くのマーケティングリサーチの企業のデータアナリスト職の仕事は「記述的・診断的な分析」がほとんどで,たまに回帰分析や決定木を使うとしても診断的分析の目的で使用しているようでした。

就職活動のときには,自分がやりたい「データ分析」とは「記述的・診断的な分析」なのか「予測的・処方的な分析」なのかを明らかにし,企業を探す時にはその企業の言う「データ分析」がどのレベルなのかを調べる必要があります。

1-2. 統計学機械学習

私はもともと統計学をゆるく勉強していて,後々になってから機械学習にも手を出すようになった人間なので初めの頃は知らなかったのですが,

「予測」をする際には統計学よりも機械学習の方が精度が良いです。

(ざっくり言うと表形式のデータだとXGBoostやLightGBMといったアンサンブル系が強く,画像認識ならCNNが強い印象。統計学の出番はほとんどない。)

なので,「予測的・処方的な分析」をする場合は機械学習がほとんど必須になります。

なんとなく「大学で学んだことが活かせる仕事に就きたい」と思っているゆるふわ統計勢の人には注意が必要な点かなと思います。

1-3. データ分析の職種

データ分析系の職種は主に以下の3種類があるかなと思います。

1. データアナリスト

  • 「記述的・診断的な分析」が主業務である企業が多い印象(仕事のアウトプットはレポート)
  • 必要なスキル:統計学+ビジネス力(経営学マーケティング論,プレゼンなど)
  • 分析はR,SPSSSAS,その他ツールを使う。プログラミングが必須でない企業も多い印象。

2. データサイエンティスト

  • 「記述的・診断的な分析」と「予測的・処方的な分析」の双方を行う(仕事のアウトプットはレポート)
  • 必要なスキル:統計学+ビジネス力+機械学習+プログラミング(分析)
  • R,Pythonなどのプログラミングの能力が必要な企業が多い印象

3. 機械学習エンジニア

  • 「予測的・処方的な分析」を自動化するシステムを作る職(仕事のアウトプットはシステム)
  • 必要なスキル:統計学機械学習+プログラミング(分析)+ プログラミング(システム開発
  • 深層学習の論文に登場する数式をプログラミングして実装できる能力が必要とされることも

※この解説は私の個人的な印象に基づきます。誤りがあるかも‥
※職種の定義は企業によって結構異なります。

ちなみに,これらの3職種の新卒1年目の年収は,

  • データアナリストとデータサイエンティストは同程度(~420万円)
    • 一般的な総合職と比べても,そこまで高いわけでもない
  • 機械学習エンジニアは上限が高い(~1,000万円)

という感じです。

f:id:nigimitama:20180415193030p:plain

企業の例としては以下のような感じ。機械学習エンジニアが最も市場から求められている感じがします。

f:id:nigimitama:20180415193022p:plain

しかし,文系学部卒ではこれらの高給な機械学習エンジニアになるのは難しいと思います。
ソフトウェア開発(Java等)ができることが必要であったり,機械学習についての高い専門性を要求する企業もあります。
大学の専攻と関係なく趣味でソフトウェア開発をしているような人であれば良いですが‥

2. データ分析の職種別採用がある業界

「データ分析人材を必要としていて積極的に雇用しようとしている企業はどこなのか」という点は就活中にとても悩まされました。なのでここでは会社選びのヒントとなるようにデータ分析を使う業界について述べていきます。

以下の図は,私がデータ分析職の職種別採用を行っているのを見かけた企業の業界を,事業の「コンサル / 事業会社」,業務内容の「アナリスト寄り / エンジニア寄り」の2軸で散布したものです(業界というか部門もありますが…)。

f:id:nigimitama:20180415192909p:plain

なお,「コンサル / 事業会社」という軸を設けたのは,それぞれ一長一短あり重要な軸であるためです。
現在私は以下のようなメリット・デメリットがあるのではないかと想像しています。

f:id:nigimitama:20180415192849p:plain

具体的な業界を述べていくと,

2-1. マーケティングリサーチ(市場調査)業界

  • 業界の概要

    • ざっくりいうと「今,人々は何を求めているのか。何が売れそうなのか。」を調査するのが市場調査
    • データを保有している / アンケートの協力者を保有している ことを活かして企業のマーケティングコンサルティングする。
    • 主に「記述的・診断的な分析」を行う
    • 基礎的な統計学と社会調査士のスキル(実査や分析のスキル)が直接的に役立つ可能性がある業界
  • この業界の企業の例

    • 株式会社インテージ
      • 国内1位,世界9位の売上高(479億円,社員1000名ほど。平均年収746万円/39歳)
      • 事業は広告業界にもまたがっており,データサイエンティストは階層ベイズモデルを用いた広告の最適配分の推定といった仕事も行なう
    • 株式会社マクロミル
      • 売上高355億円,1946名。平均年収528万円(32.4歳)
      • 規模は国内2位くらい,インターネットリサーチに特化。
    • 株式会社ロイヤリティ・マーケティング
      • Ponta」のポイントカード事業によって得た購買行動データを基にコンサルティングを行なう
      • 顧客に要因を説明できるアルゴリズムが重視され,回帰分析と決定木を使う仕事がほとんどらしい
    • 株式会社ヴァリューズ

2-2. デジタルマーケティング業界

  • 業界の概要

    • マーケティングの企画・提案を行なう業界
    • AI,VRを含むデジタルテクノロジーをマーケティングに応用していく
    • 企業のWebサイトのアクセス改善などの業務が多め?
    • 主に「記述的・診断的な分析」を行う?
  • 事例

    • Web解析:行動ログを確認して,つれてきたい人が来てくれているかを調べてPDCAを回す
    • ソーシャルリスニング:Twitterやブログなどからテキストを収集し(収集するツールがある),その企業がどう見られているかを分析する
    • 広告のROI分析:何人がCMを見て,何人が買っているのか調べる,クライアントが保有する出稿料データと売り上げデータの重回帰分析などで相関分析を行なう,など
  • この業界の企業の例

    • 株式会社D2C(ドコモと電通の子会社)
    • 電通アイソバー株式会社(電通とアイソバーの子会社)

2-3. 総合コンサルティングファーム

  • 業界の概要

    • テクノロジーやデータ分析による問題解決も含めた幅広いコンサルティングを行なう
    • 「記述的・診断的な分析」と「予測的・処方的な分析」の双方を行う
    • 企業によっては分析を市販のツールで済ませる事例も多い模様?
  • 事例

    • 決定木によるマーケティングのためのセグメント分類とキャンペーン提案
      :保険会社において,「契約更新しにくい客」の特徴を分析し,マーケティングのキャンペーンを検討
    • CRM(Customer Relationship Management:顧客関係管理)のための顧客分析
    • 製造工場における品質向上
      • 海外の工場の「操業監視」「異常検知」「故障の予測」を行なう
      • 製造途中の仕掛品の各種データから完成までに不良品になることを予測し,工場の不調を検知・制御
  • この業界の企業の例

2-4. データ分析コンサルティング

  • 業界の概要

    • データ分析による課題解決を請け負う
    • 「記述的・診断的な分析」と「予測的・処方的な分析」の双方を行う
  • 事例

    • 深層学習による画像解析を用いた,工場における不良品検知
    • 状態空間モデルを用いた食品の需要予測(外食産業)
  • この業界の企業の例

    • 株式会社ブレインパッド
      • 2004年創業。この業界では古参で最大手。
      • 売上高35億円,216名:社員一人あたり1600万円の売上高,平均年収640万円(34.1歳)
    • 株式会社ALBERT
      • 売上高8.7億円,88名:社員一人あたり約1000万円の売上高,平均年収655万円(33.7歳)
      • 技術はありそうだが稼ぐ力は微妙?。営業キャッシュフローもマイナスが目立つ
    • 株式会社ホットリンク:SNSネット掲示板データの分析に強み。平均年収595万円(35.1歳)
    • 株式会社ダブルスタンダード:売上高14億円,平均年収527万円(35.6歳)
    • データセクション:売上高6億円,平均年収337万円(30.5歳)
    • スカイディスク:製造業の工場に対するデータ分析コンサルに特化したベンチャー

2-5. システムインテグレーターSIer

  • 業界の概要

    • クライアント企業に対してIT面でのコンサルティングを行なう業界
    • データ分析がやりたい人にとってのデメリットとしては,分析だけでなくエンジニアの仕事もしなければいけない企業も多いこと -「予測的・処方的な分析」を行う
  • この業界の企業の例

2-6. 事業会社のマーケティング部門

  • 業界の概要

    • メーカーのマーケティング部門などに所属し,自社のマーケティングのためにデータ分析を使う仕事
    • 大手企業の場合,希望の部門に行くことができるかという「配属リスク」がある
    • 「記述的・診断的な分析」と「予測的・処方的な分析」の双方を行う
  • 事例・企業の例

    • 本田技研工業(ホンダ),ビジネス開発統括部ビジネスアナリティクス課
      • 事例①:車のデザインの評価:SNSでの評価を感情分析し,新しいデザインがどう評価されるかを予測
      • 事例②:乗り心地の評価:車に乗っている人の脳波などの生体反応データと車の速度などのデータの関係から,クルマの状態によって乗っている人の感情がどう変化するかを分析
      • (参考:クルマのデザインや乗り心地……「感性」も科学的に評価するホンダの取り組み - 日経BigData http://business.nikkeibp.co.jp/atclbdt/15/258684/041900073/

2-7. 事業会社のデータ分析部門

  • 業界の概要

    • マーケティングだけでなく新規事業の提案も含めて様々な部分にデータ分析を活用する仕事
    • 「記述的・診断的な分析」と「予測的・処方的な分析」の双方を行う
  • 事例

    • 営業の最適化:自社ホームページで資料請求を行った顧客のうち成約率が高い顧客を予測し,選別して追加的な営業アプローチをかけて契約をとる
    • 物件仕入れの最適化:入ってくる物件情報から「売れない物件」を予測して排除し,「売れそうな物件」のみを仕入れる
  • この業界の企業の例

    • エムスリー株式会社
      • 医師向けのWebサイトを運営。日本に30万人いる医師のうち,25万人が会員登録をしている。
      • データ分析部門があり,データアナリスト職採用を行っている
    • 株式会社GA technologies
      • テクノロジーの導入が遅れていた不動産業界でAIを活用しているベンチャー
    • Sansan株式会社
      • Sansanは日本に4人しか居ない「Kaggle Grandmaster」という称号を持つトップクラスのデータサイエンティストが2人在籍している,データ分析に注力しているベンチャー
      • 研究開発部門ではなくビジネス部門でのデータ活用を行なう人材として「データアナリスト」職採用がある

2-8. アドテクノロジー業界

  • 業界の概要

    • 広告配信の最適化に統計学などのデータ分析を活用する
    • デジタル広告は「どんな人に送った結果,どれだけ効果がでた」という情報がわかり効率が良いため,市場は拡大傾向(広告市場自体は縮小しているものの,デジタル広告の比率は増加)
    • 「予測的・処方的な分析」を行う
  • 事例

    • 広告の買い付けシステム
      • ユーザーがWebサイト等を閲覧して広告枠を表示するときに,背後では広告枠のオークションが行われている。
      • 広告の枠のオークションが始まった時,「広告の種類」「広告の枠」「ユーザーの属性」といったデータから,広告のCTR(クリック率)やROI(費用対効果)を予測し,「何円で買う」とオークションに参加する
        → 広告を出した結果,どれだけクリックされ,どれだけ買ってもらえたかがわかる
        → そのデータをもとに,より良いCTR予測モデルを構築する
      • このシステムは瞬時に行われる広告枠の売買で使われる関係上,計算がすぐに終わるロジスティック回帰を使う事が多い
  • この業界の企業の例

    • ユナイテッド株式会社(データサイエンティスト採用がある)

2-9. 事業会社のシステム開発部門・研究開発部門

  • 業界の概要

    • 研究開発やシステム開発だけでなく,機械学習などのデータ分析も活用していく
    • デメリット・留意点:エンジニアの仕事をすることになる場合もある,という配属リスクがある。
    • 「予測的・処方的な分析」を行う
  • 事例

    • 深層学習によるSNS画像解析を用いた「自社製品の使われ方」の分析やマーケティングへの応用
    • 研究開発過程で得たDNAデータの解析
  • この業界の企業の例

    • DeNA
      • データ分析に注力しており,Kaggleの優秀者は業務時間中にKaggleができるほどの注力ぶり
      • 日本に数十名しか居ないKaggle Masterのうち4名が在籍
    • Sansan
      • 名刺の画像認識が主要事業なので画像認識を専門にした機械学習エンジニアがいる
      • 日本に4人しか居ないKaggle Grandmasterという称号を持つトップクラスのデータサイエンティストが2人在籍
    • メルカリ
    • サントリーシステムテクノロジー(サントリーグループのシステム部門)
      • 一部のエンジニアは「先端技術部」に配属され,機械学習エンジニアとして働く
    • ヤフー
      • 「データプラットフォーム&サイエンス領域エンジニア」という職種別採用がある。
      • しかし,データ分析は㈱ブレインパッドに委託することが多い模様。採用で出会った面接官も「kaggle?なにそれ?」みたいな反応だった
      • 2018年頃から「データの会社」を標榜し始めたので,もしかしたら今後はデータ分析に注力するかもしれない。データは大量に保有しており,ディープラーニング用に作った世界2位のスパコン「kukai」を保有しているため解析できる環境もある。

参考

データ分析のレベルに関しての参考文献です

Prescriptive Analytics - Gartner IT Glossary

アナリティクスの進化(Descriptive からPrescriptiveへ) | 欧州進出のIT支援はNewton IT

私が就活で体感した情報ばかりなので全く網羅的ではないと思いますが,データ分析を仕事にしたいと考えている就活生のお役に立つことがあれば幸いです。

[読書メモ]津川 友介『世界一シンプルで科学的に証明された究極の食事』

世界一シンプルで科学的に証明された究極の食事

世界一シンプルで科学的に証明された究極の食事

を読みました。

この著者は過去に『「原因と結果」の経済学―――データから真実を見抜く思考法』という計量経済学・統計的因果推論の本を書いていて,そちらの本も面白かったので,今回の本も買ってみました。

この本は,初めにエビデンス(科学的根拠)のレベル(RCTのメタアナリシスが最もエビデンスレベルが高い,など)について述べて,その後本題に入ってからもエビデンスとそのレベルに基いて述べていたので(「こういう研究結果もあるが観察研究なので参考程度にしよう」みたいな),その点が学者らしい誠実な書き方だと思いました。

色々書かれているのですが,高いエビデンスレベルで分析されていて特に気をつけるべき食品は以下のものでした。

  • 高いエビデンスレベルで『健康に良い』ことがわかっている食品

    1. 野菜と果物(ジュース,じゃがいもは除く)
    2. 茶色い炭水化物(玄米や全粒粉など精製されていない炭水化物)
    3. オリーブオイル
    4. ナッツ
  • 高いエビデンスレベルで『健康に悪い』ことがわかっている食品

    1. 牛肉・豚肉などの「赤い肉」(鶏肉は含まない)とハムやソーセージなどの「加工肉」
    2. 白い炭水化物(白米や小麦粉などの精製された炭水化物及びじゃがいも)
    3. バターなどの飽和脂肪酸

野菜・果物と魚を摂取するように心がけ,それでは満腹感が足りないなら玄米や全粒粉の炭水化物やナッツ(ピーナッツも良いらしい)を食べよう,という感じですね。

以前に私が受講した栄養学の授業で聴いた話と近いものも多かったので,私にとっては結構受け入れられる内容でした。

[読書メモ]『やり抜く力 GRIT』

『やり抜く力 GRIT』

やり抜く力 GRIT(グリット)――人生のあらゆる成功を決める「究極の能力」を身につける

やり抜く力 GRIT(グリット)――人生のあらゆる成功を決める「究極の能力」を身につける

日本では2016年に出版され,その頃流行っていた本を2年遅れで読みました。

流行りの本にはなんとなく懐疑的で,この本も名前だけ知っていて読みはしなかったのですが,読んでみると,この本は学者が書いたものであり,中身は学術的な実証研究の結果を基に論じているため,非常に説得力がある本になっています。

この本の要点をざっくりまとめると,以下のような感じです。

  1. 成功に必要なのは「才能」ではなく,「情熱を持って努力し続ける力(やり抜く力:GRIT)」である
    • やり抜く力 = 情熱 + 粘り強さ
    • 情熱 := 一つの目標に継続的に取り組むこと。
    • 粘り強さ := 挫折してもあきらめずやり遂げること。
  2. 「やり抜く力(GRIT)」は伸ばすことができる
    • (1) GRITを自分自身で「内側から伸ばす」方法
      • 興味を掘り下げる:なにかに興味を持ち,疑問をもって学び,同じ興味を持つ仲間を探す
      • 「自分のスキルを上回る目標」を設定してはそれをクリアする練習を習慣化する
      • 自分が取り組んでいることが,自分よりも大きな目的(人々の役に立つこと)と繋がっていることを意識する
      • 絶望的な状況でも希望を持つことを学ぶ:失敗しない人はいない。失敗から学ぶことが重要。
    • (2) GRITを「外側から伸ばす」方法
      • 親・上司・メンターなど周りの人々が,GRITを伸ばすために重要な役割を果たす。
  3. GRITが強いほど,「幸福感」も強い
    • 成功(コンテストでの優勝,部署でのトップの業績など)と幸せは関係があるものの,同じものではない。
    • 2000人に対するアンケートでは,GRITが高いほど「人生への満足度」も高かった。
  4. GRITだけが重要なわけではない
    • 人の性格は複数の特徴からなる
    • 「偉大さ」と「善良さ」は異なるものであり,どちらかといえば「善良さ」のほうが重要だと筆者は思っている.
    • 過去の研究でも,人々が人を評価するときに最も重要なのは「道徳性」だった

「能力よりも努力(費やした時間)が重要だ」といった話は時折見かけますし,私も経験的にそう思うことはありますが,それを実証した研究結果とともに述べてくれているので,「自分の認識は正しかったんだ!」と納得できます。

著者が元教師であることもあり,人のGRITをどう育てたらよいかといった点についても過去の研究結果を引用しつつ述べていたりするので,人を育てる立場にいる人にとっても良い本だと思います。

ネット上の他の紹介記事でもこの本の内容の概要を掴めると思います:

内容の密度も結構高くて,買って損のない良い本でした。興味があったら買ってみてください。

Kindle Unlimitedが非常に便利なことに気づいた

大学生活の中で専門書ばかり読んでいて知識の狭さ・視野の狭さに危機感を感じてきたので,もう少し一般向けの書籍を読むように心がけようと考えています。

読み方としては,「じっくり読むのではなくざっと中身を読み,沢山の本に目を通していく」といった読み方を考えています。

そうした乱読をしていく際に,AmazonKindle,とりわけKindle Unlimitedというサービスが便利に思いました。

KindleとはAmazon電子書籍サービスで,Kindle Unlimitedとは月額980円でKindleの25%程度の本が読み放題になるサービスです。)

なぜ使おうと思ったのか

これまで私がKindleに対して抱いていたイメージとしては,「変な専用タブレット買わないと使えないんでしょ?」というものでした。

しかし,実際は専用アプリを入れればPCやスマホなど一般の端末でも使用できるようで,試しにPCにアプリを入れて使ってみた所使い勝手も悪くなかったので,かなり印象が変わりました。

また,Kindle Unlimitedに関しては,「どうせゴミみたいな本しか読み放題じゃないんでしょ?」と思っていたのですが,

Unlimited(無料で読み放題)の書籍が意外に多く,雑誌やコミックなどジャンルも幅広いため,月額980円ならかなり安いかなと思います。

Kindle / Kindle Unlimitedを使うメリットは?

現在感じているメリットは

  • 電子書籍なので本の置き場所に困らない
  • PC,スマホタブレットなど,様々な端末からアクセスできる
  • 本文をコピペできるので,サポートサイトがない技術書のコードの写経がしやすい
  • Kindle Unlimitedで支出を抑えつつ気軽に色んな分野の書籍に手を出すことができる

です。

デメリットとしては,「ディスプレイだと紙に比べて読みにくい」というものがあると思いますが,精読ではなく多読乱読していく場合は1ページ毎にじっくり読むことはないでしょうし,使い方によっては問題ないのかなと思います。

また,大きいディスプレイで読めば比較的読みやすかったりするので,大きいディスプレイを使う人とは相性がいいと思います。

私はデスクトップPCで2画面を使用しており,片方のディスプレイは縦置きにしているので見開き表示でも片面表示でも十分な大きさで閲覧できています。
(縦置きのほうはiiyamaのディスプレイを使っています:iiyama モニター ディスプレイ XB2481HSU-B1 (23.8インチ/フルHD/AMVA/HDMI,D-sub,DVI-D/昇降/ピボット/3年保証)

乱読してサっと内容を知る目的で読んでいく場合は安いほうがいいと思いますので,Kindle Unlimitedは有力な選択肢かなと思います。

一方で,ベストセラーの本やそのときの流行りの本はUnlimitedになっていない場合が多いと思いますので,そこは普通に買う ようにして,「その本の性質や格」や「読書の目的」にあわせて選択していけば良いと思います。

Webアプリ開発の入門の仕方を探索中

実装したい

以前,Rで予測モデルなどを作っても,他の人に使ってもらうときなどにどうやったら「RstudioからプログラムをRunしなくても実行できる形」にしたらいいのかがわからず苦労した経験があり,「分析だけでなく実装もできるようになりたい」と思うようになった。

「Webアプリに限らずアプリを自分で作れるようになりたい」と思ってしらべてみたところ,ローカル環境で動くアプリ(正しい呼称がわからないけど,Webアプリじゃないほうのアプリ)を作るには,それを動かすOSごとに別の言語で作る必要があるらしい(「Mac OSならSwift」とか)*1

一方でWebアプリなら,サーバーを用意する必要はあるものの,一つの言語で作ったものを多様なOSで動作させることができるらしい。

Webアプリをつくりたい

Rの{shiny}という,Javascriptで動くWebアプリをRから簡単に作ってくれるパッケージを使うことを覚えたが,簡単である反面カスタマイズ性は落ちるのと,便利である反面「中でどう動いているのか全然わからん」という状態になっていた。 f:id:nigimitama:20180324020055p:plain

PythonはしっかりしたWebアプリを作ることもできるようなので,PythonのWebアプリを勉強することに決めた。

Djangoに入門

Webフレームワークなるものを使っていくのがよいらしいのでDjangoというフレームワークを使っていきたい。

私のようなプログラミング初心者にとって,環境構築が最初の関門になるが,

PaizaCloudというサービスを使うと環境構築の手順をすっとばして使えるらしい。 この記事に簡単なチュートリアルもあるので雰囲気がつかめた。

とはいえ環境構築も避けられないのでこのあたりの記事を見ながら勉強していきたい。

*1:【入門者必見】アプリ開発のはじめの一歩とは | 侍エンジニア塾ブログ | プログラミング入門者向け学習情報サイト https://www.sejuku.net/blog/2619