38
Python 打造你 Summly Andy Dai @ PyConAPAC 2014 1

用 Python 打造你自己的 summly

Embed Size (px)

DESCRIPTION

My Talk at PyCon APAC 2014.

Citation preview

Page 1: 用 Python 打造你自己的 summly

⽤用 Python 打造你⾃自⼰己的 Summly

Andy Dai @ PyConAPAC 2014

1

Page 2: 用 Python 打造你自己的 summly

About me

• Andy ([email protected])

• PyCon staff、Taipei.py co-Organizer、PyCon Tutorial 講師

• 在 PyCon APAC 2014 主席的公司⼯工作

2

Page 3: 用 Python 打造你自己的 summly

Summly 是什麼?

3

Page 4: 用 Python 打造你自己的 summly

4

Page 5: 用 Python 打造你自己的 summly

5

Page 6: 用 Python 打造你自己的 summly

從跟朋友⼀一起做了⼀一個 APP 開始

6

Page 7: 用 Python 打造你自己的 summly

• 截取各⼤大報(不包含中X時報)本⽂文,去掉廣告、圖⽚片等等讓慢 3G 變更慢的東⻄西

!

• 每天也是有些⼈人⽤用...

7

Page 8: 用 Python 打造你自己的 summly

“我們也來做個中⽂文版的 Summly 吧”

8

Page 9: 用 Python 打造你自己的 summly

⾃自然語⾔言處理⽤用 Python 的 NLTK 應該很簡單吧!

9

Page 10: 用 Python 打造你自己的 summly

思路

•分詞 •找關鍵詞 •分句 •找關鍵句,組合起來就收⼯工

10

Page 11: 用 Python 打造你自己的 summly

分詞

11

Page 12: 用 Python 打造你自己的 summly

我們/也/來/做/個/中⽂文版/的/Summly/吧

我們也來做個中⽂文版的Summly 吧

12

Page 13: 用 Python 打造你自己的 summly

讓我們⽤用 NLTK 解決..

13

Page 14: 用 Python 打造你自己的 summly

§

14

Page 15: 用 Python 打造你自己的 summly

Google 是我們的好朋友

15

Page 16: 用 Python 打造你自己的 summly

“结巴" 中⽂文分词:做最好的 Python 中⽂文分词组件

16

Page 17: 用 Python 打造你自己的 summly

簡單搞定

17

Page 18: 用 Python 打造你自己的 summly

找關鍵詞

18

Page 19: 用 Python 打造你自己的 summly

什麼叫做關鍵詞

• ⽂文章當中出現頻率最⾼高的詞 (Term Frequence)

• 如果 ”程式”、”台灣”、”進⼊入” 的出現頻率都⼀一樣呢?

• 加權調整 - Inverse Document Frequency

• TF - IDF

19

Page 20: 用 Python 打造你自己的 summly

結巴也幫你做好了...

20

Page 21: 用 Python 打造你自己的 summly

再度簡單搞定

21

Page 22: 用 Python 打造你自己的 summly

“结巴" 中⽂文分词:做最好的 Python 中⽂文分词组件

22

Page 23: 用 Python 打造你自己的 summly

分句

23

Page 24: 用 Python 打造你自己的 summly

感謝中⽂文標點符號 !

。!?;

24

Page 25: 用 Python 打造你自己的 summly

找關鍵句,組合起來就收⼯工

25

Page 26: 用 Python 打造你自己的 summly

Example

