{ "cells": [ { "attachments": {}, "cell_type": "markdown", "id": "99af7aa1", "metadata": {}, "source": [ "# Getting started with `musif`\n", "\n", "[Download the Getting started tutorial Jupyter notebook here](https://raw.githubusercontent.com/DIDONEproject/musif/main/docs/source/Tutorial.ipynb)\n", "\n", "\n", "`musif` is a Python library to analyze music scores. It is a tool to massively extract features from MusicXML and MuseScore files.\n", "\n", "`musif` was born in the context of the [ERC Project \"DIDONE\"](https://didone.eu/) and, consequently,\n", "it is specialized in 18th-century Italian opera arias. However, it is also prepared to work with other repertoires.\n", "\n", "This tutorial is an introduction for people who are not experts in programming. If you are already an expert, just skip to the [Data Section](#data) and then go to the [Advanced Tutorial](https://musif.didone.eu/Tutorial_20poprock.html).\n", "\n", "\n", "## Installation\n", "\n", "First, you should install [`Python`](https://www.python.org/downloads/) > 3.10. An easy way to do this is by using [`Anaconda`](https://www.anaconda.com/products/distribution), especially if you are not used to commandline interface.A\n", "Once you have installed `anaconda`:\n", "1. Launch the `anaconda-navigator`\n", "2. [Create an environment](https://docs.anaconda.com/navigator/getting-started/#managing-environments) selecting python version >= 3.10\n", "3. Switch to the newly created environment by clicking on its name\n", "\n", "\n", "To install `musif`:\n", "1. [Download this notebook](https://raw.githubusercontent.com/DIDONEproject/musif/main/docs/source/Tutorial.ipynb).\n", "2. Start `jupyter` in your Anaconda environment.\n", "3. Open this tutorial.\n", "4. Run the following cell by clicking on it and pressing Ctrl+Enter." ] }, { "attachments": {}, "cell_type": "markdown", "id": "91eac574", "metadata": {}, "source": [ "Here, the `!` is a special command that executes commands in the terminal. After having run it, you may need to restart the notebook (click the circular arrow ↻ in the top bar, near the icons ▶ and ⏹)\n", "\n", "To run this tutorial:\n", "1. In the `Home` tab of the `anaconda-navigator`, select \"All applications\" and the newly created environment in the options at the top.\n", "2. Click on `Install`, near to the `Jupyter` icon\n", "3. Once installed, click on `launch` near the `notebook` icon; a web interface will open in the browser\n", "4. [Download](https://raw.githubusercontent.com/DIDONEproject/musif/main/docs/source/Tutorial.ipynb) by clicking iwth right mouse button and selecting \"save as...\"\n", "5. Navigate to the downloaded file from the web interface and open it\n", "6. Run the following cell by clicking on it and pressing Ctrl+Enter " ] }, { "cell_type": "code", "execution_count": null, "id": "a7710973", "metadata": {}, "outputs": [], "source": [ "! pip install musif" ] }, { "cell_type": "code", "execution_count": 2, "id": "9a1257d3", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Version: 1.2.3\n" ] } ], "source": [ "import musif\n", "print('Version: ', musif.__version__)" ] }, { "attachments": {}, "cell_type": "markdown", "id": "01cd214c", "metadata": {}, "source": [ "## Introduction\n", "\n", "If you are new to Python, we suggest you to read an introductory tutorial for it, for instance, [this one](https://www.w3schools.com/python/default.asp). \n", "\n", "In the following, we will introduce some technical terminology that may be useful to you to understand technical documentation while working with `musif`:\n", "\n", "* A _function_ is a way to represent code that is convenient for humans. You can think of functions as mathematical functions, with some input and some output. However, some programming languages call them _procedures_; this is not the case with Python, but this name allows grasping what functions are, after all: successions of commands that the computer has to execute.\n", "\n", "* An _object_ is a computational way to represent information _and_ code in the memory of computers; you can think of objects as real concepts of the real world: objects have properties (in Python named _fields_) and functionalities (named _methods_). For instance, an object could be a vehicle, which has some properties (length, maximum speed, number of wheels) and some functionalities (accelerate, decelerate, stop). Objects can also have specializations (named _children_): in our example, a _child_ of vehicle could be the car and another _child_ could be the bike: they have different properties and apply the functionalities in a different way. Both the vehicle, the car, and the bike may have instances: the car that you use everyday to go to work is different from your friend's even if they have the same exact properties, because they are two different concrete objects. Technically, those two cars are two _instances_ of the same _class_. To create an instance, you have to call a function, generically named _constructor_, which takes as arguments the class and the other properties. This function will return the instance. To use `musif`, you don't need to know a lot about objects, but while you search the web it is good to have a little of knowledge.\n", "\n", "* A _DataFrame_ is another way to represent information for computers. They are designed to be extremely efficient, even if sometimes some aspects of the information can get lost. They are mainly used for data science problems. You can think of a _DataFrame_ as a table, with rows and columns. Usually, rows are _instances_ while columns are _properties_. In data science, these words often become _samples_ and _features_/_variables_. A typical operation is to select only certain columns (properties) or only certain rows (instances) to select subset of the data or to modify the data itself.\n", "\n", "* Don't be scared to use web search engines such as Google: searching the web in a proper way is one of the most important skills a programmer has!\n", "\n", "### Main objects\n", "\n", "When using `musif`, you will usually interface with two objects:\n", "1. [`FeaturesExtractor()`](API/musif.extract.html#musif.extract.extract.FeaturesExtractor), which reads music scores and computes a DataFrame containing all the extracted features. In the simplest case, each row represents a music score, while each column represents a feature.\n", "2. [`DataProcessor()`](API/musif.process.html#musif.process.processor.DataProcessor), which takes the DataFrame with all the features in it and post-processes it to clean, improve, and possibly modify some of the features.\n", "\n", "These two objects take as input two different configurations that modify their behavior. In other words, the constructors of `FeaturesExtractor` and `DataProcessor` can accept a wide range of arguments.\n", "\n", "But let's proceed step by step!" ] }, { "cell_type": "code", "execution_count": 3, "id": "b8119d50", "metadata": {}, "outputs": [], "source": [ "import urllib.request\n", "import zipfile\n", "from pathlib import Path\n", "\n", "data_dir = Path(\"data\")\n", "dataset_path = \"dataset.zip\"\n", "urllib.request.urlretrieve(\"https://zenodo.org/record/4027957/files/AnatomyComposerAttributionMIDIFilesAndFeatureData_1_0.zip?download=1\", dataset_path)\n", "with zipfile.ZipFile(dataset_path, 'r') as zip_ref:\n", " zip_ref.extractall(data_dir)\n", "data_dir = data_dir / Path('AnatomyComposerAttributionMIDIFilesAndFeatureData_1_0') / Path('MIDI/')\n" ] }, { "attachments": {}, "cell_type": "markdown", "id": "cab6f329", "metadata": {}, "source": [ "## Configuration\n", "\n", "Let's create a configuration for our experiment. Configurations can be expressed using a `yaml` file or with key-value arguments. `yaml` files are designed for complex projects, while key-value arguments are perfect for simple situations like this.\n", "\n", "Key-value arguments are something similar to a dictionary: There is a _key_ which must be unique in the dictionary; each _key_ is associated with a _value_, which can be repeated. Python can retrieve a value using its key in a very efficient way!\n", "\n", "First, we'll need to import the class that describes how a configuration is:" ] }, { "cell_type": "code", "execution_count": 4, "id": "7fe4511f", "metadata": {}, "outputs": [], "source": [ "from musif.config import ExtractConfiguration\n", "\n", "config = ExtractConfiguration(\n", " None,\n", " data_dir = data_dir,\n", " basic_modules=[\"scoring\"],\n", " features = [\"core\", \"ambitus\", \"melody\", \"tempo\", \n", " \"density\", \"texture\", \"lyrics\", \"scale\", \n", " \"key\", \"dynamics\", \"rhythm\"],\n", " parallel = -1 #use > 1 if you wish to use parallelization (runs faster, uses more memory)\n", ")" ] }, { "attachments": {}, "cell_type": "markdown", "id": "b7c511bb", "metadata": {}, "source": [ "Now, we can call its constructor to obtain a configuration object:" ] }, { "attachments": {}, "cell_type": "markdown", "id": "64a59048", "metadata": {}, "source": [ "## Feature extraction\n", "\n", "Now that we have our configuration, we pass it to the function that creates `FeaturesExtraction` objects. This function is exactly named `FeaturesExtraction`:" ] }, { "cell_type": "code", "execution_count": 5, "id": "b900810d", "metadata": {}, "outputs": [], "source": [ "from musif.extract.extract import FeaturesExtractor\n", "extractor = FeaturesExtractor(config)" ] }, { "attachments": {}, "cell_type": "markdown", "id": "343373ac", "metadata": {}, "source": [ "Before starting the extraction, we also need to tell MuseScore the type of files it should look for. In this case, we want it to look for files with extension `'.mid'`. By default, it would look for `.mscx` files, so we need to change it:" ] }, { "attachments": {}, "cell_type": "markdown", "id": "756f12ba", "metadata": {}, "source": [ "Now, we can start the extraction using the method `extract`. It will return a `DataFrame`:" ] }, { "cell_type": "code", "execution_count": null, "id": "e286b65b", "metadata": {}, "outputs": [], "source": [ "df = extractor.extract()" ] }, { "cell_type": "code", "execution_count": 7, "id": "da54809a", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Shape df: (175, 927)\n" ] }, { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
FamilyGen_DensityFamilyGen_NotesFamilyGen_NotesMeanFamilyGen_NumberOfFilteredPartsFamilyGen_NumberOfPartsFamilyGen_SoundingDensityFamilyGen_SoundingMeasuresFamilyGen_SoundingMeasuresMeanFamilyInstrumentationFamilyScoring...SoundFl_TrimmedIntervallicMeanSoundFl_TrimmedIntervallicStdSoundScoringTempoTempoGrouped1TempoGrouped2TimeSignatureTimeSignatureGroupedVoicesWindowId
0<NA><NA><NA><NA><NA><NA><NA><NA>wwww...-0.1134021.468171fl<NA><NA>None2/1other0
1<NA><NA><NA><NA><NA><NA><NA><NA>wwww...-0.1659481.620333fl<NA><NA>None2/1other0
2<NA><NA><NA><NA><NA><NA><NA><NA>wwww...-0.1062421.634416fl<NA><NA>None2/1other0
3<NA><NA><NA><NA><NA><NA><NA><NA>wwww...-0.0957681.578589fl<NA><NA>None2/1other0
4<NA><NA><NA><NA><NA><NA><NA><NA>wwww...-0.0736041.623796fl<NA><NA>None2/1other0
\n", "

5 rows × 927 columns

\n", "
" ], "text/plain": [ " FamilyGen_Density FamilyGen_Notes FamilyGen_NotesMean \\\n", "0 \n", "1 \n", "2 \n", "3 \n", "4 \n", "\n", " FamilyGen_NumberOfFilteredParts FamilyGen_NumberOfParts \\\n", "0 \n", "1 \n", "2 \n", "3 \n", "4 \n", "\n", " FamilyGen_SoundingDensity FamilyGen_SoundingMeasures \\\n", "0 \n", "1 \n", "2 \n", "3 \n", "4 \n", "\n", " FamilyGen_SoundingMeasuresMean FamilyInstrumentation FamilyScoring ... \\\n", "0 ww ww ... \n", "1 ww ww ... \n", "2 ww ww ... \n", "3 ww ww ... \n", "4 ww ww ... \n", "\n", " SoundFl_TrimmedIntervallicMean SoundFl_TrimmedIntervallicStd \\\n", "0 -0.113402 1.468171 \n", "1 -0.165948 1.620333 \n", "2 -0.106242 1.634416 \n", "3 -0.095768 1.578589 \n", "4 -0.073604 1.623796 \n", "\n", " SoundScoring Tempo TempoGrouped1 TempoGrouped2 TimeSignature \\\n", "0 fl None 2/1 \n", "1 fl None 2/1 \n", "2 fl None 2/1 \n", "3 fl None 2/1 \n", "4 fl None 2/1 \n", "\n", " TimeSignatureGrouped Voices WindowId \n", "0 other 0 \n", "1 other 0 \n", "2 other 0 \n", "3 other 0 \n", "4 other 0 \n", "\n", "[5 rows x 927 columns]" ] }, "execution_count": 7, "metadata": {}, "output_type": "execute_result" } ], "source": [ "print('Shape df: ', df.shape)\n", "df.head()" ] }, { "cell_type": "code", "execution_count": 8, "id": "84672e45", "metadata": {}, "outputs": [], "source": [ "df.set_index('Id', inplace=True)\n", "df.drop(['level_0', 'index'], axis=1, errors = 'ignore', inplace = True)" ] }, { "cell_type": "code", "execution_count": 9, "id": "c6a2720e", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Shape df: (175, 926)\n" ] }, { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
FamilyGen_DensityFamilyGen_NotesFamilyGen_NotesMeanFamilyGen_NumberOfFilteredPartsFamilyGen_NumberOfPartsFamilyGen_SoundingDensityFamilyGen_SoundingMeasuresFamilyGen_SoundingMeasuresMeanFamilyInstrumentationFamilyScoring...SoundFl_TrimmedIntervallicMeanSoundFl_TrimmedIntervallicStdSoundScoringTempoTempoGrouped1TempoGrouped2TimeSignatureTimeSignatureGroupedVoicesWindowId
Id
0<NA><NA><NA><NA><NA><NA><NA><NA>wwww...-0.1134021.468171fl<NA><NA>None2/1other0
1<NA><NA><NA><NA><NA><NA><NA><NA>wwww...-0.1659481.620333fl<NA><NA>None2/1other0
2<NA><NA><NA><NA><NA><NA><NA><NA>wwww...-0.1062421.634416fl<NA><NA>None2/1other0
3<NA><NA><NA><NA><NA><NA><NA><NA>wwww...-0.0957681.578589fl<NA><NA>None2/1other0
4<NA><NA><NA><NA><NA><NA><NA><NA>wwww...-0.0736041.623796fl<NA><NA>None2/1other0
\n", "

5 rows × 926 columns

\n", "
" ], "text/plain": [ " FamilyGen_Density FamilyGen_Notes FamilyGen_NotesMean \\\n", "Id \n", "0 \n", "1 \n", "2 \n", "3 \n", "4 \n", "\n", " FamilyGen_NumberOfFilteredParts FamilyGen_NumberOfParts \\\n", "Id \n", "0 \n", "1 \n", "2 \n", "3 \n", "4 \n", "\n", " FamilyGen_SoundingDensity FamilyGen_SoundingMeasures \\\n", "Id \n", "0 \n", "1 \n", "2 \n", "3 \n", "4 \n", "\n", " FamilyGen_SoundingMeasuresMean FamilyInstrumentation FamilyScoring ... \\\n", "Id ... \n", "0 ww ww ... \n", "1 ww ww ... \n", "2 ww ww ... \n", "3 ww ww ... \n", "4 ww ww ... \n", "\n", " SoundFl_TrimmedIntervallicMean SoundFl_TrimmedIntervallicStd \\\n", "Id \n", "0 -0.113402 1.468171 \n", "1 -0.165948 1.620333 \n", "2 -0.106242 1.634416 \n", "3 -0.095768 1.578589 \n", "4 -0.073604 1.623796 \n", "\n", " SoundScoring Tempo TempoGrouped1 TempoGrouped2 TimeSignature \\\n", "Id \n", "0 fl None 2/1 \n", "1 fl None 2/1 \n", "2 fl None 2/1 \n", "3 fl None 2/1 \n", "4 fl None 2/1 \n", "\n", " TimeSignatureGrouped Voices WindowId \n", "Id \n", "0 other 0 \n", "1 other 0 \n", "2 other 0 \n", "3 other 0 \n", "4 other 0 \n", "\n", "[5 rows x 926 columns]" ] }, "execution_count": 9, "metadata": {}, "output_type": "execute_result" } ], "source": [ "print('Shape df: ', df.shape)\n", "df.head()" ] }, { "cell_type": "markdown", "id": "fc3daafc", "metadata": {}, "source": [ "### Finding features\n", "Yey! We've successfully employed `musif` to extract the desired features from the scores. All of these features are now stored in the df variable, and we can access them from there.\n", "How to find certain features? All types of features and their correspondent definitions can be found in https://musif.didone.eu/Feature_definition.html. There you can find each type of feature along with a regular expression (_RegEx_) and a brief explanation stating what that set of features describes.l To find a specific set of features based on its regex:" ] }, { "cell_type": "code", "execution_count": 10, "id": "88976ce7", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
PartFlI_IntervalA-2_PerPartFlI_IntervalA1_PerPartFlI_IntervalA2_PerPartFlI_IntervalA3_PerPartFlI_IntervalA4_PerPartFlI_IntervalM-2_PerPartFlI_IntervalM-3_PerPartFlI_IntervalM-6_PerPartFlI_IntervalM-7_PerPartFlI_IntervalM-9_Per...PartFlI_IntervalsMajorDesc_PerPartFlI_IntervalsMinorAll_PerPartFlI_IntervalsMinorAsc_PerPartFlI_IntervalsMinorDesc_PerPartFlI_IntervalsPerfectAll_PerPartFlI_IntervalsPerfectAsc_PerPartFlI_IntervalsPerfectDesc_PerPartFlI_IntervalsWithinOctaveAll_PerPartFlI_IntervalsWithinOctaveAsc_PerPartFlI_IntervalsWithinOctaveDesc_Per
Id
0<NA><NA><NA><NA><NA>0.1149430.034483<NA><NA><NA>...0.1728370.0689660.0344830.0344830.5121230.1064470.1018681.00.3244970.371695
1<NA><NA><NA><NA><NA>0.1883120.045455<NA><NA><NA>...0.2189580.1623380.0454550.1168830.3726180.1059620.0622011.00.3605320.435014
2<NA><NA><NA><NA><NA>0.2457130.044699<NA><NA><NA>...0.2828510.2851560.1093750.150.1896590.0452570.0244751.00.4046410.475432
3<NA><NA><NA><NA><NA>0.1379310.062069<NA><NA><NA>...0.1910590.2368420.0758620.1228070.3752960.1074780.0685471.00.3737530.426976
4<NA><NA><NA><NA><NA>0.1902110.055034<NA><NA><NA>...0.2493770.1900830.0578510.1322310.2730480.0846580.0398221.00.4150490.436383
..................................................................
170<NA><NA><NA><NA><NA>0.2148410.02509<NA><NA><NA>...0.2437840.2549020.1086960.1372550.2829860.0708280.0513961.00.398170.441068
171<NA><NA><NA><NA><NA>0.1922550.048058<NA><NA><NA>...0.2430460.2751320.1269840.1428570.1891750.0645030.0472431.00.4792530.443318
172<NA><NA><NA><NA><NA>0.1965810.025641<NA><NA><NA>...0.240050.2205880.1016950.1176470.2441570.0317320.0341521.00.4172260.404501
173<NA><NA><NA><NA><NA>0.2549020.039216<NA><NA><NA>...0.2818090.196970.0909090.1060610.2260090.0519430.0310671.00.4083210.44868
174<NA><NA><NA><NA><NA>0.2142860.038961<NA><NA><NA>...0.2435360.2207790.0779220.1333330.3132520.0844270.0491061.00.3748770.445405
\n", "

175 rows × 66 columns

\n", "
" ], "text/plain": [ " PartFlI_IntervalA-2_Per PartFlI_IntervalA1_Per PartFlI_IntervalA2_Per \\\n", "Id \n", "0 \n", "1 \n", "2 \n", "3 \n", "4 \n", ".. ... ... ... \n", "170 \n", "171 \n", "172 \n", "173 \n", "174 \n", "\n", " PartFlI_IntervalA3_Per PartFlI_IntervalA4_Per PartFlI_IntervalM-2_Per \\\n", "Id \n", "0 0.114943 \n", "1 0.188312 \n", "2 0.245713 \n", "3 0.137931 \n", "4 0.190211 \n", ".. ... ... ... \n", "170 0.214841 \n", "171 0.192255 \n", "172 0.196581 \n", "173 0.254902 \n", "174 0.214286 \n", "\n", " PartFlI_IntervalM-3_Per PartFlI_IntervalM-6_Per \\\n", "Id \n", "0 0.034483 \n", "1 0.045455 \n", "2 0.044699 \n", "3 0.062069 \n", "4 0.055034 \n", ".. ... ... \n", "170 0.02509 \n", "171 0.048058 \n", "172 0.025641 \n", "173 0.039216 \n", "174 0.038961 \n", "\n", " PartFlI_IntervalM-7_Per PartFlI_IntervalM-9_Per ... \\\n", "Id ... \n", "0 ... \n", "1 ... \n", "2 ... \n", "3 ... \n", "4 ... \n", ".. ... ... ... \n", "170 ... \n", "171 ... \n", "172 ... \n", "173 ... \n", "174 ... \n", "\n", " PartFlI_IntervalsMajorDesc_Per PartFlI_IntervalsMinorAll_Per \\\n", "Id \n", "0 0.172837 0.068966 \n", "1 0.218958 0.162338 \n", "2 0.282851 0.285156 \n", "3 0.191059 0.236842 \n", "4 0.249377 0.190083 \n", ".. ... ... \n", "170 0.243784 0.254902 \n", "171 0.243046 0.275132 \n", "172 0.24005 0.220588 \n", "173 0.281809 0.19697 \n", "174 0.243536 0.220779 \n", "\n", " PartFlI_IntervalsMinorAsc_Per PartFlI_IntervalsMinorDesc_Per \\\n", "Id \n", "0 0.034483 0.034483 \n", "1 0.045455 0.116883 \n", "2 0.109375 0.15 \n", "3 0.075862 0.122807 \n", "4 0.057851 0.132231 \n", ".. ... ... \n", "170 0.108696 0.137255 \n", "171 0.126984 0.142857 \n", "172 0.101695 0.117647 \n", "173 0.090909 0.106061 \n", "174 0.077922 0.133333 \n", "\n", " PartFlI_IntervalsPerfectAll_Per PartFlI_IntervalsPerfectAsc_Per \\\n", "Id \n", "0 0.512123 0.106447 \n", "1 0.372618 0.105962 \n", "2 0.189659 0.045257 \n", "3 0.375296 0.107478 \n", "4 0.273048 0.084658 \n", ".. ... ... \n", "170 0.282986 0.070828 \n", "171 0.189175 0.064503 \n", "172 0.244157 0.031732 \n", "173 0.226009 0.051943 \n", "174 0.313252 0.084427 \n", "\n", " PartFlI_IntervalsPerfectDesc_Per PartFlI_IntervalsWithinOctaveAll_Per \\\n", "Id \n", "0 0.101868 1.0 \n", "1 0.062201 1.0 \n", "2 0.024475 1.0 \n", "3 0.068547 1.0 \n", "4 0.039822 1.0 \n", ".. ... ... \n", "170 0.051396 1.0 \n", "171 0.047243 1.0 \n", "172 0.034152 1.0 \n", "173 0.031067 1.0 \n", "174 0.049106 1.0 \n", "\n", " PartFlI_IntervalsWithinOctaveAsc_Per \\\n", "Id \n", "0 0.324497 \n", "1 0.360532 \n", "2 0.404641 \n", "3 0.373753 \n", "4 0.415049 \n", ".. ... \n", "170 0.39817 \n", "171 0.479253 \n", "172 0.417226 \n", "173 0.408321 \n", "174 0.374877 \n", "\n", " PartFlI_IntervalsWithinOctaveDesc_Per \n", "Id \n", "0 0.371695 \n", "1 0.435014 \n", "2 0.475432 \n", "3 0.426976 \n", "4 0.436383 \n", ".. ... \n", "170 0.441068 \n", "171 0.443318 \n", "172 0.404501 \n", "173 0.44868 \n", "174 0.445405 \n", "\n", "[175 rows x 66 columns]" ] }, "execution_count": 10, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df.filter(regex='Part.+_Interval.+_Per')" ] }, { "attachments": {}, "cell_type": "markdown", "id": "9b29fedc", "metadata": {}, "source": [ "## Post-processing\n", "\n", "Most of the features we have computed actually need some post-processing, for instance to replace `NaN` with 0, merge columns, or remove features created while computing other features.\n", "\n", "For this, we need a further step. In the next cell we will:\n", "1. Instantiate a `DataProcessor` object using:\n", " * the generated DataFrame\n", " * the default configuration (i.e. `None` in place of the yaml file/configuration object)\n", "2. Call the method `process()` of that object to start the post-processing of the features\n", "3. We retrieve the post-processed data from the field `data`\n", "4. We print the size of the DataFrame." ] }, { "cell_type": "code", "execution_count": null, "id": "926bc78a", "metadata": {}, "outputs": [], "source": [ "try:\n", " import google.colab\n", " IN_COLAB = True\n", "except:\n", " IN_COLAB = False\n", "\n", "# Check if in colab\n", "if IN_COLAB:\n", " print('in colab')\n", " import urllib.request\n", " # Replace with the raw URL of the YAML file on GitHub\n", " github_url = \"https://raw.githubusercontent.com/DIDONEproject/musif/main/config_postprocess_example.yml\" \n", " # Replace with the desired local file name\n", " local_file_name = \"config_postprocess_example.yml\" \n", " urllib.request.urlretrieve(github_url, local_file_name)\n", " print(f\"File downloaded to: {local_file_name}\")\n", "else:\n", " local_file_name = \"../../config_postprocess_example.yml\" \n" ] }, { "cell_type": "code", "execution_count": 11, "id": "35c706fa", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\u001b[1;37m\n", "Post-processing data...\u001b[0m\n" ] } ], "source": [ "from musif.process.processor import DataProcessor\n", "\n", "\n", "processed_df = DataProcessor(df,'../../config_postprocess_example.yml',\n", " ).process().data\n" ] }, { "cell_type": "code", "execution_count": 12, "id": "7df5c5aa", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Shape post-processed df: (175, 585)\n" ] } ], "source": [ "# with `.shape` you can see the number of rows and columns of the dataframe\n", "print('Shape post-processed df: ', processed_df.shape)" ] }, { "cell_type": "markdown", "id": "64d30975", "metadata": {}, "source": [ "Now we have 'processed_df', a DataFrame that synthesizes the extracted information by deleting and/or combining columns of the extracted df. We can adjust and modify post-processing parameters by changing the `yaml` file file or by inserting key-value arguments. That way we can choose which columns we desire to be deleted or modified in order to introduce processed_df to further experiments." ] }, { "cell_type": "markdown", "id": "ebaa76ac", "metadata": {}, "source": [] }, { "attachments": {}, "cell_type": "markdown", "id": "7cc69508", "metadata": {}, "source": [ "## Statistical processing\n", "\n", "Let's try to classify the features. We will setup a feature-learning approach with an autoencoder architecture.\n", "\n", "For this, we will use `sklearn` and its Multilayer Perceptron, so you will need to [install](https://docs.anaconda.com/navigator/getting-started/#managing-packages) `scikit-learn` and `seaborn` packages in your anaconda environment.\n", "\n", "In the next cell, the topic becomes a little more technical, but it's just an example to show that you can use this DataFrame for statistical analysis. We will first remove redundant information (the `FileName` and the `Id` columns that were automatically assigned by the `FeatureExtractor`). \n", "\n", "Then, we will create a model which:\n", "1. Assigns a number to each feature that has strings as values (`OrdinalEncoder`).\n", "2. Standardizes the features to get comparable values.\n", "3. Trains a simple feed-forward fully connected autoencoder with ReLU activations and LBGFS optimizer.\n", "\n", "The objective is to learn a 2D space where the 396 extracted features can be represented without loosing information." ] }, { "cell_type": "code", "execution_count": null, "id": "f3018334", "metadata": {}, "outputs": [], "source": [ "!pip install scikit-learn seaborn" ] }, { "cell_type": "code", "execution_count": 14, "id": "82adba52", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Mean Absolute Error: 0.49524726832323923\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "/opt/anaconda3/envs/musif_tutorials/lib/python3.10/site-packages/sklearn/neural_network/_multilayer_perceptron.py:545: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", " self.n_iter_ = _check_optimize_result(\"lbfgs\", opt_res, self.max_iter)\n" ] } ], "source": [ "from sklearn.neural_network import MLPRegressor\n", "from sklearn.preprocessing import StandardScaler, OrdinalEncoder\n", "from sklearn.pipeline import make_pipeline\n", "from sklearn.metrics import mean_absolute_error\n", "\n", "# removing FileName and Id\n", "if 'FileName' in processed_df:\n", " del processed_df['FileName']\n", "if 'Id' in processed_df:\n", " del processed_df['Id']\n", "\n", "preprocessor = make_pipeline(\n", " OrdinalEncoder(), # give a cardinal number to features that are categories\n", " StandardScaler(), # subtract the mean and scale between -1 and +1\n", ")\n", "\n", "model = make_pipeline(\n", " preprocessor,\n", " MLPRegressor( \n", " hidden_layer_sizes=(128, 32, 8, 2, 8, 32, 128, 396), # the output size is the same as the number of features\n", " activation=\"relu\",\n", " solver=\"lbfgs\",\n", " max_iter=100,\n", " tol=0.1,\n", " random_state=934,\n", " max_fun=10**6\n", " # shuffle=True \n", " )\n", ")\n", "\n", "y_true = preprocessor.fit_transform(processed_df)\n", "\n", "# the next call will take some time...\n", "model.fit(processed_df, y_true)\n", "y_hat = model.predict(processed_df)\n", "print(f\"Mean Absolute Error: {mean_absolute_error(y_true, y_hat)}\")" ] }, { "attachments": {}, "cell_type": "markdown", "id": "f75abded", "metadata": {}, "source": [ "Now, we will attach a method `transform` to the MLPClassifier which returns the activations at the inner layer with 2 outputs, that we interpret as latent features. To compare the features, we will scale them in [0, 1].\n", "\n", "Then, we plot the music scores according to the learned feature space." ] }, { "cell_type": "code", "execution_count": 15, "id": "278cdf51", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(175, 2)" ] }, "execution_count": 15, "metadata": {}, "output_type": "execute_result" } ], "source": [ "from sklearn.preprocessing import MinMaxScaler\n", "\n", "mlpclassifier = model['mlpregressor']\n", "\n", "def mytransform_method(X):\n", " activations = [None for _ in range(mlpclassifier.n_layers_)]\n", " activations[0] = X\n", " X = mlpclassifier._forward_pass(activations)[-6]\n", " return MinMaxScaler().fit_transform(X)\n", "\n", "mlpclassifier.transform = mytransform_method\n", "\n", "learned_features = model.transform(processed_df)\n", "\n", "learned_features.shape" ] }, { "cell_type": "code", "execution_count": 16, "id": "9e4a575f", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 16, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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OgAAsK0it1O7N9XK5XTEtL3L6dDDTbUqdHMJBQBAPuGTHQAA2Jbb5dTamnLt2Vw37wwSw+PS3i11WlNdLjezRgAAyCvJlWkHAADIcS6nQ2uqvTq2fb0OnOjV4+29emUwMPHvVV5DTat8alzhU6HbGfMsEwAAkDsIRwAAgO25XU6VuJzavHqRbmqo0unhoAJBU4bHpdJij8bMMDVGAADIYxn7lH/11Vd1++236/LLL5dhGFq4cKFWrFihr3zlKxoeHk7JMU6ePKnPfe5zWr58uUpLS1VQUKCFCxfqfe97n770pS/p9ddfT8lxAABAfooGIKXFHl1SumCiXS/BCAAA+c0RiUQi6T7IT37yE91www06c+bMjP9eU1Oj1tZWLVmyJOFjfO9739Mtt9yis2fPzrrNwoULtX//fm3YsCHh48ymv79flZWVkqS+vj5VVFSk/BgAAAAAANhdOsbfab8N8sILL+j666/XmTNnVFJSol27duno0aN64okndPPNN0uSuru79f73v19vvvlmQsd49tlndeONN+rs2bNyOp362Mc+ph/96Ec6fvy4/vEf/1HXXXedJOnUqVP64Ac/qJdffjlljw8AAAAAAOS2tIcjt912m86ePSu3262f//znuvvuu7V69WpdffXVevTRR/X3f//3ksYDkq9+9asJHeO+++5TOByWJH3961/Xt7/9bX3wgx/UihUr9Od//uf68Y9/rM9+9rOSpLNnz+prX/taah4cAAAAAADIeWldVnP8+HHV19dLkm655RZ94xvfmLZNOBzWu9/9bnV1dam0tFSvv/66CgoK4jrOwoUL5ff7deGFF2pwcHDGbd544w2VlpZKkmpra/X888/H92DmwbIaAAAAAADSL+eW1fzoRz+a+PpjH/vYzCfgdGrz5s2SpNOnT+upp56K+zjBYFCStHjx4lm3ueCCC+T1eqdsDwAAAAAAkNZw5JlnnpEkGYah5cuXz7rdlVdeOfH1s88+G/dx/uAP/kCS9Morr8y6zZkzZyZmlUS3BwAAAAAASGs40tXVJUlasmSJ3G73rNtdfvnl0/aJxyc+8QlJ0u9+97sZl+5I0r333jtt+3j09/fP+d9rr70W988EAAAAAADZN3tikaSRkZGJmRrzrf8pKyuTYRgKBALq6+uL+1gf//jH9cwzz6i5uVm33nqrnn/+eX3gAx/QxRdfrN7eXn3ve9+bWOKzfft2rV+/Pu5jRNczAQAAAACA/JK2cGRyW96SkpJ5t4+GI0NDQ3Efy+Vy6bHHHtN1112nv/u7v9OePXu0Z8+eKdusW7dOd999d0LBCAAAAAAAyF9pnTkS5fF45t2+sLBQ0nir3UR0dXWpublZv/71r2f89+eee0579+7V0qVLdckll8T98+eb0fLaa69p5cqVcf9cAAAAAACQXWkLR4qKiia+jqU7zOjoqCRpwYIFcR+rra1N1113nd544w1deuml2rlzpzZs2KCFCxfqv/7rv/TjH/9YO3bs0P79+3XkyBH9/Oc/17ve9a64jkFrXgAAAAAA8lPaCrKed955E1/HslQmEAhIim0JzmSjo6P6yEc+ojfeeENvf/vb1d7erhtuuEFve9vbVFBQoIqKCn3yk5/UkSNHVFRUpP/3//6ftmzZEt+DAQAAAAAAeStt4UhRUZEuvPBCSeOdXubi9/snwpF4C5/+27/9m/7v//2/kqRPfepTevvb3z7jdu9617t0ww03SJKef/55/fKXv4zrOAAAAAAAID+ltZXvO9/5TknSiy++qFAoNOt2v/nNbya+Xrp0aVzHmNz6t7a2ds5tly9fPuMxAQAAAACAfaU1HGloaJA0vmTm+eefn3W7p59+euLrK664Iq5juN2/L5syVwAjSWNjYzPuBwAAAAAA7Cut4ciHPvShia+/853vzLhNOBxWc3OzJKm0tFTr1q2L6xiLFy+e+LqtrW3ObSeHMJP3AwAAAAAA9pXWcGTlypVas2aNJGnv3r167rnnpm3z1a9+dWJpzG233aaCgoIp/3748GE5HA45HA7deOON0/a/5pprVFxcLEl65JFHZm3l+6//+q/653/+Z0nSJZdcoj/8wz9M9GEBAAAAAIA8ktZwRJIeeughLViwQKFQSNdee63uu+8+tbe366mnntItt9yiO++8U5JUU1Oj22+/Pe6fX1paqs9//vOSpDfffFPve9/7dPfdd+upp57SL37xC/3sZz/TJz/5SX3gAx9QOByWJH35y1+W05n2hw4AAAAAAHJA2gtvLFu2TAcOHNANN9ygM2fO6O677562TU1NjVpbW6e0/43Hf//v/12nTp3SQw89pKGhId1333267777pm1XUFCgv/u7v5voWgMAAAAAAJCR6RPXXXedfvWrX+kzn/mMampqVFxc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RERERKGLyZEQFinJkUBuQ5jxQkW/nUPkMmDquCSkJWmgUSthMFnwmd6AljYj9i2fLvatEPXBbVJEREREROEvEPE3b8VTL/Z2u54kRoCeVSb3batD9cqZ/SZHPOkcYhOAigY9Khr0vX7++M0TGLySX7ArCxERERERucLkCDnY2+1e6LZiemYS0pPjEKtSwGi2oulsJyob9XCVMzGYrSivacbCSWPcBpn2ziGetO51xs4hREREREREFGhMjpBDlEIOQQAqH56BlIRYnO3oQqfJgji1EslDe2p/bD/ejPIaHc4ZzL1eu62qGYsK0/o9f7RSjrVF2aK27KwrzoZaycQIERERERERBQ6TI+TQbbXh9rxU7KrVue1Qs2RaOkqnpKF0cw3qmtsdz3/WakC70Yz4WJXb8ysVckzNTELZwlx2DiEiIiIiIqKQwYKsfhLuBVnFdKhZMz8LhRmJKNpY1StBcuTRazEqPmbAsdg5hIiIiIiIiLzFgqwUEGI61BjMVizZegKvLshBWUkeZr500LHFRqNSeDSeUiFHnEKOhZPGYFFhGjuHEBERERER0aBiBEpedaj57Y56KOUyzM3tydalJWr63VLjinPnkFHxMY7XMzFCREREREREwcQoVOLsHWrEdJABelaQ7DqhQ3GBFnIZUFygRbfVFqCrJCIiIiIiIgocJkckLkohx7bjzV69dltVM1ISYjHr8h+x3S4RERERERGFraBFs2fOnMHy5csxfvx4aDQaDB8+HHl5eXj++edhNBr9Ns7777+POXPmICUlBWq1GikpKZgzZw7ef/99v40RSYwmC26+6lIsKhyL6ZlJENMY5rNWA/Tnu/DQDZex3S4RERERERGFraB0q3n33Xdxxx13oKOjw+XzmZmZ2LNnDzIyMrwew2az4e6778amTZvcHlNaWooNGzZALvd/IB9u3WrsRU/PGcxoN5oRp1YieWg0WtqM2H68GeU1Okeh1f4cemQGRg2LgZztdomIiIiIiCgIwrJbTX19PebOnYsLFy4gLi4OK1aswIwZM3DhwgWUl5dj48aNaGhowE033YTa2loMGTLEq3FWrlzpSIxkZWXh4YcfRnp6OpqamvDcc8+hvr4eZWVlSEpKwn/+53/68y2GFXsb3fLqZmw73ruN7thEDYrztVgyLR2lU9JQurmmV6teV+LUSiZGiIiIiIiIKKwFfOXI1KlTcejQISiVSlRWVmLSpEm9nn/++efx8MMPAwCefPJJPPXUU6LHaGhowBVXXAGLxYLc3FxUVlYiJibG8bzRaMS0adNQW1sLpVKJkydP+rRKxZVwWDlitQmobNDj/u11/RZg1agUWDM/C4UZiSjaWOU2QZKWqME/HpwemIslIiIiIiIiciEQ8XdAC0VUV1fj0KFDAIBFixb1SYwAwPLlyzFhwgQAwJo1a9Dd3S16nP/6r/+CxWIBAPz5z3/ulRgBgNjYWPz5z38GAFgsFrz88suixwh3FqsNlQ16lG6pHbAzjcFsxZKtJ3DkVCvKSvIwXOO6RS871BAREREREVEkCGhy5K233nI8/vWvf+36AuRyLFy4EADQ3t6OAwcOiBpDEAS8/fbbAIDx48ejoKDA5XEFBQW47LLLAABvv/02glBqJaR0WWy4f3sdrDbP3rfVJuC3O+qhlMswNze1z/MalYIdaoiIiIiIiCgiBDSyPXz4MABAo9EgJyfH7XHTpk1zPD5y5IioMT7//HN8+eWXfc7T3zhffPEFTp8+LWqccNZt7akxMtCKkYsZzFbsOqFDcYG2VxcbhVyGdcXZ7FBDREREREREESGgBVlPnjwJAMjIyIBS6X6o8ePH93mNp/7973+7PI8n44wdO9bjcVpaWvp9/quvvvL4XMEWpZBj2/Fmr167raoZiwrTMHVcEioa9NCoFFhXnI0p45KgYCFWIiIiIiIiigABS450dXWhtbUVAAYsjpKQkACNRgODwQCdTidqHOekxUDj2Au2ABA9jvNrw02bwdyrK40Yn7UaoD/fhbwxwzElMxHz8rRQK+VMjBAREREREVHECFhy5Pz5847HcXFxAx5vT450dnYGbByNRuN4LHaccGYwW3x6vdliw33XZqDbamONESIiIiIiIoo4AV05YqdSue524kytVgMALly4ELBx7GN4M85AK02++uorTJw4UdQ5g0Wj8u2vWaPueT0TI0RERERERBSJApYciY6Odjw2m80DHm8ymQCgTxtef45jH8ObcfzRN3mwJGhUGJuo8WprTVqiBvGxAye3iIiIiIiIiMJVwJYCDBkyxPHYky0sBkNP4O7JFhxvx7GP4c044azbakNxvtar1xYXaNFttfn5ioiIiIiIiIhCR8CSI9HR0RgxYgSAgTu9tLW1ORIXYgufOq/oGGgc560x4VxgVawohRzzJmqhUSlEvU6jUmBenpbbaYiIiIiIiCiiBTTqvfzyywEAp06dgsXivijoJ5984ng8YcIEr8a4+Dz+HifcRSvlWFuU7XGXGYVchnXF2VArmRghIiIiIiKiyBbQyLewsBBAz3aWEydOuD3u4MGDjseTJ08WNcbYsWMxcuTIPudxpbKyEgAwatQojBkzRtQ44U6pkGNqZhLKFuYOuIJEo1JgU0kupoxLgpKrRoiIiIiIiCjCBTTy/cUvfuF4/Prrr7s8xmazYcuWLQCA+Ph4zJgxQ9QYMpkMs2fPBtCzMqSqqsrlcVVVVY6VI7Nnz4ZM5tkKikiikMswZVwijq+cicdvnoCxiZpez6clavD4zRNQvXImCjMSPV5lQkRERERERBTOApocmThxIqZMmQIA2LRpE44dO9bnmBdffBEnT54EACxduhRRUVG9nq+oqIBMJoNMJsOdd97pcpxly5ZBoehZDfHAAw/0adN74cIFPPDAAwAApVKJZcuW+fK2wppSIUecWomFk8bgwIPT8c8nZuHIo9fin0/Mwj8enI6Fk8ZAo1ZyxQgRERERERFJRsAj4DVr1iAmJgYWiwXXX389nnnmGVRVVeHAgQNYsmQJHn74YQBAZmYmli9f7tUYmZmZeOihhwAAtbW1mDx5Mnbu3Ina2lrs3LkTkydPRm1tLQDgoYcewrhx4/zz5sKYvchqfKwKo+JjHO16WXyViIiIiIiIpEYZ6AGysrKwc+dO3HHHHejo6MBjjz3W55jMzEzs2bOnV1tesVavXo2zZ8/itddeQ319PebNm9fnmEWLFmHVqlVej0FEREREREREkScoywRuueUWfPjhh/jd736HzMxMxMbGIj4+Hrm5uXj22WdRX1+PjIwMn8aQy+XYtGkT9uzZg9mzZ2PkyJFQqVQYOXIkZs+ejffeew9lZWWQy7kygoiIiIiIiIh+IBMEQRjsi4gELS0tSE1NBQDodDqkpKQM8hURERERERERRZ5AxN9cRkFEREREREREksbkCBERERERERFJGpMjRERERERERCRpTI4QERERERERkaQxOUJEREREREREksbkCBERERERERFJGpMjRERERERERCRpTI4QERERERERkaQxOUJEREREREREksbkCBERERERERFJGpMjRERERERERCRpTI4QERERERERkaQxOUJERERE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mzZhz549mD17NkaOHAmVSoWRI0di9uzZeO+991BWVsZsN/ksGPOZKFg4nynSBGtOP/PMMzhy5AgWLFiAMWPGQK1WY9iwYcjLy8PTTz+NhoYGTJo0yQ/viKQs0PNZJpPh5ZdfRk1NDe655x78+Mc/xpAhQ6BQKDBs2DDk5OTg97//PT7++GM8+OCDfnxnRIETExODPXv2YNu2bZg1axaSk5OhUqmQmpqKoqIiHD58GE899dRgX6bXZILQTzlwIiIiIiIiIqIIx1v9RERERERERCRpTI4QERERERERkaQxOUJEREREREREksbkCBERERERERFJGpMjRERERERERCRpTI4QERERERERkaQxOUJEREREREREksbkCBERERERERFJGpMjRERERERERCRpTI4QERERERERkaQxOUJEREREREREksbkCBERERERERFJGpMjRERERERERCRpTI4QERERERERkaQxOUJEREREREREksbkCBERERERERFJGpMjRERERERERCRpTI4QERERERERkaQxOUJEREREREREksbkCBERERERERFJGpMjRERERERERCRpTI4QERERERERkaQxOUJEREREREREksbkCBERERERERFJ2v8DQR+XpWwOjX0AAAAASUVORK5CYII=", "text/plain": [ "
" ] }, "metadata": { "image/png": { "height": 413, "width": 547 } }, "output_type": "display_data" } ], "source": [ "import seaborn\n", "seaborn.scatterplot(x=learned_features[:, 0], y=learned_features[:, 1])" ] }, { "cell_type": "markdown", "id": "c1bab95d", "metadata": {}, "source": [ "For comparison, let's plot the 2D features learned by a standard PCA (the final scaler is aded to compare with the autoencoder):" ] }, { "cell_type": "code", "execution_count": 17, "id": "00e64c38", "metadata": {}, "outputs": [ { "data": { "image/png": "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o7r55pv1zne+U4WFhZo3b54+97nP6ciRIyouLtavfvUrbdy4MbM3AwAAAAAAPMu24EhxcbHe8Y53SBqd9DKTgYGBseBIpo1P/+///b/6f//v/0mS7rjjDr3rXe+a8nHvec97dPPNN0uSnnvuOf3rv/5rRq8DAAAAAAC8ydZRvu9+97slSS+99JISicS0j/vFL34x9vWiRYsyeo3xo39ra2tnfOy111475WsCAAAAAAD/sjU4Ul9fL2m0ZOa5556b9nFPPvnk2NfXXXddRq8RCr3dNmWmAIwkDQ8PT/k8AAAAAADgX7YGRz7ykY+Mff3d7353ysekUik1NzdLkkpLS7VmzZqMXmPBggVjX7e1tc342PFBmPHPAwAAAAAA/mVrcGTZsmVauXKlJGnv3r169tlnJz3mwQcfHCuNufPOO1VYWDjh54cPH1ZBQYEKCgp0yy23THr+Bz7wAZWUlEiSvvGNb0w7yvef//mf9fd///eSpCuuuELve9/7zL4tAD4ynExJkgZicfUODGogFp/wfQAAAADuZ3ttyUMPPaTrrrtO586d04033qh77rlHa9as0blz53TgwAF961vfkiTV1NTorrvuyvj3l5aW6otf/KK2b9+uN998U+9///t1xx13aN26dSorK9N//dd/6R/+4R/07W9/W6nU6MXMX/zFXygQsDUuBMDlEsmUzidSOtDerX3HuvVqf2zsZwvKI2qsi6phWVTFoYBCQY4nAAAAgJsVjIyMjNj9Ij/5yU90880368yZM1P+vKamRi0tLVq4cOGknx0+fHis1Gbjxo363ve+N+kxIyMj+pM/+RM99NBDmuntFBYW6itf+Yruvvtuc29kBr29vWOTdnp6ejRv3jzLXwNAbiRTIzrS2act+08oFk9O+7hIOKjdG2q1qqZCwUBBDrcQAAAA8C87rr9zcrvzpptu0s9//nP98R//sWpqalRSUqLS0lItWbJE999/v55//vkpAyPpKigo0K5du3T8+HF99rOf1TXXXKOLLrpIwWBQl1xyia699lr9yZ/8if7t3/7NlsAIAO9IJFM60tmnzc0dMwZGJCkWT2pzc4fauvqUcGmZTTwxut1vxOLqfWNQb7xVNmR8HwAAAPCDnGSO+AGZI4A3nB1KqG7nwVkDI+NFwkG1b12rSJF7pmBRNgQAAAC3cm3mCAC4wXByNFiQSWBE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BAAAAAAAWBrhCAAAAAAAsDTCEQAAAAAAYGmEIwAAAAAAwNIIRwAAAAAAgKXZDMMwmvsgAAAAAAAAmgsjRwAAAAAAgKURjgAAAAAAAEsjHAEAAAAAAJZGOAIAAAAAACyNcAQAAAAAAFga4QgAAAAAALA0whEAAAAAAGBphCMAAAAAAMDSCEcAAAAAAIClEY4AAAAAAABLIxyJAl999ZVmzpypPn36yO12q0OHDsrKytLChQtVWloatjobN27U6NGjlZqaqtjYWKWmpmr06NHauHFj2GoAkezPpaWlWrVqlR588EFlZWUpKSlJMTEx6tixowYPHqynnnpK3333XZjOBDDv+lxZaWmpevToIZvNJpvNpu7du0ekDqzJzD79/vvva9KkSerVq5fcbrcSEhKUkZGhX/3qV3rttdf0448/hrUerMeM/nz06FE99thjGjBggBITExUTE6MOHTro6quv1tNPP60TJ06EpQ6s68SJE3r33Xc1b9483XjjjUpOTg7eA0yaNCkiNVesWKHrr79eF110keLi4tStWzeNHz9eO3bsiEg90xho1dauXWu0b9/ekFTjn4yMDOPgwYNNquH3+43JkyfXWkOSMWXKFMPv94fprGBVkezPH3/8sdG2bds6+7Eko3379kZOTk6YzwxWZMb1uSYzZ86sUqdbt25hrwFrMqtPnzx50sjOzq73er13796mnxQsy4z+vGzZMqNNmzZ19uMOHToY//rXv8J0VrCiuvrXxIkTw1qrtLTUuOmmm2qtZ7fbjaeeeiqsNc1EONKK7dmzJ3jBbdu2rbFgwQJj+/btxubNm4177723ysX99OnTja4zZ86c4L769etnrFixwti1a5exYsUKo1+/fsF1jz/+eBjPDlYT6f6cl5cX3MeQIUOMZ5991ti0aZOxZ88e47333jPuv/9+w263G5IMh8NhbNiwIQJnCasw6/pcU12Hw2HExcUZ7dq1IxxB2JjVp0tKSowBAwYE9zd69Ghj+fLlRn5+vrF7925j1apVxsMPP2ykpqYSjqDRzOjPW7duDd5X2O124+677zZWr15t7Nq1y/j73/9ujBo1KlinTZs2xuHDh8N8lrCKyuFEWlqacf3110csHBkzZkxw38OHDw/26SVLlhg9e/YMrnvjjTfCWtcshCOt2LBhwwxJhtPpNLZv315t/QsvvBDsoE8++WSj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", "text/plain": [ "
" ] }, "metadata": { "image/png": { "height": 413, "width": 547 } }, "output_type": "display_data" } ], "source": [ "from sklearn.decomposition import PCA\n", "\n", "pca_pipeline = make_pipeline(\n", " preprocessor, PCA(2), MinMaxScaler()\n", ")\n", "data_pca = pca_pipeline.fit_transform(processed_df)\n", "ax = seaborn.scatterplot(x=data_pca[:, 0], y=data_pca[:, 1])\n" ] } ], "metadata": { "celltoolbar": "Edit Metadata", "kernelspec": { "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.10.8" }, "vscode": { "interpreter": { "hash": "3fac8f976d2c4ee2bc715215bb95954c479b3e9d5186e3f6df5c366b6270a4af" } } }, "nbformat": 4, "nbformat_minor": 5 }