Course Information
Course Overview
Apache Spark 是高速叢集運算框架 (Lightning-fast cluster computing framework)。 它擴充及優化了傳統的 MapReduce 模型令 Apache Spark 變得更易擴展 (scalable)、更具彈性 (flexible) 及具備容錯功能 (fault-tolerant)。能夠操作 Apache Spark 的程式語言亦有不少的選擇,例如 Scala、Java 等。而 Scala 是被視為最能夠發揮 Apache Spark 功能的程式語言。
Apache Spark 提供了一個全面而統一的框架以進行大數據分析 (Big Data Analysis),當中包括 RDD (Resilient Distributed Datasets)、Map Reduce、Spark SQL、GraphX 等,有了上述的元素,就能更簡便地進行不同形式的大數據分析 (Big Data Analysis)。
除大數據分析 (Big Data Analysis) 外,Apache Spark 亦提供了一系列用作機器學習 (Machine Learning) 的函式庫 (libraries),這強大的函式庫能夠:
- 向用戶推薦用戶可能有興趣的產品
- 從文章有效地選出關鍵字 (例如能夠理解 I, is 等不是關鍵字)
- 理解消費者會同時購買甚麼產品
- 製作決策樹
- 將數據分類
- 線性回歸 (Linear Regression) 分析
- 更多
由於大數據分析 (Big Data Analysis) 及機器學習 (Machine Learning) 的技術相當獨特,所謂萬事起頭難,在初次學習 Apache Spark 難免遇到不同程度的障礙。本基礎課程旨在有系統地,透過具針對性的實戰例子教授學員 Apache Spark 的大數據分析 (Big Data Analysis) 及機器學習 (Machine Learning) 的技術。請 按此 了解詳細的課程內容。
What You’ll Learn
第一部份:Scala 語言
Scala 語言是被視為最能夠發揮 Apache Spark 功能的程式語言。這部份會教授 Scala 語言。
第二部份:Apache Spark 的大數據分析 (Big Data Analysis)
在第二部份會開始安裝 Apache Spark (Single-node 及 Multi-node Cluster),並開始教授 RDD (Resilient Distributed Dataset) 內的各種 transformations、actions 及 persistence。然後使用上述技術實踐經典的 Word Count。這部份最後會教授 Spark SQL,令大家可以透過大家已經熟悉的 SQL 進行各項有趣的操作,例如使用 SQL 操作 JSON 數據。
第三部份:Apache Spark 的機器學習 (Machine Learning)
在第三部份會集中教授 Apache Spark 的機器學習 (Machine Learning) 函式庫 (libraries) 進行以下的機器學習活動。
-
背景知識
- Vectors [org.apache.spark.mllib.linalg.Vector]
- LabeledPoint [org.apache.spark.mllib.regression.LabeledPoint]
- Statistics [org.apache.spark.mllib.stat.Statistics]
- count, max, min, mean, variance, etc.
- 向用戶推薦用戶可能有興趣的產品 [org.apache.spark.mllib.recommendation.ALS]
- 從文章有效地選出關鍵字 (例如能夠理解 I, is 等不是關鍵字) [org.apache.spark.mllib.feature.{HashingTF, IDF}]
- 理解消費者會同時購買甚麼產品 [FP-Growth algorithm 及 org.apache.spark.mllib.fpm.FPGrowth]
- 製作決策樹 [org.apache.spark.mllib.tree.DecisionTree]
- 將數據分類 [org.apache.spark.mllib.clustering.KMeans]
- 線性回歸 (Linear Regression) 分析 [org.apache.spark.mllib.regression.LinearRegressionWithSGD]
詳細課程內容請參考桌面版網頁 http://www.systematic.com.hk/apache-spark-scala-big-data-analysis-machine-learning.htm?panel=3">http://www.systematic.com.hk/apache-spark-scala-big-data-analysis-machine-learning.htm?panel=3