Kaggle 銅メダルへの道(9日目)

こんにちは、筋肉めがねです。

 

定期的にジムに行っているのですが、最近まつぼっくりちゃんが一緒にジムに行ってくれる、という事を言っております。とても嬉しいですね。筋トレをする目的は人それぞれではございますが、先ずは怪我をしない事、そして筋トレというものを楽しんでくれたら、それが一番でございますね。

 

それでは、久しぶりにKaggleを進めていきます。

本日は、以下のCompetitionです。

www.kaggle.com

 

Competitionの内容は、映画に関するものです。映画館で上映されている各々の映画が、世界中の映画館で累計どれだけの売りをあげたのか、トータルの販売額を推定する、というものです。

 

それでは、Kernelを参考にしながら早速進めていきましょう。

参考にしたKernelは以下でございます。

www.kaggle.com

 

 

House Price competitionの時と同様に、Google Colaboratory上のGPUを使用します。

先ずはデータの数を見てみましょう。 

f:id:KinnikuMegane:20190428014302p:plain

 

前処理

続いて、前処理です。

以下、8つのカラムについては、複数のデータがリストとしてカラムに格納されています。それらのリストから必要な情報のみを抽出して、新たなカラムとしてテーブルに追加します。オリジナルのリストが格納されていたカラムは削除します。

# from this kernel: https://www.kaggle.com/gravix/gradient-in-a-box
dict_columns = ['belongs_to_collection', 'genres', 'production_companies',
                'production_countries', 'spoken_languages', 'Keywords', 'cast', 'crew']

 

例えば、genresというカラムを見てみると、複数のgenresが一つの映画に紐づいている事が分かりますね。

f:id:KinnikuMegane:20190428014812p:plain

 

ちなみに、どういうgenresが良く使用されているか、というのを可視化してみましょう。

f:id:KinnikuMegane:20190428015022p:plain

f:id:KinnikuMegane:20190428015123p:plain

Drama, Comedy, Thrillerが多いようですね。

これらのgenresのうち、top15のgenresについては、それぞれのgenreの名前を冠した新たなカラムを作り、各映画に対して、そのカラムにフラグを立てていきましょう。

 

他にもKeywordsというカラムがありますが、そこにもリストが格納されております。ちなみに、その中のキーワードにどういったものがあるのか、可視化してみましょう。

f:id:KinnikuMegane:20190428020101p:plain

f:id:KinnikuMegane:20190428020120p:plain

データの確認

続いて、扱うデータ群の確認をします。

Competitionで扱うターゲットは販売ですね。

 

例えば、ホームページが準備されている映画とそうでない映画の売り上げを比較して見ますと、ホームページがある映画の方が断然売り上げが高い事が分かります。映画を見る方はホームページを確認すると、映画館へ行きやすくなる、という事ですね。

f:id:KinnikuMegane:20190429011231p:plain

 

他にも映画で使われている主要な言語と売り上げの相関を見てみますと、言語の違いによって売り上げが変わる事はなさそうです。

f:id:KinnikuMegane:20190429011647p:plain 

f:id:KinnikuMegane:20190429012841p:plain

 

どんな単語が頻繁にタイトルに入っているのか、見てみましょう。

f:id:KinnikuMegane:20190429013206p:plain

 

データの確認はここまです。

次回の記事では、 モデリングを進めていきます。

 

それでは、本日は以上でございます。

にほんブログ村 IT技術ブログへ
にほんブログ村



Pythonランキング