V tomto tutoriálu se naučíme, jak můžeme vytvořit vektor pomocí knihovny Numpy. Prozkoumáme také základní operace vektoru, jako je sčítání dvou vektorů, odečítání dvou vektorů, dělení dvou vektorů, násobení dvou vektorů, vektorový bodový součin a vektorový skalární součin.
poznámky pod čarou
Co je Vector?
Vektor je známý jako jednorozměrné pole. v Krajta , vektor je a jediný jednorozměrný pole seznamů a chová se stejně jako seznam v Pythonu. Podle Google vektor představuje směr i velikost; zejména určuje polohu jednoho bodu v prostoru vzhledem k druhému.
Vektory jsou ve strojovém učení velmi důležité, protože mají velikost a také směrové vlastnosti. Pojďme pochopit, jak můžeme vytvořit vektor v Pythonu.
Vytváření vektoru v Pythonu
Modul Python Numpy poskytuje numpy.array() metoda který vytváří jednorozměrné pole tj. vektor. Vektor může být horizontální nebo vertikální.
Syntax:
np.array(list)
Výše uvedená metoda přijímá seznam jako argument a vrací numpy.ndarray.
Pojďme pochopit následující příklad -
Příklad - 1: Horizontální vektor
# 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)
Výstup:
We create a vector from a list: [10 20 30 40 50]
Příklad - 2: Vertikální vektor
# 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)
Výstup:
We create a vector from a list: [[12] [40] [ 6] [10]]
Základní operace vektoru Pythonu
Po vytvoření vektoru nyní provedeme aritmetické operace s vektory.
Níže je uveden seznam základních operací, které můžeme provádět ve vektoru.
- Aritmetický
- Odčítání
- Násobení
- Divize
- Tečkovaný produkt
- Skalární násobení
Přidání dvou vektorů
Ve vektorovém sčítání probíhá elementově, což znamená, že sčítání bude probíhat element po elementu a délka by byla stejná jako u dvou aditivních vektorů.
Syntax:
vector + vector
Pojďme pochopit následující příklad.
Příklad -
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)
Výstup:
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]
Odečítání dvou vektorů
Odečítání se provádí stejně jako sčítání, postupuje po prvcích a prvky vektoru 2 se odečítají od vektoru 1. Pojďme pochopit následující příklad.
návrhový vzor tovární metody
Příklad -
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)
Výstup:
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]
Násobení dvou vektorů
Prvky vektoru 1 se vynásobí vektorem 2 a vrátí vektory stejné délky jako násobící vektory. Pojďme pochopit následující příklad.
Příklad -
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)
Výstup:
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]
Násobení se provádí následovně.
vct[0] = x[0] * y[0] vct[1] = x[1] * y[1]
První prvek vektoru 1 je vynásoben prvním prvkem odpovídajícího vektoru 2 a tak dále.
Dělení operace dvou vektorů
Při operaci dělení obsahuje výsledný vektor hodnotu podílu, která je získána dělením dvou prvků vektoru.
Pojďme pochopit následující příklad.
Příklad -
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)
Výstup:
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. ]
Jak můžeme vidět na výše uvedeném výstupu, operace dělení vrátila hodnotu podílu prvků.
Vektorový bodový produkt
Vektorový bodový součin funguje mezi dvěma sekvenčními vektory stejné délky a vrací jediný bodový součin. Budeme používat .tečka() způsob provedení bodového součinu. Stane se tak, jak je uvedeno níže.
vector c = x . y = (x1 * y1 + x2 * y2)
Pojďme pochopit následující příklad.
Příklad -
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)
Výstup:
dhl znamená co
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
Vektor-skalární násobení
V operaci skalárního násobení; vynásobíme skalár každou složkou vektoru. Pojďme pochopit následující příklad.
Příklad -
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)
Výstup:
We create vector from a list 1: [10 20 30 40 50] Scalar Value : 5 Multiplication of two vectors: [ 50 100 150 200 250]
Ve výše uvedeném kódu je skalární hodnota vynásobená každým prvkem vektoru způsobem s * v = (s * v1, s * v2, s * v3).