Inneres Produkt und Vektor: Lineare Algebra in Python <2>

Lineare Algebra

Die lineare Algebra, die Sie auf jeden Fall an einer naturwissenschaftlichen Universität lernen werden, ist leicht verständlich und logisch zusammengefasst. Ich habe es übrigens in Python implementiert. Gelegentlich kann es in Julia implementiert werden. .. .. ・ Lerne mit Python! Neues Mathematiklehrbuch - Grundkenntnisse für maschinelles Lernen und tiefes Lernen erforderlich - ・ Weltstandard MIT Lehrbuch Strang lineare Algebra Einführung Verstehen Sie die lineare Algebra basierend auf und implementieren Sie sie in Python.

Umgebung

・ Jupyter-Notizbuch ・ Sprache: Python3, Julia1.4

Formelnotation

Da es in der Markdown-Notation beschrieben ist, gibt es einige Teile, die das Produkt darstellen, wie z. B. *. In Bezug auf Formeln dient der Teil "Buckford" dazu, die Lesbarkeit von Formeln hervorzuheben, und ist nicht Teil des Codes.

Länge und inneres Produkt

v = (v₁, v₂) w = (w₁, w₂) Sagen wir den Vektor.

Innenprodukt

Das innere Produkt wird ausgedrückt als *** v ・ w ***. Es wird auch als *** Punktprodukt *** bezeichnet. v ・ w = v₁w₁ + v₂ * w₂ Wird sein. Zu diesem Zeitpunkt sind sie orthogonal, wenn *** v · w = 0 ist.

Länge

Die Länge ist, wenn die Vektoren der inneren Produkte gleich sind => im Quadrat. *** (Inneres Produkt v ・ v) = (Länge im Quadrat) ***

