Merge pull request #22 from takezoe/mark-override
Mark override methods
diff --git a/src/main/scala/ALSAlgorithm.scala b/src/main/scala/ALSAlgorithm.scala
index 9fa8958..56c5e95 100644
--- a/src/main/scala/ALSAlgorithm.scala
+++ b/src/main/scala/ALSAlgorithm.scala
@@ -30,6 +30,7 @@
s"To remedy it, set lower numIterations or checkpoint parameters.")
}
+ override
def train(sc: SparkContext, data: PreparedData): ALSModel = {
// MLLib ALS cannot handle empty training data.
require(!data.ratings.take(1).isEmpty,
@@ -74,6 +75,7 @@
itemStringIntMap = itemStringIntMap)
}
+ override
def predict(model: ALSModel, query: Query): PredictedResult = {
// Convert String ID to Int index for Mllib
model.userStringIntMap.get(query.user).map { userInt =>
diff --git a/src/main/scala/ALSModel.scala b/src/main/scala/ALSModel.scala
index e0e6a9f..6005c07 100644
--- a/src/main/scala/ALSModel.scala
+++ b/src/main/scala/ALSModel.scala
@@ -21,6 +21,7 @@
extends MatrixFactorizationModel(rank, userFeatures, productFeatures)
with PersistentModel[ALSAlgorithmParams] {
+ override
def save(id: String, params: ALSAlgorithmParams,
sc: SparkContext): Boolean = {
diff --git a/src/main/scala/Evaluation.scala b/src/main/scala/Evaluation.scala
index acc85ff..96a3ec8 100644
--- a/src/main/scala/Evaluation.scala
+++ b/src/main/scala/Evaluation.scala
@@ -18,6 +18,7 @@
override def header = s"Precision@K (k=$k, threshold=$ratingThreshold)"
+ override
def calculate(q: Query, p: PredictedResult, a: ActualResult): Option[Double] = {
val positives: Set[String] = a.ratings.filter(_.rating >= ratingThreshold).map(_.item).toSet
@@ -36,6 +37,7 @@
extends AverageMetric[EmptyEvaluationInfo, Query, PredictedResult, ActualResult] {
override def header = s"PositiveCount (threshold=$ratingThreshold)"
+ override
def calculate(q: Query, p: PredictedResult, a: ActualResult): Double = {
a.ratings.filter(_.rating >= ratingThreshold).size
}
diff --git a/src/main/scala/Preparator.scala b/src/main/scala/Preparator.scala
index 5e3a653..f18fedc 100644
--- a/src/main/scala/Preparator.scala
+++ b/src/main/scala/Preparator.scala
@@ -8,6 +8,7 @@
class Preparator
extends PPreparator[TrainingData, PreparedData] {
+ override
def prepare(sc: SparkContext, trainingData: TrainingData): PreparedData = {
new PreparedData(ratings = trainingData.ratings)
}