• 除了考公職你還有其他選擇:程式設計 (http://yowureport.com/?p=11468)

• 關鍵字:程式, 設計, 產業, 公務⼈人員, 考試, 錄取, ⼈人才, 領域

26

Page 27: 用 Python 打造你自己的 summly

似乎到處都需要會寫程式的⼈人來做個 App 或是架設網站。Hour of Code 的⺫⽬目標是向超過⼀一千萬的美國學⽣生,宣傳程式設計的重要性 !另⼀一⽅方⾯面,資訊產業近年來蓬勃發展。就算之前「18%」 的公務⼈人員退休優惠存款被調降,在⼤大環境不景氣之下,考公職的⼈人數仍是居⾼高不下,絲毫不⾒見衰退。 !想成為公務員,多半得參加⾼高普初考,或者是特種考試。近幾年初考約七萬⼈人報考,錄取率卻只有 1.1%。 !先不看台灣如何培育⼈人才,台灣就業市場是否需要這麼多程式設計⼈人才?從經濟部⼯工業局的「重點產業專業⼈人才需求調查」報告中,可以看到程式設計相關領域未來三年內的⼈人才需求量: 從上表可看出,列出的重點產業對於⼈人才的需求是逐年成⻑⾧長的。 !試想若是考公職的⼈人有⼀一半能轉換想法,不選擇穩定的公職,轉⽽而投⼊入學寫程式會變得如何?很多其他產業的程式設計⼯工作,必需同時具備兩個領域的知識。

27

Page 28: 用 Python 打造你自己的 summly

2293 字 -> 346 字

28

Page 29: 用 Python 打造你自己的 summly

乍看之下很成功,好像可以上線了!

29

READY FOR LAUNCH

Page 30: 用 Python 打造你自己的 summly

事情不會那麼簡單

30

Page 31: 用 Python 打造你自己的 summly

這是某報的報導針對越南明⽇日反中⽰示威抗議,外交部上午召開緊急會議,研商應變⽅方案,全體備戰,除決議將越南全境旅遊警⽰示提升為⿈黃⾊色,暴亂源起的平陽省、同奈省同列橙⾊色外,也進⼀一步將明⽇日⽰示威重點區域的胡志明市第⼀一郡,加⼊入橙⾊色警⽰示⾏行列,籲台商國⼈人明⽇日切莫涉⾜足第⼀一郡的統⼀一⼯工、市政廳、中國駐越南總領市館等重點抗議區。 !⽽而除了我駐越南代表處河內辦公室、駐胡志明市辦事處辦公室,今起24⼩小時開設避難所,開放台商投奔提供保護外,也將在越南三個省份包括和平旅館等地,同時開10個台商避難點,由外交官進駐,備妥疏散⼤大巴⼠士,協調越南公安保護,領務局⻑⾧長龔中誠上午也率3位曾駐胡志明市的資深官員,清晨出發到越南,親⾃自協調台商便利領務通關事宜。 !!!

31

Page 32: 用 Python 打造你自己的 summly

這是某報的報導針對越南明⽇日反中⽰示威抗議,外交部上午召開緊急會議,研商應變⽅方案,

全體備戰,除決議將越南全境旅遊警⽰示提升為⿈黃⾊色,暴亂源起的平陽省、

同奈省同列橙⾊色外,也進⼀一步將明⽇日⽰示威重點區域的胡志明市第⼀一郡,加

⼊入橙⾊色警⽰示⾏行列,籲台商國⼈人明⽇日切莫涉⾜足第⼀一郡的統⼀一⼯工、市政廳、中國駐越南總領市館等重點抗議區。 !

⽽而除了我駐越南代表處河內辦公室、駐胡志明市辦事處辦公室,今起24⼩小時

開設避難所,開放台商投奔提供保護外,也將在越南三個省份包括和平旅

館等地,同時開10個台商避難點,由外交官進駐,備妥疏散⼤大巴⼠士,協調越南公安保護,領務局⻑⾧長龔中誠上午也率3位曾駐胡志明市的資深官

員,清晨出發到越南,親⾃自協調台商便利領務通關事宜。 !

32

Page 33: 用 Python 打造你自己的 summly

每⼀一段只有⼀一句話,從頭逗號⽤用到尾

33

Page 34: 用 Python 打造你自己的 summly

標點符號很重要,孩⼦子的學習不能等!

34

Page 35: 用 Python 打造你自己的 summly

結論

• ⺫⽬目前暫時沒招,希望有⼈人指教

• Garbage in, garbage out

35

Page 36: 用 Python 打造你自己的 summly

⼯工商服務

36

Page 37: 用 Python 打造你自己的 summly

⼯工商服務

37

Page 38: 用 Python 打造你自己的 summly

Q&A

38