PyCon APAC 2014 Day 1 in Taipei

當個小粉絲跟 Mezzanine 的作者 Stephen McDonald 合照, 先跟他小小抱怨了沒有 i18n 的痛苦, 他說那是現在排名第一名的 Missing Feature, 他回去就會把 pull requests 好好的 merge 回去了
五月似乎是所有的事情都擠在一起發生, 由於去年 PyCon 舉辦的時間剛好跑去澎湖花火節而錯過了, 所以儘管被一堆事卡著, 還是決定參加湊熱鬧。

今天(5/17)有些蠻有趣的心得, 希望對資訊或數學有興趣的人可以花點時間看一下, 沒有太高深的東西(太高深的我也不會), 僅僅是點到為止的介紹。

Keynote


首先從今天的 Keynote 開始, 主講者是來自 DataPad 的 Wes McKinney, 他同時是 Pandas 和 Python for Data Analysis 的作者。他的講題主要的方向可能是從他自身經驗(BI, 商業邏輯) 來導出 Python 在資料科學的趨勢、重要性及實用性。

接著提到在資料科學中的 ETL (Extract, Transform, Load) 不是件容易的事, 很多人認為, 在資料科學中往往最困難的不是在資料分析, 而是在資料的導入與取得上面。對此, 他也引用了 Big Data Borat 在 Twitter 上說的話來提供這觀點的共鳴(註:真的!):

In Data Science, 80% of time spent prepare data, 20% of time spent complain about need for prepare data.
在資料科學中, 大概花百分之八十的時間在準備資料, 另外百分之二十在抱怨準備那些必要的資料
-- Big Data Borat

最後他則提出一句他自己也不知道是誰說的話來作結尾:
Python is the second best language for Data Science
這句話在 PyCon 講可能會引起公憤, 不過講者立刻解釋說因為很多人都會擁護自己愛戴的語言, 像是有些人會覺得 Scala 比較好, 有些人則是認為 Java 比較好之類的, 但是這種情況底下, 通常大家都會願意折衷取一個效率雖然不是最好, 但卻大家都能夠接受的 Python 來實作, 對 Python 實際上是個幽默的讚美。

PySpark: next generation cluster computing engine


第二個聽的是來自 Yahoo! 奇摩 Wisely Chen 給的 talk, PySpark 其實在我去年寫這篇參加 Yahoo! 技術分享活動的文章中多少可以得到這個 talk 的重點, 由於上次 Spark 的作者講的蠻仔細的, 這次有多的部分可能就是在展示利用 PySpark + scikit-learn 簡單實作推薦系統的部分。從這個講題我們可以確認, 在經過了快一年後, Spark / Shark 真的是現在想要研究 Big Data 的朋友需要了解的趨勢之一, 想走 Big Data 路線的朋友, 千萬千萬不要遺漏了。

Time for Education: Data Mining in High School


接下來我去聽的是一位來自新加坡的高中生, Yuli Zhan, 分享他做的一些關於中學教育的專題, 新加坡的英文真的好, 教育感覺也很活, 從國高中就有 study group, 真是讓人羨慕啊。講者提到一些資料科學在教育上可能的應用, 像是如果一個學生在學習過程中分別陸續得到 EEEAA 或 AAEEE 這兩種分數的排列, 在這種情況底下, 最後學期末可能都是得到 C 左右的平均分數, 但是如果善用資料分析, 可以看出學生是在成長還是退步, 進而事先預防找出盲點與困境, 這樣的觀點在申請國外的學校也可以發現異曲同工之妙, 國外的學校會在乎你成績是否是逐漸上昇的(好證明你是有潛力及企圖心的), 所以有些會看最後幾學期的分數, 而不是單單僅是看最後的平均, 不過名校可能就是大家都 GPA 4.0 滿分, 不過我自始至終沒申請過, 單純打打嘴炮一下。

Graph-Tool: The Efficient Network Analyzing Tool for Python


上午的最後一場是 PinkoiMosky Liu 講的主題, 主題臨時改成 Graph-Tool in Practice, 是一場蠻實用的 talk。其中提到在開始前需要進行一些步驟, 像是,
  1. 定義問題
  2. 轉換成圖
  3. 處理原始資料
