PyConAPAC 2014 Tutorial - PlaY Data

General Info

Be sure to check out our Tutorial Overview page for general info, such as list of all available tutorials, minimum enrollment number, and contact info.

課程簡介

不論是在學習任何的事物時,「觀察直覺」以及「實作技術」都是最重要的兩大塊。只有深刻的直覺,才可以駕馭藝術般的實作技術;同樣的,也只有在透徹了解「各種實作技術的缺點與限制」時,才能在許多的碰撞與挫折的經驗中,翠練出深刻的直覺與觀察力。

同樣的,在資料分析的各個領域中,「技術」與「直覺」也常常是相輔相成的,必須一起學習,才能夠深入而淺出!因此,講者特別設計的一套課程,可以讓大家 (甚至是沒作過任何資料分析的人),都可以運用最方便的技術與工具,在最少的操作障礙之下,體驗資料分析中最重要的「技術」與「直覺」。

教學的過程,將採取一個短演講,搭配一個長操作的交替方式進行。在每一個主題的前行短演講中,講者將會介紹該主題中,最重要的「觀察直覺」與「思考哲學」,讓大家可以預先「認識問題」、「思考問題」、「了解問題」、或甚至「換個方式看問題」﹍ (這部份的課程,主要著重於「直覺與觀念的建立」與「創意的發想與思考」。)

而其後所接的操作時段,則是讓大家可以跳脫「憑空想像」,更進一步的「動手去感覺資料」、「和資料互動」、「挖掘問題背後的解答」、並且「感覺解答背後的問題」﹍(這部份的課程,主要著重於「實際的操作並分析資料」與「感覺各種方法的侷限與障礙」。)

 

課程大綱

單元一:資料?分析?

單元一(短演講):「問」與「答」

  • 真實世界的「問題」?

  • 典型的資料分析的「問題」與「解答」

  • 真實世界的「解答」?

  • 典型的資料分析的「工作流程」

單元一(動手作):(不寫程式)體驗典型的資料分析過程

  • (補充)本操作課使用 Orange 拖拉式的操作,可以減少學員在使用時的障礙,讓大家可以跳脫寫程式與下指令的痛苦,先直接體驗「問問題」與「找解答」的過程!

orange_demo.png

(如圖所示,Orange 是一套只要點擊與拖拉,就可以輕鬆建模的 Python 套件!特別適合初學者用來學習資料操作的流程!直接體驗「問問題」與「找解答」的過程!)

 

  • 動手體驗「什麼是(用來分析的)資料?」、

  • 動手學 Supervised Learning

  • 動手學 Unsupervised Learning

  • 動手學資料分析流程

  • 動手感覺 Supervised Learning 的侷限,以及 Unsupervised Learning 的侷限

    • 比方說:當我們作一個蘋果橘子分類器時,如果,遇到香蕉或芭樂時,也會把香蕉或芭樂辨識成蘋果或橘子﹍那又開怎麼辦呢?

    • 而在怎樣的情況下,這樣的模型侷限,會對系統造成很大的影響?又在怎樣的情況下不太會造成影響?

  • 動手感覺 Semi-supervised Learning



 

stock.png

單元二:生活中的資料?分析用的資料?

單元二(短演講):資料科學簡介

  • 資料?

  • 科學?

  • To see is to believe?

  • 如何「傾聽」資料的聲音?

  • 從生活,到分析,談 Features Generation

單元二(動手作):從生活,到分析

  • (補充)本操作課使用 Pandas 套件作為主要的操作工具!

  • 在分析之前

    • 淺談 Features Generation(以文字與影像 data 為例)

    • 淺談 Cleaning Data(以 PTT data 為例)

  • 分析的起點:DataFrame

    • DataFrame 的基本操作

    • DataFrame 與簡單的統計分析

    • 像 SQL 一樣厲害的 DataFrame

Stcok20Win_5PCs.png

單元三:條件機率分析

單元三(短演講):機率、Counting Measure 與 SQL

  • 無敵的 Join Probability

  • 像微分般的 Conditional Probability

  • GroupBy 與 Join Probability

  • 兩種不同的 DataFrame:

    • States Table

    • Pivot Table

  • Pivot Table 與 Conditional Probability

