Dieser Artikel ist der 9. Tagesartikel von Furukawa Lab Advent_calendar. Dieser Artikel wurde von einem Studenten des Furukawa Lab als Teil seines Lernens geschrieben. Der Inhalt kann mehrdeutig sein oder der Ausdruck kann leicht abweichen.
Ich wollte einen Artikel zeichnen, um Beverage Preference Data Set vorzustellen, aber das Programm läuft noch nicht. Ich werde es von Zeit zu Zeit bearbeiten.
Beverage Preference Data Set
Der Getränkepräferenzdatensatz enthält die tatsächlichen Daten der zugehörigen Daten, die vom Furukawa Laboratory veröffentlicht wurden. Detaillierte Regeln finden Sie unter dem Link.
Daten aus einer Umfrage unter 604 Benutzern zur Bewertung von 14 Trinkwassertypen in jeder von 11 Situationen.
Mit anderen Worten, es sind die relationalen Daten, die durch die Kombination der Elemente der drei Populationen (Person) x (Trinkwasser) x (Situation) beobachtet werden.
import Das Verfahren zum Importieren des Getränkepräferenzdatensatzes ist wie folgt. Die Methoden download_file und zip_extract Python-Tipps: Ich möchte eine Zip-Datei aus dem Internet herunterladen und verwenden Ich habe mir geliehen.
import pandas as pd
import numpy as np
filename = download_file('http://www.brain.kyutech.ac.jp/~furukawa/beverage-e/BeveragePreferenceDataset.zip')
zip_extract(filename)
df = pd.read_table('./BeveragePreferenceDataset/Beverage604.txt', header=None, delim_whitespace=True)
df.shape
# (8456, 11)
Konvertieren Sie diesen Datenrahmen in kubische Tensordaten.
X = np.zeros((604, 14, 11))
for i in range(X.shape[0]):
Before = i * 14
X[i] = df.iloc[Before:(14*(i+1))].values
X.shape
# (604, 14, 11)
Über CP-Zerlegung Pioneer (Tensor-Zersetzung mit Pytorch (CP-Zersetzung)) ist hier, daher werde ich es leicht erklären.
Die CP-Zerlegung ist eine einfache Verallgemeinerung der Matrixzerlegung, bei der der kubische Tensor $ X $ unter Verwendung von drei Vektoren wie folgt zerlegt wird:
U (Benutzer) wird in einer ovalen Form gesprüht, und V (Trinkwasser) unterscheidet sich wahrscheinlich nur durch zwei Arten von den anderen.
Ich würde gerne HOSVD und Tucker ausprobieren. Ich werde es erneut versuchen, wenn ich Zeit habe. Diesmal habe ich eine lineare Tensorzerlegungsmethode ausprobiert, aber es gibt auch einen * Tensor SOM *, der einer nichtlinearen Tensorzerlegung entspricht. Wenn Sie interessiert sind, versuchen Sie bitte, mit dem unten stehenden Link zu spielen.