ROC曲線とAUCについて定義と関係性をまとめたよ
[toc]
はじめに
こちらの記事の内容を1枚絵にまとめたものになります。以下、文章で少しだけ補足します。
正解率系の各種指標について
(参考)こちらの記事より引用させて頂きました。
クラス分類モデルの性能評価には様々な評価指標が存在しますが、上記の各種指標の計算で諸々算出されます。 用語を覚える際に混乱してしまいがちですが、以下の関係性さえ理解しておけば丸暗記しなくても思い出せます。
①正解か不正解かを示す -> T or F ②モデルからの予測分類を示す -> P or N
偽陽性は、FP(間違って陽性判定した数) / FP + TN(陰性全体の母数) 真陽性は、TP(正しく陽性判定した数) / TP + FN(陽性全体の母数)
テキストでROC曲線とAUCをまとめる
①ROC曲線ってなんだ? 分類する閾値を変化させ、上記2指標の値をプロットしたものがROC曲線に当たります。'偽陽性が0の状態(陽性への判定閾値が限りなく高い)で、真陽性が高いモデル'が予測率の高いモデルと言えます。
②グラフをどう解釈する? "スコアが0.999999以上のみを陽性と見なすよ!"という厳しい条件においても、陽性を正しく分類できるモデルは優れたモデルと言えますよね。偽陽性(横軸)が0の状態というのは、まさに上記のような条件を再現したものだと言えます。(実際に閾値がいくらに設定されているかは、入力によって異なるので、あくまで例です。)
③どんなグラフになる? そして、偽陽性が高まる = (判定閾値が低くなり)陽性判定が増える = 真陽性は増えるという関係が常に成り立つので、ROC曲線は必ず右上がりになります。
④AUCはこういうもの っで、あれば曲線と横軸との間の面積が大きいモデルというのは、'偽陽性が低い段階から正しく分類できていたモデル'となるわけですから、AUC(ROC曲線の横軸と縦軸に囲まれた部分の面積)は分類モデルのパフォーマンス評価指標として有用なわけです。
Scikit-learnでAUCを計算する
roc_auc_score()に、正解ラベルと予測スコアを渡すとAUCを計算してくれます。 楽チンです。
import numpy as np
from sklearn.metrics import roc_auc_score
y = np.array([1, 1, 2, 2])
pred = np.array([0.1, 0.4, 0.35, 0.8])
roc_auc_score(y, pred)
クラス分類問題の精度評価指標はいくつかありますが、案件に応じて最適なものを使い分けていましょう。
正解率とAUCを計算して最適なモデルを選択するスクリプト
かなり冗長ですが、学習過程で作ったコードを貼ってみました。
# import basice apis
import numpy as np
import pandas as pd
%matplotlib inline
from sklearn.datasets import load_breast_cancer
from sklearn.preprocessing import StandardScaler
from sklearn.neighbors import KNeighborsClassifier
from sklearn.linear_model import LogisticRegression
from sklearn.ensemble import GradientBoostingClassifier
from sklearn.pipeline import Pipeline
from sklearn.model_selection import train_test_split
from sklearn.metrics import accuracy_score
from sklearn.metrics import roc_auc_score
import pickle
# import Sample Data to learn models
dataset = load_breast_cancer()
X = pd.DataFrame(dataset.data, columns=dataset.feature_names)
y = pd.DataFrame(dataset.target, columns=['y'])
# cross-validation by holdout
X_train,X_test,y_train,y_test = train_test_split(X,
y,
test_size=0.20,
random_state=1)
# set pipelines for two different algorithms
pretrained_pipes = []
trained_pipes = []
pipe_knn = Pipeline([('scl',StandardScaler()),('est',KNeighborsClassifier())])
pipe_logistic = Pipeline([('scl',StandardScaler()),('est',LogisticRegression())])
pipe_gbc = Pipeline([('scl',StandardScaler()),('est',GradientBoostingClassifier())])
pretrained_pipes.append(pipe_knn)
pretrained_pipes.append(pipe_logistic)
pretrained_pipes.append(pipe_gbc)
# パイプラインの学習
for pipeline in pretrained_pipes:
trained_pipe = pipeline.fit(X_train,y_train.as_matrix().ravel())
trained_pipes.append(trained_pipe)
# パイプラインの評価(評価は指定指標の下で実施されるようにすること)
# 結果格納データフレーム生成用に各種配列を作成
result_clumns = ['name','accurate_rate','roc']
result_names = ['KNN','LOGISTIC','GBC']
result_accuracy = []
result_roc = []
# 各モデルで性能評価する
for pipeline in trained_pipes:
result_accuracy.append(accuracy_score(y_test,pipeline.predict(X_test)))
result_roc.append(roc_auc_score(y_test,pipeline.predict(X_test)))
# リスト->ディクショナリ->データフレームに変換
values = [result_names,result_accuracy,result_roc]
result_dataframe = pd.DataFrame(dict(zip(result_clumns,values))).loc[:,['name','accurate_rate','roc']]
high_accurate_model = result_dataframe.sort_values(by=["accurate_rate"], ascending=False).iloc[0,[0]].values[0]
high_accurate_score = result_dataframe.sort_values(by=["accurate_rate"], ascending=False).iloc[0,[1]].values[0]
high_roc_model = result_dataframe.sort_values(by=["roc"], ascending=False).iloc[0,[0]].values[0]
high_roc_score = result_dataframe.sort_values(by=["roc"], ascending=False).iloc[0,[2]].values[0]
result_dataframe
#結果呼び出し用関数
def model_selection(test_score):
if test_score == 'accurate':
print('最も正解率が高かったのは',high_accurate_model,'で、その値は',round(high_accurate_score,4),'でした')
elif test_score == 'auc':
print('最もAUCが高かったのは',high_roc_model,'で、その値は',round(high_roc_score,4),'でした')
result_dataframe
else:
print('エラー!model_selection関数には、auc か accurateを引数として渡してください。')
# 関数呼び出し
model_selection('accurate')
model_selection('auc')
model_selection('hogehoge')
>最も正解率が高かったのは LOGISTIC で、その値は 0.9825 でした
>最もROCが高かったのは LOGISTIC で、その値は 0.9762 でした
>エラー!model_selection関数には、auc か accurateを引数として渡してください。
【1泊2食/絶景温泉つき】東京・関東近郊で宿坊に宿泊するなら太陽寺がおすすめですよ
[toc]
まえがき
こんにちは、さかなEXです。
学生時代、京都に住んでいた時期がありその頃はお寺をあちこち巡っていました。 お寺って身近な非日常という感じで、リラックスできる場所だと思います。
友人から、埼玉秩父の山深いところに"東洋のマチュピチュ"なるお寺があるという話を聴きました。しかも、泊まり込みで、写経/座禅/精進料理などを気軽に楽しめるとか...
行ってみっか!という事で、11月下旬に実際にお邪魔してきたので時系列順に体験レポを書いてみます。"座禅とか、写経とかやってみたいけどキツそう"と思っている人は1度気軽な気持ちで足を運んでみると良いと思います。
本格的な鍛錬を希望の方には緩いのかもしれませんが、小旅行気分で訪れてみるには持ってこいです。大自然の中でとてもリラックスできる事を保証します!
-->記事書いていて改めて思ったけど、太陽寺、、、やっぱエッジ立ち過ぎてる笑
こういう味のあるWEBページ大好物です。阿部寛のHPと同じ匂いを感じる。
秩父の山奥にありますが、池袋からレッドアロー号で迎えば都心からも2時間足らずで到着する好?アクセス
僕が行った時は、1泊9,000円でした。ちなみに2回目以降お手伝いとして参加すると格安で宿泊できるので、ベテランの方はお手伝いをされていました。次に行く時は、僕もお手伝いすると思います!
そもそも宿坊とは?
宿坊(しゅくぼう)とは、お寺や神社の宿泊施設のことを指しています。元々は、僧侶や参拝者が泊まるための施設であったのですが、現在は一般の観光客の受け入れが増加しており、宿泊施設としてのサービスも充実しています。今回訪れた太陽寺も人気の宿坊の1つ。伝統ある精進料理をはじめ、座禅、写経、読経、といった貴重な修行体験が出来る点が「宿坊」の魅力です!
到着から下山まで
到着すると1日の流れがかかれた何やらかわゆいイラストが...修行感皆無。
秩父駅からお寺への最寄り駅まで電車で移動すると、車で迎えに来ていただけます。 この日は、和尚さんが忙しかったので、お手伝いの方が迎えにきてくれました。
あと、ここ大事なのですが、太陽寺は何と携帯の電波が届きません。いわゆるデジタルデトックスというやつですね。取引先からの急な連絡も、承認欲求にまみれたSNS(言い過ぎw)も秩父の山奥には存在しないのです。まさに東洋のマチュピチュと呼ぶにふさわしいです。
到着したらまずは写経タイム
無心になって写経を行います。初めて体験したけど、ひたすら集中できて良い気持ち。
到着すると早速写経に取り組みます。もちろん道具は用意されているので手ぶらでOKです。日常生活で本当に1つの事に集中する瞬間ってあまりないと思います。初めてですが、結構綺麗に書けた気がします笑
和尚さんを囲んでお経を読みます
見よう見まねでお経を一緒に読み上げる。
写経がひと段落すると、次は参加者一同でお経を読み上げます。足が痺れるという方は、正座も強制ではないので安心して取り組めますよ。 お経が終わったら、説法を聞きます。この日のお題目は、"空とはどういうことか?"という内容。個人的には興味がある内容だったので、色々と質問してしまいました!
待ってました!和尚さんの手作り精進料理
特にかき揚げとおひたしが最高に美味しかった
次は、お待ちかねの精進料理タイムです。6名ほど同時に泊まっていた方がいたのですが、ベルギーから来られた方も美味しいとビックリされていたので、万国共通の美味しさなのだと思います。ちなみに、ご飯はおかわり無料なのでガッツリ派の人も安心です。
DIY和尚さんこだわりの天空露天風呂
ちゃんと脱衣場も付いている本格仕様なのである
なんと太陽寺、境内の敷地内に和尚さんお手製の露天風呂があるのです。それも、シャワー・脱衣所付きです。 写経とお経で清まった心のままで、星空の下、湯に使った時しみじみと日本に生まれてよかったぁって思いましたね。
ちなみに就寝は大広間で雑魚寝なので、宿泊旅行感があります。
太陽寺のワンちゃんと一緒に御来光鑑賞
元気一杯のお犬様達と陽の光を浴びる
11月下旬だともう薄氷が張るくらいに冷え込む
写真は載せていないのですが、太陽寺にはお犬様が何匹か住んでいます。 朝は少し早く起きて、近くの御来光スポットまでお犬達を引き連れながら散歩に出かけます。
ここがマチュピチュか....な気持ちになれる絶景座禅
大自然を望みながらの座禅は今回の体験の中でも一番感動した瞬間。心が汚れてきたらまた来ようと思う。
今回の体験で1番癒し効果があったのは、この座禅体験でした。座禅といえば、境内の中で背中を叩かれないようにひたすら耐える苦行のようなイメージがあるかもしれませんが、太陽寺の場合は初心者の方にも優しくという心遣いの元で希望者のみ和尚さんが喝を入れてくださる仕組みなので、自分のペースで座禅に取り組むことができます。
また、京都の清水寺のように座禅堂が崖下にせり出すようになっていて、自然を眺めながら心を落ち着かせることができるのです。 文章力がなさ過ぎて、伝えきれないのが辛いです笑 この為だけに、秩父の山奥まで来てみる価値はありますよ。
(ちょっと寒いけど...)朝精進料理
太陽寺での1日は精進料理に始まり、精進料理に終わる
2日目の朝食でお堂の外の御膳で朝食を食べ終えたら、1泊2日の宿坊体験は終了です。
全然敷居高くないので、興味のある方は1度行ってみることをおすすめする
下山後に喫茶店で食べたパフェ。罪深い。
他にもお犬様と遊んだり、鹿に遭遇したり、実はお寺を降りた後に食べたパフェがめちゃくちゃ美味しかったり色々とあったのですが、何よりも太陽寺の和尚さんがとてもフレンドリーで物腰の柔らかい方です。街での暮らしにちょっと疲れた時は、レッドアロー号に乗って、心と身体を清めにくるのも良いかもしれません!この記事で興味を持った方は、実際に足を運んでみてください。
AudibleとワイヤレスイヤホンZolo Libertyの組み合わせが便利過ぎて全読書好きにオススメしたい
[toc]
まえがき
こんにちは、さかなEXです。
みなさん最近本を読めていますか?新しい知識を身につける上で読書は必要なものですが、活字を読むのが苦手という人も多いと思います。
僕も、仕事中は良いのですが、家に帰ってから本を読もうとすると中々ページが進まず積ん読が進んでいます。
結構まずいなあと思ったので、昔使っていたオーディオブック聞き放題サービス"Audible"をワイヤレスイヤホン"Zolo Liberty"と一緒に聴くようにしてみて、えげつないほどに快適なことに気がつきました!
という訳で、月額定額制オーディオブックサービスAudible と ワイヤレスイヤホンZolo Libertyの掛け合わせの凄みを紹介したいと思います!
月額税込1,700円。金額だけ見ると高く感じる人もいるかもしれないけど、本一冊分と考えれば全然安い思うよ
オーディオブックを聞くなら、ワイヤレスイヤホンZolo Libertyが絶対的にオススメ
”そもそもオーディオブックって何?美味しいの?”という人は、こちらの記事をご覧になってください。
http://mongome-kitchen.tokyo/audible_febe/
音楽が聞ける環境であればどんな場所でもインプットができて、受け身の姿勢でOKなので脳負担も小さいオーディオブックは良い所も多いのですが、都度イヤホンを耳に掛けるのもそれはそれで面倒臭いです。人間って本当怠け者ですね笑
そんな極度の面倒臭がり屋には、ワイヤレスイヤホンの使用をオススメします。聴きたいと思う時に、耳にカポっとはめるだけで学習を開始できるので、最初の1歩のハードルが下がります。
僕の場合は、以下のようなタイミングでカポっとはめて聴きたい本を聞いています。
特に寝る前に聞いてから就寝するのは、とてもオススメです。 静寂な環境で聴くのが内容がスーっと頭に入ってきますよ。
ワイヤレスイヤホンであれば、Apple AirPodsでも、Boseでも良いのですが、アンダー10,000円のZolo Libertyがコスパ的に最強だと思います。
↓自分が所有している廉価版
売り上げランキング: 93
↓外部音声取り込み機能がある上位版。(個人的には、音声切れば外の音も聞こえるので初心者は廉価版で十分満足できると思う)
売り上げランキング: 609
[peg-image src="https://lh3.googleusercontent.com/-WZW0fTQl-pI/WmXRijSnvsI/AAAAAAAAIuE/zF1oGcQ5NtItxe7nDP5DQRIty6JGH37IgCHMYBhgL/s144-o/IMG_1709.JPG" href="https://picasaweb.google.com/116818149385379809046/6497713218401272193?authkey=NsoOBFyU7HQ#6513842827580391106" caption="" type="image" alt="IMG_1709.JPG" image_size="3024x4032" ]
Bluetooth派の人も1回ワイヤレス使うと快適すぎて戻れなくなるはずだ
視覚からのインプット(読書)が苦手な人は確実に存在するの....
結局、どれだけ大量の本を読んだとしても、自分の中に取り込めていなければ殆ど意味は無いし、わかった気になった漫然とした気持ちで本を読むのはそれこそ時間の浪費だと思います。
効率的に情報を取り込めないのは、自分の努力云々よりも情報インプットの強みが、視覚以外の部分にあるからかもしれません。
http://kodokoko.com/2015/10/08/vak/
今まで1度読んだことのある本をオーディオブックでも聞いてみると、読書と相性が良いのか?オーディオブックと相性が良いのか?理解できると思いますよ!
オススメのオーディオブック一覧(Audible版)
興味はみんなバラバラなので、オススメというのも難しいのですが、個人的に聴いている作品をまとめてみました。Audibleは歴史/投資あたりに興味がある人は、結構ハマれると思います。ラインナップが完全におじさん好みで、ちょっと悲しくなりますね笑( ^∀^)
一方で、比較的新しい小説などは殆ど存在しないので、小説や最新の書籍を楽しみたいという人は後述するFebeがオススメです。
歴史系
-->超大作すぎて1日丸々使っても聴ききれません。以前、Kindle本で読んだことがある作品ですが、面白過ぎてあっという間に読めたので、オーディオブックも面白いはず!
投資系
パンローリング (2013-11-01)
売り上げランキング: 121,643
-->仮想通貨ブームに踊らされないように、心を鍛えておこうと思って聴いています。投資の心構えを根源的な欲求まで遡ってコンコンとレクチャーしてくれるので、とても参考になります。
ビジネス系
-->なんとなく聴いてみたのですが、労働について別の視点から考えるきっかけを与えてくれる良著でした!
小説系
-->聴いていないのですが、こんなベストセラーも時々あるよ!っという例で。
最新のビジネス書や小説を聞きたい場合はFebeを使おう!
Audibleは基本的に、版権切れのちょい古めの作品が掲載されているプラットフォームなので、最新の書籍を聴きたいという方はFebeを使うのがオススメです!
Febeもワイヤレスイヤホンと一緒に使うことで、威力倍増なのでその際は是非に!
【入門者向け】SQLをこれから勉強する方におススメしたい最短・最速の習得プラン教えます
[toc]
まえがき
こんにちは、さかなEXです。今回は、SQLのお話です。最近のWeb界隈の企業では、企画もマーケターも簡単なデータ抽出は自分でSQLを書いて抽出してね☆というスタイルの会社も増えてきているようで、スキルセットの1つとしてSQLを身に付けることの必要性が増してきていると言えます。
自分も業務上習得の必要があったので、いろいろ当たり外れを経験しながら色々な教材を用いて独学してきました。インプット+業務でのアウトプットもあったので、今ならほとんどのデータ抽出処理は(WEBで調べながら)SQLを書いて実行することができるようになり、快適な(?)データ分析ライフを送れています。
周りでSQL勉強したいぜ!っという人に見せるように、備忘録ということでおすすめの学習方法を記しておくので、これからやってみようかなという人は是非参考にしてみてくださいね。
ちなみに、一言にSQLといっても業務のシステムにバッチ的に組み込むものから、その場限りの処理で使うものまで、色々なものに分かれます。今回の記事で紹介している内容を一通り実践すれば必ず"出したいデータを抽出できる"レベルまでは到達できると思います。しかし、より実行速度の早い効率的なクエリを書く。/システム内で安定的に駆動する仕組みを整える。といった点は別途学習する必要があります。
しかし、非エンジニア職にとってのSQLは、分析の対象となるサブセットを一時的に抽出できれば必要十分と考えているので、まずは効率性や安定性は気にしないでもよいと思います。だって、BigQueryだったらどんなダメクエリでも動いてくれるし。異論もあると思うのですが、お見逃しください。
習得する順番は以下の5ステップです。
早速ですが、以下の5ステップを実行するのが1番の近道かなと思います!他にもSchooの動画教材は、CodeacademyのSQLコースなど色々とおすすめできる教材はありますが、自分で自走できるお勉強好きの人が、最短で習得するならば以下の流れかなと。
1つ1つ簡単に説明していきます。
1. まずは何はともあれ環境構築!GoogleBigQueryで爆速SQL実行環境を整える。
え?GoogleBigQueryって何?という人がほとんどだと思うので、極端にシンプルな説明をするとBigQueryとは、超高速のSQL実行環境です。端折りすぎました(笑)
https://www.slideshare.net/newta/bigquery-56438380
以下のような特徴を持っています。
BigQueryの特徴
えぇ、そんなややこしいもの導入しなくてもいいじゃん....とか思わないでください。初心者だからこそ道具にこだわるべきで、時代に合ったツールを使って学習をするのがおススメです。あと、気分の問題ですが、PostgreSQLやMYSQLよりも、UIが優れているので、触っていると何となくイケてる感がして、テンションがアガリマス。個人的にはそういうの結構大事w
そして、実際の BigQuery導入手順は以下の記事を参考にしてください。読めばできるので!
http://www.apps-gcp.com/bigquery-introduction/
2. 手を動かして全体像を理解!ドットインストールSQLコースをひたすら打ち込む。
BigQueryno環境構築が完了しましたね!お疲れ様です。それでは早速学習を進めていきます。はじめはドットインストールの以下のコースを見るのが良いでしょう。できれば、適当なCSVファイルを作成してBigQueryにアップロードし、実際にselctやwhere、group by など基本的な構文を実行してみてください。動画を見ると分かった気持ちになりますが、実際に手を動かすと理解が深まります。あとは、2017年10月下旬に progateでSQLコースがリリースされるみたいなので、サイトに反映されたらそちらを実施するのもおススメです。(リリースされました!)
https://dotinstall.com/lessons/basic_postgresql
-
https://prog-8.com/lessons/sql/study/1
あと、可能であればSchooの以下のコースも併せて受講すると盤石です。ドットインストールはよくも悪くも、文法の紹介をサクサク行ってくれるサービスなので、SQL自体の成り立ちや、細かい文法の説明には立ち入りません。上記のコースですと、実業務で多用することになるGroupByやJOINについても実際のIT講師の方が教えてくれるので、非常にわかりやすいです。無料ではなく、Schooの会員費で1,000円程度はかかるのですが'何が何でも無料で習得するんだ!'みたいな信念が無い場合は、大人しくSchooさんに貢いで基本を理解しましょう。PostgreSQLで構成されている講座ですが、ほとんどのクエリはBigQuery上でも同様に動作すると思います。これ動かないじゃん...というものがあれば都度調べます。なんだかんだ、ドキュメントを読む力は非常に重要っす。
-
https://cloud.google.com/bigquery/sql-reference/?hl=ja
3. SQLの基本を知識で理解!10年本で動作の仕組み・複雑な構文を理解する。
さあ、ここまでやるとあなたは主要なクエリを理解し、ドリル本に載っているような問題は自分で解けなかったとしても、回答を読めば何をしているかという点は理解できるようになっているはずです。
次は、もう一歩踏み込んで以下の書籍で動作の仕組みの根本理解を行いましょう。こちらの本は、初めは基本的なselect文から始まって、最後は非常に便利なウインドウ関数までステップバイステップまで実際の業務で遭遇しそうなクエリを例にしながら、解説してくれています。
特に、①クエリの実行順番 ②各種JOIN構文の使い分け ③ウインドウ関数 についての解説は秀逸なので必読です。この本を読み終えると、大体のWEB上に転がっているSQL関連の情報は読んで理解できるようになっているはずです。
目安としては、以下の2記事を読んで"ふむふむ、なるほど~(・_・"と理解できるようになっていれば、申し分のない水準です。世で言う、SQLちょっと書けますという人よりは少し進んでいるような感じ。
https://tug.red/entry/2015/04/24/122227
-
http://techlife.cookpad.com/entry/2015/12/18/151257
4. 実際の分析クエリはこれ1冊で充分?!レシピ本でどんどん分析例を吸収しよう。
ここまで勉強が進むとあらゆるSQLを書いて、自由に分析・集計を行えるようになっていそうですが、まだ、手を動かす経験が不足しているので何か処理を実行しようとしたときに中々クエリが思い浮かばなかったりします。
まずは、以下の書籍に1通りザッと目を通して(30分くらい)、SQlでこんな集計ができるんだという全体像を掴むのがおすすめです。こちらでは、WEBログの集計で実際に業務で使用できる品質のクエリサンプルが豊富に掲載されています。発売当初は、Twitter上で黒魔術書と話題になったほど、この集計ノウハウ明かしてよいんですか?というレベルのコードサンプルが豊富に掲載されています。生存率分析や検索アルゴリズムの評価、RFM分析など盛り沢山の内容です。
ただ、もうあらゆる書籍・WEB上の情報は自分で理解できるようになっているはずなので、後は試す=>調べるを繰り返しているだけで勝手にあなたのSQL力はついていきます。慣れると、ユーザーの〇〇な行動を集計したいとお題が出てきたときに、(1)必要なテーブルの構造(2)テーブルを作成するためのSQLクエリ の2つが頭の中でポンっと思い浮かぶようになってきて、こうなってから自分は人前で"SQl書けます(ちょっと自信なさげ)"っと公言できるようになりました笑
まとめ
個人的にどうやって勉強したねんって聞かれることが多いので、書き殴ってみました。 かなりコアな読者にしか刺さらないと思いますが、是非参考にしてみてくださいねw
BigQueryの詳細な使い方を知りたい方はこちらか直接さかなEXに質問できます!(有料)
sciket-laernのiris・cancerデータセットに色々なクラス分類アルゴリズムを一気に適用してみる
[toc]
出典
Qiitaに投稿した記事の転載です。クラス分類おもろい!(^^)!
https://qiita.com/koyamauchi/items/a3a693d89825f6cf6bf5
動機
Pythonによる機械学習 の第2章で紹介されている、教師あり学習クラス分類アルゴリズムを実際に試してみたかったので投稿。 とりあえず動けば良いやの精神で書いているので、コードが汚い点は無視してください!(^^)!
今回実行してみた教師あり学習アルゴリズムの一覧
書籍本文より抜粋。
1. 最近傍法
小さいデータに関しては、良いベースラインとなる。説明が容易。
2. 線形モデル
最初に試してみるべき、アルゴリズム。非常に大きいデータセット、非常に高次元のデータセットに適する。
3. ナイーブベイズ
クラス分類にしか使えない。線形モデルより更に高速。非常に大きいデータセット、高次元データ に適する。線形モデルより精度が劣ることが多い。
4. 決定木
非常に高速。データのスケールを考慮する必要がない。可視化が可能で説明しやすい。
5. ランダムフォレスト
ほとんどの場合単一の決定木より高速で、頑健で、強力。データのスケールを考慮する必要が ない。高次元の疎なデータには適さない。
6. 勾配ブースティング決定木
多くの場合、ランダムフォレストより少し精度が高い。ランダムフォレストより訓練に時間がかかるが、予測はこちらの方が早く、メモリ使用量も小さい。ランダムフォレストよりもパラメータに敏感。
7. サポートベクタマシン
同じように意味を持つ特徴量からなる中規模データセットに対しては強力。データのスケールを考慮する必要がある。パラメータに敏感。
8. ニューラルネットワーク
非常に複雑なモデルを構築できる。特に大きなデータセットに有効。データのスケールを調整する必要がある。パラメータに敏感。大きいモデルは訓練に時間がかかる。
データセットの準備
scikit-learnのirisデータセット
アイリスの花の、花弁の長さと幅、ガクの長さと幅を特徴量に、3種の花の種類を教師ラベルとして持つ、150行のデータです。
必要なライブラリのインポート
import numpy as np
import matplotlib.pyplot as plt
import pandas as pd
import mglearn as mg
from sklearn.model_selection import train_test_split
from sklearn.tree import export_graphviz
%matplotlib inline
irisデータセットのインポート
from sklearn.datasets import load_iris
iris = load_iris()
pandasのデータフレームに変換
iris_features_dataframe = pd.DataFrame(iris.data,columns = iris.feature_names)
行頭から5行を表示
iris_features_dataframe.head()
出力:
###データを訓練セットとテストセットに分割する
X_train,X_test,y_train,y_test =train_test_split(iris.data,iris.target,random_state=0)
### データフレームから、scatter matrixを作成し、y_trainに従って色をつける
iris_features_dataframe = pd.DataFrame(X_train,columns = iris.feature_names)
grr = pd.scatter_matrix(iris_features_dataframe,c=y_train,figsize =(10,10))
出力: 各特徴量をペアプロットしてみると、綺麗に分類されているので各アルゴリズムも上手く機能しそうです。
scikit-learnのbreast_cancerデータセット
がん検診患者の診断情報30個を特徴量に、対象患者がガンであるか否かを教師ラベルとして持つデータです。
###breast_cancerデータセットのインポート
from sklearn.datasets import load_breast_cancer
cancer = load_breast_cancer()
###pandasのデータフレームに変換
cancer_features_dataframe = pd.DataFrame(cancer.data,columns = cancer.feature_names)
###行頭から5行を表示
cancer_features_dataframe.head()
30列あるので、途中で切れています。
これらのデータセットに対して、分類アルゴリズムを適用していきます。
分類アルゴリズムを適用する - ①インスタンスの生成
まずは、分類アルゴリズムのインスタンスを初期化パラメータと共に生成。alg配列に入れる。
### 1.K最近傍-アルゴリズム読み込み
from sklearn.neighbors import KNeighborsClassifier
clf = KNeighborsClassifier(n_neighbors=3)
algs.append(clf)
#### 2. ロジスティック回帰
from sklearn.linear_model import LogisticRegression
clf = LogisticRegression()
algs.append(clf)
#### 3. 決定木
from sklearn.tree import DecisionTreeClassifier
clf = DecisionTreeClassifier()
algs.append(clf)
#### 4. ランダムフォレスト
from sklearn.ensemble import RandomForestClassifier
clf = RandomForestClassifier()
algs.append(clf)
###5. 勾配ブースティング決定木
from sklearn.ensemble import GradientBoostingClassifier
clf = GradientBoostingClassifier(random_state=0)
algs.append(clf)
#### 6. サポートベクタマシン
from sklearn.svm import LinearSVC
clf = LinearSVC()
algs.append(clf)
#### 7. ニューラルネットワーク
from sklearn.neural_network import MLPClassifier
clf = MLPClassifier()
algs.append(clf)
####配列に格納した識別子を表示する
algs
####出力結果
[KNeighborsClassifier(algorithm='auto', leaf_size=30, metric='minkowski',
metric_params=None, n_jobs=1, n_neighbors=3, p=2,
weights='uniform'),
LogisticRegression(C=1.0, class_weight=None, dual=False, fit_intercept=True,
intercept_scaling=1, max_iter=100, multi_class='ovr', n_jobs=1,
penalty='l2', random_state=None, solver='liblinear', tol=0.0001,
verbose=0, warm_start=False),
DecisionTreeClassifier(class_weight=None, criterion='gini', max_depth=None,
max_features=None, max_leaf_nodes=None,
min_impurity_split=1e-07, min_samples_leaf=1,
min_samples_split=2, min_weight_fraction_leaf=0.0,
presort=False, random_state=None, splitter='best'),
RandomForestClassifier(bootstrap=True, class_weight=None, criterion='gini',
max_depth=None, max_features='auto', max_leaf_nodes=None,
min_impurity_split=1e-07, min_samples_leaf=1,
min_samples_split=2, min_weight_fraction_leaf=0.0,
n_estimators=10, n_jobs=1, oob_score=False, random_state=None,
verbose=0, warm_start=False),
GradientBoostingClassifier(criterion='friedman_mse', init=None,
learning_rate=0.1, loss='deviance', max_depth=3,
max_features=None, max_leaf_nodes=None,
min_impurity_split=1e-07, min_samples_leaf=1,
min_samples_split=2, min_weight_fraction_leaf=0.0,
n_estimators=100, presort='auto', random_state=0,
subsample=1.0, verbose=0, warm_start=False),
LinearSVC(C=1.0, class_weight=None, dual=True, fit_intercept=True,
intercept_scaling=1, loss='squared_hinge', max_iter=1000,
multi_class='ovr', penalty='l2', random_state=None, tol=0.0001,
verbose=0),
MLPClassifier(activation='relu', alpha=0.0001, batch_size='auto', beta_1=0.9,
beta_2=0.999, early_stopping=False, epsilon=1e-08,
hidden_layer_sizes=(100,), learning_rate='constant',
learning_rate_init=0.001, max_iter=200, momentum=0.9,
nesterovs_momentum=True, power_t=0.5, random_state=None,
shuffle=True, solver='adam', tol=0.0001, validation_fraction=0.1,
verbose=False, warm_start=False)]
分類アルゴリズムを適用する - ②実行関数を呼び出す
###訓練データとテストデータの結果を格納する配列を生成
training_score_i = []
test_score_i = []
training_score_c = []
test_score_c = []
###algs配列から各種識別器インスタンスを取り出し学習&TEST!
for alg in algs:
##irisデータセットに学習&テスト
tr_alg_i = alg.fit(X_train_i,y_train_i)
training_score_i.append(tr_alg_i.score(X_train_i,y_train_i))
test_score_i.append(tr_alg_i.score(X_test_i,y_test_i))
##cancerデータセットに学習&テスト
tr_alg_c = alg.fit(X_train_c,y_train_c)
training_score_c.append(tr_alg_c.score(X_train_c,y_train_c))
test_score_c.append(tr_alg_c.score(X_test_c,y_test_c))
結果
algo_names = ["k","logi","tree","rand_tree","grad_tree","svm","nnw"]
fig,axes = plt.subplots(2,2,figsize=(30,10))
##訓練データの描画
axes[0][0].bar([1,2,3,4,5,6,7],training_score_i,tick_label=algo_names,color="r")
axes[0][0].set_xlabel('algo_type')
axes[0][0].set_ylabel('precision_rate')
axes[0][0].set_title("iris_training_data")
axes[0][1].bar([1,2,3,4,5,6,7],training_score_c,tick_label=algo_names)
axes[0][1].set_xlabel('algo_type')
axes[0][1].set_ylabel('precision_rate')
axes[0][1].set_title("cancer_training_data")
##テストデータの描画
axes[1][0].bar([1,2,3,4,5,6,7],test_score_i,tick_label=algo_names,color="r")
axes[1][0].set_xlabel('algo_type')
axes[1][0].set_ylabel('precision_rate')
axes[1][0].set_title("iris_test_data")
axes[1][1].bar([1,2,3,4,5,6,7],test_score_c,tick_label=algo_names)
axes[1][1].set_xlabel('algo_type')
axes[1][1].set_ylabel('precision_rate')
axes[1][1].set_title("cancer_test_data")
出力グラフ
赤色 => iris 青色 => cancer 上 => 訓練データ 下 => テストデータ 横軸->アルゴリズムの種類 縦軸 => 正解率 左から、["k(K-最近傍)","logi(ロジスティック回帰)","tree(決定木)","rand_tree(ランダムフォレスト)","grad_tree(勾配ブースティング決定木)","svm(サポートベクタマシン)","nnw(ニューラルネットワーク)"]
感想
- パラメータ調整・データの前処理を一切していない状態だと、やはり決定木ベースのアルゴリズムが強い。
- ニューラルネットワークとSVMはデータの前処理が必須と本に書いてあったので、標準化するとまた違う結果になったかも。
以上です。
【レビュー・口コミ】長野でアクティビティが満喫できる斑尾パスポートを使って、1日遊び倒してみた
[toc]
こんにちは、さかなEXです。夏も終わり、涼しくなってきたので外に出かけやすくなりました。
前回の記事で、nottecoで長野に移動した話を書きましたが目的は斑尾高原でアクティビティを楽しむことでした。
https://tokuchie.com/notteco_firstimp/
斑尾パスポートという、1日定額でアクティビティが遊び放題になる定額制チケットを使い、色々楽しめました!
面白い!と思ったのでブログでも紹介します。
斑尾パスポートとは?
パスポートの前に、まずは斑尾高原の説明が必要ですね。
斑尾高原は長野県の北部に位置する、野尻湖周辺の高原地帯の呼び名です。
野尻湖は、過去にナウマンゾウの化石が発掘された場所ということで日本史の授業にも登場する場所ですね。
以下、HPからの引用情報です。
斑尾とは?
ここまででしたら、通常の高原リゾートなのですが、なんと斑尾高原、ほとんどのアクティビティが1日定額6,000円で遊び放題になる、斑尾高原パスポートという1日周遊券があります。 斑尾高原ホテル宿泊者は、さらに1,500円引きの4,500円です。そのまま泊まっちゃうのもありですね。
http://madarao.tv/activities/green/familyplan-summer/
川下りや、パラグライダーなど一部追加の費用が必要になるアクティビティはあるのですが、そば打ち体験やサバゲー、ゴルフなど多くの遊びが定額で遊び放題になるのです..!
もう少し、詳しく説明します。
特徴① : アクティビティのバリエーションがどうかしている位に豊富
以下ページにも記載がありますが、大体思いつく限りのアクティビティは網羅されている感があります。
パラグライダー・水上スキー・ルアー釣り・ボルダリング・ゴルフ...恐るべき斑尾高原。
http://madarao.tv/activities/green/madapass/activitieslist.php
[peg-image src="https://lh3.googleusercontent.com/-KiCAarB-B_Q/Wb9_LWTQozI/AAAAAAAAINM/3zkJFVj136UT8ofKD5BZ5HwT12whMfW9wCHMYBhgL/s144-o/S__4096112.jpg" href="https://picasaweb.google.com/116818149385379809046/6467028201413175793?authkey=lT4PTUlhpSs#6467027422868972338" caption="" type="image" alt="S__4096112.jpg" image_size="1478x1108" ]
斑尾パスポート本体。高原内の地図が掲載されている。なお、各会場の距離は遠く公共交通機関はないので、車が必須です!
無料 or 500円以下
有料
基本的に、海で遊ぶ系のものは追加で料金が必要になるケースが多いですね! サバゲーやそば打ち体験などパンチの効いたものが定額無料料金に含まれているのはポイント高い!
特徴② : 組み合わせは完全自由!基本的に事前予約制!
こちら、パスポートをホテルで受け取ったらその紙を各アクティビティ会場で提示することで受付を行う仕組みです。
32個もあるので、どれで遊ぶか厳選して、プランニングをしなくてはいけません。
今回は、①ウェイクボード②ジャム作り③ファミリーゴルフの3つを選択してお昼から夕方まで遊ばせてもらいました。
正直十分過ぎるほど楽しめましたが、午後スタートだったので、朝から行っていれば+αで サバゲーとそば打ち体験くらいは詰め込めたかもしれません笑
アクティビティ体験ハイライト(12:00頃 - 16:30で体験)
1. ウェイクボード
あれ、高原なのに水遊び?と思うかもしれませんが、野尻湖で思いっきりマリンアクティビティを楽しめます。
今回チョイスしたのは、ウェイクボード!スノボの要領で足にボードを固定し、ボートの動力で引っ張ってもらいます。
↓これですね。
インストラクターの方曰く、最初から立てる人はあまりいないそうで、簡単なレクを受けて早速挑戦。 自分は、小鹿のように足を震わせながらも3秒くらい立てたのでギリギリ醍醐味を味わうことができました笑
[peg-image src="https://lh3.googleusercontent.com/-Susf32vrQfY/Wb9_IeJj73I/AAAAAAAAINM/LTAoVNL-f2kpNf3u0qDhIUiqFRM6onWxgCHMYBhgL/s144-o/S__4096095.jpg" href="https://picasaweb.google.com/116818149385379809046/6467028201413175793?authkey=lT4PTUlhpSs#6467027373436170098" caption="" type="image" alt="S__4096095.jpg" image_size="1108x1478" ]
インスタラクターの方が、コツを教えてくれます。
しかし、ここでアクシデントが。ウェイクボードをやると、ボートで腕を引っ張られるのでまず間違いなく重度の筋肉痛になります笑 この後3日間は、痛みが続いていたので後の遊びを楽しむためにウェイクボードは終盤に組み込むのがおすすめです!!
こちらは、当日に電話して予約をしました。快くご対応いただきありがとうございました。
2. ブルーベリージャム作り
甘いもの食べたくね?ということで続いては、ジャムを作りに行きました。 ブルーベリー農園でブルーベリーを摘み、ひたすら煮詰めてジャムを作ります。
[peg-image src="https://lh3.googleusercontent.com/-U24Yx4p1Yxo/Wb9_DNoc9iI/AAAAAAAAINM/r9ozo54yH4QeSRYi0VXaQezfmQ9mYgEKQCHMYBhgL/s144-o/S__4096012.jpg" href="https://picasaweb.google.com/116818149385379809046/6467028201413175793?authkey=lT4PTUlhpSs#6467027283102987810" caption="" type="image" alt="S__4096012.jpg" image_size="1478x1108" ]
すぐそばの農園で収穫したブルーベリーを使って、ジャムを作ります。
[peg-image src="https://lh3.googleusercontent.com/-TTf0i-Kcqds/Wb9_GKx8iUI/AAAAAAAAINM/nWBhLutxQ_QQ-xZ_rkLLJ2MmTePaWKoPgCHMYBhgL/s144-o/S__4096022.jpg" href="https://picasaweb.google.com/116818149385379809046/6467028201413175793?authkey=lT4PTUlhpSs#6467027333877107010" caption="" type="image" alt="S__4096022.jpg" image_size="1478x1108" ]
ペンションの人が、ブルーベリートリビアを教えてくれる。木によって甘さが違うらしい
[peg-image src="https://lh3.googleusercontent.com/-RDsAfEYB9HA/Wb9_CrCp0KI/AAAAAAAAINM/K5EJcnOWSG8cKFOEXAPjE3OEUX6nU-4lgCHMYBhgL/s144-o/S__4096011.jpg" href="https://picasaweb.google.com/116818149385379809046/6467028201413175793?authkey=lT4PTUlhpSs#6467027273817641122" caption="" type="image" alt="S__4096011.jpg" image_size="1478x1108" ]
糖度30度になるまで煮詰めたら、ラベルを書いて瓶詰めします。家族連れにオススメ!
作ったジャムはお土産でもらえます!やったね。子供が喜びそう。
こちらも、当日に電話して予約をしました。(予約しておけ)、快くご対応いただきありがとうございました。
3. ファミリーゴルフ
最後に、ゴルフを楽しみました。全9ホールで大体各コース100ヤードくらいなのでドライバーは使いませんが、かなり本格的なプレイが堪能できます。 ウェイクボードで腕がプルプルになっていたので、体幹をしっかり使った理想的なスイングができました(たぶん)
ここで、時間が来てこの日の遊びは終了~。色々な遊びが体験できて大満足でした。 その他29個のアクティビティは楽しめなかったので、次回以降にまた挑戦ですね笑
[peg-image src="https://lh3.googleusercontent.com/-EyW4EaYc4kA/Wb9_D7M6XuI/AAAAAAAAINM/J-heHud7Qw0ELNbku_6xIHQN-aALLmpHgCHMYBhgL/s144-o/S__4096005.jpg" href="https://picasaweb.google.com/116818149385379809046/6467028201413175793?authkey=lT4PTUlhpSs#6467027295335505634" caption="" type="image" alt="S__4096005.jpg" image_size="1478x1108" ]
手軽に高原ゴルフも楽しめます。コースの横ではグラススキーの教室も開催されていました
4. (おまけ)そば打ち体験
今回は、時間の都合で省略したのですが長野に来たからにはやっておかねば。
ということで別の場所でそば打ち体験を行ってきました。斑尾高原でのそば打ち体験とは異なる点もあると思いますが、以下と同じような体験もパスポートに含まれています。(しかも無料!)
そば粉から生地を作る
[peg-image src="https://lh3.googleusercontent.com/-Ng4Oi-d3z6s/Wb-A3BFF0UI/AAAAAAAAIOI/gT4eiqHYlxAX7_2U2EKXGduJaakI_XuvgCHMYBhgL/s144-o/20170916%252C17%2B%25E9%2595%25B7%25E9%2587%258E%25E6%2597%2585%25E8%25A1%258C_170918_0161.jpg" href="https://picasaweb.google.com/116818149385379809046/6467028201413175793?authkey=lT4PTUlhpSs#6467029272598270274" caption="20170916,17 長野旅行_170918_0161.jpg" type="image" alt="20170916,17 長野旅行_170918_0161.jpg" image_size="1478x1108" ]
そば粉に水を加えて、練り上げる工程
生地を伸ばす
[peg-image src="https://lh3.googleusercontent.com/-iXGTF3GFC68/Wb-A4jCRn2I/AAAAAAAAIOI/uBUdPOzdaSsrgnl-PiRfGTIY4P3NjwolQCHMYBhgL/s144-o/20170916%252C17%2B%25E9%2595%25B7%25E9%2587%258E%25E6%2597%2585%25E8%25A1%258C_170918_0174.jpg" href="https://picasaweb.google.com/116818149385379809046/6467028201413175793?authkey=lT4PTUlhpSs#6467029298893135714" caption="20170916,17 長野旅行_170918_0174.jpg" type="image" alt="20170916,17 長野旅行_170918_0174.jpg" image_size="1478x1108" ]
真円に綿棒を使って伸ばすのは至難の技。
切る!
[peg-image src="https://lh3.googleusercontent.com/-4CNhcWZX_sE/Wb-_mH75API/AAAAAAAAIO4/QgNdgShbu14GnkDeH0SfgL1DHSn2xBhbgCHMYBhgL/s144-o/20170916%252C17%2B%25E9%2595%25B7%25E9%2587%258E%25E6%2597%2585%25E8%25A1%258C_170918_0179.jpg" href="https://picasaweb.google.com/116818149385379809046/6467028201413175793?authkey=lT4PTUlhpSs#6467098251613503730" caption="20170916,17 長野旅行_170918_0179.jpg" type="image" alt="20170916,17 長野旅行_170918_0179.jpg" image_size="1478x1108" ]
初蕎麦切り包丁。
茹でる!
[peg-image src="https://lh3.googleusercontent.com/-5y0MF3_2wPE/Wb-_l_OOTzI/AAAAAAAAIO0/t8FK0itg24QVWHgmNStz4qLfQ_hfEcAeQCHMYBhgL/s144-o/20170916%252C17%2B%25E9%2595%25B7%25E9%2587%258E%25E6%2597%2585%25E8%25A1%258C_170918_0195.jpg" href="https://picasaweb.google.com/116818149385379809046/6467028201413175793?authkey=lT4PTUlhpSs#6467098249274478386" caption="20170916,17 長野旅行_170918_0195.jpg" type="image" alt="20170916,17 長野旅行_170918_0195.jpg" image_size="1478x1108" ]
大きな釜で蕎麦を躍らせるとのこと。
食べる!
[peg-image src="https://lh3.googleusercontent.com/-BzUpVWHlGVo/Wb-A_qi6ctI/AAAAAAAAIOI/zWE3Rk-tpAwoDCpjLceXnLbg7TTvDlbQgCHMYBhgL/s144-o/20170916%252C17%2B%25E9%2595%25B7%25E9%2587%258E%25E6%2597%2585%25E8%25A1%258C_170918_0200.jpg" href="https://picasaweb.google.com/116818149385379809046/6467028201413175793?authkey=lT4PTUlhpSs#6467029421168161490" caption="20170916,17 長野旅行_170918_0200.jpg" type="image" alt="20170916,17 長野旅行_170918_0200.jpg" image_size="1478x1108" ]
自分で打った蕎麦は旨し!
https://www.pref.nagano.lg.jp/matsuchi/matsuchi-shokan/kanko/kanko/spot/fureai.html
今回学んだ教訓
1. ウェイクボードは100%腕がやられるのでなるべく終盤に持ってきた方が良い
2. 事前予約をしておかないと、担当者がいなくなってしまうので前日までに計画すべし
3. 山の上から順に下っていく旅程にすると、移動の上下がなくて楽
まとめ
日本全国ほかにも似たようなスポットももしかしたらあるかもしれませんが、とても楽しめました。 空気も気持ち良いですし、東京からも2時間。普段の息抜きで訪れるには持ってこいの場所でした。
家族でゆったり楽しむのも良いですし、大学のサークルで利用するなどしても、とっても楽しそうでしたよ。
お、おもしろそう!と思った人は、是非チェックしてみてくださいね。 今回の記事はこれで終わりです。
【レビュー・口コミ】相乗りサービスnottecoを使って東京・長野間を1,700円で移動してみた
[toc] こんにちは、さかなEXです。更新が空きすぎて、自分でもびっくりです。
nottecoってどんなサービス??
nottecoは国内で最大の規模をもつ、相乗りマッチングサービスです。
サービス内容は非常にシンプルで、個人情報の登録を終えたドライバーが出発先・到着先・乗車料金で構成されるドライブプランをサービスに投稿し、同乗したいユーザーがいれば申し込みを行います。
様々なドライブプランが投稿されている。サイト上に決済機能はなく、ドライバーと搭乗者のマッチング&チャット機能を持ったサービス
飛行機・電車・高速バスなど、あらゆる移動手段が存在する中でなぜnottecoの相乗りサービスを使うのか??それは、、、圧倒的に安いからです。
うん、圧倒的に安いですね笑。生活が10ミリくらい豊かになりそうです。
自分は、交通費は完全に捨て銭とみなしていて、できるだけ切り詰めたい派なので、長距離移動時はまず高速バスを検討することが多いです。 ですので、上記のような相場観を完全に無視したような相乗りプランを見つけると感動すら覚えます。 今回初めて使ってみたので、利用感をお伝えします。個人的には、次もぜひ使ってみたいと思いました^ - ^
実際に使ってみた
という訳で、実際の利用感を紹介します。
サイト上でのやり取り
掲載されているプランの中で利用したいものがあれば、ドライバーに相乗り申請を行います。その後は、個別でメッセージの送信が可能になるので、そこでピックアップ先調整や当日の連絡を行います。
今回は、東京->松本間を1,700円のプランがあったので、お友達と会いに行くか!ということで申し込んでみました。事前に待ち合わせ場所などの詳細をメッセージでやり取りし、出発日当日を迎えました。
新幹線で8,000円弱/高速バスでも5,000円程度かかるので、1,500円前後はかなりの破格!
乗車申請をすると、ドライバーでチャットでのやりとりが可能になります。
9月16日 AM1:00(八王子駅北口でピックアップ)
示し合わせ通り、八王子駅の北口で落ち合うことができました!事前に当日の服装などを伝えておくとスムーズですね。
初めての利用ということで落ちあえるか心配していたのですが、車を発見!’sakanakunnです’とニックネームを伝えて車に乗り込みます。行ったことないけど、ニックネームで呼ばれるのはオフ会に参加したみたいで新鮮。
今回のドライバーのKさんは、とても紳士的な方で休憩場所などを丁寧に説明してくれました。自分ともう1人の同乗者の男性の方は、新潟方面にサッカーの応援に行かれる用事があるとのこと。
乗車前は道中を共にするみなさんと、色々話をしようと思っていたのですが、眠すぎて殆ど寝ていましたねw
[peg-image src="https://lh3.googleusercontent.com/-q5h1CuyRsmY/Wb9qe1X34rI/AAAAAAAAIMI/4XbtXpBgDGM6kT-YR1QUp9dW9n7xBJkQgCHMYBhgL/s144-o/IMG_20170916_021101.jpg" href="https://picasaweb.google.com/116818149385379809046/6467005774277843009?authkey=wa2t875sRGI#6467004667883152050" caption="" type="image" alt="IMG_20170916_021101.jpg" image_size="4032x3024" ]
時間通りにピックアップいただいて1安心!
AM2:00(高速道路を移動中~)
レビュー通りの、安全運転で夜の高速道路をひた走ります。到着時間が早くなりすぎるかもしれないということで、途中のSAで長めの休憩時間をとりました。 基本ヒッチハイクのようなものなので、自由に休憩時間や行き先、到着時間を調整できるのは気軽だなと思いました。
ちなみに、先ほどもあったように眠すぎたので、乗車以降殆ど声を発していませんw 当たり前ですが、あくまで移動サービスなので、おしゃべりしたい人は話をすれば良いし、そういう気分でなければ眠っているなど自由にしていて良いと思います。
[peg-image src="https://lh3.googleusercontent.com/-UHP-KtsAzXM/Wb9qizhhphI/AAAAAAAAILw/GAyrs0Zi7_AW7Ixv5Dez26HR66KPcD3aQCHMYBhgL/s144-o/IMG_20170916_051343.jpg" href="https://picasaweb.google.com/116818149385379809046/6463540705936710433?authkey=6Ka4f0eiHf0#6467004736106243602" caption="" type="image" alt="IMG_20170916_051343.jpg" image_size="4032x3024" ]
深夜の高速道路を安全運転でひた走ります 事前のメッセージやりとりで、乗車スタイルを選ぶ項目もあるので、お互いにどんなドライブにしたいか事前に伝えておくと良いですね。
プロフィール画面から、ドライブの好みを登録。事前に同乗者に希望を伝えることができます。
[peg-image src="https://lh3.googleusercontent.com/-kEiMVp5cg3c/Wb9qZkQYGsI/AAAAAAAAILk/PTLLzYtn-_EsffKvkVyrfuVKQNkVi6qlQCHMYBhgL/s144-o/IMG_20170916_021118.jpg" href="https://picasaweb.google.com/116818149385379809046/6463540705936710433?authkey=6Ka4f0eiHf0#6467004577388960450" caption="" type="image" alt="IMG_20170916_021118.jpg" image_size="4032x3024" ]
途中SAで休憩。腰痛くなるんで伸ばしといた方が良いですよ!とのこと
9月17日 AM6:00頃(到着&お支払い)
無事到着しました!Kさん、今回はありがとうございました!また、機会がありましたら是非!
到着後の運転料金のお支払いは、ドライバーと同乗者との間で直接やり取りを行います。1,700円をお支払いしてお別れします。
サイト上での事前決済は、色々な絡みがあって難しいものと思われますが、実現できるとより便利ですね!
[peg-image src="https://lh3.googleusercontent.com/-D_6osUnHx6w/Wb9qx5rwBeI/AAAAAAAAIME/jDlEWOreX8gOPtg8yyNXRKj5X2jDb-4NQCHMYBhgL/s144-o/IMG_20170916_054416.jpg" href="https://picasaweb.google.com/116818149385379809046/6463540705936710433?authkey=6Ka4f0eiHf0#6467004995457779170" caption="" type="image" alt="IMG_20170916_054416.jpg" image_size="3024x4032" ]
予定通り無事1,700円で長野県松本市に到着〜
まとめと感想
今回初めてサービスを利用しましたが、非常に良い体験ができました!何と言っても、通常では考えられない低価格で移動できるのがメリットです。
また、今回のドライバーのKさんは親切な方で気持ち的には、長距離タクシーに乗っているような感覚でした。みなさんが今回のような優良ドライバーであれば、どんどん使っていきたいなと思いました。 気になった方!次に遠出をする時は、ぜひサイトを除いて見てください。ちょうどニーズにマッチしたドライブが見つかるかもしれません。
以下余談
個人的には、大好きなサービスなのでマーケティング的にもう少しできることがあることがあるんじゃないかと思い、思ったことを書いてみました!君に届けww
【サービスを使って思ったこと 1】ライドシェアではなく、旅行サービスとして再定義してみるのはどうすか?
普通遠出をするときは、どこどこに行きたい->移動手段を考える という順番になるかと思うのですが、東京->福岡 3,000円などのプランを見ていると、'お、めちゃ安いしとりあえず旅行行ってみるか'といった気持ちになります。
移動手段が決まる->行き先で何をするか決める という通常とは逆の新しい考え方が生まれるわけです。移動コストが圧倒的に低いからこそ出てくる発想ですね^^
そこで、単に移動手段のマッチングを行うのみではなく、旅行需要を喚起するサービスとして各種お出かけ系メディアと提携してみるのはどうでしょうか??
例えば、東京=>大阪への移動プランがあれば、 Holiday https://haveagood.holiday/ icotto https://icotto.jp/ asoview http://www.asoview.com/ などで掲載されている大阪での旅行プランを表示してあげるなどすると、移動手段起点で旅行を実行する助けになると思うのです。
現状ですと、
ユーザーをマッチングしようとしていると思うのですが、やはりかなりハードルが高いのでは?と思います。
一方で、何となく旅行したい!だが、お金はかけたくない!!というターゲット層は非常に多い、というか殆どの人が潜在的には持っているニーズだと思うのでそこに刺さるマーケティング&事業運営を考えてみるのも1つではないでしょうか。
【サービスを使って思ったこと 2】信頼性を確保するために、ドライバーは本名登録制にするべきでは?
自分は比較的、新しいサービスを利用したり、知らない人にあったりすることには抵抗のない方なのですが、それでも結構サービスを使うまでドキドキしました。
ちゃんとピックアップ先に現れるのか?安全運転で移動できるか?事前やりとり通りの金額で移動できるか?など色々とチェックポイントがあります。
ドライバー登録に事前審査を入れるなどは非現実的かと思うのですが、やりとりを開始した後には、ドライバーさんの本名や顔を確認できるくらいの配慮はあった方が安心して利用できるなと思いました。
’見知らぬ人についていく’を地でいくようなサービスなので、信頼性確保のために打てる策はもう少し考えて、少しでもユーザーの不安を解消することがサービス拡大に繋がると思うのです。
【サービスを使って思ったこと 3】実際の利用者の声はもっともっとフル活用できると思う。
CtoC系サービスの、レビュー獲得&マーケティング活用戦略の設計は、事業を成長スピードに影響を与えるかなり大事な要素だと思ってます。
Airbnbは、宿泊完了後当日に届くレビュー訴求HTMLメール内で評価を簡単に入力できるようになっているし、メルカリはそもそも取引完了後のレビュー記入が必須になっていて、取引が増えれば増えるほどレビューが蓄積される仕組みがうまく構築されています。
というポジティブなループが回り始めれば、勝手に口コミで利用が広がっていくような一面もありますよね。
レビュー獲得戦略という点で言うと、nottecoの場合は、乗車翌日に簡易なテキストメールが届いたのみでした。少なくとも、タイミングは乗車当日(ドライブ終了時間の2-3H後くらい?)の’良いサービスだった’と余韻が残っているくらいの早い段階でコミュニケーションをとった方が、レビューの獲得効率および質が向上すると思います。
さすがにこの辺はテストを繰り返して、今のタイミングになっていると思うのですが、1日後にシンプルなテキストメールを送信するのみというのが、直感的にレビュー獲得における最善策とは思えなかったので、ちょっと気になりました。
後は、実際にサービスを利用し倒している人のモデルケースをもっとユーザーに共有すると使いたい人も増えると思いますね。 就活利用は無料キャンペーンなどもやっていたので、
ヘビーユーザーの中には、以下のようなユーザーもいるのではないでしょうか??
まずは、ドライバーを増やすのが最優先ですが、こういった典型的なユーザー像を紹介することで具体的にサービスを利用するイメージも湧くのではないかと思います。
以上、余談でした。
周りの人にサービスを紹介すると、ほぼ全員が使いたがるのでニーズは大きいと思います! 旅行頻度を増やしたい思いがあるので、ドライバー獲得、頑張ってください!
今回の記事はこれで終わりです。