Python

學習自《深度學習入門》
Python是一個簡單、易讀、易記的編程語言,而且是開源的,可以免費地自由使用

  • 憑藉着 NumPy(Numerical Python)、SciPy等優秀的數值計算、統計分析庫,在數據科學領域佔有不可動搖的地位
  • 深度學習的框架中也有很多使用Python的場景,比如Caffe、TensorFlow、Chainer、Theano等著名的深度學習框架都提供了Python接口

綜上,Python是最適合數據科學領域的編程語言

一丶NumPy 的算術運算:加減乘除

NumPy是用於數值計算的庫,提供了很多高級的數學算法和便利的數組(矩陣)操作方法

x = np.array([1.0, 2.0, 3.0])
y = np.array([2.0, 4.0, 6.0])
x + y  # 對應元素的加法
# >>>array([ 3., 6., 9.])
x - y
# >>>array([ -1., -2., -3.])
x * y # element-wise product
# >>>array([ 2., 8., 18.])
x / y
# >>>array([ 0.5, 0.5, 0.5])
  • 當x和y的元素個數相同時,可以對各個元素進行算術運算。如果元素個數不同,程序就會報錯,所以元素個數保持一致非常重要。
x - 1
# >>>array([0., 1., 2.])
x + 1
# >>>array([2., 3., 4.])
x / 2
# >>>array([0.5, 1. , 1.5])
x * 2
# >>>array([2., 4., 6.])
  • 也可以和單一的數值(標量)組合起來進行運算,需要在NumPy數組的各個元素和標量之間進行運算,這個功能也被稱爲廣播

附:廣播

NumPy中,形狀不同的數組之間也可以進行運算
在這裏插入圖片描述
標量10被擴展成了2 × 2的形狀,然後再與矩陣A進行乘法運算
在這裏插入圖片描述

Python等動態類型語言一般比C和C++等靜態類型語言(編譯型語言)運算速度慢。實際上,如果是運算量大的處理對象,用 C/C++寫程序更好。爲此,當 Python中追求性能時,人們會用 C/C++來實現處理的內容。Python則承擔“中間人”的角色,負責調用那些用 C/C++寫的程序NumPy中,主要的處理也都是通過C或C++實現的。因此,我們可以在不損失性能的情況下,使用 Python便利的語法。

二丶Matplotlib
Matplotlib是用來畫圖的庫。使用Matplotlib能將實驗結果視化,並在視覺上確認深度學習運行期間的數據。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章