Clustering acțiunilor folosind KMeans
În acest exercițiu, vei grupa companii pe baza variațiilor zilnice ale prețurilor acțiunilor lor (adică diferența în dolari dintre prețul de închidere și cel de deschidere pentru fiecare zi de tranzacționare). Vei lucra cu un array NumPy numit movements, care conține variațiile zilnice de preț din perioada 2010–2015 (obținute de pe Yahoo! Finance). Fiecare rând corespunde unei companii, iar fiecare coloană corespunde unei zile de tranzacționare.
Unele acțiuni sunt mai scumpe decât altele. Pentru a ține cont de acest aspect, adaugă un Normalizer la începutul pipeline-ului. Normalizatorul va transforma individual prețul fiecărei companii la o scară relativă, înainte de a începe procesul de clustering.
Reține că Normalizer() este diferit de StandardScaler(), pe care l-ai folosit în exercițiul anterior. StandardScaler() standardizează caracteristicile (precum caracteristicile din setul de date cu pești din exercițiul anterior), eliminând media și scalând la varianță unitară. În schimb, Normalizer() rescalează fiecare eșantion – în cazul de față, prețul acțiunilor fiecărei companii – independent de celelalte.
KMeans și make_pipeline au fost deja importate pentru tine.
Acest exercițiu face parte din cursul
Învățare nesupervizată în Python
Instrucțiuni pentru exercițiu
- Importă
Normalizerdinsklearn.preprocessing. - Creează o instanță a clasei
Normalizernumitănormalizer. - Creează o instanță a clasei
KMeansnumităkmeanscu10clustere. - Folosind
make_pipeline(), creează un pipeline numitpipelinecare înlănțuienormalizerșikmeans. - Antrenează pipeline-ul pe array-ul
movements.
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
# Import Normalizer
____
# Create a normalizer: normalizer
normalizer = ____
# Create a KMeans model with 10 clusters: kmeans
kmeans = ____
# Make a pipeline chaining normalizer and kmeans: pipeline
pipeline = ____
# Fit pipeline to the daily price movements
____