單元三(動手作):動手玩機率

  • 動手玩 Join Probability

  • 動手體驗像微分般的 Conditional Probability

  • 無所不在的 Markov Chain


 

FFT_Demo.jpg

 

單元四:視覺化主題 (Topics of Visualization)

 

單元四(短演講):視覺化簡介

  • 資料 (Data) 視覺化

  • 模型 (Model) 視覺化

  • 問題 (Problem) 視覺化

  • 概念 (Concept) 視覺化

  • 如何用圖教會自己,也教會別人

 

單元四(動手作):易學易用的視覺化技術

  • 利用 DataFrame 直接作圖

  • Matplotlib 中的基礎物件與圖層結構

  • 更多 Matplotlib 小技巧

  • 利用 Matplotlib 作動畫

  • 使用 Matplotlib 玩探索式資料分析 (Exploratory Data Analysis)

sliding_window_animation.gif

單元五:文字探勘主題 (Topics of Text Mining)

單元五(短演講):文字探勘簡介

  • 生活中的文字探勘應用與問題

  • 從文字,到數字

    • Text To Vector

    • Feature Selection & Vector Quantization

  • 重要的字詞?重要的文章?(什麼是重要?)

  • 相似的詞?相似的文章?(什麼是相似?)

  • 語言模型(Language Model)與新詞探勘

單元五(動手作):易學易用的文字探勘技術

  • (補充)本操作課將使用 PTT 的文章與推文資料,作為操作與示範時所使用的資料!

  • 動手玩 Text To Vector

    • jieba

    • unigram-bigram

  • 動手玩文章分類器

  • 動手玩文章相似度分析

  • 文章分類器的侷限與問題

  • 動手玩「大量」文本資料


Web_ppt.png

 

ptt_text_classification.png

 

(基本上,單元六要是現場進度而定,時間夠的話就會講,但也可能不會講﹍)

單元六:Python 的資料分析軍火庫

單元六(短演講):Python 的資料分析軍火庫

  • scikit-learn

  • shogun

  • cvxopt

  • OpenCV

  • NLTK

單元六(動手作):易學易用的 scikit-learn

  • 資料前處理

  • scikit-learn 所提供的工具

更多課程細節:https://docs.google.com/document/d/1yLlTGMdUkMnQEyhw4j5oaxZCNcEf81hn0EBaHSq8t98/edit?usp=sharing

Environment Settings

Required Python Packages:

  • PyMongo
  • Orange
  • pandas
  • matplotlib
  • scikit-learn
  • numpy & scipy
  • jieba
  • nltk
  • gensim
  • cv2 (OpenCV)
  • Other Requirements:
  • mongodb
  • OpenCV

Target Audience

The trainee is expected to have the following required skills:

  • Linear Algebra
  • Multivariate Calculus
  • Basic Probability
  • Basic Python Manipulation
  • (optional) some basic concept in Convex optimization & Discrete Optimization
  • (optional) some basic concept in Machine Learning or Data Mining
  • (optional) some basic concept in Image Processing & Digital Signal Processing
  • (optional) some basic concept in Natural Language Processing

Trainer

張家齊 (c3h3)

講者是一位熱愛分析資料的工程師,熱愛分析資料,建立模型,討論數學。

常出沒各種類似的場子,也常常舉辦類似的活動,像 Taiwan R User Group 社群和 MLDM Monday 聚會等等。同時,喜歡於各大會議分享相關的使用心得與經驗。

以往演講:

恆逸資訊教育訓練中心 (每個座位備有桌上型電腦) / 台北市復興北路99號14樓

Event Tickets

Ticket Type Sale Period Price
Regular / 一般票

2014/04/07 09:00(+0800) ~ 2014/05/09 17:30(+0800) End of Sale
  • TWD$5,000
Student / 學生票

2014/04/21 09:00(+0800) ~ 2014/05/09 17:30(+0800) End of Sale
  • TWD$3,500
Next Step