ML and DL
文章平均质量分 63
记录机器学习和深度学习
hellopbc
追求代码世界的白话(转战UEFI)
展开
-
dmlc/xgboost的简要概述和安装
xgboost:Extreme Gradient Boosting,极限梯度增强树xgboost 的model(模型): tree ensembles(树集成)。树集成模型是一组 classification and regression trees (CART)。CART 与 decision trees(决策树)有些许的不同,就是叶子只包含决策值。在 CART 中,每个叶子都有一个 real score (真实的分数)原创 2022-09-23 21:55:29 · 1115 阅读 · 0 评论 -
huggingface概要
Bert 的输入需要用 [CLS] 和 [SEP] 进行标记,开头用 [CLS],句子结尾用 [SEP]:分词的类型id,比如是个句子对,则属于第一句的token就把他的id设置为0,第二句的就设置为1。: 分词,就是一句话分成的每个词。见ref. bert相关-2。原创 2022-09-23 19:52:37 · 2560 阅读 · 0 评论 -
pytorch Tensor
=可知能转tensor的类型只有:==float64, float32, float16, complex64, complex128, int64, int32, int16, int8, uint8, and bool.前提:即在tensor从cpu转到gpu上时,通过查看其dtype可以发现,他的dtype没有变化,都是torch.xxxx,与预想中会自动转成torch.cuda.xxxx不符,即与设想自动转换成cuda数据类型不一致。,即改变其中一个,另一个也会改变。...原创 2022-08-17 10:42:00 · 327 阅读 · 0 评论 -
model_selection.train_test_split
总结:做数据集划分,也可以这样用:demo原创 2022-08-08 21:29:07 · 677 阅读 · 0 评论 -
model_selection.RepeatedKFold
random_state: 控制随机性,类似随机种子。int, RandomState 或者 None,default=None。n_splits: 折叠次数,至少为2。n_repeats: 重复交叉验证次数。重复K折交叉验证,一般10次10折交叉验证。生成索引(将数据拆分为训练集和测试集)返回交叉验证器中的拆分迭代的数量。具体使用方式见demo。...原创 2022-08-08 21:27:01 · 317 阅读 · 0 评论 -
sklearn的k折交叉验证的详细过程(数据和模型的角度)
前提:一般博客大家都是介绍K折在数据上的拆分,再加一个sklearn代码的demo,就没了。这样对于我来说,这两年就一直停留在这个阶段,知道他甚至感觉熟悉他,就是吃不透他。直到今天,我才想到去看sklearn的交叉验证源码,sklearn的流程一般是公认的。大概知道这个流程,但是由于缺乏看见权威资料什么的一直没敢确定。所以这个卡了2年就很是无语。分析的逻辑:sklearn有现成的k折交叉验证代码,只要看懂了sklearn的流程,体会了它的思路,那么在神经网络上也是一样应用的。分析:进入,第行原创 2022-07-12 11:36:52 · 1499 阅读 · 0 评论 -
Batch Normalization推理验证
Batch Normalization原理Batch Normalization原理随着网络深度的加深,在参数更新的时候,每层的输入值的数据分布会发生变化,导致ICS(Internal Covariate Shift)问题。ICS问题会:反正,网络的训练过程容易陷入梯度饱和区,减缓网络收敛速度。解决上面的问题:一、白化(whitening)主要是PCA白化与ZCA白化。白化是对输入数据分布进行变换,进而达到以下两个目的:使得输入特征分布具有相同的均值与方差。其中PCA白化保证了所有特征分布均值为0,方差为1原创 2022-06-23 11:44:37 · 754 阅读 · 0 评论 -
从计算过程领悟反向传播原理
文章目录反向传播**为什么引入反向传播?**简介原理及推算过程图一:总方程式图二:图一的左上角局部图图三:前向反向图四:反向(一)解决∂a/∂z\partial a / \partial z∂a/∂z图五:反向(二),解决∂C∂a\partial C \over \partial a∂a∂C图六:反向(三),==重点部分==,反着求两个**未知偏导**图七:反向(三-1),假设是算到了**输出层**图八:方向(三-2),假设还没算到输出层反向总结图九:反向总结(九-1)图十:反向总结(九-2)总结反向传原创 2022-03-21 09:07:18 · 452 阅读 · 1 评论 -
统一常见机器学习模型的保存与加载
统一常见机器学习模型的保存与加载包括如下:thundersvmlightgbm(gpu)deepforestxgboost(gpu)sklearn代码:import deepforestimport joblibimport lightgbmimport sklearnfrom sklearn.datasets import make_classificationimport thundersvmimport xgboostimport numpy as npdef原创 2022-02-04 02:44:55 · 2129 阅读 · 0 评论 -
信息增益(ID3)
文章目录信息增益(ID3)**ref****note****demo**信息增益(ID3)ref通俗理解kaggle比赛大杀器xgboostnote信息增益:用于量化分类的效果;用**熵(entropy)**去量化信息增益,熵的取值范围是[0,1]Entropy(S)=−p负log2p负−p正log2p正Entropy(S)=-p_负log_2p_负-p_正log_2p_正Entropy(S)=−p负log2p负−p正log2p正p正p_正p正、p负p_负p负是正、负样本数原创 2021-12-30 10:57:47 · 885 阅读 · 1 评论 -
lightgbm的安装(微软提供)与注意事项
文章目录lightgbm概述安装关于gpu版本和cuda版本lightgbmgithubdoc这里文档的安装指南是CLI版本,不需要。具体安装link进这个:python-package中文文档概述安装install:Exception: Please install CMake and all required dependencies first安装页面有三条依赖环境:Build from Sources section对应不同系统的要求都有原创 2021-12-28 17:16:59 · 1408 阅读 · 0 评论 -
周志华-深度森林(Deep Forest)
文章目录深度森林refnotemore深度森林一种决策数集成方法refDeep ForestDeep Forest,非神经网络的深度模型(周志华)paper pdfpaper 在线原文githubapiapi-参数微调note只要就是理解它的gcForest方法级联森林结构(Cascade Forest)多粒度扫描(Multi-Grained Scanning)Deep Forest,非神经网络的深度模型(周志华)这里说的很清楚more支持自定义级联森林结构的每个e原创 2021-12-27 16:12:59 · 1962 阅读 · 0 评论 -
sklearn naive_bayes
文章目录sklearn naive_bayesrefnotesklearn naive_bayes朴素贝叶斯sklearn.naive_bayes.***NBrefsklearn朴素贝叶斯类库使用小结主要介绍都在这里(2017)python机器学习小记——基于朴素贝叶斯(Native Bayes,NB)模型的分类预测原理介绍note三种贝叶斯分类算法:GaussianNB(高斯朴素贝叶斯)sklearn.naive_bayes.GaussianNB(priors=N原创 2021-12-02 08:58:40 · 1270 阅读 · 0 评论 -
sklearn_scaler
文章目录sklearn_scalerrefnote1. scale 和 StandardScalersklearn_scalersklearn 缩放from sklearn.preprocessing import scalefrom sklearn.preprocessing import StandardScalerrefref1:关于使用sklearn进行数据预处理 —— 归一化/标准化/正则化代码demo和原理说明ref2:真的明白sklearn.preprocessing原创 2021-11-18 14:47:53 · 1248 阅读 · 0 评论 -
shuffle data 随机打乱数据集数据
文章目录shuffle datashuffle data随机打乱数据将数据随机打乱后再训练,有助于模型的训练,否则模型应该更倾向于预测为后半部分的分类(二分类问题中)import randomdef shuffleData(X, y, seed=None): random.seed(seed) index = [i for i in range(len(X))] random.shuffle(index) print(index) X = X[ind原创 2021-10-28 16:08:58 · 1676 阅读 · 0 评论 -
y_pred和y_prob结果不匹配
文章目录y_pred和y_prob结果不匹配y_pred和y_prob结果不匹配问题:y_pred: [1. 1. 1. 1. 1. 1. 1. 1. 1. 0. 0. 0. 1. 1. 0. 0. 1. 1. 0. 1.]y_proba_temp: [[0.5875 0.4125 ] [0.37916667 0.62083333] [0.5125 0.4875 ] [0.30833333 0.69166667] [0.52916667 0原创 2021-10-19 10:24:01 · 746 阅读 · 0 评论 -
scikit-learn-intelex
文章目录scikit-learn-intelexscikit-learn-intelexsklearn加速包ref:官方doc概述:Intel® Extension for Scikit-learn 是一种加速 Scikit-learn 应用程序的无缝方式。加速是通过使用英特尔® oneAPI 数据分析库 ( oneDAL ) 实现的。修补 scikit-learn 使其成为处理现实生活问题的非常适合的机器学习框架。用法:from sklearnex import patch_sklea原创 2021-09-16 14:59:16 · 1854 阅读 · 0 评论 -
lightgbm的使用和参数说明
文章目录lightgbm use_and_tuningusedata interface设置参数训练、预测tuning**ref:****note:**针对 Leaf-wise (最佳优先) 树的参数优化针对更快的训练速度针对更好的准确率处理过拟合lightgbm use_and_tuningusezh_doc python包的相关介绍data interfaceLightGBM Python 模块能够使用以下几种方式来加载数据:libsvm/tsv/csv txt format file(l原创 2021-09-03 10:24:55 · 4989 阅读 · 0 评论 -
ubuntu20.04安装lightgbm的gpu版本
文章目录lightgbm_gpu install概述安装关于gpu版本和cuda版本lightgbm_gpu installgithubdoc这里文档的安装指南是CLI版本,不需要。具体安装link进这个:python-package概述安装install:Exception: Please install CMake and all required dependencies first安装页面有三条依赖环境:Build from Sources secti原创 2021-09-02 22:17:45 · 2331 阅读 · 0 评论 -
Pytorch_Tensor
文章目录Tensor参考文档tensor转cuda查看tensorTypeTensor的cuda类型和gpu类型Tensor参考文档Pytorch 之 Tensor 属性与操作tensor转cudaimport numpy as npdata = ('A', 'd', 'v')data = np.array(data)data = torch.ones((3, 5))print(data)# data = torch.from_numpy(data)data.to("cuda")原创 2021-05-19 20:36:20 · 946 阅读 · 1 评论 -
评价指标(metrics)
文章目录评价指标(metrics)参考文档precision(查准率P)、recall(查全率R)、sensitive(灵敏度、敏感性、真阳率)、specificity(特效度、特异性、真阴率)ROC、AUC画图:(1-specificity,sensitivity)使用sklearn计算查准率-查全率曲线(P-R图)、AUPRF1-score其他评价指标评价指标(metrics)参考文档机器学习中的PR曲线和ROC曲线分类指标准确率(Precision)和正确率(Accuracy)的区别机器学习原创 2021-05-10 22:49:36 · 4469 阅读 · 0 评论 -
BCELoss、crossentropyLoss、NLLLoss的使用(pytorch)
文章目录BCELoss参考文档理解demo应用crossentropyLoss、NLLLoss参考文档crossEntropyLossNLLLossBCELoss用于二分类问题,计算loss值,与sigmoid函数一起使用(就是逻辑回归的那个公式,线性外面套一个sigmoid函数)参考文档pytorch-BCELoss理解看它的参数说明大概能知道:参数weight(张量*,*可选)–对每个批次元素的损失赋予的手动重新缩放重量。如果给定,则必须是大小为nbatch的张量。size_av原创 2021-03-19 20:51:17 · 884 阅读 · 0 评论 -
pytorch_BCELoss的reduction参数理解
文章目录BCELoss参考文档理解BCELoss用于二分类问题,计算loss值,与sigmoid函数一起使用(就是逻辑回归的那个公式,线性外面套一个sigmoid函数)参考文档pytorch-BCELoss理解看它的参数说明大概能知道:参数weight(张量*,*可选)–对每个批次元素的损失赋予的手动重新缩放重量。如果给定,则必须是大小为nbatch的张量。size_average(bool*,*可选)–已弃用(请参阅reduction)。默认情况下,损失是批次中每个损失元素的平均数原创 2021-03-11 20:32:05 · 2471 阅读 · 2 评论 -
BCELoss(binary_crossentropy)的初级使用
BCELoss(binary_crossentropy)代码总结BCELoss(binary_crossentropy)【错了跟我讲,我会改】计算loss用的;求大佬教我,我还可以学代码import torchimport torch.nn as nnm = nn.Sigmoid()loss = nn.BCELoss()input = torch.randn(3, requires_grad=True)target = torch.empty(3).random.原创 2021-03-04 17:13:34 · 852 阅读 · 0 评论 -
pytorch_gru理解
文章目录gru理解(错了告诉我,我可以改)原理图代码(pytorch)总结(直观理解)gru理解(错了告诉我,我可以改)对他的完整计算过程我还不会,只是从输入和结果上做出描述;求大佬教教原理图代码(pytorch)import torchimport torch.nn as nnbatch_size = 3seq_lens = 4input_size = 2hidden_size = 5num_layers = 1bidirectional = Truen_direction原创 2021-03-04 10:07:47 · 1314 阅读 · 4 评论 -
embedding计算过程
文章目录embedding计算过程(错了跟我讲,我会改)参考示例个人理解过程图示总结(基于pytorch)embedding计算过程(错了跟我讲,我会改)参考示例https://www.jianshu.com/p/63e7acc5e890个人理解过程图示总结(基于pytorch)总的来说,就是将独热向量的长度(对应嵌入层的num_embeddings)转变为嵌入层的emdedding_size(而独热向量的维数就是你的数据中一共产生了多少个不一样的词,至少是这么多)。数据的变化,将二维原创 2021-03-03 21:00:29 · 1337 阅读 · 5 评论 -
关于相同数据在RNN cell 和 RNN上运行结果不一致的分析
文章目录关于相同数据在RNN cell 和 RNN上运行结果不一致的分析代码运行结果问题描述分析关于相同数据在RNN cell 和 RNN上运行结果不一致的分析代码import torchimport torch.nn as nnimport torch.nn.functional as Finput_size = 2 # input_size means the lengths of one-hot encode vector, for example, the code [... 128原创 2021-03-03 08:41:34 · 315 阅读 · 3 评论 -
关于RNN Cell的几个参数的通俗理解
具体的说:就是把这些句子,根据batch_size的不同,一次选取batch_size个句子,然后把每个字对应的长度为128的独热向量x。hidden_size:隐层那个向量h的长度大小,也是预期结果想得到的向量长度的大小(即output向量的长度大小)seq_len指的是句子的长度(处理过程中应该是要填充后,都和字数最多的一样长,用的就是这个长度)然后把每个字都映射成128维(假定128)的独热向量,这样每个句子的每个字都是一个x。下面图是代码实现:使用一个循环解决,不同的是x和h的值。原创 2021-03-02 20:43:08 · 2337 阅读 · 7 评论 -
conv2d原理、计算过程、pytorch使用
文章目录conv2d卷积过程单通道三(多)通道多个输出通道(**即改变输出通道**)对应代码【学习于刘二大大视频:https://www.bilibili.com/video/BV1Y7411d7Ys?p=10】conv2d卷积过程向两个维度进行卷积单通道三(多)通道一个通道需要一个kernel画图:多个输出通道(即改变输出通道)卷积核的数量==输出通道的通道数每个卷积核的数量==输入通道的通道数对应代码self.conv1 = nn.Conv2d(in_channel原创 2020-12-30 19:57:05 · 19734 阅读 · 7 评论 -
conda环境的导入与导出
文章目录参考文档导出导入参考文档简书导出旧环境生成renquirements.txt文件,执行命令:pip freeze > requirements.txt创建、打开新环境。执行以下命令:conda create -n environmentname python=3.7导入配置环境。进入项目文件夹下requirements.txt文件所在目录,使用该文件配置环境pip install -r requirements.txt # 创建环境# 或conda install原创 2020-10-13 09:26:35 · 4399 阅读 · 2 评论 -
tensorflow-keras-pytorch-cuda-cudnn版本[不定期更新]
TensorFlow(-gpu),keras,pytorch,cuda,cudnn版本收录[不定期更新]官网版本标配cuda(cudaToolkit)与NVIDIA显卡驱动的版本关系tensorflow最新版本的安装要求tensorflow-gpu与cuda、cudnn的版本关系tensorflow和python的版本关系cudnn与cuda的版本关系tensorflow和keras版本关系其他版本...原创 2020-12-15 17:02:30 · 288 阅读 · 0 评论