estimator

PU Learning简介:对无标签数据进行半监督分类

做~自己de王妃 提交于 2020-03-28 19:42:59
当只有几个正样本,你如何分类无标签数据 假设您有一个交易业务数据集。有些交易被标记为欺诈,其余交易被标记为真实交易,因此您需要设计一个模型来区分欺诈交易和真实交易。 假设您有足够的数据和良好的特征,这似乎是一项简单的分类任务。 但是,假设数据集中只有15%的数据被标记,并且标记的样本仅属于一类,即训练集15%的样本标记为真实交易,而其余样本未标记,可能是真实交易样本,也可能是欺诈样本。您将如何对其进行分类? 样本不均衡问题是否使这项任务变成了无监督学习问题? 好吧,不一定。 此问题通常被称为PU(正样本和未标记)分类问题,首先要将该问题与两个相似且常见的“标签问题”相区别,这两个问题使许多分类任务复杂化。第一个也是最常见的标签问题是小训练集问题。当您有大量数据但实际上只有一小部分被标记时,就会出现这种情况。这个问题有很多种类和许多特定的训练方法。另一个常见的标签问题(通常与PU问题混为一谈)是,训练的数据集是被完全标记的但只有一个类别。例如,假设我们拥有的只是一个非欺诈性交易的数据集,并且我们需要使用该数据集来训练一个模型,以区分非欺诈性交易和欺诈性交易。这也是一个常见问题,通常被视为无监督的离群点检测问题,在机器学习领域中也有很多工具专门用于处理这些情况(OneClassSVM可能是最著名的)。 相比之下,PU分类问题涉及的训练集,其中仅部分数据被标记为正,而其余数据未标记

【Python】学习笔记(三):机器学习基础入门

冷暖自知 提交于 2020-03-07 04:04:06
机器学习简介 1 机器学习 1.1 数据集 数据集 = 特征值 + 目标值 1.2 算法分类 监督学习 目标值:类别 - 分类问题 目标值:连续数据 - 回归问题 无监督学习 :无目标值 1.3 机器学习流程 1.4 Scikit-learn pip3 install Scikit-learn == 0.19.1 2 sklearn 特征工程 2.1 scikit-learn数据集API 2.2 数据集 2.2.1 小数据集 2.2.2 大数据集 2.2.3 返回值 # 导入鸢尾花 from sklearn . datasets import load_iris 2.2.4 数据集的划分 from sklearn . model_selection import train_test_split x_train , x_test , y_train , y_test = train_test_split ( iris . data , iris . target , test_size = 0.2 , random_state = 22 ) print ( f "测试集:{x_train}, 大小:{x_train.shape}" ) 2.3 特征工程 Feature Engineering sklearn 特征工程 pandas 数据清洗,数据处理 2.3.1 特征抽取API

【SLAM】VINS-MONO解析——vins_estimator流程

蹲街弑〆低调 提交于 2020-03-04 02:48:53
5.vins_estimator 基本上VINS里面绝大部分功能都在这个package下面,包括IMU数据的处理(前端),初始化(我觉得可能属于是前端),滑动窗口(后端),非线性优化(后端),关键帧的选取(部分内容)(前端)。我第一次看的时候,总是抱有一个疑问,就是为什么把这么多内容全都放在这一个node里面。为了回答这个问题,那么首先先搞清楚vins_estimator里面分别具体都是什么,为什么要有这些数据结构/函数,这些函数是怎样工作的。 这个package下面主要以下文件: factor——主要用于非线性优化对各个参数块和残差块的定义,VINS采用的是ceres,所以这部分需要对一些状态量和因子进行继承和重写。 initial——主要用于初始化,VINS采用的初始化策略是先SfM进行视觉初始化,再与IMU进行松耦合。 estimator.cpp——vins_estimator需要的所有函数都放在这里,是一个鸿篇巨制。 estimator_node.cpp——vins_estimator的入口,是一个ROS的node,实际上运行的是这个cpp文件。 feature_manager.cpp——负责管理滑窗内的所有特征点。 parameters.cpp——读取参数,是一个辅助函数。 utility——里面放着用于可视化的函数和tictok计时器。

最简单的机器学习流程 基于sklearn

痴心易碎 提交于 2020-03-03 15:28:54
最简单的机器学习流程 1读取数据 import pandas as pd data = pd.read_csv 2切分数据与标签 datax = data.iloc[ ] datay = data.iloc[ ] 3划分数据集 from sklearn.model_selection import train_test_split x_train,x_test,y_train,y_test = train_test_split(datax,datay,test_size = ,random_state=) 4无量纲化 from sklearn.preprocessing import StandardScaler transfer = StandScaler()x_train_new = transfer.fit_transfrom(x_train)x_test_new = transfer.transform(x_test) 5预估器流程(svm举例) from sklearn.svm import svc estimator = svc(c=1.0,kernel = 'rbf',gamma='auto'....) 6网格搜索,交叉验证暴力求解超参数 from sklearn.model_selection import GridSearchCV c_range=np

vins-mono保存、重载地图、evo工具测试

