Aan de slagGa gratis aan de slag

Logistic Regression-model trainen

Nadat je labels en features voor de data hebt gemaakt, zijn we klaar om een model te bouwen dat hiervan kan leren (trainen). Maar voordat je het model traint, ga je in dit laatste deel van de oefening de data splitsen in training en test, het Logistic Regression-model op de trainingsdata draaien en tot slot de nauwkeurigheid controleren van het model dat op de trainingsdata is getraind.

Onthoud dat je een SparkContext sc beschikbaar hebt in je werkruimte, net als de variabele samples.

Deze oefening maakt deel uit van de cursus

Big Data Fundamentals met PySpark

Cursus bekijken

Oefeninstructies

  • Splits de gecombineerde data in trainings- en testgegevens in een verhouding van 80:20.
  • Train het Logistic Regression-model met de trainingsgegevens.
  • Maak een voorspellingslabel met het getrainde model op de testgegevens.
  • Combineer de labels in de testgegevens met de labels in de voorspellingsgegevens met de functie zip.
  • Bereken de nauwkeurigheid van het getrainde model met de originele en voorspelde labels, en print deze.

Praktische interactieve oefening

Probeer deze oefening eens door deze voorbeeldcode in te vullen.

# Split the data into training and testing
train_samples,test_samples = samples.____([0.8, 0.2])

# Train the model
model = LogisticRegressionWithLBFGS.train(____)

# Create a prediction label from the test data
predictions = model.____(test_samples.map(lambda x: x.features))

# Combine original labels with the predicted labels
labels_and_preds = test_samples.map(lambda x: x.label).zip(____)

# Check the accuracy of the model on the test data
accuracy = labels_and_preds.filter(lambda x: x[0] == x[____]).count() / float(test_samples.count())
print("Model accuracy : {:.2f}".format(____))
Code bewerken en uitvoeren