Wenn v = (1, 2, 3) │v│² = 1² + 2² + 3² = 14 -> Dies repräsentiert *** das Quadrat der Länge *** Das heißt, wenn dieses Quadrat entfernt wird, wird es die Länge, also │v│ = √14 Wird sein. Als eine andere Art zu schreiben norm(v) = √14 Schreiben. Schreiben Sie von nun an mit norm (). In dieser Hinsicht ist es tatsächlich [Satz der drei Quadrate](https://ja.wikipedia.org/wiki/%E3%83%94%E3%82%BF%E3%82%B4%E3%83%A9 Es ist klar im Vergleich zu% E3% 82% B9% E3% 81% AE% E5% AE% 9A% E7% 90% 86).

Einheitsvektor

Es ist ein Vektor mit einer Länge von 1. Im Fall des obigen Vektors v beträgt die Länge √14. Um dies auf 1 zu setzen, dividieren Sie durch √14. Das heißt, wenn der Vektor durch die ursprüngliche Länge selbst geteilt wird, wird er ein Einheitsvektor. Wenn der Einheitsvektor u ist u = v/norm(v) Daraus ergibt u einen Vektor der Länge 1 in der gleichen Richtung wie v. Konkret ausgedrückt, wenn v = (1, 2, 3) ist, ist es "Norm (v) = √14". Wenn Sie also dadurch dividieren, u = (1/√14, 2/√14, 3/√14) Es stellt sich heraus, dass

Schreiben wir nun ein Programm zur Berechnung des inneren Produkts und ein Programm zur Berechnung der Länge.

Python

import numpy as np
import math

v = list()
w = list()
#Elementeingabe eines Vektors mit drei Elementen
for i in range(3):
    vvec = int(input())
    v.append(vvec)
for i in range(3):
    wvec = int(input())
    w.append(wvec)
#Konvertierung des Inhalts des Arrays
v = np.array(v)
w = np.array(w)
#Berechnung des inneren Produkts
print(np.dot(v, w))
#Längenberechnung
normv = math.sqrt(np.dot(v, v))
print(normv)
#Weil √ bei der tatsächlichen Berechnung verwendet wird
print("√",np.dot(v, v))

Julia ist schwieriger als Python, also machen Sie es einfach Code.

v = [1 2 3]
w = [3; 2; 1]
#Berechnung des inneren Produkts
v*w

#Länge im Quadrat
normv2 = sum(v.^ 2)
#Länge
sqrt(normv2)

In Bezug auf Julias Code bin ich gezwungen, ihn in der internen Produktberechnung mitzubringen, daher möchte ich später einen etwas effizienteren Code erstellen.

Schließlich

Die Norm sollte ursprünglich durchgeführt werden, wird jedoch weggelassen, da es sich nur um eine Gliederung handelt.

Recommended Posts

Inneres Produkt und Vektor: Lineare Algebra in Python <2>
Echte Werte und Eigenvektoren: Lineare Algebra in Python <7>
Lineare Unabhängigkeit und Basis: Lineare Algebra in Python <6>
Einheitsmatrix und inverse Matrix: Lineare Algebra in Python <4>
Matrixberechnung und lineare Gleichungen: Lineare Algebra in Python <3>
Erste Computerphysik: Quantenmechanik und lineare Algebra mit Python.
Erfassen Sie lineare Algebra-Bilder mit Python (Translokation, inverse Matrix, Produkt von Matrizen)
Einführung in Vektoren: Lineare Algebra in Python <1>
Lineare Suche in Python
Stapel und Warteschlange in Python
Unittest und CI in Python
Online lineare Regression in Python
Pakete, die MIDI mit Python Midi und Pretty_Midi verarbeiten
Unterschied zwischen list () und [] in Python
Unterschied zwischen == und ist in Python
Zeigen Sie Fotos in Python und HTML an
Sortieralgorithmus und Implementierung in Python
Bearbeiten Sie Dateien und Ordner in Python
Über Python und Cython dtype
Zuweisungen und Änderungen in Python-Objekten
Verschlüsselung mit Python: IND-CCA2 und RSA-OAEP
Hashing von Daten in R und Python
Gesamtleistung in Python (mit Funktools)
Funktionssynthese und Anwendung in Python
Exportieren und Ausgeben von Dateien in Python
Reverse Flat Pseudonym und Katakana in Python2.7
Lesen und Schreiben von Text in Python
[GUI in Python] PyQt5-Menü und Symbolleiste-
Erstellen und lesen Sie Messagepacks in Python
Liste der in Python verfügbaren Löser und Modellierer für lineares Design (LP)
Überlappende reguläre Ausdrücke in Python und Java
Unterschied in der Authentizität zwischen Python und JavaScript
Hinweise zur Verwendung von cChardet und python3-chardet in Python 3.3.1.
Lineare Regression in Python (Statmodelle, Scikit-Learn, PyMC3)
Unterschiede zwischen Ruby und Python im Umfang
AM-Modulation und Demodulation mit Python Part 2
Unterschied zwischen Anweisungen (Anweisungen) und Ausdrücken (Ausdrücken) in Python
Gefaltetes Liniendiagramm und Skalierungslinie in Python
Online lineare Regression in Python (Robuste Schätzung)
Implementieren Sie den FIR-Filter in Python und C.
Unterschiede zwischen Python- und Java-Syntax
Überprüfen und empfangen Sie die serielle Schnittstelle in Python (Portprüfung)
Suchen und spielen Sie YouTube-Videos mit Python
Unterschied zwischen @classmethod und @staticmethod in Python
Unterschied zwischen Anhängen und + = in der Python-Liste
Unterschied zwischen nicht lokal und global in Python
Schreiben Sie die O_SYNC-Datei in C und Python
Umgang mit "Jahren und Monaten" in Python
Lesen und schreiben Sie JSON-Dateien mit Python
Zeichnen Sie Daten einfach in Shell und Python
Private Methoden und Felder in Python [Verschlüsselung]
Suchen und überprüfen Sie die inverse Matrix in Python
Finden Sie die allgemeinen Begriffe der Tribonacci-Sequenz in linearer Algebra und Python
Rufen Sie sudo in Python auf und füllen Sie das Passwort automatisch aus
Modulimport und Ausnahmebehandlung in Python
Verwendung ist und == in Python
Projekt Euler # 1 "Vielfaches von 3 und 5" in Python
Pauli-Matrix und quaternäre Zwillingszahlen, die in der Clifford-Algebra berücksichtigt werden