auc

AttributeError: 'Model' object has no attribute 'predict_classes'

匿名 (未验证) 提交于 2019-12-03 00:52:01
可以将文章内容翻译成中文,广告屏蔽插件可能会导致该功能失效(如失效,请关闭广告屏蔽插件后再试): 问题: I'm trying to predict on the validation data with pre-trained and fine-tuned DL models. The code follows the example available in the Keras blog on "building image classification models using very little data". Here is the code: import numpy as np from keras.preprocessing.image import ImageDataGenerator import matplotlib.pyplot as plt from keras.models import Sequential from keras.models import Model from keras.layers import Flatten, Dense from sklearn.metrics import classification_report,confusion_matrix from sklearn.metrics import roc_auc

机器学习面试--算法评价指标

匿名 (未验证) 提交于 2019-12-03 00:41:02
机器学习分为三个阶段 : 第一阶段: 学习模型 。采用学习算法,通过对训练集进行归纳学习得到分类模型; 第二阶段: 测试模型 。将已经学习得到的分类模型用于测试集,对测试集中未知类别的实例进行分类。 第三阶段: 性能评估 。显然,通过测试集产生的分类未必是最佳的,这就导致对测试集的分类可能产生错误。而人们希望尽量得到信呢个最佳的分类模型,就是的对分类器性能评价至关重要。只有通过优秀的评价标准才能选择出性能更好的分类器。 不同机器学习算法的评价指标: 回归是对连续的实数值进行预测,即输出值是连续的实数值,而分类中是离散值。 (1)平均绝对误差(Mean Absolute Error,MAE)又被称为 l1 范数损失(l1-norm loss) (2)平均平方误差(Mean Squared Error,MSE)又被称为 l2 范数损失(l2-norm loss) 计算公式 : Accuracy = (TP+TN)/(TP+TN+FP+FN) 在 正负样本不平衡 的情况下,准确率这个评价指标有很大的缺陷。比如在互联网广告里面,点击的数量是很少的,一般只有千分之几,如果用Accuracy,即使全部预测成负类(不点击)Accuracy也有 99% 以上,没有意义。 定义 :正确分类的正例个数占分类为正例的实例个数的比例,也称 查准率 。 计算公式 : TP/(TP+FP) 定义

sklearn习题

匿名 (未验证) 提交于 2019-12-03 00:32:02
Step1: from sklearn import datasets dataset = datasets.make_classification(n_samples=1000, n_features=10, n_informative=2, n_redundant=2, n_repeated=0, n_classes=2) print(dataset) Step2: from sklearn.model_selection import KFold kf = KFold(n_splits=10) for train_index, test_index in kf.split(dataset[0]): X_train, X_test = dataset[0][train_index], dataset[0][test_index] y_train, y_test = dataset[1][train_index], dataset[1][test_index] Step3和Step4: from sklearn.naive_bayes import GaussianNB from sklearn import metrics def test_GaussianNB(X_train, y_train, X_test, y_test): clf = GaussianNB() clf

hw15(第十五周)

匿名 (未验证) 提交于 2019-12-03 00:30:01
Note The report has to contain also a short description of the methodology used to obtain the results. Steps 2. Split the dataset using 10-fold cross validation 3. Train the algorithms 4. Evaluate the cross-validated performance 5. Write a short report summarizing the methodology and the results 解释: 构造一个数据集,然后使用10折交叉比对把数据集分类,之后分别用朴素贝叶斯、支持向量机、随机森林分类的方法训练模型,然后根据测试集来预测结果并评估效果。 朴素贝叶斯分类器基于一个简单的假定:给定目标值时属性之间相互条件独立。所以在属性相关性较小时,朴素贝叶斯性能最为良好。 贝叶斯公式: P( Category | Document) = P ( Document | Category ) * P( Category) / P(Document) SVM(支持向量机)的主要思想可以概括为两点: 1. 它是针对线性可分情况进行分析,对于线性不可分的情况

Amazing sklearn(Simple examples)

匿名 (未验证) 提交于 2019-12-03 00:30:01
这是上课时候的作业,使用sklearn做一下简单的数据分析。或者说聚类。 本次使用的是使用三种有监督的学习算法。1,高斯朴素贝叶斯。2,SVC,3,随机森林分裂器。以及三种算法的评估参数:Accuracy, F1-score,AUC ROC。代码如下: from sklearn import datasets from sklearn import cross_validation from sklearn.naive_bayes import GaussianNB from sklearn.svm import SVC from sklearn.ensemble import RandomForestClassifier import numpy as np import seaborn as sns import matplotlib.pyplot as plt from sklearn import metrics #创建(1000 * 10, 1000 * 1)的数据集 X, Y = datasets.make_classification( 1000 , 10 , n_classes= 2 ) #使用交叉验证。 #切割 kf = cross_validation.KFold(X.shape[ 0 ], n_folds= 10 , shuffle= True )

第十五周,sklearn

匿名 (未验证) 提交于 2019-12-03 00:30:01
Create a classification dataset (n samples ! 1000, n features ! 10) Split the dataset using 10-fold cross validation Train the algorithms GaussianNB SVC (possible C values [1e-02, 1e-01, 1e00, 1e01, 1e02], RBF kernel) RandomForestClassifier (possible n estimators values [10, 100, 1000]) Evaluate the cross-validated performance Accuracy F1-score AUC ROC Write a short report summarizing the methodology and the results 只要按照ppt上的教程写代码即可,通过datasets.make_classification生成数据集,通过cross_validation.KFold将数据集划分为训练集和测试集,通过metrics.accuracy_score、metrics.f1_score、metrics.roc_auc_score获得结果。 from sklearn import

