2016 hadoop conf tw - 如何建置數據精靈

Post on 08-Jan-2017

422 Views

Category:

Data & Analytics

8 Downloads

Preview:

Click to see full reader

TRANSCRIPT

如何建置關鍵字(數據)精靈

1

Who am I ?

● Kent Shih (施晨揚)

● 熱愛 Data Analysis & Machine

Learning

● 痞客邦 - Manager, Alogrithm

Design & Research Team

https://www.facebook.com/texibhttps://tw.linkedin.com/in/kentshih

3

痞客邦 PIXNET

我們在做什麼?

4

● 設計演算法優化痞客邦內外部服務

● 性別預測、年齡預測、文章優質程度及族群分析等

● 白話的說 - 利用電腦科學優化大規模性問題

● 操作太複雜 - 還要學新的軟體

● 等太久 - 老闆馬上這要份報告了

● 資料很多 - 一堆圖表看了就暈

● 不知道要怎麼分析什麼 - 腦袋很空

5

資料科學是火星科技?

● 簡單- 只要輸入然後按 Enter

● 快速 - 5秒內

● 一張圖或表 - 真的就只有一個

● 隨時取得 - 在捷運上拿著手機就可以用

6

設計方向

數據精靈(PIXBOT) 基本資料

● 出生:2015/12/23 6:03 PM

● 指令:12 道不同指令

● 服務對象:渴望數據資料內部同仁

● 住在哪:PIXinsight & Slack

7 7

8

有哪些類型法術

文章優質度分析

閱讀者行為分析

關鍵字聯想分析

文章關鍵字分析

什麼是關鍵字?

摘錄Wikipedia : Keyword (computer programming), word or identifier that

has a particular meaning

to the programming language

9

文章熱門搜尋關鍵字分析

10

優像數位媒體科技股份有限公司

PIXNET DIGITAL MEDIA CORPORATION

UX 部門主管

中午看的文章和晚上看會一樣

嗎 ?

應該不一樣吧?可以抓幾篇看一

下嗯我想想~但有上千篇文章

今晚不用睡了!

11

破千篇的文章早上中午

晚上

優像數位媒體科技股份有限公司

PIXNET DIGITAL MEDIA CORPORATION

怎麼算出來的呢?

早上下午文章集

晚上文章集

比對搜尋紀錄差異

計算代表的關鍵字

斷詞處理

13

早上到下午會搜尋的關鍵字

四神湯下午茶上引水產

14

下午晚上的搜尋關鍵字

啤酒夜市

15

現在只要 10 秒

原本 4000 文章 * 30 秒 = 33 小時

16

內容議題分析

17

最近有客戶想下尿布的廣告

廣告部門主管

創作者都怎麼介紹尿布

啊??

我們的老婆大人比較清楚吧!!

總不能跟客戶這麼說吧 XD

嗯我想想~

18

關聯詞(搜尋)

尿布

19

相似詞(同義詞)

尿布

20

相似詞 - 詞向量

皮卡丘

22

神奇寶貝 = 皮卡丘

神奇寶貝GO/精靈寶可夢GO] 2016/7/22

正式在日本提供服務&日本橫濱的

皮卡丘手遊台灣精靈寶可夢「Pokémon GO」

23

關聯詞

寶可夢

24

熱搜詞組

精靈寶可夢台灣

精靈寶可夢太陽 pokemon寶可夢

任天堂精靈寶可夢

25

廣告部拿到一筆尿布廣告訂單

26

一些小技巧及關鍵資源 - 詞庫

27

● 斷詞是 Text Mining 最基礎工程之一

● 建立好的詞庫是最直接手段之一● 收集詞

○ 爬網 : Wikipedia, 淘寶○ 收集使用者常下的 Query String○ 輸入法詞庫○ 公司內部的產品資料庫

一些小技巧及關鍵資源 - 斷詞系統

28

● 結巴 - https://github.com/fxsjy/jieba● 但是如果有上億篇的文章要處理,Python 版效能是

無法滿足的

●       的效能快上 100 倍

一些小技巧及關鍵資源 - 詞向量

詞向量 - One Hot v.s Continue Value It is better for analysis

Very High Dimension

詞向量 - One Hot RepresentationWord One Hot Index

Apple 00000001

how 00000010

Are 00000100

You 00001000

I 00010000

Am 00100000

Fine 01000000

Book 10000000

How Are You ? I am Fine . Thank You

TF - Term Frequency

01111110

00001000

00010000

AND

You

I

00000000

詞向量 - Context Vector

詞向量 - Context Vector

P(Wi|Context)

Word 餐廳 浮潛 美食 旅遊 出國

沖繩 0.1 0.7 0.5 0.9 0.5

好吃 0.6 0.01 0.7 0.01 0.02

Okinawa 0.2 0.5 0.2 0.8 0.7

喔伊西 0.3 0.002 0.8 0.02 0.03

Similar

Similar

Co-occurrence MatrixSparse & Large

n ~= 500K

Space ~= n*nTime ~= n*n

GG!!

優像數位媒體科技股份有限公司

PIXNET DIGITAL MEDIA CORPORATION

怎麼算出來的呢? 大量優質文章

100萬篇文章 Top High Quality 2015 Q3 Q4

6.1 億篇文章

High Quality

Classifier

Ranking

35

怎麼算出來的呢?Word Embedding

優像數位媒體科技股份有限公司

PIXNET DIGITAL MEDIA CORPORATION 資料前處理 深度學習100 萬篇文章

36

怎麼算出來的呢? Word2Vec

使用類神網路來產生以下模型:給予短句中的前文即可預測出下一個

可能會出現的詞

附帶產生的結果投影層即為詞向量(Word Vector)

我想要去沖繩潛水 潛水

打球

潛水

睡覺

洗臉

...

37

Word2Vec● Google 2013 Release● Open Source Project● Two Layer Neural Network● Another Toolkit : Gensim● pip install --upgrade

gensim

https://www.tensorflow.org/versions/r0.8/tutorials/word2vec/index.html

39

閱讀者行為分析

痞客邦社群影響力

40

同樣都是寵物蛙

創作者的受眾重疊比率分析

41

美妝 vs 寵物蛙

42

一些小技巧 - 抽樣

● 資料量實在太大 - 單日不重複訪客770萬

● 抽樣使用者 - 1/70

● 時間區間 - 120 天內

● 5 分鐘 -> 5 秒

43

文章優質成度分析分析

文章優質程度分析

44

文章優質程度分析-訓練資料

45

熱門部落客

垃圾文章

文章分類器

46

一些小技巧及關鍵資源 - CNN Model

Convolutional Neural Networks for Sentence Classification

http://arxiv.org/abs/1408.5882

系統架構

NAS

MySQL

SparkWorkerWorker Worker

Jieba Server

Gensim Word2VecFlask

JupyterScikitLearn

TensorFlow

Slack Bot

Redshift

47

top related