Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
hackassin
GitHub Repository: hackassin/learnopencv
Path: blob/master/FacialAttractiveness/source/cross_validation.py
3143 views
1
import numpy as np
2
import matplotlib.pyplot as plt
3
from sklearn import linear_model
4
from sklearn import decomposition
5
from sklearn import cross_validation
6
7
## read data
8
features = np.loadtxt('features_ALL.txt', delimiter=',')
9
ratings = np.loadtxt('labels.txt', delimiter=',')
10
predictions = np.zeros(ratings.size);
11
12
for i in range(0, 500):
13
features_train = np.delete(features, i, 0)
14
features_test = features[i, :]
15
ratings_train = np.delete(ratings, i, 0)
16
ratings_test = ratings[i]
17
pca = decomposition.PCA(n_components=20)
18
pca.fit(features_train)
19
features_train = pca.transform(features_train)
20
features_test = pca.transform(features_test)
21
regr = linear_model.LinearRegression()
22
regr.fit(features_train, ratings_train)
23
predictions[i] = regr.predict(features_test)
24
print i
25
26
np.savetxt('cross_valid_predictions.txt', predictions, delimiter=',', fmt = '%.04f')
27
28
corr = np.corrcoef(predictions, ratings)[0, 1]
29
print corr
30
31
32