‫前回のビデオでは､ すべての数値を入力し､ すべてのカテゴリー値を入力し､ すべてのデータを数値に変換した後､
‫データに適合させた機械学習モデルを採点するところまででした｡
‫モデルが働いた｡
‫私たちのデータは欠損値がなく､ すべて数値であった｡
‫しかし､ 「なぜ､ この指標は信頼できないのか」という疑問から出発しました｡
‫機械学習モデルを適合させることも､ 機械学習モデルを評価することも､ 機械学習モデルを適合させることと同じくらい重要だということを､
‫常に心に留めておいてほしいからです｡
‫そして､ 機械学習モデルを当てはめたところから､ 今に至っています｡
‫私たちのモデルができないことを約束するようなことはしたくないので､ 私たちの結果が妥当であることを確認する必要がありますね｡
‫では､ なぜ上記の指標が成り立たないのか､ 質問してみましょう｡
‫Hold waterは､ 「なぜメートル法は信頼できないのか」という表現です｡
‫それは､ あくまでも話し方です｡
‫では､ なぜ水を差さないのか｡
‫なぜ信頼性がないのか？
‫考えることがあったのでしょうか？
‫基調講演に戻れば､ 記憶が蘇るかもしれないので､ 図をお見せします｡
‫機械学習で最も重要なコンセプトは､ 冒頭で述べたとおりです｡
‫じゃあ､ 3セットね｡
‫つまり､ あるデータセットで機械学習モデルを学習させ､ その後どうするかということです｡
‫コードに戻ります｡
‫モデルに当てはめました｡
‫あるデータに対するデータセットで､ しかしその後､ 全く同じデータで評価しています｡
‫えー｡
‫オーチ ここに戻ってくると､ 基本的に私たちがやったことは､ これを大学の授業として考えた場合､
‫教材を学んだということです｡
‫しかし､ 私たちが行ったのは､ 最終試験に相当するもの､ つまりテストデータセットでモデルをテストするのではなく､
‫学習したものと全く同じ材料で機械学習モデルを評価するだけです｡
‫ある授業で､ 読むべき本を渡され､ まったく同じタイミングで､ 読んでいるその本から直接出題されるようなテストがあるんですね｡
‫ふむ｡
‫なるほど｡
‫しかし､ 私たちはモデルの汎化能力を追い求め､ 機械学習モデルが見たことのないデータに対して良いパフォーマンスを発揮する能力を獲得した､
‫それが私たちの狙いなのです｡
‫Kaggleに戻れば｡
‫2011年末までのデータを収録した学習用データセットがあります｡
‫検証用セットとテスト用セットがあります｡
‫だから､ それを狙っているんです｡
‫モデルを評価する必要があります｡ 学習させたデータで評価するのではなく､ テストデータで評価する必要があるのです｡
‫でも､ その前に｡
‫最初のデータフレームをインポートしたときのことを思い出してみてください｡
‫再検討すると言っていたのに､ その時期が来てしまった｡
‫だから､ ここに行くんです｡
‫輸入しました｡
‫列車と有効なcsv｡
‫うーん｡
‫なぜ､ そんなことをしたのだろう？
‫さて､ このビデオですべてが明らかになります｡
‫列車が無効なcsv､ 有効なcsv､ tryとseeがvとしてあるわけですが､ これらを別々にインポートすればいいのでは？
‫今回は､ 時系列データセットを使って､ 誰かが検証セットを作ってくれるのではなく､ 自分で検証セットを作るとはどういうことかということを示したかったのです｡
‫だから､ ここはそのための絶好の遊び場なんです｡
‫つまり､ ここでいう訓練用CSVとは､ トレーニングセットのことである｡
‫つまり､ 基本的に私たちが取り組んできたことと有効なCSVは､ 検証セットなのです｡
‫ここで重要なのは､ 時系列であるため､ 学習用データセットには2011年末までのデータがあり､ 検証用データセットには2012年1月1日から2012年4月30日までのデータがあることです｡
‫そこで､ モデルをよりよく評価するために､ データをトレーニングセットとバリデーションセットに分割する必要があります｡
‫では､ そうしましょう｡
‫ここで､ データを訓練検証セットに分割してみましょう｡
‫これでモデルができた｡
‫今､ 私たちはモデルを作ることができますが､ より良いモデルを作るだけでなく､ 私たちが評価するものが理にかなっているかどうかを確認する必要があります｡
‫では､ いつものようにもう一度データを確認してみましょう｡
‫だから､ 年号､ なんていうのを使ってもいいかもしれない｡
‫そうそう｡
‫だから､ 言わなければならないのか｡
‫ああ､ そうなんだ｡
‫これでよしとしよう｡
‫なるほど｡
‫だから､ 多分､ 私たちのデータフレームが整っているからだと思います｡
‫はい｡
‫これは､ データフレームをインポートするときに役に立ちそうです｡
‫販売日の順に注文しました｡
‫さて､ これを読んで独自の検証セットを作成するために､ データを分割したいと思います｡
‫2011年までの行はすべて､ つまり販売年は2011年なので､ トレーニングセットに入れることができます｡
‫そして､ 2012年のすべての行を検証セットとすることができます｡
‫テストセットは別のデータセットにあるので､ 今は気にしないことにします｡
‫列車と有効なCSVだけを扱うのは､ ノートブックの最初に列車と有効なCSVをインポートしたためです｡
‫このファイルはこちら
‫そこで､ 検証用のデータセットを独自に作成する必要があります｡
‫では､ そうしましょう｡
‫そこで､ devのテンプレートを用意し､ 販売年数カウントを確認｡
‫さあ､ 2012年です｡
‫2012年のサンプル数は11,573個ということですね｡
‫わかりました｡
‫ですから､ データを学習用と検証用に分けるのは､ 「よし､ これをイントロスペクトしよう」というくらい簡単なことです｡
‫年」列と2012と等しい列は､ 販売年と例の検証セットとなり､ 「年」と等しくない､ つまり2012と等しくない行は､
‫トレーニングセットとなります｡
‫だから､ その話はやめて､ ダニエル､ コードを見てみよう｡
‫そこで､ データをトレーニング用と検証用に分けます｡
‫これって､ 自分の時系列データでもありそうなことですよね？
‫だって､ Kaggleのフォーマットで与えられるとは限りませんよね？
‫クライアントと一緒に仕事をしたり､ プロジェクトに取り組んだりするとき､ データが自動的にtrain､ valid､
‫testの3つになるとは限らないのです｡
‫これらは､ 自分で作るしかないでしょう｡
‫この販売欄を見て､ あるいは時間欄を見て､ 日付欄を見て､ 自分なりのトレーニングセットとバリデーションセットを作るにはどうしたらいいかを考えます｡
‫それこそ､ トレーニングセットとバリデーションセットを自分で作る練習をするために､ 最初に1つのセットとしてインポートしたわけです｡
‫セットという言葉をよく使うような気がしますが､ これは重要なことで､ 私たちは私たちのところに戻ってくるからです｡
‫基調講演
‫これは､ 機械学習において最も重要な概念です｡ なぜなら､ どのような条件でモデルを学習させたとしても､ そのモデルを他の条件で評価することを確認したいからです｡
‫だからここに来て､ 検証セットは､ 販売年の列が2012年に等しいDFの臨時雇用者のすべての行である？
‫はい､ その通りです｡
‫また､ トレーニングセットの日は､ DF tempの同じ年の列が2012と等しくないすべての行です｡
‫素晴らしい｡
‫そして､ レン､ 行くかもしれません｡
‫DFヴァルとレンdfトレイン｡
‫つまり､ ここでわかるのはこの2つのデータフレームの長さだけなのです｡
‫美しい｡
‫11,573行の検証データセットと､ 401,125行のサンプルとその日付による分割を含む学習データセットができました｡
‫美しい｡
‫ここでは箱を預かっています｡
‫ここでは箱を取っています｡
‫そこで今度は､ データをXとYに分割することが考えられます｡
‫以前にも同じようなことがありました｡
‫そうすると､ X学習セットとY学習セット､ X有効セットとY有効セットができ､ これがデータとラベルになるわけです｡
‫だから､ X列車､ Y列車イコールDFを用意するんです｡
‫さて､ ここでトレーニングセットで作業しているのはドロップです｡
‫第1軸aの販売価格列を落としたい｡ k. をドロップするだけで､ DFトレインに設定されます｡
‫Y列車は販売価格と同じになる｡
‫だから､ ここでコンマを使ってどうやってるかを見てください｡
‫一行で済ませるというのは､ ちょっと手抜きですね｡
‫美しい｡
‫そして､ ここに行くのです｡
‫Valid y 有効です｡
‫ノット確信df出力ドロップ販売価格だけ再び同じですが､ 今回は検証セットdf valドットこれは実際に販売価格であることを行っている｡
‫これでよしとしよう｡
‫そして､ このデータを少し眺めてみて､ どこかに小さなミスがないか､ お互いに比較できる形状になっているかどうかを確認します｡
‫なぜ？
‫有効な形状です｡
‫つまり､ ここで作成したデータセットから､ その形状を割り出しているだけなのです｡
‫美しい｡
‫つまり､ トレーニングセットは401,000行､ つまり102特徴量､ 102列でそのくらいになります｡
‫Yの学習は401,000行､ そして検証は約11.5千行で､ Xは同じ量の列､
‫Yは1列だけなので列はないです｡
‫見てみよう｡
‫さて､ 見てください､ これが私たちの仕事です｡
‫すべてのデータを確認する
‫なるほど､ これらはすべてセール価格なんですね｡
‫美しい｡
‫ウー｡
‫さて､ これでデータは訓練セットと検証セットに分かれました｡
‫最も重要な3つのこと､ あるいは最も重要なセットのうちの2つを大切にしたのです｡
‫テストセットについては､ 後ほどご紹介します｡
‫しかし､ これはトレーニングセットとバリデーションセットというものを作ったものです｡
‫そろそろ､ もう少しモデルを作り続けなければならない｡
‫そこで､ このビデオをここで終わらせ､ 機械学習モデルを評価する方法を考えなければならないかもしれません｡
‫ということで､ 次回のビデオでご紹介することになりそうです｡