自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(49)
  • 问答 (1)
  • 收藏
  • 关注

原创 2021年中国大学生保险数字挑战赛参赛总结

2021年中国大学生保险数字挑战赛参赛总结文章目录2021年中国大学生保险数字挑战赛参赛总结比赛成绩赛题理解特征工程数据清洗特征构造算法模型不足比赛成绩A榜排名第8,分数 0.90578985 ;B榜排名第11,分数0.90607387 。赛题理解本次比赛赛题是预测车险续保客户随车非车购买结果,本质上是一个二分类问题。其中训练集中的数据量为 684283, 测试集为80110,数据量不是很大。数据包含以下65个字段:字段名说明client_no客户号dpt机构:共有

2021-07-16 12:45:40 709 2

原创 解决开机进入grub界面

解决开机进入grub界面最近实验室有了linux服务器,所以把双系统中linux安装分区给格式化了。导致开机进入win10中总是会卡在grub命令界面,需要手动打exit才能退出。解决步骤使用管理员模式打开Windows命令行窗口(cmd)输入"bcdboot C:\Windows",(假设C盘为系统盘,不是的请根据自己的情况更改)然后回车。稍等就会出现“已成功创建启动文件”然后重启,会加载一些文件,稍等片刻便会进入windows系统。Grub已经消失不见了。注意bc

2021-04-10 14:54:28 3976 1

原创 用LSTM、GRU来训练字符级的语言模型

用LSTM、GRU来训练字符级的语言模型import torchimport torch.nn as nnimport torch.utils.data as Dataimport torch.autograd as autogradimport torch.optim as optimimport numpy as npfrom torch.autograd import Variable# 读取文件poetrys = []poetry = ''with open("poetryF

2021-03-10 21:58:11 574 1

原创 tags与categories

tags与categories在hexo中使用tags与categories往往需要使用多标签和多分类,这里记录一下它们的用法。tag用法:tags: - 123 - 456tags: [123, 456]多标签写法,这2种都是一样的效果,用哪个都可以,建议使用列表[]式,直观清晰。categories# 这是默认的写法,给文章添加一个分类。categories: 123# 这会将文章分类123/456子分类目录下。categories: [123, 456]这会将文章分

2021-01-30 13:07:05 472

原创 c语言计算一年中的第几天

在网上看到一个非常巧妙高级的计算思想,正好C语言作业有计算一年中第几天的题,就借鉴下算法。借鉴的原博客#include <stdio.h>#include <stdlib.h>struct { int month; int day; int year;}date;int main(){ int m1; printf("请输入年月日"); scanf("%d",&date.year,&date.month,&date.day);

2021-01-05 22:15:07 2051 1

原创 时间序列总结

这周完成了时间序列的比赛,虽然时间有点紧但还是学到了很多东西。大概完成了这周的比赛。通过这次比赛发现自己对数据的特征提取还是比较差,也就是说对数据的敏锐的嗅觉还不够。相信最后的前几名都是深挖了这些数据中的一些内在特征。同时也是第一次参加天池的大数据比赛,抱着试试看的心态,因为对自己最后的成绩也还算满意,总之收获还是很多的。...

2020-08-25 22:43:34 202

原创 模型训练与验证

数据集划分通常分为训练集、线下验证集、线下测试集和线上测试集。对于无时序的数据集:简单划分、交叉验证划分等。对于有时序的数据集:需考虑时序,nested交叉验证划分等。模型选择方面我们一句在验证集熵的效果选择,除了关注效果的均值,还要关注稳健性。对于线上效果可以将线上效果视为一折数据。参数调优方面不建议将精力放在参数调优上;容易过拟合大体的设置参数即可,例如,Xgboost,learning_rate=0.1,nround=200,max_depth=6,应将精力重点放在特征工程;其次是模型融合。掌

2020-08-24 22:15:33 261

原创 时间序列规则

时间序列规则很多比赛都可基于对背景的理解和数据分析来获取有用的规则因为可以被当作特征,简单高效,可解释性高。在时间序列的相关比赛中,周期因子可能是更好的方案。对于中位数、临近数据等简单统计量可以作为特征,因为中位数稳健,均值当分布较符合正态分布时可以使用,临近数据在预测较近的数据可以使用对于支付数据、客流量数据、交通数据等时间序列都通常具有明显的时间周期性。周期性是核心,一般要确定周期长度并且确定周期组成的元素。不过缺点是没有考虑节假日和突发事件。1.获取周期因子。对于周期因子的获取有两种方式。一是

2020-08-22 20:51:26 639

原创 资金流入流出数据分析

