‫よしっ｡
‫これで学習用画像のファイル名がすべて揃いました｡
‫現時点では､ 単なるファイル名であることを忘れないでください｡
‫だから､ すべてのファイルのパスがおそらく良い方法です｡
‫このファイル名を呼んでいます｡
‫そのまま放置されます｡
‫つまり､ これらはトレーニング画像のファイルパスであり､ 後でアクセスする方法があるということです｡
‫ここで重要なのは､ これらはあくまで文字列であるということです｡
‫まだ実際の画像ではありません｡
‫それはすぐにでもできます｡
‫しかし､ 今やっていることは､ ラベルの準備をすることです｡
‫これが私たちのラベルです｡
‫先ほどは､ ファイルIDを処理してファイルパスにしましたが､ 今度はラベルを取得してみましょう｡
‫つまり､ 機械学習の前提は､ 私たちのデータを数字に変えることだと覚えておいてください｡
‫具体的には､ TensorFlowを扱う場合､ 時制に変えることです｡
‫この小さなサブセクションでは､ 今まさにそれに向かって進んでいるのです｡
‫わかりました｡
‫トレーニング画像ファイルのパスとリストができたので､ ここで少しテキストを入力します｡
‫ラベルを用意しよう｡
‫なるほど｡
‫ラベルCSVで全てのラベルを取得しました｡
‫実際に見てみましょうよ｡
‫ラベルにしよう｡
‫とりあえずlabelsという変数を作ってみましょう｡
‫CCブレイド
‫シンプルであること
‫これって､ どうなんだろう？
‫なるほど｡
‫それがデイタイプオブジェクトなんですね｡
‫そして､ これらを数値に変換することから始めなければならないので､ numpy配列に変換する可能性があることを思い出してください｡
‫というわけで､ 今更ながらnumpyをインポートしてみると､ これ以外でもできるかな？
‫別の方法を知っています｡
‫ラベルにしたらどうだろう？
‫素晴らしい｡
‫何本入っているのですか？
‫リン・レーベル
‫10,222円､ これはすごいですね｡
‫もう一つの方法は､ もし私たちが｡
‫このI'm doing command slashをコメントアウトしてください｡
‫そうやって､ 一行まるごとコメントアウトすることができるのです｡
‫そしてそして､ numpyへ｡
‫シンプルなメソッドとパンダが素敵です｡
‫同じことです｡
‫しています｡
‫上記と同じです｡
‫ちょっとした仕掛けがあるんです｡
‫今までと同じようにやってみよう｡
‫ラベルの量とファイル名の数を比べてみてください｡
‫これをダウンロードしてCoLabノートブックに解凍した後､ ここに戻ってくると､
‫ラベルの数とファイル名の数を比較して､ データの欠落をチェックしているのです｡
‫以前の構造化データのプロジェクトで､ データフレームの中に欠けているセルがあったのを覚えていますか？
‫しかし､ 非構造化データでそれをチェックするのは､ もし欠落があれば､ データは少し難しくなります｡
‫そのため､ このような回避策をとっているのです｡
‫ラベルの数と電話名の数が一致するかどうかをチェックし､ 先ほどと全く同じことをするだけです｡
‫つまり､ Lenラベルがラベルの長さであれば､ 先ほど行ったことはLenファイル名と同じです｡ なぜなら､
‫最終的にはここで行ったように､ ラベルとファイル名をペアリングしなければならないからです｡
‫インデックス9000はチベタン・マスティフで､ ファイル名の9000はこの絶対的なライオンの犬なんですね｡
‫では､ ここに行ってみましょう｡
‫自分たちのために､ ちょっとした確認事項をプリントアウトしておく｡
‫ラベルマッチ数､ ファイル名数｡
‫B. A beautiful else print number of labels not match.
‫ファイル名の数｡
‫データディレクトリを確認する｡
‫祈っています｡
‫美しい｡
‫それが､ 私たちの目指すところです｡
‫ラベル数､ マッチ数､ ファイル名数｡
‫なるほど｡
‫さて､ 最後に､ 私が聖人君子であることから｡
‫まあ､ そうでもないんですけどね｡
‫最後に､ このプロジェクトはまだまだこれからです｡
‫機械学習モデルは文字列を入力にできないので､ 現状ではこれがラベルということになりますね｡
‫文字列の配列です｡
‫私たちがしなければならないのは､ それを数字に変換することです｡
‫どうすればいいのでしょうか｡
‫さて､ まずは個性的な犬種を一覧で探してみましょう｡
‫つまり､ ここに10,222枚あるわけです｡
‫しかし､ ユニークなラベルをどうやって見つけるのだろう？
‫では､ こうしてみましょう｡
‫ユニークなラベルの値を探す｡
‫だから､ ちょっと考えてみてほしいんです｡
‫アンパイヤのレイさんがいるなら､ ちょっとヒントをあげました｡
‫numpyを使って､ 与えられた配列の中のユニークな値を見つけるにはどうしたらよいでしょうか？
‫あなたはそれを調べることもできると少し考えていますか？
‫Googleで検索するといいのがありますよ｡
‫つまり､ NP uniqueは配列のユニークな要素を見つける方法なのです｡
‫そして今､ CoLabでこれはかなりイケてますよね？
‫私が何もしなくても､ このdocstringがポップアップするだけです｡
‫そこで､ ユニークなラベルを探したいと思います｡
‫そのユニークな品種を探そう｡
‫それを見てみましょう｡
‫すごい｡
‫だから､ いろいろな犬種があるんですね｡
‫では､ 見てみましょう｡
‫ブリタニー・スパニエル
‫そのチワワの名前すら聞いたことがない｡
‫ゴードン・セッター グレート・デーン
‫ああ､ 犬に気を取られる獣がいるんだ｡
‫それで､ これは120になるはずです｡
‫素晴らしい｡
‫というのも､ そうなんです｡
‫120種類の犬種
‫ここに並んでるんですよね？
‫データを準備中です｡
‫時制に入るための準備をさせているのです｡
‫文字列の配列は2つしかないんです｡
‫これらをどのように数字に変えていくのか｡
‫ブーリアンの配列にしたらどうだろう？
‫話をするよりも､ 例を挙げましょう｡
‫そこで､ 一つのラベルをブール値の配列に変えてみましょう｡
‫だからプリントラベルはゼロ｡
‫ここでは､ ラベルゼロを例にとって説明します｡
‫だから､ ラベルゼロ｡
‫今度は､ 比較演算子を使って､ 最初のラベルとユニークな品種を比較します｡
‫そして､ これが返すべきものは､ 一意な品種ラベルのどこでもゼロが等しくない､ 真と偽の値の配列である｡
‫falseになるはずですが､ 唯一イコールになる場所はtrueになるはずです｡
‫これでよしとしよう｡
‫それでは､ これらを見てみましょう｡
‫ボストンブルなんですね｡
‫しかし､ その後に個性的な品種が登場した場合｡
‫だから､ トゥルーはここにあると言えるのです｡
‫で､ それはどういうこと？
‫12インチ
‫だから､ ここを通ったら､ 数えてみてください｡
‫足し算していけば､ ボストン・ブルに行き着くはずだ｡
‫これでよしとしよう｡
‫本当です｡
‫それが､ 私たちの目指すところです｡
‫それをレーベルごとにやってみよう｡
‫そこで､ すべてのラベルをブール配列にします｡
‫これを見て､ これが全部trueかfalseかだけだと､ 「これはどうやって数字に変換するんだろう」と思いますよね｡
‫でも､ すぐにわかりますよ｡
‫numpyの配列と､ ブール値には特別なものがあるんだ｡
‫だから､ ボーリングに行こう｡
‫ラベルはラベルに等しい｡
‫ここでまたリスト整理をします｡
‫つまり､ ラベルはラベルの中のラベルに対応するユニークな品種に等しい｡
‫まずはコードの内容を確認し､ それから話を進めましょう｡
‫疑わしい場合は､ コードを実行してください｡
‫素晴らしい｡
‫そして､ いじめのラベルは､ 長さ1万でも､ 1万222でも､ 何でもいい｡
‫素晴らしい｡
‫つまり､ すべてのラベルをブール値ラベルに変えたということです｡
‫さて､ この小さなリストの理解度はどうなっているのでしょうか？
‫今までのものをスケールアップしただけのものです｡
‫つまり､ ラベルの中のすべてのラベルに対して､ この小さな1つの例を実行せよということです｡
‫そして､ 思い出せば｡
‫Len Labelsは10,222枚なので､ 10,222枚です｡
‫だから､ どのレーベルでもそうなっている｡
‫彼はまた､ なぜ真と偽に分けるんだ､ と思っているかもしれない｡
‫さて､ このブーリアン配列をどうやって数値に変換するのか｡
‫具体的には､ 1つのホットとコード化された数字です｡
‫だから迷ったらコードを実行して､ コードをチェックして､ それから話し合おう｡
‫つまり､ ブーリアン配列を整数に変換する例です｡
‫プリントラベルZEROは､ 最初の1枚を取得します｡
‫つまり､ これはDataFrameからそのまま元のラベルになったものです｡
‫ラベルCSAプリントNPから直接､ ユニークなブレードがラベルのゼロに等しい｡
‫プリントする｡
‫ということで､ 実際には､ これがラベルが発生するインデックスであることを伝えるべきでしょう｡
‫そして､ いじめっ子用のラベルを印刷しに行くのです｡
‫ゼロです｡
‫ドット・オーガです｡
‫マックスです｡
‫これがインデックスなんですね｡
‫ラベルが真偽値配列に含まれる場合｡
‫そして､ 印刷に入る｡
‫いじめのレッテル
‫int型として｡
‫そのため､ サンプルラベルが発生する場所には､ 1があるか､ あるはずです｡
‫ふー｡
‫大きな細胞ですね｡
‫確認することにしています｡
‫あれを見てください｡
‫つまり､ オリジナルのラベルはボストン・ブルで､ 19番目のインデックスと思われる｡
‫これは､ ブーリアンラベルの第0番目のインデックスでも同じです｡
‫19に表示されるわけですが､ これをカウントすると､ 0か012345678､ 9､ 10､ 11､ 12､ 13､ 14､ 15､
‫16､ 17､ 18､ 19が1の発生場所となります｡
‫これで､ いじめの対象となるラベルのすべてが､ 実はこのような形式になっているわけです｡
‫実際にレーベルが発生するものがあるんですね｡
‫そこで､ 同じようにLet's go toで､ print labels toを行ったとします｡
‫ペキニーズはここで右肩下がりで発生し､ それ以外はゼロなのでしょうか｡
‫素晴らしい｡
‫これで､ ラベルは数字で表示され､ 画像ファイルのパスも簡単にアクセスできるようになりました｡
‫これが私たちのイメージパスです｡
‫まだ数値化されていませんが､ 後でTensorFlowを使って数値化することができます｡
‫これで､ データをアクセス可能な形式にすることができました｡
‫トレーニングセットと検証セットを作成しましょう｡ Kaggleからダウンロードしたファイルには､ 実験を行うためのトレーニングセットとテストセットしかありません｡
‫データをトレーニングと検証に分けたいので､ 次のビデオではそのようにします｡