高级编程技术 sklearn课后习题

匿名 (未验证) 提交于 2019-12-03 00:29:01
from sklearn import datasets from sklearn import cross_validation from sklearn.naive_bayes import GaussianNB from sklearn.svm import SVC from sklearn.ensemble import RandomForestClassifier from sklearn import metrics # Datasets dataset = datasets.make_classification(n_samples=1000, n_features=10) # Inspect the data structures print("dataset.data: \n", dataset[0]) print("dataset.target: \n", dataset[1]) # Cross-validation kf = cross_validation.KFold(1000, n_folds=10, shuffle=True) for train_index, test_index in kf: X_train, y_train = dataset[0][train_index], dataset[1][train_index] X_test, y

排序中AUC,MAP,NDCG,MRR 计算方式

匿名 (未验证) 提交于 2019-12-03 00:26:01
现在的排序评估指标主要包括MAP、NDCG和AUC三个指标。NDCG考虑多指标,MAP和AUC考虑单个指标。 1.AUC 例如在排在n=5的正样本,共有4个样本与其组合的值小于5。。。 2.MAP MAP(Mean Average Precision):单个主题的平均准确率是每篇相关文档检索出后的准确率的平均值。 主集合的平均准确率(MAP)是每个主题的平均准确率的平均值。 MAP 是反映系统在全部相关文档上性能的单值指标。 系统检索出来的相关文档越靠前(rank 越高),MAP就可能越高。如果系统没有返回相关文档,则准确率默认为0。 例如: 假设有两个主题,主题1有4个相关网页,主题2有5个相关网页。 某系统对于主题1检索出4个相关网页,其rank分别为1, 2, 4, 7; 对于主题2检索出3个相关网页,其rank分别为1,3,5。 对于主题1,平均准确率为(1/1+2/2+3/4+4/7)/4=0.83。对于主题2,平均准确率为(1/1+2/3+3/5+0+0)/5=0.45。 则MAP= (0.83+0.45)/2=0.64。 3.NDCG NDCG(Normalized Discounted Cumulative Gain):计算相对复杂。对于排在结位置n处的NDCG的计算公式如下图所示: 在MAP中,四个文档和query要么相关,要么不相关,也就是相关度非0即1

查全率(Recall),查准率(Precision),灵敏性(Sensitivity),特异性(Specificity),F1,PR曲线,ROC,AUC的应用场景

匿名 (未验证) 提交于 2019-12-02 23:52:01
之前介绍了这么多分类模型的性能评价指标( 《 分类模型的性能评价指标(Classification Model Performance Evaluation Metric) 》 ),那么到底应该选择哪些指标来评估自己的模型呢?答案是应根据应用场景进行选择。 查全率(Recall) :recall是相对真实的情况而言的:假设测试集里面有100个正类,如果模型预测出其中40个是正类,那模型的recall就是40%。查全率也称为 召回率 ,等价于 灵敏性(Sensitivity) 和 真正率(True Positive Rate,TPR) 。 查全率的应用场景 :需要尽可能地把所需的类别检测出来,而不在乎结果是否准确。比如对于地震的预测,我们希望每次地震都能被预测出来,这个时候可以牺牲precision。假如一共发生了10次地震,我们情愿发出1000次警报,这样能把这10次地震都涵盖进去(此时recall是100%,precision是1%),也不要发出100次警报,其中有8次地震给预测到了,但漏了2次(此时recall是80%,precision是8%)。 查准率(Precision) :precision是相对模型的预测结果而言的:假设模型一共预测出了100个正类,其中80个是正确的,那么precision就是80%。 查准率的应用场景 :需要尽可能地把所需的类别检测准确

机器学习算法常用指标总结

匿名 (未验证) 提交于 2019-12-02 23:36:01
机器学习性能评价标准是模型优化的前提,在设计机器学习算法过程中,不同的问题需要用到不同的评价标准,本文对机器学习算法常用指标进行了总结。 阅读目录 1. TPR、FPR&TNR 2. 精确率Precision、召回率Recall和F1值 3. 综合评价指标F-measure 4. ROC曲线和AUC 5. 参考内容   考虑一个二分问题,即将实例分成正类(positive)或负类(negative)。对一个二分问题来说,会出现四种情况。如果一个实例是正类并且也被 预测成正类,即为真正类(True positive),如果实例是负类被预测成正类,称之为假正类(False positive)。相应地,如果实例是负类被预测成负类,称之为真负类(True negative),正类被预测成负类则为假负类(false negative)。   TP:正确肯定的数目;   FN:漏报,没有正确找到的匹配的数目;   FP:误报,给出的匹配是不正确的;   TN:正确拒绝的非匹配对数;   列联表如下表所示,1代表正类,0代表负类: 1. TPR、FPR&TNR   从列联表引入两个新名词。其一是 真正类率(true positive rate ,TPR) , 计算公式为 刻画的是分类器所识别出的 正实例占所有正实例的比例。   另外一个是 ,计算公式为 FPR = FP / (FP + TN)