这周参加了资金流入流入预测比赛。这个比赛主要是根据余额宝用户的申购赎回数据来预测未来每日的资金流入流出情况,是一个典型的时间序列类赛题。下载数据后可以发现有五个文件。用户信息表,用户申购赎回数表,收益率表,上海银行间拆放利率表。赛题的任务就是利用2013年7月~2014年8月的数据,预测2014年9月每一天申购和赎回的总量。其中申购总量和赎回总量均为连续型变量,我们常采用MSE、MAE、MAPE等为评价指标。赛题评估指标,某些天的异常表现容易严重影响传统的评价指标,尤其是MSE。所以采用积分制,每天10

2020-08-20 22:12:30 1542

原创 在Ubuntu20.04下用华为MindSpore深度学习框架进行lenet网络手写数字识别

mindspore是华为开源的深度学习框架,现如今已经更新到0.6.0版本。今天根据教程使用ubuntu20.04在docker环境下成功安装mindspore。使用官方脚本安装dockercurl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun阿里云镜像加速配置然后使用命令安装mindspore,之前尝试安装gpu版本,但是太麻烦了,cpu相对更省事一些。sudo docker pull mindspore/minds

2020-08-10 22:16:28 905 1

原创 概率论(二)

2020-07-15 14:08:04 312

原创 上传git遇到的几个错误

上传git遇到的几个错误【git】warning: adding embedded git repository这个意思是当前目录下的子文件夹中还有.git的隐藏文件,需要把子文件中的.git文件删除。src refspec xxx does not match any其实就是电脑默认的分支和你当前要上传的分支不一样,所以需要使用命令切换分支git checkout <要切换的分支>fatal:remote origin already exists当前本地和远程仓库已经有关联关

2020-07-13 21:54:05 1428

原创 数学基础之概率论(一)

2020-07-12 08:04:19 223

原创 数学基础之概率论(一)

2020-07-11 22:31:44 126

原创 线性回归

2020-07-08 23:52:12 190

原创 复杂度分析

讲在之前要说一下几种记号。大O记号,大O记号描述了一个算法最坏的情况。因为是假设n>>2,从而通过n的替换来放大函数(常系数可以忽略,低次项可以忽略),并且相比于原式更加简洁也可以反映前者的增长趋势。这也是我们通常参考的时间复杂度。大Ω记号,大Ω记号描述算法最好的情况,也是假设n>>2,从而通过n的替换来缩小函数,这通常是函数的下界。大θ记号,大θ来描述算法的确切情况,是介于大O和大Ω之间的。一个程序的时间复杂度大大影响了程序的时间,所以当我们在做一些有运行时间限制的算

2020-06-25 15:21:42 288

原创 解决w10和ubuntu20.04双系统时间不对问题

解决w10和ubuntu20.04双系统时间不对问题我用的是ubuntu20.04系统,装好后发现w10系统时间比Ubuntu时间慢了八个小时,于是在网上查到了两种解决方法。时间不一致的原因windows与liunx看待系统硬件时间的方式是不一样的。windows把计算机硬件时间当作地方时(local time),即东八区时间。但是linux把计算机硬件时间当作世界统一时间(UTC),所以linux系统时间会在硬件时间基础上增加电脑设置的时区数(东八区就加上8)。所以linux时间设置正确,相对应的

2020-06-18 14:52:10 1817 2

原创 E Sub-process usrbindpkg returned an error code (1)和没有wifi驱动解决办法

E: Sub-process /usr/bin/dpkg returned an error code (1)解决办法在使用apt - get安装软件是会出现此类错误,解决方法现将info文件夹更名sudo mv /var/lib/dpkg/info /var/lib/dpkg/info.bk新建一个新的info文件夹sudo mkdir /var/lib/dpkg/info安装修复``sudo apt-get update$sudoapt-get install -f执行完上一步操作后,在

2020-06-17 11:15:56 299

原创 解决出现无法使用sudo命令情况

解决出现无法使用sudo命令情况无法使用sudo命令通常是在修改sudoers文件时出现的语法错误,导致出现解析错误.这里给出几种解决方法.一、知道root密码在终端输入命令su root输入密码后,使用su命令修改文件,即su visudo二.不知道root密码一般刚安装好系统,如果没有设置root密码,系统会随机分配一个密码.但是我们不知道,因此需要重置一下密码,但是sudo命令不可用.这就很无助了.解决方法:重启电脑,然后在出现电脑品牌图标时快速按Shift键,进入grub页面,选择A

2020-06-17 11:15:26 3133

原创 解决由于intelRST问题导致无法安装ubuntu

