В този урок ще научим как можем да създадем вектор с помощта на библиотека Numpy. Ние също така ще изследваме основните операции на вектора, като например събиране на два вектора, изваждане на два вектора, деление на два вектора, умножение на два вектора, векторно точково произведение и векторно скаларно произведение.
знаци за избягване на java
Какво е вектор?
Векторът е известен като единичен размерен масив. в Python , векторът е a единично едноизмерно масив от списъци и се държи по същия начин като списък на Python. Според Google векторът представлява посока, както и величина; особено той определя позицията на една точка в пространството спрямо друга.
Векторите са много важни в машинното обучение, защото имат величина, а също и посока. Нека разберем как можем да създадем вектора в Python.
Създаване на вектор в Python
Модулът Python Numpy предоставя numpy.array() метод което създава едномерен масив, т.е. вектор. Векторът може да бъде хоризонтален или вертикален.
Синтаксис:
np.array(list)
Горният метод приема списък като аргумент и връща numpy.ndarray.
Нека разберем следния пример -
Пример - 1: Хоризонтален вектор
# Importing numpy import numpy as np # creating list list1 = [10, 20, 30, 40, 50] # Creating 1-D Horizontal Array vtr = np.array(list1) vtr = np.array(list1) print('We create a vector from a list:') print(vtr)
Изход:
We create a vector from a list: [10 20 30 40 50]
Пример - 2: Вертикален вектор
# Importing numpy import numpy as np # defining list list1 = [[12], [40], [6], [10]] # Creating 1-D Vertical Array vtr = np.array(list1) vtr = np.array(list1) print('We create a vector from a list:') print(vtr)
Изход:
We create a vector from a list: [[12] [40] [ 6] [10]]
Основни операции на Python вектор
След като създадем вектор, сега ще извършим аритметичните операции върху вектори.
По-долу е списъкът с основните операции, които можем да изпълняваме във вектор.
- Аритметика
- Изваждане
- Умножение
- дивизия
- Точков продукт
- Скаларни умножения
Добавяне на два вектора
При векторното добавяне това се извършва поелементно, което означава, че добавянето ще се извършва елемент по елемент и дължината ще бъде същата като на двата адитивни вектора.
Синтаксис:
vector + vector
Нека разберем следния пример.
пример -
import numpy as np list1 = [10,20,30,40,50] list2 = [11,12,13,14,15] vtr1 = np.array(list1) vtr2= np.array(list2) print('We create vector from a list 1:') print(vtr1) print('We create vector from a list 2:') print(vtr2) vctr_add = vctr1+vctr2 print('Addition of two vectors: ',vtr_add)
Изход:
We create vector from a list 1: [10 20 30 40 50] We create vector from a list 2: [11 12 13 14 15] Addition of two vectors: [21 32 43 54 65]
Изваждане на два вектора
Изваждането се извършва по същия начин като събирането, то следва подхода по елементи и елементите на вектор 2 ще бъдат извадени от вектор 1. Нека разберем следния пример.
java байтов масив към низ
пример -
import numpy as np list1 = [10,20,30,40,50] list2 = [5,2,4,3,1] vtr1 = np.array(list1) vtr2= np.array(list2) print('We create vector from a list 1:') print(vtr1) print('We create a vector from a list 2:') print(vtr2) vtr_sub = vtr1-vtr2 print('Subtraction of two vectors: ',vtr_sub)
Изход:
We create vector from a list 1: [10 20 30 40 50] We create vector from a list 2: [5 2 4 3 1] Subtraction of two vectors: [5 18 26 37 49]
Умножение на два вектора
Елементите на вектор 1 се умножават по вектор 2 и връщат вектори със същата дължина като умножаващите вектори. Нека разберем следния пример.
пример -
import numpy as np list1 = [10,20,30,40,50] list2 = [5,2,4,3,1] vtr1 = np.array(list1) vtr2= np.array(list2) print('We create vector from a list 1:') print(vtr1) print('We create a vector from a list 2:') print(vtr2) vtr_mul = vtr1*vtr2 print('Multiplication of two vectors: ',vtr_mul)
Изход:
We create vector from a list 1: [10 20 30 40 50] We create vector from a list 2: [5 2 4 3 1] Multiplication of two vectors: [ 50 40 120 120 50]
Умножението се извършва по следния начин.
vct[0] = x[0] * y[0] vct[1] = x[1] * y[1]
Първият елемент на вектор 1 се умножава по първия елемент на съответния вектор 2 и така нататък.
Операция деление на два вектора
При операцията за деление резултантният вектор съдържа стойността на частното, която се получава от разделянето на два елемента на вектора.
Нека разберем следния пример.
пример -
import numpy as np list1 = [10,20,30,40,50] list2 = [5,2,4,3,1] vtr1 = np.array(list1) vtr2= np.array(list2) print('We create vector from a list 1:') print(vtr1) print('We create a vector from a list 2:') print(vtr2) vtr_div = vtr1/vtr2 print('Division of two vectors: ',vtr_div)
Изход:
We create vector from a list 1: [10 20 30 40 50] We create vector from a list 2: [5 2 4 3 1] Division of two vectors: [ 2. 10. 7.5 13.33333333 50. ]
Както можем да видим в горния резултат, операцията за деление върна частната стойност на елементите.
Векторен точков продукт
Векторното точково произведение работи между двата последователни вектора с еднаква дължина и връща единичното точково произведение. Ние ще използваме .dot() метод за извършване на точковия продукт. Ще се случи както е показано по-долу.
vector c = x . y = (x1 * y1 + x2 * y2)
Нека разберем следния пример.
пример -
import numpy as np list1 = [10,20,30,40,50] list2 = [5,2,4,3,1] vtr1 = np.array(list1) vtr2= np.array(list2) print('We create vector from a list 1:') print(vtr1) print('We create a vector from a list 2:') print(vtr2) vtr_product = vtr1.dot(vtr2) print('Dot product of two vectors: ',vtr_product)
Изход:
string.replaceall в java
We create vector from a list 1: [10 20 30 40 50] We create vector from a list 2: [5 2 4 3 1] Dot product of two vectors: 380
Векторно-скаларно умножение
В операцията за скаларно умножение; ние умножаваме скалара с всеки компонент на вектора. Нека разберем следния пример.
пример -
import numpy as np list1 = [10,20,30,40,50] vtr1 = np.array(list1) scalar_value = 5 print('We create vector from a list 1:') print(vtr1) # printing scalar value print('Scalar Value : ' + str(scalar_value)) vtr_scalar = vtr1 * scalar_value print('Multiplication of two vectors: ',vtr_scalar)
Изход:
We create vector from a list 1: [10 20 30 40 50] Scalar Value : 5 Multiplication of two vectors: [ 50 100 150 200 250]
В горния код, скаларната стойност, умножена по всеки елемент на вектора по начин s * v = (s * v1, s * v2, s * v3).