はじめに
本記事は、NVIDIA DLI Teaching Kits Lecture 2についてのまとめになります。
気力が続く限り、今後も3-24章までのLabs、Lecture、Quizを取り上げていきます。
どうぞよろしくお願いします。
前章: Lecture1
目次
- Lecture
- Labs
- Quiz
Lecture
2.1 データの収集
データの集め方とコスト
ダウンロード -> 低
API (Application Programming Interface) -> 中
スクレーピング、クローリング -> 高い
ダウンロードできるデータ
・data dump (wikipedia)、csv、xml (stack overflowなど)
APIを経由してデータを集める
・Google Data API、Twitter(X)、data.gov
APIを経由して利用できないデータ
・Amazon、ESPN、eBay
2.2 データスクレイピング
いかにしてデータをスクレイピングするか(Google Play)
・Shazam
・同様アプリの相関図を作る、そのためにスクレイピング
・データを抽出するためにブラウザの開発ツールを使う
開発ツールは option + command + I で開ける
2.3 代表的なスクレイピングライブラリ
Selenium 多言語に対応しているらしい
参考記事: 10分で理解するSelenium
Beautiful Soup Pythonのライブラリー
参考記事: 10分で理解するBeautifulSoup
Scrapy Pythonのライブラリー
参考記事: 10分で理解するScrapy
JSoup Javaのライブラリー、HTML解析
参考記事: Jsoup使い方メモ
2.4 データアノテーションとデータの質
データアノテーション (ラベルの作成)
データアノテーションとは、収集したデータに様々な用途に応じたラベルを付けること
データアノテーションの例
・画像処理 (画像分類、物体検出、セマンティックセグメンテーション)
・LabelMe 画像へのアノテーション付与のためのグラフィカルなツール、Pythonで書かれている
・Computer Vision Annotation Tool (CVAT)
・Einstein Vision Object Detection
・自然言語処理 (NLP) > 感情分析(センチメント分析)、固有表現抽出 (NER)
データアノテーションの品質管理
データの質 Data Quality(DQ)
データの質とは、情報の定性的あるいは定量的な状態のこと
品質特性: 関連性、正確性、適時性、比較可能性、完全性
なぜデータの質について注意しなければならないのか
データの質(高) 競争上の優位性を担保する
データの質(低) 顧客満足度の低下、組織への信頼の低下
質の高いデータの得方
予防、検出、修復、リソースの割り当て
2.5 SQLite: 簡単で効率的なストレージ
データの格納方法
・もっとも簡単なのはどれか
・csv(comma seperated files or values) ではないらしい
SQLite
・世界で一番有名でユーザの多い組み込みデータベース
・自己完結型、スキーマとデータが一つのファイルに含まれる
・サーバーレス、ローカルにある
・ゼロ・コンフィギュレーション、セットアップ必要なし
2.6 SQLリフレッシャー
基本的なSQLの文法の説明なので、各自ググろう。
とりあえず覚えておけばいい構文
SELECT > FROM > WHERE > HAVING / BETWEEN / ORDER BY ...
INSERT > INTO ...
UPDATE ...
DELETE ...
2.7 欠けているインデックスに注意
SQLiteは簡単に数GB程度のデータ量になってしまう。
動作が遅いときは、適切なインデックスを作成したかを確認する必要がある。
B木インデックス(データ構造)
Labs
Labsで登場するRAPIDS_AIエコシステムのBlazingSQLというモジュールですが、
バージョン21.12にてDask-SQLに替わりDeprecated(廃止)されたようです。
StackOverflowにおいて、以下のQAを見つけましたので共有いたします。
なお、バージョン21.11以前のものについてはまだ動作の確認ができていないため、
分かり次第追記いたします。
Quiz
Q1) Ans: ABC
・2.4 データのアノテーションとデータの質 p.9 を参照
Q2) Ans: 全て
・2.4 p.12 を参照
Q3) Ans: 全て
・2.4 p.14 を参照
Q4) Ans: A
・2.1 データの収集を参照
Q5) Ans: C
・2.7 欠けているインデックスに注意、B木(B-tree)データ構造
Q6) Ans: D
・2.7 p.4を参照、オーダ記法を用いている。
Q7) Ans: A
Q8) Ans: B
・SQLiteの上限は140TB(テラバイト)らしい。
参考文献