我在安装ubuntu20.04和w10双系统时出现了这个问题.当时也是折腾了挺长时间,下面说一下解决方法,以防日后再踩坑.英特尔快速存储技术(RST)和ubuntu是不兼容的,所以我们需要在w10系统中移除掉RST技术.我当时直接找到这个驱动卸载了.然后发现再次安装时依然出现了上图中的问题,跟着二维码里面的解决方法也没有成功.最后通过百度找到了一个很简单的方法.解决步骤按继续,重启进入w10系统中,卸载intelRST驱动.按win+R,在运行窗口中输入msconfig.选择引导->引导

2020-06-17 09:44:36 19670 23

原创 零基础入门CV之街道字符识别(五)

模型集成其实就是集成学习。集成学习方法在机器学习中的集成学习可以在一定程度上提高预测精度,常见的集成学习方法有Stacking、Bagging和Boosting,同时这些集成学习方法与具体验证集划分联系紧密。由于深度学习模型一般需要较长的训练周期,如果硬件设备不允许建议选取留出法,如果需要追求精度可以使用交叉验证的方法。下面假设构建了10折交叉验证,训练得到10个CNN模型。那么在10个CNN模型可以使用如下方式进行集成:对预测的结果的概率值进行平均,然后解码为具体字符;对预测的字符进行投票,

2020-06-02 21:09:56 150

原创 零基础入门CV之街道字符识别(四)

在上一章节我们构建了一个简单的CNN进行训练,并可视化了训练过程中的误差损失和第一个字符预测准确率,但这些还远远不够。一个成熟合格的深度学习训练流程至少具备以下功能:在训练集上进行训练,并在验证集上进行验证;模型可以保存最优的权重,并读取权重;记录下训练集和验证集的精度,便于调参。模型得训练与验证构造验证集在机器学习模型(特别是深度学习模型)的训练过程中,模型是非常容易过拟合的。深度学习模型在不断的训练过程中训练误差会逐渐降低,但测试误差的走势则不一定。在模型的训练过程中,模型只能利用训练数据

2020-05-30 20:52:36 279

原创 零基础入门CV之街道字符识别(三)