第一點中她所舉的例子是她們想要提高顧客的停留時間, 以及知道顧客偏好的瀏覽流程之類的, 在確認了問題之後, 接著需要的是進行第二點的步驟, 將問題轉換成圖, 簡報的第 11 頁有提到, 將圖論中的點和邊, 根據權重或自定義的條件畫出圖來, 從圖中或許可以很容易找出 closeness 的點, 在資料分析中, 圖可以讓我們更清楚知道彼此的關係, 這也是為什麼資料視覺化也越來越重要的緣故。第三點關於處理原始資料的部分, 她則提到一些像是 regular expression 撰寫可以事先濾掉 (filtering) 不需要的資料, 以及可以考慮先對資料進行排序來增加效率。還有提到 Pickle 這個可以將 object 進行 serializing 和 de-serializing 的 package, 她有提到要對它進行一些設定, 這部分就請自己參照自己的需求設定,
  • 設定 HIGHEST_PROTOCOL
  • 採用 tuple 以節省空間與時間
  • 將檔案序列化存檔
或許如果可以多利用這些在現實生活中的例子, 可以讓喜歡資訊的人, 在學組合(離散)的時候, 感到更有興趣和親切(雖然我本來就蠻喜歡組合的)。

IPython in PNaCl


下午第一場由 UC Berkeley, 同時也是 IPython 作者 Fernando Perez 所演講, 雖然剛吃飽飯想睡覺, 我還是很認真的把英聽給上完了。:D

這個 talk 提到了 Python 和 Science 的關係, 也提到了資料科學的重要性, 對我來說最有趣的是 IPython。我一開始在想 IPython 不就只是個 interactive (互動式) 的 Python shell 嗎? 這樣原生 Python 不是也有提供嗎?

但是如果加上 Google Drive 之後呢?



竟然變成了協作的 IPython... 真的還蠻有趣的就是了, 但是目前我似乎沒有這樣需求的情境可以套用, 可能還需要再想一下, 先放進腦袋裡備用。

graph database for python


由 tagtoo 李宗哲所提供的 talk, 好像是提到 neo4j, 因為之前已經聽過比較深的講題, 我就不自覺的晃神了......

Yielding a Tulip


Yielding a Tulip 這個由 Tzu-ping Chung 所分享的主題其實很有趣, 因為 Tornado 就是用類似概念這樣搞的(誰致敬誰的我還沒查), 不過這個原理在去年, 有一個我超閒(三星鄉與員山鄉誰的面積大?)又亦師亦友的強者喇賽夥伴 Achi Chen, 曾經用 PyDev 去 trace Tornado 的 event loop 然後分享給我知道, 如果真的有人想知道, 我會請他出山來寫一篇文章滿足大家的求知慾。

Data Analysis in Python


這個由 Wei-Ting Kuo 所分享的主題偏向資料分析所需要使用到的 Python 基礎, 我沒有聽完全程跑去聽上面的那場 talk 了, 歡迎有聽完的朋友可以分享一下。

Lightening talk


Lightening talk 真的是現在這些研討會後我最喜歡的一個部分, 參加的人都很有創意, 有些無俚頭搞笑的、有些認真做小玩具的、有些假心得抱怨文的, 總之, Lightening talk 真的不能錯過。(僅先用我筆記的重點先擺著, 晚點補回細節)
  • mooc.org, edX.org
  • PyClab
  • show code 
  • TDD BoF is dead
  • programming and music
  • 窮人的 BigQuery, QSearch -> google analytics
  • Taiwan R user group
  • ZipCodeTW
  • pelican
  • one line code, checkio
  • NetworkX, closeness, centrality
  • ciphers using python
  • Hue
  • Capy, 日籍 CTO 上台介紹 Capy 
中間我最喜歡的是由同時也從趨勢出來的 Tom Chen 所展示, 有關程式與音樂結合的小專案, 利用簡單音源辨識, 流暢的簡報過程, 是一個非常不錯的短講。至於其他的 talk, 蠻多東西之前或多或少有摸過,  不過應該會將窮人版的 BigQuery、Cloudera 的 Hue 、NetworkX 列為有空可以摸摸看的小東西, 似乎蠻值得玩一下的。不過, 前提還是要有空看啊, 雖然乳溝變大了, 但是還是挺難擠的......

BoF, Birds of a Feather


在 BoF 時間, 我把披薩盒給撕開, 幫忙寫了個海報進行招募, 效果感覺還不錯, 蠻多人來詢問的。
sushi 就是模特兒身材啊
有了海報立馬很多人來詢問, 看來日本的吸引力很大啊 XD
後註:Capy 是一間跟我們之前在 Startup Weekend 得獎作品類似的新創公司(已經獲得日本知名創投融資), 我們當初成員之一目前在裡面奮戰中, 對 Python、Django 有興趣, 也想前往日本工作的朋友, 歡迎談談。

後後註:其實從11點寫到了星期天的凌晨1:40, 但是因為懶得改上面原本使用今天的詞, 決定偷改文章日期時間......

後後後註:免責聲明, 因為本人可能在做筆記的時候遭遇晃神、聊天等不可抗拒之外力影響, 筆記內容難免有落差, 如有正確資訊, 煩請指正。

留言