- 博客(267)
- 收藏
- 关注
原创 WPS实现公式居中同时编号对齐
定义公式样式(为了方便多次使用):名称可以根据自己需要起。设置字体格式,展开格式小三角,选择字体。设置制表位,第一个是公式所在位置,第二个是编号所在位置。正文中插入公式公式后跟空的(),把光标定位到()内,选择引用-》题注,设置题注格式。选中刚刚输入的公式及其编号,设置样式为自定义的公式敲两次TAB键,一次在公式前,一次在公式和编号的括号之间。最后的成品效果:...
2022-03-25 00:27:25
11945
4
原创 WPS关联EndNoteX9
EndNote9正版链接,这是我看到的一个大佬博文里的链接,里面提供的还有一个百度网盘链接。大佬提供的还有Endnote20,感兴趣的可以都去看看。我在WPS通过com加载项加载endnotex9时一直没反应,试过很多种方法,最后找到了一位知乎大佬的解答,茅塞顿开。总结如下:(原因)endnote是64位的,安装时自动在C:\Program Files\Common Files\ResearchSoft\Cwyw\19生成了供office加载的dll。但是并没有在C:\Program Files
2022-03-22 23:17:14
7581
8
原创 python数据不足位数补0
除了'{:03d}.jpg'.format(3)实现位数不足补零外,自动根据数据位数补零可以这样实现:目标描述:总数据N,当前数据n,将所有n保存时位数设为和N一致,不足的补零。代码实现:import math# N = 143495# n = 2000b=int(math.log10(143495)+1)c = int(math.log10(2000) + 1)pr = b - cpr0 = pr * '0'ps = '{}{}.jpg'.format(pr0, 2000).
2021-08-16 12:12:33
7265
原创 python堆排序实现
首先需要定义一个调整堆的函数,动态调整堆为最大堆def heap_sink(heap, heap_size, parent_index): print("heap_sink") print("heap_size") print("parent_index", parent_index) """最大堆-下沉算法""" child_index = 2 * parent_index + 1 # temp保存需要下沉的父节点,用于最后赋值 temp = h
2021-06-30 20:57:27
141
原创 给定N*M格子,求从左上角走到右下角的走法总数(每次只能往右或往下走一步)python
非递归实现import numpy as npdef walk_nm(N, M): res = np.zeros([N, M]) for i in range(N): res[i, 0] = 1 for j in range(M): res[0, j] = 1 for i in range(N): for j in range(M): if i != 0 and j != 0:
2021-06-29 21:43:13
2693
原创 定义二叉树结点,构建三层二叉树,层序输出(python)
二叉树结点定义class bi_tree: def __init__(self, v): self.value = v self.lsub = None self.rsub = None 构建三层二叉树,形如root_tree = bi_tree(3)left_tree = bi_tree(2)right_tree = bi_tree(4)root_tree.lsub = left_treeroot_tree.rsub = rig
2021-06-29 15:40:31
521
原创 两个feature, 一个n*d, 一个m*d,求他们的l2损失(Numpy实现)
#两个feature, 一个n*d, 一个m*d,求他们的l2损失import numpy as npN = np.random.randint(1, 10, size=(3, 5))print(N)M = np.random.randint(1, 10, size=(6, 5))print(M)for循环实现最初版本# N[n, d]# M[m, d]L0 = np.zeros((N.shape[0], M.shape[0]))for i in range(N.shape[0
2021-06-28 09:45:57
147
原创 XGBoost算法案例与调参实例
XGBoost优化的分布式梯度增强库,旨在实现高效,灵活和便携。在Gradient Boosting框架下实现机器学习算法。提供了并行树提升(也称为GBDT,GBM),可以快速准确地解决许多数据科学问题。 相同的代码在主要的分布式环境(Hadoop,SGE,MPI)上运行,并且可以解决超过数十亿个样例的问题。利用了核外计算并且能够使数据科学家在一个主机上处理数亿的样本数据。最终,将这些技术进行结合来做一个端到端的系统以最少的集群系统来扩展到更大的数据集上。以CART决策树为子模型,通过Gradi
2021-04-26 23:47:25
2499
原创 前向分布算法与梯度提升决策树
前向分布算法思路从前向后,每一步学习一个基函数及其系数,最终逐步逼近优化目标函数式。出自前向分布算法。前向分布算法流程前向分布算法将同时求解从m=1m=1m=1到MMM所有参数βm,γm\beta_m, \gamma_mβm,γm的优化问题简化为逐次求解各个βm,γm\beta_m, \gamma_mβm,γm的优化问题。参见前向分步算法。梯度提升决策树算法出自提升方法与梯度提升决策树。输入:训练集;损失函数L(y,f(x))L(y,f(x))L(y,f(x))输出:回归树f^(x)
2021-04-24 00:53:59
159
原创 Boosting思路与Adaboost算法
Boosting思路类似于bagging集成学习,boosting也是通过重采样得到多个弱分类器,最后得到一个强分类器。区别是boosting是基于权值的弱分类器集成。Boosting流程图1.e表示某个弱分类器的错误分类率,计算用来作为这个分类器的可信度权值a,以及更新采样权值D。2.D表示原始数据的权值矩阵,用来随机采样。刚开始每个样本的采样概率都一样,为1/m。在某个弱分类器分类时,分类错误或对,则D就会根据e相应地增加或减少,那么分错的样本由于D增大,在下一次分类采样时被采样的概率增加了,
2021-04-21 00:17:28
312
原创 Bagging的原理和案例分析
Bagging原理Bagging集成模型最后的预测结果,同时采用一定策略来影响基模型训练,保证基模型可以服从一定的假设。Bagging的核心在于自助采样(bootstrap), 即有放回的从数据集中进行采样。Bagging的基本流程:首先随机取出一个样本放入采样集合中,再把这个样本放回初始数据集,重复K次采样,最终获得一个大小为K的样本集合。同样的方法采样出T个含K个样本的采样集合,然后基于每个采样集合训练出一个基学习器,再将这些基学习器进行结合。对回归问题的预测是通过预测取平均值来进行的。对于
2021-04-18 00:48:21
1282
原创 集成学习之投票法
投票法是一种遵循少数服从多数原则的集成学习模型,通过多个模型的集成降低方差,从而提高模型的鲁棒性。回归投票法:预测结果是所有模型预测结果的平均值。分类投票法:预测结果是所有模型种出现最多的预测结果。分类投票法又可以被划分为硬投票与软投票:硬投票:预测结果是所有投票结果最多出现的类。软投票:预测结果是所有投票结果中概率加和最大的类。当投票合集中使用的模型能预测出清晰的类别标签时,适合使用硬投票。当投票集合中使用的模型能预测类别的概率时,适合使用软投票。软投票同样可以用于那些本身并不预测类成员概
2021-04-14 23:49:21
825
原创 LaTeX多张图排列subfigure和subfloat的使用
\usepackage{subfig}和\subfloat{}需要注意的是使用了\newline来另起一行。......\usepackage{graphicx}\usepackage{subfig}......\begin{document}\begin{figure*}[ht] \subfloat[img 1]{\includegraphics[width=0.3\textwidth]{1.jpg}} \hfill \subfloat[img 2]{\includegraph
2021-04-05 22:15:36
35942
2
原创 分类模型评估及超参数优化
分类问题可以划分为两类:二分类问题及多分类问题,误差和精度误差和精度是性能评估的两个最基本的指标。这两个指标具有很好的普适性,同时适⽤于⼆分类和多分类问题。误差是指分类错误的样本数占样本总数的⽐例,精度是指分类正确的样本数占样本总数的⽐例。f(x)f(x)f(x)表⽰模型的预测值, signsignsign函数当其内部条件满⾜是为111 不满⾜时为000。准确率,召回率和 F Score准确率,召回率和 F Score 是评价⼆分类问题的重要评价指标。准确率(Precision)和召回率(R
2021-03-30 00:45:44
732
原创 (DataWhale组队学习)集成学习之机器学习基础——掌握基本的分类模型
本文是记录(DataWhale组队学习)集成学习上Task5学习过程中遇到的一些比较重要的概念。个人感觉每个概念都非常重要且涉及内容很多,全部放在一篇文章中既会让文章晦涩难懂,也不便于理解。所以在这篇博文中只是阐述他们的基本概念,后续会抽时间对每个概念分篇逐一详述。回归中度量模型好坏的指标逻辑回归模型基于概率的分类模型线性判别分析贝叶斯朴素贝叶斯降维决策树回归决策树分类决策树基尼系数交叉熵支持向量机非线性支持向量机核函数参考资料:DataWhale——team-learni
2021-03-27 23:56:17
185
原创 机器学习参数与超参及超参调优
参数定义:模型内部的配置变量,可以用数据估计它的值。特征:进行模型预测时需要模型参数。模型参数值可以定义模型功能。模型参数用数据估计或数据学习得到。模型参数一般不由实践者手动设置。模型参数通常作为学习模型的一部分保存。例子:人造神经网络中的权重。支持向量机中的支持向量。线性回归或逻辑回归中的系数。超参数定义:模型外部的配置,其值不能从数据估计得到。特征:模型超参数常应用于估计模型参数的过程中。模型超参数通常由实践者直接指定。模型超参数通常可以使用启发式方法来设置。模
2021-03-24 20:16:45
1946
原创 机器学习中的方差与偏差
方差与偏差的定义方差与偏差的数学公式方差与偏差的重要性特征提取最优子集选择向前逐步选择正则化降维参考资料:偏差(Bias)与方差(Variance)机器学习模型的偏差与方差、过拟合和欠拟合http://scott.fortmann-roe.com/docs/BiasVariance.html...
2021-03-22 23:06:31
3318
原创 python导入不同目录下的py文件
这是我整个项目的目录结构,我要在train.ipynb中导入RAS文件夹下的test_jyx.py中的get_mask函数。这是RAS文件夹下的目录结构。train.ipynb代码如下在test_jyx.py文件中添加import osimport sys current_dir = os.getcwd() + '/RAS'sys.path.append(current_dir)我个人的理解,在train.ipynb 中调用RAS文件夹下的test_jyx.py中的get_mask
2021-03-22 19:46:59
1532
原创 phthon中路径名的操作
os.path.join() 将分离的部分合成一个整体filename=os.path.join('/testuser/path_test','join_test')print(filename)os.path.splitext()将路径和拓展名分开fname,fename=os.path.splitext('/testuser/path_test/split_test.py')print(fname)print(fename)os.path.split()返回文件路径和文件名dir
2021-03-22 16:26:09
96
原创 机器学习项目流程之度量指标和模型的选择
完整的机器学习项目流程:1)明确项目任务即回归还是分类2)收集数据集并选择合适的特征3)选择合适的指标用来度量模型性能4)选择合适的模型并训练优化模型。5)评估利用选择的度量指标衡量模型性能并调参回归问题中度量模型性能的指标:均方误差(MSE)MSE对误差进行的平方,意味着误差值越大,其平方值更大,对大误差值会十分敏感。均方根误差(RMSE)平均绝对误差(MAE)确定系数R^2 (R-Squared)度量因变量的变异中可由自变量解释部分所占的比例,取值范围是 0~1。值越接近
2021-03-19 01:02:00
854
原创 归一化、标准化和正则化
归一化把数据缩放到[0,1]范围内,常用方法是min-max scaling。标准化将数据缩放到符合均值为0标准差为1的正态分布。常用方法是z-score normalization。正则化向模型的损失函数中添加正则项防止过拟合。一般有L1正则和L2正则。L1正则和L2正则是由添加的正则项是什么范数决定的。L1正则是添加L1范数。L2正则是添加L2范数。参考资料:About Feature Scaling and Normalization – and the effect of
2021-03-16 15:13:03
174
原创 (DataWhale组队学习)集成学习之机器学习基础——机器学习三大主要任务
有监督学习和无监督学习的区别有监督学习:对具有标记的训练样本进行学习,以尽可能对训练样本集外的数据进行分类预测。常用的方法有线性回归(LR),支持向量机(SVM),置信度传播(BP),随机森林(RF),梯度提升迭代决策树( GBDT)无监督学习:对未标记的样本进行训练学习,并发现这些样本中的结构知识。常用方法K均值聚类(KMeans),深度学习 (DL)。回归和分类(有监督学习)回归:因变量是连续型变量,如:房价,体重等。分类:因变量是离散型变量,如:是否患癌症,西瓜是好瓜还是坏瓜等。分类与
2021-03-15 20:49:04
211
原创 归一化、中心化和标准化
归一化:将样本的特征值转换到同一量纲下,把数据映射到[0,1]或者[-1, 1]区间内。(x - X_min) / (X_max - X_min)对不同特征维度的归一化的目的是使各个特征维度对目标函数的影响权重是一致的,提高迭代求解的收敛速度和精度。归一化消除了不同特征之间的数值相差很大从而导致结果不同的因素,但是数据会失去原始的一些信息。中心化:将数据均值变为0。x - μ标准化:依照特征矩阵的列处理数据,通过求z-score的方法,转换为标准正态分布。(x - μ)/σ对不同
2021-03-14 11:04:21
369
1
原创 pytorch nn.conv2d参数个数计算
nn.conv2d(256, 256, 3, 3)假设输入大小为[3, 128, 128],输出的大小则为128-3+1=126,这一层参数个数为256*3*3+256=2560.假设输入尺寸为[C_in, H, W],则输出大小计算公式为[C_out, (H-K+2*P)/S+1, (W-K+2*P)/S+1]。其中C_in是输入通道数,H,W是数据的尺寸,K是核大小,P是padding大小,S是步长stride大小。nn.conv2d(C_in, C_out, K, K)参数个数的计算公式为C_
2021-03-12 18:23:00
4265
原创 LeetCode560:和为K的数组
给定一个整数数组和一个整数 k,你需要找到该数组中和为 k 的连续的子数组的个数。示例 1 :输入:nums = [1,1,1], k = 2输出: 2 , [1,1] 与 [1,1] 为两种不同的情况。说明 :数组的长度为 [1, 20,000]。数组中元素的范围是 [-1000, 1000] ,且整数 k 的范围是 [-1e7, 1e7]。来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/subarray-sum-equals-
2021-03-12 17:16:00
378
原创 ImportError: IProgress not found. Please update jupyter and ipywidgets.
解决方法:conda install -n base -c conda-forge widgetsnbextensionconda install -n py36 -c conda-forge ipywidgets注意:-n指定了anaconda创建的环境名。第一条语句-n base指的是anaconda的基本环境,第二条语句的-n py36需要根据具体情况设定。像我的环境是torch1.4.0,相应的我第二句命令就是conda install -n torch1.4.0 -c conda-forg
2021-03-11 11:30:58
835
原创 论文阅读——A Disentangling Invertible Interpretation Network for Explaining Latent Representations
摘要:网络框架图:按照我的理解,这篇论文的核心应该是T。但是论文中并没有给出T的具体结构图,只是一堆的理论和公式。所以感兴趣的可以仔细阅读,寻找答案。论文地址:CVPR代码地址:GitHub...
2021-03-04 22:10:26
396
2
原创 论文阅读——A Unified Feature Disentangler for Multi-Domain Image Translation and Manipulation
摘要:方法总览图:网络架构图:论文地址:arXivNeurIPS代码地址:GitHub(pytorch)
2021-03-04 21:50:45
384
1
原创 pytorch网络模型结构的总结打印
在keras中可以通过model.summary()打印出模型的结构,类似这样:在pytorch中想要实现类似的功能,直接打印模型就可以了。例如from torchvision import modelsmodel = models.vgg16()print(model)输出结果VGG ( (features): Sequential ( (0): Conv2d(3, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1))
2021-03-03 21:09:00
6755
1
原创 RuntimeError: Found 0 images in subfolders of: ./data
在使用torchvision.datasets.ImageFolder(path, transform)进行加载图片时报错。出错代码如下。dataset = torchvision.datasets.ImageFolder('../cocotrain/', transform=data_transform)data_loader = torch.utils.data.DataLoader(dataset, batch_size=batch_size, shuffle=True)报的错误是:Runt
2021-03-03 21:04:10
1218
1
原创 论文阅读——Two-Stage Peer-Regularized Feature Recombination for Arbitrary Image Style Transfer
摘要:论文框架图:TPFR模块:论文地址:CVPR代码地址:Two-Stage Peer-Regularized Feature Recombination for Arbitrary Image Style TransferIntroduction中一些感觉有用的内容(个人喜好):NST has seen a tremendous growth within the deep learning community and spans a wide spectrum of appli.
2021-03-03 20:58:24
204
2
原创 论文阅读——Semantic-related image style transfer with dual-consistency loss
摘要:论文框架图:
2021-03-03 15:42:04
209
1
原创 论文阅读——Direction-aware neural style transfer with texture enhancement
摘要:论文主框架:方向感知的NST阶段:方向域损失网络:
2021-03-02 20:39:39
196
原创 论文阅读——Neural Style Transfer via Meta Networks
摘要:框架图:论文地址:arXiv版本CVPR版本代码地址:官方GitHub地址(Caffe)官方认可的pytorch版本
2021-03-02 17:11:02
454
原创 Anaconda安装TensorFlow2.2.0
前提:电脑配置的有GPU命令:conda install -c anaconda tensorflow-gpu=2.2.0这个命令会自动安装对应你PGU版本的cudatoolkit。参考链接:anaconda / packages / tensorflow-gpu 2.3.0
2021-03-01 20:09:19
1027
原创 论文阅读——Learning Linear Transformations for Fast Image and Video Style Transfer
这篇论文正式版本被CVPR收录,名为“Learning Linear Transformations for Fast Image and Video Style Transfer”。但是正式版本的电子版下载后加载出错,部分内容缺失。只能在线或者打印出来。在被CVPR收录前发表在arXiv上,名为“Learning Linear Transformations for Fast Arbitrary Style Transfer”。CVPR版摘要:arXiv版摘要:框架图:论文地址:CVPR
2021-03-01 20:06:53
678
原创 论文阅读——Semantic-aware neural style transfer
摘要:论文地址:Semantic-aware neural style transfer
2021-02-24 17:14:32
327
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人