主宰稳场 提交于 2020-02-27 19:01:22
vins-mono保存、重载地图、evo工具测试 地图保存与加载 先跑起来 修改地图保存的路径 保存地图 重载地图 evo测评 evo工具 修改数据格式 使用evo绘制轨迹 与双目ORB_SLAM2进行对比 下面咱们来对vins-mono地图进行简单测试。 地图保存与加载 vins-mono官方源码地址:https://github.com/HKUST-Aerial-Robotics/VINS-Mono 首先你得把vins-mono跑通,才有后续。按照官网的步骤执行到第三步 步骤如下: 先跑起来 1.先按照官网配置好 cd ~/catkin_ws/src git clone https://github.com/HKUST-Aerial-Robotics/VINS-Mono.git cd .. / catkin_make source ~/catkin_ws/devel/setup.bash 2.打开三个terminal,记得都要先执行 source ~/catkin_ws/devel/setup.bash 然后执行下列: roslaunch vins_estimator euroc.launch roslaunch vins_estimator vins_rviz.launch rosbag play YOUR_PATH_TO_DATASET/MH_01_easy.bag

sklearn模型的保存和加载API--案例癌症(逻辑回归)分类预测

非 Y 不嫁゛ 提交于 2020-02-26 15:10:34
sklearn模型的保存和加载API from sklearn.externals import joblib 。保存:joblib.dump(estimator,'test.pkl') 。加载:estimator=joblib.load('test.pk') 将训练模型保存下来,下次有新的需要预测的数据传进来的时候直接加载模型,然后预测就不用每次都从新训练了。 案例:癌症(逻辑回归)分类预测–良/恶性 import pandas as pd import numpy as np '''# 1、读取数据''' path = "https://archive.ics.uci.edu/ml/machine-learning-databases/breast-cancer-wisconsin/breast-cancer-wisconsin.data" column_name = [ 'Sample code number' , 'Clump Thickness' , 'Uniformity of Cell Size' , 'Uniformity of Cell Shape' , 'Marginal Adhesion' , 'Single Epithelial Cell Size' , 'Bare Nuclei' , 'Bland Chromatin' , 'Normal Nucleoli

深度学习04-keras实例iris数据集+模型保存调用及修改+在sklearn框架内使用Keras模型+交叉验证

元气小坏坏 提交于 2020-02-24 04:07:03
此篇代码接着上一篇,这里查看https://blog.csdn.net/qq_42871249/article/details/104456690 模型的保存与载入 先将模型保存的函数调出来,存贮为checkpoint from keras . callbacks import ModelCheckpoint checkpoint = ModelCheckpoint ( filepath = r 'F:\learning_kecheng\deenlearning\NEW\all_zjwj\iris_best.hdf5' , monitor = 'val_acc' , save_best_only = True , verbose = 1 ) 建立模型 先建立个简单的模型 model = Sequential ( ) model . add ( Dense ( 5 , input_dim = 4 , activation = 'relu' ) ) model . add ( Dense ( 3 , activation = 'softmax' ) ) #softmax保证输出结果为[0,1] model . compile ( loss = 'categorical_crossentropy' , optimizer = 'rmsprop' , metrics = [

[python机器学习及实践(6)]Sklearn实现主成分分析(PCA)

大憨熊 提交于 2020-02-14 03:41:37
1.PCA原理 主成分分析(Principal Component Analysis,PCA), 是一种统计方法。通过正交变换将一组可能存在相关性的变量转换为一组线性不相关的变量,转换后的这组变量叫主成分。 PCA算法: 2.PCA的实现 数据集: 64维的手写数字图像 代码: #coding=utf-8 import numpy as np import pandas as pd from sklearn.decomposition import PCA from matplotlib import pyplot as plt from sklearn.svm import LinearSVC from sklearn.metrics import classification_report #1.初始化一个线性矩阵并求秩 M = np.array([[1,2],[2,4]]) #初始化一个2*2的线性相关矩阵 np.linalg.matrix_rank(M,tol=None) # 计算矩阵的秩 #2.读取训练数据与测试数据集。 digits_train = pd.read_csv('https://archive.ics.uci.edu/ml/machine-learning-databases/optdigits/optdigits.tra', header=None)

scala-MLlib官方文档---spark.ml package--clustering+model selection and hyperparameter tuning

左心房为你撑大大i 提交于 2020-01-25 12:16:25
六、clustering K-means k均值是最常用的聚类算法之一,它将数据点聚集成预定数量的聚类。 MLlib实现包括k-means ++方法的并行变体,称为kmeans ||。 KMeans被实现为Estimator,并生成KMeansModel作为基础模型。 1)Input and Ouputs(输入参数和输出参数) 示例代码 import org.apache.spark.ml.clustering.KMeans import org.apache.spark.ml.evaluation.ClusteringEvaluator // Loads data. val dataset = spark.read.format("libsvm").load("data/mllib/sample_kmeans_data.txt") // Trains a k-means model. val kmeans = new KMeans().setK(2).setSeed(1L) val model = kmeans.fit(dataset) // Make predictions val predictions = model.transform(dataset) // Evaluate clustering by computing Silhouette score val

sklearn 模型选择和评估

纵然是瞬间 提交于 2020-01-24 16:27:04
一、模型验证方法如下: 通过交叉验证得分:model_sleection.cross_val_score(estimator,X) 对每个输入数据点产生交叉验证估计:model_selection.cross_val_predict(estimator,X) 计算并绘制模型的学习率曲线:model_selection.learning_curve(estimator,X,y) 计算并绘制模型的验证曲线:model_selection.validation(estimator,...) 通过排序评估交叉验证的得分在重要性:model_selection.permutation_test_score(...) ①通过交叉验证得分:model_sleection.cross_val_score(estimator,X) import numpy as np from sklearn.model_selection import cross_val_score from sklearn import datasets,svm digits=datasets.load_digits() X=digits.data y=digits.target svc=svm.SVC(kernel='linear') C_s=np.logspace(-10,0,10) print("参数列表长度",len