multi_reg.py 文件源码

python
阅读 22 收藏 0 点赞 0 评论 0

项目:aq_weather 作者: eliucidate 项目源码 文件源码
def lasso_multireg(self,Xtrain,ytrain, Xtest, ytest):    
                self.normalize(Xtrain)
                clf = linear_model.Lasso(alpha = 0.5)
                clf.fit (Xtrain, ytrain)
                coeffients = clf.coef_
                print "coeffients: ", coeffients
                print "train score", clf.score(Xtrain,ytrain)
                print "test score", clf.score(Xtest,ytest)
                # manual calculate train accuracy
                train_results = clf.predict(Xtrain)
                correct = 0
                for i in range(len(train_results)):
                    if round(train_results[i], 1) == round(ytrain[i], 1):
                        correct += 1
                accuracy = correct * 1.0 / len(ytrain)
                print "train accuracy: ", accuracy * 100, "%"
                # cross validation
                predict = cross_val_predict(clf, Xtrain, ytrain, cv = 5)
                correct = 0
                for i in range(len(predict)):
                    if round(predict[i], 1) == round(ytrain[i], 1):
                        correct += 1
                accuracy = correct * 1.0 / len(ytrain)
                print "cross validation accuracy: ", accuracy * 100, "%"

                # manual calculate test accuracy
                self.normalize(Xtest)
                results = clf.predict(Xtest)
                correct = 0
                for i in range(len(results)):
                    #print round(results[i], 1), round(ytest[i], 1)
                    if round(results[i], 1) == round(ytest[i], 1):
                        correct += 1
                accuracy = correct * 1.0 / len(ytest)
                print "test accuracy: ", accuracy * 100, "%"

                return coeffients
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号