PyCharm Coding for (Un)supervised Learning
Budget: €30 – €250 EUR
I'm looking for a talented coder proficient in Python and PyCharm, skilled in both supervised and unsupervised learning. The specific algorithms and objectives haven't been decided yet, so I need someone who can help guide this process. The ideal freelancer should have rich experience in machine learning and data analysis, and should be able to implement various algorithms, such as Linear Regression and K-Means Clustering, as needed.
Key Requirements:
- Proficient in Python and PyCharm
- Experienced in both supervised and unsupervised learning
- Able to implement various machine learning algorithms
- Capable of guiding project objectives and algorithm selection
- Strong background in data analysis
- Capable of efficiently manipulating and analyzing data using the Pandas library.
this is my assignment:
Opgave 1 – Supervised learning (8 punten)
Maak gebruik van
de sports classification dataset
om enkele classificatiealgoritmen te
implementeren.
Je inzending voor dit deel van de opdracht bestaat uit
één Python bestand
(met
extensie
.py
) waarin je volledige programma vervat zit. Je kan hiervoor vertrekken vanuit de template
06_opdracht2_opgave1_template.py
.
( / 2 )
Je start met het importeren van je dataset:
•
Je gebruikt hiervoor een Pandas dataframe.
•
Twee van de vier kolommen zijn categorisch. Zorg ervoor dat je dataframe dit ook
reflecteert.
•
Verwijder (indien nodig) observaties waarvoor er ontbrekende/ongeldige waarden zijn.
•
Kies zelf vijf sporten uit en verwijder de observaties voor alle andere sporten uit je
dataframe. Let op: verwijder ze enkel uit je dataframe (i.e. de gegevens in het intern
geheugen) en niet uit je volledige dataset (i.e. de folder op je harde schijf).
•
Splits je dataframe op in een training, test en validatie set.
•
Vorm elk van deze dataframes apart om tot twee Numpy arrays:
o
De eerste array heeft dimensie (N, H * W * C), waarbij N het aantal observaties, H de
hoogte in pixels, W de breedte in pixels en C het aantal kleurkanalen voorstelt. Deze
array bevat voor elke observatie een ééndimensionale array met daarin de
pixelwaarden van de bijhorende afbeelding.
o
De tweede array heeft dimensie (N) en bevat het overeenstemmende label voor elke
observatie.
( / 4.5 )
Train vervolgens een classificatiealgoritme C met behulp van een training set T. Analyseer nadien je
resultaten door een prestatiemaatstaf P te berekenen. Vergelijk ook telkens met de resultaten van
een
dummy classifier
. Doe dit voor de volgende drie scenario’s:
•
( / 1.5 )
o
C
:
Je classificatiealgoritme is de
Stochastic Gradient Descent classifier
.
o
T
: Je kiest één sport.
Je training set bestaat uit je oorspronkelijke training set, waarbij
alle labels vervangen werden door True (wanneer het oorspronkelijke label gelijk is
Opdracht 2
aan die bepaalde sport) of False (wanneer het oorspronkelijke label gelijk is aan één
van de vier andere sporten).
o
P
: Je berekent de
precision
en
recall
van je algoritme op basis van de predicties die
het maakt voor je test set.
•
( / 1.5 )
o
C
:
Je classificatiealgoritme is de
Stochastic Gradient Descent classifier
.
o
T
:
Je training set bestaat uit je oorspronkelijke training set, gecombineerd met je test
set.
o
P
: De accuraatheid van je algoritme leidt je af uit de
cross validatie scores
: je neemt
het gemiddelde van drie
folds
.
•
( / 1.5 )
o
C
: Je classificatiealgoritme is
Support Vector Classification
.
o
T
:
Je training set bestaat uit je oorspronkelijke training set.
o
P
: Je toont de volledige
confusion matrix
met absolute (i.p.v. procentuele) gegevens
over voorspellingen die gemaakt werden voor je test set.
( / 1.5 )
Analyseer welke invloed de grootte (i.e. aantal pixels) en kleur (i.e. RGB of grijsschaal) van de
afbeeldingen heeft op de resultaten van je classificatiealgoritme. Het volstaat om je hiervoor op
slechts één van de drie voorgaande scenario’s te focussen. Maak gebruik van commentaarregels om
je bevindingen helder en volledig toe te lichten.
Opdracht 2
Opgave 2 – Unsupervised learning (2 punten)
Maak gebruik van
deze olympische dataset
om enkele clusteringalgoritmen te implementeren.
Je
inzending voor dit deel van de opdracht bestaat uit
één Python bestand
(met extensie
.py
) waarin je
volledige programma vervat zit. Je kan hiervoor vertrekken vanuit de template
07_opdracht2_opgave2_template.py
.
( / 0.5 )
Je start met het analyseren van je dataset. Bekijk of hoogte en gewicht onderscheidende
eigenschappen zijn voor deelnemers die de sporten Weightlifting, Wrestling, Boxing en Tug-Of-War
enerzijds en Basketball, Tennis, Volleyball en Beach Volleyball anderzijds beoefenen. Je doet dit door
een
scatter plot
te tonen waarbij elke sportgroep een andere kleur krijgt.
( / 1.5 )
Voer vervolgens een clusteringalgoritme C uit op deze dataset. Visualiseer telkens de bekomen
resultaten door elke cluster een andere kleur toe te kennen in een
scatter plot
. Doe dit voor de
volgende drie scenario’s:
•
( / 0.5 )
o
C
:
Je clusteringalgoritme is
k-means
.
•
( / 0.5 )
o
C
:
Je clusteringalgoritme is
DBSCAN
. Vermeld hierbij ook het aantal clusters.
•
( / 0.5 )
o
C
: Je clusteringalgoritme is
GMM
. Vermeld hierbij ook of het algoritme convergeerde
en, zoja, na hoeveel iteraties dat gebeurde.
The project will use the provided data sets for implementation. The project is expected to be completed within 4 days."
Key Requirements:
- Proficient in Python and PyCharm
- Experienced in both supervised and unsupervised learning
- Able to implement various machine learning algorithms
- Capable of guiding project objectives and algorithm selection
- Strong background in data analysis
- Capable of efficiently manipulating and analyzing data using the Pandas library.
this is my assignment:
Opgave 1 – Supervised learning (8 punten)
Maak gebruik van
de sports classification dataset
om enkele classificatiealgoritmen te
implementeren.
Je inzending voor dit deel van de opdracht bestaat uit
één Python bestand
(met
extensie
.py
) waarin je volledige programma vervat zit. Je kan hiervoor vertrekken vanuit de template
06_opdracht2_opgave1_template.py
.
( / 2 )
Je start met het importeren van je dataset:
•
Je gebruikt hiervoor een Pandas dataframe.
•
Twee van de vier kolommen zijn categorisch. Zorg ervoor dat je dataframe dit ook
reflecteert.
•
Verwijder (indien nodig) observaties waarvoor er ontbrekende/ongeldige waarden zijn.
•
Kies zelf vijf sporten uit en verwijder de observaties voor alle andere sporten uit je
dataframe. Let op: verwijder ze enkel uit je dataframe (i.e. de gegevens in het intern
geheugen) en niet uit je volledige dataset (i.e. de folder op je harde schijf).
•
Splits je dataframe op in een training, test en validatie set.
•
Vorm elk van deze dataframes apart om tot twee Numpy arrays:
o
De eerste array heeft dimensie (N, H * W * C), waarbij N het aantal observaties, H de
hoogte in pixels, W de breedte in pixels en C het aantal kleurkanalen voorstelt. Deze
array bevat voor elke observatie een ééndimensionale array met daarin de
pixelwaarden van de bijhorende afbeelding.
o
De tweede array heeft dimensie (N) en bevat het overeenstemmende label voor elke
observatie.
( / 4.5 )
Train vervolgens een classificatiealgoritme C met behulp van een training set T. Analyseer nadien je
resultaten door een prestatiemaatstaf P te berekenen. Vergelijk ook telkens met de resultaten van
een
dummy classifier
. Doe dit voor de volgende drie scenario’s:
•
( / 1.5 )
o
C
:
Je classificatiealgoritme is de
Stochastic Gradient Descent classifier
.
o
T
: Je kiest één sport.
Je training set bestaat uit je oorspronkelijke training set, waarbij
alle labels vervangen werden door True (wanneer het oorspronkelijke label gelijk is
Opdracht 2
aan die bepaalde sport) of False (wanneer het oorspronkelijke label gelijk is aan één
van de vier andere sporten).
o
P
: Je berekent de
precision
en
recall
van je algoritme op basis van de predicties die
het maakt voor je test set.
•
( / 1.5 )
o
C
:
Je classificatiealgoritme is de
Stochastic Gradient Descent classifier
.
o
T
:
Je training set bestaat uit je oorspronkelijke training set, gecombineerd met je test
set.
o
P
: De accuraatheid van je algoritme leidt je af uit de
cross validatie scores
: je neemt
het gemiddelde van drie
folds
.
•
( / 1.5 )
o
C
: Je classificatiealgoritme is
Support Vector Classification
.
o
T
:
Je training set bestaat uit je oorspronkelijke training set.
o
P
: Je toont de volledige
confusion matrix
met absolute (i.p.v. procentuele) gegevens
over voorspellingen die gemaakt werden voor je test set.
( / 1.5 )
Analyseer welke invloed de grootte (i.e. aantal pixels) en kleur (i.e. RGB of grijsschaal) van de
afbeeldingen heeft op de resultaten van je classificatiealgoritme. Het volstaat om je hiervoor op
slechts één van de drie voorgaande scenario’s te focussen. Maak gebruik van commentaarregels om
je bevindingen helder en volledig toe te lichten.
Opdracht 2
Opgave 2 – Unsupervised learning (2 punten)
Maak gebruik van
deze olympische dataset
om enkele clusteringalgoritmen te implementeren.
Je
inzending voor dit deel van de opdracht bestaat uit
één Python bestand
(met extensie
.py
) waarin je
volledige programma vervat zit. Je kan hiervoor vertrekken vanuit de template
07_opdracht2_opgave2_template.py
.
( / 0.5 )
Je start met het analyseren van je dataset. Bekijk of hoogte en gewicht onderscheidende
eigenschappen zijn voor deelnemers die de sporten Weightlifting, Wrestling, Boxing en Tug-Of-War
enerzijds en Basketball, Tennis, Volleyball en Beach Volleyball anderzijds beoefenen. Je doet dit door
een
scatter plot
te tonen waarbij elke sportgroep een andere kleur krijgt.
( / 1.5 )
Voer vervolgens een clusteringalgoritme C uit op deze dataset. Visualiseer telkens de bekomen
resultaten door elke cluster een andere kleur toe te kennen in een
scatter plot
. Doe dit voor de
volgende drie scenario’s:
•
( / 0.5 )
o
C
:
Je clusteringalgoritme is
k-means
.
•
( / 0.5 )
o
C
:
Je clusteringalgoritme is
DBSCAN
. Vermeld hierbij ook het aantal clusters.
•
( / 0.5 )
o
C
: Je clusteringalgoritme is
GMM
. Vermeld hierbij ook of het algoritme convergeerde
en, zoja, na hoeveel iteraties dat gebeurde.
The project will use the provided data sets for implementation. The project is expected to be completed within 4 days."
Related categories:
Business, Accounting, Human Resources & Legal
Python
Algorithm
CUDA
Machine Learning (ML)