PySpark ile Machine Learning
Andrew Collier
Data Scientist, Fathom Data
Yalnızca eğitim verisi için.
Test ve eğitim verisi için.


Bir boru hattı bir dizi işlemlerden oluşur.
Her işlemi tek tek uygulayabilirsiniz... ya da doğrudan boru hattını uygulayabilirsiniz!
indexer = StringIndexer(inputCol='type', outputCol='type_idx')onehot = OneHotEncoder(inputCols=['type_idx'], outputCols=['type_dummy'])assemble = VectorAssembler( inputCols=['mass', 'cyl', 'type_dummy'], outputCol='features' )regression = LinearRegression(labelCol='consumption')
indexer = indexer.fit(cars_train)
cars_train = indexer.transform(cars_train)
onehot = onehot.fit(cars_train)
cars_train = onehot.transform(cars_train)
cars_train = assemble.transform(cars_train)
# Eğitim verisine modeli uydurun
regression = regression.fit(cars_train)
cars_test = indexer.transform(cars_test)
cars_test = onehot.transform(cars_test)
cars_test = assemble.transform(cars_test)
# Test verisi üzerinde tahmin yapın
predictions = regression.transform(cars_test)
Adımları bir boru hattında birleştirin.
from pyspark.ml import Pipeline
pipeline = Pipeline(stages=[indexer, onehot, assemble, regression])
Eğitim verisi
pipeline = pipeline.fit(cars_train)
Test verisi
predictions = pipeline.transform(cars_test)
Tek tek aşamalara .stages özniteliğiyle erişin.
# LinearRegression nesnesi (dördüncü aşama -> indeks 3) pipeline.stages[3]print(pipeline.stages[3].intercept)
4.19433571782916
print(pipeline.stages[3].coefficients)
DenseVector([0.0028, 0.2705, -1.1813, -1.3696, -1.1751, -1.1553, -1.8894])
PySpark ile Machine Learning