Klassificering

Grunderna i Big Data med PySpark

Upendra Devisetty

Science Analyst, CyVerse

Klassificering med PySpark MLlib

  • Klassificering är en övervakad maskininlärningsalgoritm som sorterar indata i olika kategorier

Grunderna i Big Data med PySpark

Introduktion till logistisk regression

  • Logistisk regression förutsäger ett binärt utfall baserat på ett antal variabler

Grunderna i Big Data med PySpark

Arbeta med vektorer

  • PySpark MLlib innehåller de specifika datatyperna Vectors och LabelledPoint

  • Två typer av vektorer

    • Dense Vector: lagrar alla värden i en array med flyttal
    • Sparse Vector: lagrar bara nollskilda värden och deras index
denseVec = Vectors.dense([1.0, 2.0, 3.0])
DenseVector([1.0, 2.0, 3.0])
sparseVec = Vectors.sparse(4, {1: 1.0, 3: 5.5})
SparseVector(4, {1: 1.0, 3: 5.5})
Grunderna i Big Data med PySpark

LabeledPoint() i PySpark MLlib

  • En LabeledPoint är en wrapper för indatasärdrag och förutsagt värde

  • Vid binär klassificering med logistisk regression är en etikett antingen 0 (negativ) eller 1 (positiv)

positive = LabeledPoint(1.0, [1.0, 0.0, 3.0])
negative = LabeledPoint(0.0, [2.0, 1.0, 1.0])
print(positive)
print(negative)
LabeledPoint(1.0, [1.0,0.0,3.0])
LabeledPoint(0.0, [2.0,1.0,1.0])
Grunderna i Big Data med PySpark

HashingTF() i PySpark MLlib

  • Algoritmen HashingTF() används för att mappa särdragsvärden till index i särdragsvektorn
from pyspark.mllib.feature import HashingTF
sentence = "hello hello world"
words = sentence.split()
tf = HashingTF(10000) 
tf.transform(words)
SparseVector(10000, {3065: 1.0, 6861: 2.0})
Grunderna i Big Data med PySpark

Logistisk regression med LogisticRegressionWithLBFGS

  • Logistisk regression i PySpark MLlib utförs med klassen LogisticRegressionWithLBFGS
data = [
        LabeledPoint(0.0, [0.0, 1.0]),
        LabeledPoint(1.0, [1.0, 0.0]),
]
RDD = sc.parallelize(data)
lrm = LogisticRegressionWithLBFGS.train(RDD)
lrm.predict([1.0, 0.0])
lrm.predict([0.0, 1.0])
1
0
Grunderna i Big Data med PySpark

Nu kör vi en övning!

Grunderna i Big Data med PySpark

Preparing Video For Download...