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
konumaru
August 12, 2020
Technology
0
180
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.3k
レコメンドエンジンを Figma で爆速 UX リサーチ
konumaru
0
8.3k
main.pdf
konumaru
0
290
7日で学んだ強化学習
konumaru
0
250
Other Decks in Technology
See All in Technology
今改めてServiceクラスについて考える 〜あるRails開発者の10年〜
joker1007
20
9k
インサイト情報からどこまで自動化できるか試してみた
takas0522
0
120
"複雑なデータ処理 × 静的サイト" を両立させる、楽をするRails運用 / A low-effort Rails workflow that combines “Complex Data Processing × Static Sites”
hogelog
3
1.3k
API提供者のためのMCPサーバー設計ガイド / MCP Server Design Guide for API Providers
yokawasa
0
230
それでも私はContextに値を詰めたい | Go Conference 2025 / go conference 2025 fill context
budougumi0617
4
900
AWSのProductのLifecycleについて
stknohg
PRO
0
290
BtoBプロダクト開発の深層
16bitidol
0
130
Flaky Testへの現実解をGoのプロポーザルから考える | Go Conference 2025
upamune
1
290
OCI Network Firewall 概要
oracle4engineer
PRO
1
7.7k
AI Agentと MCP Serverで実現する iOSアプリの 自動テスト作成の効率化
spiderplus_cb
0
270
AI×Data×SaaS×Operation
sansantech
PRO
0
100
2重リクエスト完全攻略HANDBOOK / Double Request Handbook
shoheimitani
5
7.1k
Featured
See All Featured
Making Projects Easy
brettharned
118
6.4k
jQuery: Nuts, Bolts and Bling
dougneiner
64
7.9k
YesSQL, Process and Tooling at Scale
rocio
173
14k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
The Invisible Side of Design
smashingmag
301
51k
What’s in a name? Adding method to the madness
productmarketing
PRO
23
3.7k
Visualization
eitanlees
148
16k
How To Stay Up To Date on Web Technology
chriscoyier
791
250k
[RailsConf 2023] Rails as a piece of cake
palkan
57
5.9k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
114
20k
GraphQLとの向き合い方2022年版
quramy
49
14k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
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