Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
AutoML 使ってみた
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
konumaru
August 12, 2020
Technology
0
190
AutoML 使ってみた
GCP AutoML を使って、App Store Review の感情分析をしてみた。
konumaru
August 12, 2020
Tweet
Share
More Decks by konumaru
See All by konumaru
Cursor × Marp 勉強会
konumaru
3
1.4k
レコメンドエンジンを Figma で爆速 UX リサーチ
konumaru
0
8.4k
main.pdf
konumaru
0
310
7日で学んだ強化学習
konumaru
0
260
Other Decks in Technology
See All in Technology
非同期・イベント駆動処理の分散トレーシングの繋げ方
ichikawaken
1
150
Phase08_クイックウィン実装
overflowinc
0
2k
開発チームとQAエンジニアの新しい協業モデル -年末調整開発チームで実践する【QAリード施策】-
kaomi_wombat
0
250
データマネジメント戦略Night - 4社のリアルを語る会
ktatsuya
1
410
AI時代のオンプレ-クラウドキャリアチェンジ考
yuu0w0yuu
0
260
SaaSに宿る21g
kanyamaguc
2
180
Embeddings : Symfony AI en pratique
lyrixx
0
350
「通るまでRe-run」から卒業!落ちないテストを書く勘所
asumikam
2
770
Change Calendarで今はOK?を仕組みにする
tommy0124
1
120
やさしいとこから始めるGitHubリポジトリのセキュリティ
tsubakimoto_s
3
1.8k
CloudFrontのHost Header転送設定でパケットの中身はどう変わるのか?
nagisa53
1
210
Phase12_総括_自走化
overflowinc
0
1.7k
Featured
See All Featured
Writing Fast Ruby
sferik
630
63k
Claude Code どこまでも/ Claude Code Everywhere
nwiizo
64
54k
Are puppies a ranking factor?
jonoalderson
1
3.2k
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
68
38k
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
0
460
Site-Speed That Sticks
csswizardry
13
1.1k
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
Leading Effective Engineering Teams in the AI Era
addyosmani
9
1.8k
Collaborative Software Design: How to facilitate domain modelling decisions
baasie
0
170
Stewardship and Sustainability of Urban and Community Forests
pwiseman
0
160
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.7k
Learning to Love Humans: Emotional Interface Design
aarron
275
41k
Transcript
GCP Natural Language AutoML 触ってみた 1
ToC MLプロジェクトのプロセス MLプロジェクトににおける課題 なぜAutoMLをやるのか AutoML の紹介(202008時点) 先⾏事例 やったこと まとめ 2
MLプロジェクトのプロセス 企画 机上検証 実証実験 システム開発 システム運⽤ だいたいこんな感じ 3
MLプロジェクトにおける課題(の⼀部) 主に机上検証・実証実験における課題 データの質・量がよろしくない コードの品質が悪い 適切なモデルをつくることが難しい 4
なぜAutoMLをやるのか データの前処理やクレンジングを担ってくれるのか コードの質を気にせずにモデルをつくることができるのか 適切なモデルというの確かめることができるか これらを AutoML が解決できるのかを確かめる。 5
AutoML の紹介(202008時点) AutoML Vision(画像分析) AutoML Video Intelligence(動画分析) AutoML Natural Language(⾃然⾔語処理)
<- 今回はこれやる AutoML Translation(翻訳) AutoML Tables(構造化データの分析) 6
先⾏事例 画像分類 LIFULL, 物件画像の分類 cookpad, 商品画像の分類 その他事例 https://cloud.google.com/automl?hl=ja , etc
7
やったこと GCP Natural Language AutoML を使う データの取得 データの加⼯ AutoMLにデータを投⼊ データが読み込まれる
8
GCP Natural Language AutoML を使う エンティティの抽出 コンテンツ分類 感情分析 <- 今回はこれやる
9
データの取得 右の画像のようなレビューデータ をGASでクローリング Spredsheet に保存 全部で22アプリのレビューデータ を取得 ジャンルは、EC, Game, ⼈材,
漫画 などなど 10
データのラベル付け 今回はレビューデータを使うので、あらかじめ星が付いてる。 したがって、ユーザーが付けた星を正とする。 ラベルデータがないなら ⾃分でラベルを付ける。 AutoML Natural Language UI(Data Labeling)などを活⽤する。
AI Platform Data Labeling Service を使⽤して⼈間のラベル付け担当者に依頼する。 11
データの加⼯ 収取したレビューデータをAutoML が望む形に加⼯する必要がある。 いくつかある中で、今回は右のよ うなフォーマットを選択。 ✗: 1 label - 1
file ◦: 1 record - 1 file Source: https://github.com/konumaru/sentime nt_analysis/blob/master/main.py 12
データの投⼊(Items) 13
Train ワンクリックで実⾏できる。 学習⽤データ・評価⽤データをよ しなに分割してくれる。 学習は何度も実⾏でき、モデルご とにUnique_IDが割り当てられる。 評価⽤データにおける精度を確認 できる。 学習⽤データの精度がみれないの で、過学習の判断ができない。
14
Evaluate 評価⽤データの評価結果が⾒れ る。 評価⽤データのラベルごとの数が わかる。 評価結果では、Confusion Matrix もみることができる。 15
Test & Use 簡易的に未知のデータを使って予 測することができる。 勝⼿にREST API も作ってくれる。 上記を呼べるようなpythonスクリ プトの例も出してくれる。
16
Pros / Cons 17
Pros 決まったデータさえあれば予測モデルからAPIまでつくれる。 GUIでデータのクレンジングができる。 GUIで予測結果を探索できる。インタラクティブで楽しい。 (良し悪しはあるが)学習・評価データを勝⼿に分割してくれる。 18
Cons 問題設定が限られるので使い所が難しい データの前処理が必要なので no code という訳にはいかない。 データの前処理が結構たいへん(ここが⼀番Autoになってほしいな...) ⾃作する場合よりもモデルの解釈が難しい。 過学習が判断できない。 19
まとめ 基本的には便利 机上検証・実証実験における課題のうち、コードにまつわる課題は解決されている。 ⼀⽅で、 使い所が限られる。 モデルの解釈・分析が難しい。 データの前処理は相変わらず⼤変。 ⾊々あるが、 今後⼤いに期待できるツールになるはず。 20
おまけ:本当に感情分析するなら 感情というあいまいな情報を抽出しようという試みなのでどこかで妥協が必要 機械的な分析を諦め、定性分析を⾏う -> tensorflow embedding 機械的な分析を諦められないなら -> 分散表現を獲得し、k-meansなどでクラスタリングした後、スコアリングすると か?
(しかし、ものすごくうまく動くことは期待できないと思う) 21