来年3月からMLエンジニアとして仕事をしていくわけですが、なるべく実力をつけた状態で新しい職場にいきたいので、年末年始という大型連休をどうにか有効に使えないかと考えました。
新しい職場では、まずは自然言語処理業務に関わると聞いているため、せっかくなので日本語データの分析をしてみようと思います。
(できれば文書クラスタリングまでしてみたい)
題材
私はラーメンが好きです。
そこにラーメンがある限り、私はラーメンを食したいと思っています。
そう考えた時に、ラーメン以外の選択肢はありませんでした。
ラーメン屋の口コミデータを解析して、評価の高いラーメン屋にはどのような傾向があるのか分析してみたいと思います。
効果的なデータが取得できれば、今後より美味しいラーメンが誕生する可能性も秘めているかも・・?という淡い期待も持ちつつ。
年末年始でやりたいこと(理想)
年末年始というふわっとした期間の中で、以下のようなふわっとしたアプリが作れればとても理想的だと思っています。
(なんだかんだ年末年始は忙しいので、難しいかもしれません)
「こんな感じのラーメン食べたい」という情報を入力したら、オススメのラーメン屋をレコメンドしてくれる。
例えば・・・
- 入力
ボリューミー 太麺 濃いめ
- 出力
ラーメン二郎 新宿歌舞伎町店
というようなもの。
自然言語処理でどのようなことができるか現在勉強中のため、上記のようなことが本当にできるかどうかも少し不安だが(多分できると思うが)とりあえずやってみたいと思います。
データ収集方法
今回は日本最大級のグルメサイト「食べログ」の口コミデータを利用したいと思います。
2018年12月29日現在、新宿のラーメンだけでも、5,595店舗 / 687,786件の口コミデータが投稿されています。
※2019年1月2日訂正:上記の件数は食べログの全店舗のデータでした。新宿のラーメン屋は200件弱でした。失礼しました。
ここからWebスクレイピングを用いて、データを拝借してきます。
まずは新宿にあるラーメン屋から初めてみて、軌道に乗ってきたら範囲を広げていきたいと思います。
また、全ての口コミを取得するとどうしても評価の高いラーメン屋の口コミにデータが偏ってしまう可能性があるため、1店舗につき最大100件までの口コミデータを取得したいと思います。
本日の成果
とりあえず数店舗に絞って、口コミを取得するWebスクレイピングコードはかけたため、明日にかけて全店舗のデータを取得していきたいと思っています。
(おそらくエラーがでると思うので、綺麗に整形できたらソースコードも公開したいと思っています)