Spaceをやっていきます。今回もPaperspaceのGradient°を利用します。動画やコード、動画の解説は下記リンクを参照してください。http://course.fast.ai/lessons/lesson3.htmlhttps://medium.com/@hiromi_suenaga/deep-learning-2-part-1-lesson-3-74b0ef79e56https://github.com/fastai/fastai/blob/master/courses/dl1/lesson2-image_models.ipynb下準備KaggleのCLIを使えるようにしてデータをダウンロードし、解凍します。7zファイルを解凍する必要があるのでついでに解凍用のソフトもインストールします。test-jpg-additional.tar#test-jpg-additionalの中身をtest用ディレクトリに追加する。train_v2.csv.zipまた、planet.pyを使うのでこのファイルをアップロードしておきます。実装まず必要なライブラリをインポートしてPATHを設定します。score.と書いてあるのでFast.AI側で用意してれているplanet.pyをインポートしmetricsとしてf2を指定します。len(list(open(label_csv)))-1検証セット用のインデックスを取得します。デフォルトでは20%を検証セットにします。get_cv_idxs(n)データを読み込むための関数を定義します。Reduxのようにサブディレクトリを作って分類することができないので、from_csvを利用します。test_name='test-jpg')定義した関数からデータを取得し、検証セット用のデータローダからデータを読み出してみます。encodingされたデータになっています。1.0)]画像を表示してみます。plt.imshow(data.val_ds.denorm(to_np(x))[0]);画像がちょっと暗いので明るくして表示してみます。各要素はピクセルごとのRGBの値なので単純に乗算すれば明るくなります。plt.imshow(data.val_ds.denorm(to_np(x))[0]*1.4);今回扱う画像は犬猫のようにImageNetに存在するようなものではないので、重みデータなどはそのままでは最適化されているとは言えません。衛星写真は犬や猫とは違うものの、エッジやコーナー、テクスチャのパターンといったものの識別をするレイヤーは有用なのでこれらは利用し、追加した最後レイヤーのみ小さい画像を使ってとりあえず学習させます。小さい画像から始めることは衛星画像などの非標準のデータを学習する時に有効です。(動画のこのあたりを参照してください)data.resizeで画像をリサイズしていますが、これはオリジナルの大きさデータから64x64にリサイズするよりも、予め小さめ画像を作っていたほうが高速なためここで小さなサイズの画像を作成し保存しています。この処理は必ずしも必要ではありませんが、処理時間を短縮するのに有効です。Rateを計算します。Rateを設定し、学習させます。Rateを設定し、さらに学習させます。imagingこのあたりですね。今回は衛星写真なので3xです。cycle_mult=2)画像のサイズを大きくして繰り返します。cycle_mult=2)これで学習終わったので、モデルの検証を行いSubmitします。commit"こちらの記事よるとthresholdはF2を最大化する数値を指定すると良いらしいのですが、今回は0.2を設定しました。https://towardsdatascience.com/kaggle-planet-competition-how-to-land-in-top-4-a679ff0013ba結果こんな感じでした。LearningFast.AIkaggleComments。