卷积神经网络卷积神经网络是一种具有局部连接,权值共享等特性的深层前馈神经网络。用全连接前馈网络来处理图像时,会存在参数太多,导致训练效率低和局部不变性特征等问题。卷积神经网络是怎样解决这些问题的?局部连接。每个神经元不再和上一层的所有神经元相连,而只和一小部分的神经元相连,这样就减小了很多参数。权值共享。一组连接可以共享同一个权重,而不是每个连接有一个不同的权重,这样极大的减小了参数数量。下采样 使用Pooling来减少每层的样本数,进一步减少参数数量,同时还可以提高模型的鲁棒性(鲁棒性指一个系统

2020-05-26 21:32:41 267

原创 零基础入门CV之街道字符识别(二)

数据读取和数据扩增是一个很重要的步骤,处理得好的话可以大大提高模型的准确度。这里主要针对cv比赛的图片读取和扩增。图像读取对于图像数据,python中有很多库可以完成数据读取的操作,比较常见的有Pillow和OpenCV。PillowPillow是Python图像处理函式库(PIL)的一个分支。Pillow提供了常见的图像读取和处理的操作,而且可以与ipython notebook无缝集成,是应用比较广泛的库。# 导入Pillow库from PIL import Image,ImageFilte

2020-05-23 21:12:24 354

原创 零基础入门CV之街道字符识别(一)

我感觉比较费时间的是pytorch的安装,由于在网上找不到一个合适的教程,安装pytorch花了很长时间,主要是网上的教程大多和我的情况不一样。赛题理解在这之前还没有接触过cv这一方向。所以第一眼看到赛题是一种很茫然的感觉。之后看了讲解学到了一个大概的思路。不过数据处理部分也是很重要的。这次的cv比赛是对SVHN街道字符的识别。并且给了数据的字符位置框。数据标签数据标签中有字符的长,宽,字符的编码和左上角坐标x和左上角的坐标y。然后就可以通过给出的数据标签信息进行标签的识别。评测指标这次的评

2020-05-20 13:53:38 517

原创 循环神经网络知识点总结

前馈神经网络中,信息传递是单向的,可以看作是一个复杂的函数,网络的输出只依赖于当前的输入。因此无法处理时序数据。然而循环神经网络是一类具有短期记忆能力的神经网络。在循环神经网络中,神经元不但可以接受其他神经元的其他神经元的信息,也可以接受自身的信息,形成具有环路的网络结构。循环神经网络的参数学习可以通过随时间反向传播算法来学习。随时间反向传播算法即可以按照时间逆序将错误信息一步步往前传递。不过输入序列较长时,可能会有梯度爆炸和梯度消失的问题。梯度爆炸可以用梯度裁剪方法,但梯度消失就需要引入长短时神经网络(

2020-05-17 12:46:40 1497

原创 随机森林知识点总结

随机森林的随机是在构建树时对训练数据点进行随机抽样,分割节点时,考虑特征的随机子集。随机森林由决策树组成,决策树实际上是将空间用超平面进行划分的一种方法,每次分割的时候,都将当前的空间一分为二随机森林生成的树是完全生长的,便于计算每个特征的重要程度。随机森林思想是构建优秀的树,优秀的树需要优秀的特征。那么我们就需要随机改变特征值,然后测试改变前后的误差率。误差率的差距是该特征在树中的重要程度。然后求在每棵树在该特征的误差率之和称为该特征在森林中的重要程度。然后按照重要程度排序,去除森林中重要程度低的部分

2020-05-17 12:46:09 715

原创 神经网络及反向传播算法

神经元是构成神经网络的基本单元,模拟生物神经元的结构和特性,接受输入信号并且产生输出。输入信号要进行加权和激活函数,然后才输出神经元的活性值。激活函数用来增强网络的表示能力和学习能力,需要连续可求导(允许少数点不可导)的非线性函数。可导的激活函数可以直接利用数值优化的方法来学习网络参数(反向传播算法)。并且激活函数及其导数要尽可能简单,减少计算复杂度。然后激活函数的导函数要在一个合适区间内,保证训练的效率和稳定性。下面介绍几种常见的激活函数。sigimod型函数是一类两端饱和的s型曲线,有logist

2020-05-17 12:45:29 1028

原创 朴素贝叶斯原理总结

贝叶斯原理贝叶斯原理其实是用来求“逆向概率”的。所谓“逆向概率”是相对“正向概率”而言。就是从结果推出条件。贝叶斯原理建立在主观判断的基础上:在我们不了解所有客观事实的情况下,同样可以先估计一个值,然后根据实际结果不断进行修正。贝叶斯公式实际上,贝叶斯公式就是求阶后验概率的。朴素贝叶斯它是一种简单但极为强大的预测建模算法。之所以称为朴素贝叶斯,是因为它假设每个输入变量是独立的。这是一个强硬的假设,实际情况并不一定,但是这项技术对于绝大部分的复杂问题仍然非常有效。输入变量就是特征,朴素贝叶斯

2020-05-17 12:45:00 4050

原创 生成对抗网络知识点总结

GAN就是通过生成网络G和判别网络D不断博弈,进而使G学习到数据的分布。如果用到图片生成上,G可以从一段随机数中生成逼真的图像。其中G使一个生成式的网络,它接收一个随机的噪声Z(随机数),通过这个噪声生成图像。D是一个判别网络,判别一张图片是不是真实的。它的输入参数是x,输出x维真实图片的概率。如果是1就代表是真实的图片,如果为0就代表是假的。训练过程中,生成网络G的目标就是尽量生成真实的图片去欺骗判别网络D。而D的目标就是尽量辨别出G生成的假图像和真实的图像。这样,G和D构成了一个动态的“博弈过程”,

2020-05-17 12:44:27 1034

原创 卷积神经网络知识点

卷积神经网络是一种具有局部连接,权值共享等特性的深层前馈神经网络。用全连接前馈网络来处理图像时,会存在参数太多,导致训练效率低和局部不变性特征等问题。卷积神经网络是怎样解决这些问题的?局部连接。每个神经元不再和上一层的所有神经元相连,而只和一小部分的神经元相连,这样就减小了很多参数。权值共享。一组连接可以共享同一个权重,而不是每个连接有一个不同的权重,这样极大的减小了参数数量。下采样 使用Pooling来减少每层的样本数,进一步减少参数数量,同时还可以提高模型的鲁棒性(鲁棒性指一个系统或组织有抵御

2020-05-17 12:44:00 725

原创 soft max回归原理

soft max是一个多分类算法,可以理解为逻辑回归的一般情况。推导思路为:首先证明多项分布属于指数分布族,这样就可以使用广义线性模型来拟合这个多项分布,由广义线性模型推导出的目标函数即为Softmax回归的分类模型。对于输入的数据有K个类别,那么soft max回归主要估算输入数据x_i归属于每一类的概率。其中θ是模型的参数,乘以后者是为了让概率位于[0,1]并且概率之和为1,softmax 回归将输入数据x_i归属于类别j的概率为原理和逻辑回归差不多,也是对代价函数求偏导,利用梯度下降法最

2020-05-17 12:42:59 544

原创 生成学习算法及高斯判别分析

生成学习算法生成学习算法不同于判别式算法。生动来讲,设想要判别一个动物是大象还是小狗。判别式算法就是根据训练集,用逻辑回归或者感知器算法来找到一条直线,作为区分大象还是小狗的边界。接下来只需要计算新动物落到了划分出的哪一个区域中,来给出预测。而生成学习算法则是针对大象的样子来建模。然后,再观察小狗,针对小狗的样子来建模。最后要判断新动物的分类,只需要对比带向和小狗的模型,看看更接近那个训练集...

2020-04-27 21:19:27 327

原创 爬虫第四次任务,实现腾讯新闻爬取

第四次作业总结:这次学习自己的时间比较紧张,没有认真学习到爬虫的知识。这是比较遗憾的,过一段时间有时间的话,会系统学习一下。刚开始的确有认真学习,但是后面由于时间原因,没有办法花大量时间学习,所以只是懂了一些基本的知识。下面的代码有借鉴答案的代码,并非自己原创。from bs4 import BeautifulSoupfrom selenium import webdriver # 启动...

2020-04-27 11:55:27 505

原创 朴素贝叶斯原理推导

贝叶斯原理贝叶斯原理其实是用来求“逆向概率”的。所谓“逆向概率”是相对“正向概率”而言。就是从结果推出条件。贝叶斯原理建立在主观判断的基础上:在我们不了解所有客观事实的情况下,同样可以先估计一个值,然后根据实际结果不断进行修正。贝叶斯公式实际上,贝叶斯公式就是求阶后验概率的。朴素贝叶斯它是一种简单但极为强大的预测建模算法。之所以称为朴素贝叶斯,是因为它假设每个输入变量是独立的。这是一...

2020-04-24 23:49:20 955

原创 爬虫:session和cookie、代理、selenium自动化

在爬取网页过程中,网站为了防止被爬取,会有反爬机制,对于同一个IP地址的大量同类型的访问,会封锁IP,过一段时间后,才能继续访问。如何应对IP被封问题修改请求头,模拟浏览器去访问。采用代理IP并轮换设置访问时间间隔。如何获取代理IP地址从该网站获取: https://www.xicidaili.com/inspect -> 鼠标定位:要获取的代理IP地址,属于class ...

2020-04-24 21:03:52 556

原创 决策树算法讲解

简介决策树算法以树状结构表示数据分类的结果。每一个决策点实现一个具有离散输出的测试函数,记为分支。它基于二元划分策略(类似于二叉树)。一棵决策树包括一个根节点、若干个内部节点(决策点)和若干个叶节点(决策结果)。叶节点对应决策的结果,而其他节点对应一个属性测试。决策树学习的目的就是构建一棵泛化能力强的决策树。在分类问题中,决策树表示基于特征对实例进行分类的过程。它可以认为是 if-then...

2020-04-23 22:37:15 2253

原创 xpath,正则表达式re,bs4总结及实战

xpathxpath使用路径表达式再xml文档中进行导航,是一个标准函数库,还有w3c标准。在 XPath 中,有七种类型的节点:元素、属性、文本、命名空间、处理指令、注释以及文档节点(或称为根节点)。XML 文档是被作为节点树来对待的。树的根被称为文档节点或者根节点。Xpath常用的路径表达式表达式描述nodename选取此节点的所有子节点/从根节点选取所属...

2020-04-22 14:24:41 1865

原创 数据预处理方法总结

数据是机器学习的原料,机器学习是通过对数据的训练才得到某种特性的。因此正确的预处理数据对模型结果的输出尤为重要。-一、数据可能存在的问题数据一开始可能有数据重复,数据缺失,数据存在异常值等情况。二、数据预处理的步骤数据处理主要包括数据的清洗,数据的转化.数据描述,特征选择和特征抽取这几个步骤。1、数据清洗主要通过对缺失值,异常值和重复数据的处理来完成的。对缺失值的处理首先要判断...

2020-04-22 09:42:00 715

原创 正规方程实现多变量线性回归

相比于梯度下降算法,正规方程解法更加简洁。???? = (????????????)−1???????????? 的推导过程:????(????) = 1/ 2????∑ (ℎ????(????(????)) − ????(????))2 ????????=1其中:ℎ????(????) = ???????????? = ????0????0 + ????1????1 + ????2????2+…+????????????????将向量表达形式转为矩阵表达形式,则有????(????) = 1

2020-04-22 08:57:48 410

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除