V tomto návode sa naučíme, ako môžeme vytvoriť vektor pomocou knižnice Numpy. Tiež preskúmame základné operácie vektora, ako je sčítanie dvoch vektorov, odčítanie dvoch vektorov, delenie dvoch vektorov, násobenie dvoch vektorov, vektorový bodový súčin a vektorový skalárny súčin.
java escape znaky
Čo je Vector?
Vektor je známy ako jednorozmerné pole. In Python , vektor je a jediný jednorozmerný pole zoznamov a správa sa rovnako ako zoznam Python. Podľa Google vektor predstavuje smer aj veľkosť; najmä určuje polohu jedného bodu v priestore voči druhému.
Vektory sú v strojovom učení veľmi dôležité, pretože majú veľkosť a tiež smerové vlastnosti. Poďme pochopiť, ako môžeme vytvoriť vektor v Pythone.
Vytváranie vektorov v Pythone
Modul Python Numpy poskytuje numpy.array() metóda ktorý vytvára jednorozmerné pole, teda vektor. Vektor môže byť horizontálny alebo vertikálny.
Syntax:
np.array(list)
Vyššie uvedená metóda akceptuje zoznam ako argument a vráti numpy.ndarray.
Poďme pochopiť nasledujúci príklad -
Príklad - 1: Horizontálny 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ýkon:
We create a vector from a list: [10 20 30 40 50]
Príklad - 2: Vertikálny 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ýkon:
We create a vector from a list: [[12] [40] [ 6] [10]]
Základné operácie vektora Pythonu
Po vytvorení vektora teraz vykonáme aritmetické operácie s vektormi.
Nižšie je uvedený zoznam základných operácií, ktoré môžeme vykonávať vo vektore.
- Aritmetika
- Odčítanie
- Násobenie
- divízie
- Skalárny súčin
- Skalárne násobenia
Pridanie dvoch vektorov
Pri pridávaní vektorov prebieha elementárnym spôsobom, čo znamená, že sčítanie bude prebiehať element po elemente a dĺžka by bola rovnaká ako dĺžka dvoch aditívnych vektorov.
Syntax:
vector + vector
Poďme pochopiť nasledujúci príklad.
Prí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ýkon:
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]
Odčítanie dvoch vektorov
Odčítanie sa vykonáva rovnako ako sčítanie, postupuje podľa prvkového prístupu a prvky vektora 2 sa odčítajú od vektora 1. Poďme pochopiť nasledujúci príklad.
java bajtové pole na reťazec
Prí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ýkon:
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ásobenie dvoch vektorov
Prvky vektora 1 sa vynásobia vektorom 2 a vrátia vektory rovnakej dĺžky ako násobiace vektory. Poďme pochopiť nasledujúci príklad.
Prí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ýkon:
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ásobenie sa vykonáva nasledovne.
vct[0] = x[0] * y[0] vct[1] = x[1] * y[1]
Prvý prvok vektora 1 sa vynásobí prvým prvkom zodpovedajúceho vektora 2 atď.
Operácia delenia dvoch vektorov
V operácii delenia výsledný vektor obsahuje hodnotu kvocientu, ktorá sa získa delením dvoch prvkov vektora.
Poďme pochopiť nasledujúci príklad.
Prí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ýkon:
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. ]
Ako môžeme vidieť vo vyššie uvedenom výstupe, operácia delenia vrátila hodnotu podielu prvkov.
Vektorový bodkový produkt
Vektorový bodový súčin funguje medzi dvoma sekvenčnými vektormi rovnakej dĺžky a vracia súčin jednej bodky. Budeme používať .dot() spôsob vykonania bodového súčinu. Stane sa tak, ako je uvedené nižšie.
vector c = x . y = (x1 * y1 + x2 * y2)
Poďme pochopiť nasledujúci príklad.
Prí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ýkon:
string.replaceall v jazyku 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
Vektorovo-skalárne násobenie
V operácii skalárneho násobenia; skalár vynásobíme každou zložkou vektora. Poďme pochopiť nasledujúci príklad.
Prí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ýkon:
We create vector from a list 1: [10 20 30 40 50] Scalar Value : 5 Multiplication of two vectors: [ 50 100 150 200 250]
Vo vyššie uvedenom kóde je skalárna hodnota vynásobená každým prvkom vektora spôsobom s * v = (s * v1, s * v2, s * v3).