from...import與import區別在於import直接導入指定的庫,而from....import則是從指定的庫中導入指定的模塊
import...as則是將import A as B,給予A庫一個B的別稱,幫助記憶
在機器學習中,對象是指含有一組特征的行向量。這個領域最出色的技術就是使用圖形處理器的 GPU 運算,矢量化編程的一個重要特點就是可以直接將數學公式轉換為相應的程序代碼,維度是指在一定的前提下描述一個數學對象所需的參數個數,完整表述應為“對象X基於前提A是n維”。
scatter(x,y)和plot(x,y,'*')的效果一致就是根據x和y坐標繪制出所有點而已,
而plot默認是將所有點按一定的順序連接成一條多段線當plot指定了線性時,就可以繪制不同的圖像,比如plot(x,y,'*')
下面是一段測試程序:
# -*- coding: utf-8 -*- # Filename : mytest1.py import numpy as np # 導入 numpy庫 from numpy import * # 導入 numpy庫 import matplotlib.pyplot as plt # 導入 matplotlib 庫 # 測試數據集-二維 list dataSet = [[-0.017612,14.053064],[-1.395634 ,4.662541],[-0.752157 ,6.538620],[-1.322371 ,7.152853],[0.423363 ,11.054677],[0.406704 ,7.067335],[0.667394 ,12.741452], [-2.460150 ,6.866805],[0.569411 ,9.548755],[-0.026632 ,10.427743],[0.850433 ,6.920334],[1.347183 ,13.175500],[1.176813 ,3.167020],[-1.781871 ,9.097953]] dataMat = mat(dataSet).T # 將數據集轉換為 numpy矩陣,並轉置 plt.scatter(dataMat[0],dataMat[1],c='red',marker='o') # 繪制數據集散點圖 # 繪制直線圖形 X = np.linspace(-2,2,100) # 產生直線數據集 # 建立線性方程 Y = 2.8*X+9 plt.plot(X,Y) # 繪制直線圖 plt.show() # 顯示繪制后的結果
輸出結果如下:
理解數學公式與 Numpy
import numpy as np myZero = np.zeros([3,5]) print myZero print '\n' myOnes = np.ones([3,5]) print myOnes print '\n' myRand = np.random.rand(3,4) print myRand print '\n' myEye = eye(3) print myEye
輸出結果:
[[ 0. 0. 0. 0. 0.]
[ 0. 0. 0. 0. 0.]
[ 0. 0. 0. 0. 0.]]
[[ 1. 1. 1. 1. 1.]
[ 1. 1. 1. 1. 1.]
[ 1. 1. 1. 1. 1.]]
[[ 0.08391638 0.45111372 0.13425541 0.4058907 ]
[ 0.4899189 0.09429184 0.49567921 0.05946378]
[ 0.9062396 0.34326417 0.43128689 0.73593377]]
[[ 1. 0. 0.]
[ 0. 1. 0.]
[ 0. 0. 1.]]