Làm quen với vector
Giới thiệu một số thao tác cơ bản với vector.
Import thư viện trước khi thực hiện code
Khởi tạo vector
1
| x = np.array([1, 2, 3])
|
1
2
3
4
| ''' ep kieu float'''
x = np.array([1, 2, 3, 4,], dtype=np.float64)
print(type(x))
print(type(x[0]))
|
Vector giá trị 0 hoặc 1
1
2
3
4
5
| '''vector toan gia tri 0 hoac 1 (dtype = np.float64)'''
x = np.zeros(3)
y = np.ones(6)
print(x)
print(y)
|
Vector theo cấp số cộng
1
2
3
4
5
| ''' tao vector theo cap so cong np.arange(a, b, d) a <= x < b'''
x = np.arange(0, 1, 0.1)
print(x)
x = np.arange(10)
print(x)
|
Kích thước vector
1
2
3
4
5
6
| ''' lay kich thuoc cua vector '''
x = np.array([4, 5, 6, 7])
print(x.shape) # tuple
d = x.shape[0]
print(d)
print(x[d-1] - x[-1]) # giong nhau
|
Phép toán của 2 vector
1
2
3
4
5
6
| ''' phep toan 2 vector (+, -, * , /) thuong theo kieu element-wise'''
''' --> cap phan tu tuong ung de tinh toan'''
x = np.array([3, 2, 1])
y = np.array([4, 3, 1])
print(x * y)
print(x ** y)
|
1
2
3
4
5
6
| ''' np.sin, np.cos, np.exp (e^x), np.log, np.sum()'''
x = np.array([1, 10, 4])
print(np.exp(x)) #e^x
print(np.log(x)) #ln(x)
print(np.sum(x))
|
Norm1 vector (sum abs)
1
2
3
4
5
| #norm1 vector --> sum abs cua vector
x = np.array([1, -3, 5])
n1 = np.sum(np.abs(x))
print(n1)
print(np.sum(x))
|
Softmax regression (v1)
1
2
3
4
5
6
| #softmax regression: --> classification
z = np.array([3, 1, 5, 9])
a = np.exp(z) / (np.sum(np.exp(z)))
print(a)
print(np.sum(a)) #sum = 1 (phan bo xac suat cua a_i)
#e^x se rat lon ?
|
Tích vô hướng 2 vector
1
2
3
4
5
6
7
8
| # tinh vo huong 2 vector - tinh tich tung phan tu roi cong lai
x = np.arange(3)
y = np.ones(3)
print(x)
print(y)
print(np.sum(x * y)) # tinh vo huong (c1)
print(np.dot(x, y)) # tich vo huong (c2)
|
Norm2 (Euclid)
1
2
3
4
| # norm2 (euclid)
x = np.array([1, 3, 5, 2])
n2 = np.sqrt(np.sum(x ** 2))
print(n2)
|
Min, max, chỉ số min, max
1
2
3
4
| # min, max, chi so min, chi so max
x = np.array([2, 3, 1, 4])
print(f'max = {np.max(x)} va min = {np.min(x)}')
print(f'id max = {np.argmax(x)} va id min = {np.argmin(x)}')
|
Cải tiến softmax regression
1
2
3
4
5
6
| #cai tien ham softmax regression
z = np.array([3, 1, 5, 9])
b = np.max(z)
a = np.exp(z - b) / np.sum(np.exp(z - b))
print(a)
print(np.sum(a))
|
Link tham khảo
Full ipynb
Tài liệu tham khảo
Machine learning cơ bản
Hết.