自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(44)
  • 收藏
  • 关注

原创 lxml和Xpath实战

百度页面部分爬取import requestsfrom lxml import etree#定义被爬取的网页url = "https://www.baidu.com/"#定义请求头headers = { "User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/61.0.3163.100 Safari/537.36",

2020-05-29 09:08:55 234

原创 爬虫基础--lxml库和Xpath语法

from lxml import etree"""1.读取html字符串"""text = \"""<tr class="hots"> <td class="1">hot1</td> <td class="2">hot2</td> <td class="3">hot3</td> <td class="4">hot4</td> <td clas

2020-05-28 19:30:17 239

原创 爬虫数据提取--Xpath语法

爬虫数据提取–Xpath语法Xpath语法1、节点选取2、谓语3、通配符4.选取多个路径|:和应用//div[@class=“nav-items”]/ul/li[1]/a 子标签值的获取//header[@class = ‘main-hd’]/span[1]/@title 获得子标签下某个属性值的获取...

2020-05-28 12:48:02 263

原创 爬虫数据提取--正则表达式

正则表达式匹配规则单字符匹配学习正则表达式一定要从简单语法到复杂语法,逐渐过渡。"""正则表达式"""import re'''1、匹配某个字符串:match()----只能匹配某一个字符串'''text0 = 'python'#即使匹配错误也不报错,返回none【必须从开头开始匹配,开头错误就直接none,例如text = 'cpython'】result0 = re.match('py',text0)print(result0)#只返回一个对象。#group()方法:输

2020-05-28 00:41:51 414

原创 爬虫基础——url

爬虫基础——你真的了解url(网址)吗?

2020-05-26 10:35:40 280

原创 爬虫基础——网络请求

爬虫基础——网络请求

2020-05-26 10:30:14 185

原创 MySQL基础

MySQL必知必会

2020-05-24 20:56:25 101

原创 机器学习--三天夯实基础--基础算法、模型评估与调优

1、sklearn数据集与估计器scikit-learn数据集API介绍sklearn.datasets加载获取流行数据集datasets.load_*()获取小规模数据集,数据包含在datasets里datasets.fetch_*(data_home=None)获取大规模数据集,需要从网络上下载,函数的第一个参数是data_home,表示数据集下载的目录,默认是 ~/scikit_learn_data/获取数据集返回的类型load和fetch返回的数据类型datasets.base

2020-05-23 00:07:51 303

原创 机器学习---三天夯实基础--特征工程和特征预处理

特征工程数据集的组成:特征值+目标值特征工程的定义特征工程包含:数据特征抽取、数据特征预处理、数据降维。特征抽取实例演示from sklearn.feature_extraction.text import CountVectorizer## # 实例化CountVectorizer#vector = CountVectorizer()## # 调用fit_transform输入并转换数据res = vector.fit_transform(["life is shor

2020-05-22 15:53:16 176

原创 特征处理--数值特征处理

项目工作流程:离散值处理LabelEncoder:用的比较多MapOne-hot EncodingGet Dummy:比较好用,用的多在pandas中二值特征处理普通watched = np.array(popsong_df['listen_count']) watched[watched >= 1] = 1popsong_df['watched'] = watchedpopsong_df.head(10)Binarizerfrom sklearn.preprocess

2020-05-21 20:26:45 542

原创 经典神经网络架构

整体概述前4个是目标分类的经典网络Alexnet(现在用的少)卷积核比较大local response norm层后来被证明是无用的。Vgg卷积核都是3X3:细粒度特征提取。特点:在maxpool后,把损失的特征弥补起来,用厚度翻倍弥补长和宽。Vgg的时间会比Alexnet长很多,如Alexnet8小时,Vgg需要3天。Resnet残差网络对于问题:56层比20层的错误率要更高。Resnet提出解决方案:在20层以后,当经过两次卷积,若结果不好就跳过第二层卷积,把之前的输入加回

2020-05-20 20:24:47 284

原创 深度学习--递归神经网络RNN和LSTM

RNN:递归神经网络RNN在自然语言处理方面较好。通常情况下只需要最后一个结果。递归神经网络的反向传播:只要有路线,就需要把梯度传导下去。存在缺点:1、当输入较大时,网络结构比较大,反向梯度传播计算会很慢。2、当梯度计算为0时,参数就无法传递了,也就是会出现梯度消失。3、较前的输入可能信息价值不高,可能对训练造成影响,需要预处理LSTM 长短记忆网络LSTM会去遗忘一些数据例如:C会使值为0的信息剔除,0.5的保留部分,0.8的保留大部分,1 的保留全部门单元利用

2020-05-20 17:46:10 469

原创 深度学习--卷积神经网络(含链式反向梯度传导)

链式反向梯度传导的数学链式求导法则手算例1例2链式求导法则总结-------------------------------------------------------概述卷积神经网络和传统神经网络的区别传统神经网络是把图片的像素整成一列输入,卷积则是立体的、三维的。整体架构卷积神经网络——卷积层假设提取的是3x3x3,角标是ω。x1*ω1最后在新的特征图中得到12卷积核特征图的计算方法和表示上述步长为2,filter也为2。如果有多个不同的卷

2020-05-20 00:18:10 1025

原创 深度学习--传统神经网络

神经网络的起源:线性回归什么是线性回归什么是线性回归线性回归是指用线性关系来描述输入到输出的映射关系。线性回归的优化方法:梯度下降梯度下降的步骤梯度下降的总结线性回归的延伸常见的非线性激励函数Sigmoid函数在y=1和-1之间,梯度约为0 ,梯度就不会更新tahn函数缺点类似于sigmiod函数。ReLU函数神经网络中90%是用到relu函数,梯度等于1,不会出现梯度消失的情况。上图用数学表达激活函数为relu的3层正向传播的神经网络多层线性网

2020-05-19 15:50:59 606

原创 深入学习入门--总体介绍+基本概念

深度学习(Deep Learning)入门必备基本概念(这是一个超链接)神经网络(Neural Network)基础1.1 神经元(Neuron)1.2 权重(weights)1.3 偏差(bias)1.4 激活函数(Activation function)常用的激活函数2.1 sigmoid-用于隐层神经元的输出2.2 ReLu(整流线型单位) - 用于隐层神经元输出神经网络(Neural Network)3.1 输入,输出,隐藏层3.2 MLP(多层传感器)3.3 正向传播(F

2020-05-18 23:37:49 473

原创 基础算法---主成分分析PCA聚类

PCA原理什么是主成分分析如果一个数据集有1w个特征,针对研究目标,不可能分析每一个特征;有些特征间存在高度相关性,相关系数可能高达95%;有些特征是另一些特征的子集;因此需要降维,去掉作用较小的特征。PCA中的数学一:向量的内积向量默认是列向量A和B的单位向量B’的内积,就会A在B上的投影PCA中的数学二:基线性无关:向量正交。正交向量的内积等于0。将图中这组基(蓝色),旋转任意角度,都可以成为一组新的基PCA中的数学三:基变换同理,(3,2)和单位向量y1’、y2’的内积,就

2020-05-18 12:25:37 4108

原创 基础算法--DBSCAN算法

DBSCAN算法原理DBSCAN算法概述概念名词含义1、2核心对象和E邻域:某个点A,在半径E内的密度达到算法的阈值,则A点是核心对象。3、4直接密度可达和密度可达:A点和B点、B点和C点是直接密度可达;A点和C点是密度可达。5边界点:如图中的B、C,如名字的直接含义6离群点:如图中的N,如名字的直接含义算法工作原理假设密度阈值为4。第一步点A半径为E的区域内有4个点达到了阈值。第二步:以A点周边的点为对象,半径为E的区域画圆,有核心对象DEF密度阈值都达到了4。第三步:DE

2020-05-17 12:47:00 1732

原创 基础算法----- K-means

K-means算法原理K-means概述K-means就是将无标签数据分组质心:簇内x求平均,y求平均,均值就是质心。优化目标:簇内距离最小,簇间距离最小K-means算法聚类步骤a:选取K:观察有有几堆(也可以按照业务知识或者其他方式选择K)。b:随机选取初始质心:需要多次计算。c:计算所有点距离初始质心的欧式距离:如果离红色初始质心距离更近,这个点就属于红色簇;离蓝色初始质心更近则归为蓝色簇。d:调整质心:计算红色簇所有点x和y方向求均值,得到新的质心,蓝色同理。e:调整数据

2020-05-16 23:43:07 334

原创 基础算法--支持向量机SVM(support vector machine)

SVM算法原理SVM是什么低维不可分时,转化为高维划分SVM推导决策函数的推导距离的定义:确信度上述推导中得到的超平面面只是可以有很多,那么哪个是最佳的超平面呢?计算每个点到超平面的距离,选择到超平面最近的点,计算这个点到某个超平面A有最大距离,那么这个超平面A就是最佳超平面:1、min:所有样本点中找到距离超平面最小的样本点2、max:找到某个超平面A,使最小距离样本点到某个超平面A有最大距离,A就是最佳超平面||ω||:L2范数目标函数推导增加yi,表示正负

2020-05-16 16:54:34 715

原创 基础算法--贝叶斯算法

贝叶斯算法数学原理贝叶斯算法背景贝叶斯算法推导推导方法1推导方法2根据条件概率公式:①P(A|B) = P(AB)/P(B) ----> P(AB) = P(A|B)·P(B)②P(B|A) = P(AB)/P(A)) ----> P(AB) =P(B|A)·P(A)贝叶斯定理应用实例例1例2代码实战贝叶斯算法API参数(以朴素贝叶斯为例)朴素贝叶斯naive bayes"""朴素贝叶斯:以鸢尾花数据集为例"""

2020-05-15 11:39:26 597

原创 基础算法--随机森林

集成学习例子:单独使用一个基学习器,会因为有数据错误而做出错误判断。集成学习就是,对一个事情做出判断,基学习器1使用LR,2使用KNN,3使用SVM,4使用DT,最后共同判断,如果90%判断事情应该是a,10%认为是b,那么就判断事情符合a。实质:三个臭皮匠,顶个诸葛亮。bagging:n个决策树在一起判断boosting:staking:n种学习器一起判断bagging和boosting用的比较多1、分类问题:典型的DT(决策树)2、回归问题:n个学习器得到的结果求均值3、特征选取集

2020-05-14 23:47:34 2173 1

原创 基础算法-回归决策树

回归决策树算法原理回归决策树算法概述叶子节点按样本的平均数划分回归树模型计算回归树结果其实是一个分段函数那么以什么标准分段呢?这需要计算最优切分点计算最优切分点mse计算最优切分点...

2020-05-14 17:22:30 3942 2

原创 基础算法-分类决策树

决策树算法原理决策树算法概述决策树是其他算法的基础,是一个基学习器,是高级算法的基础决策树其实是模拟了人决策的过程。根节点:第一个节点(如房产)非叶节点:中间节点(如车辆、年收入)一步一步:逐步判断叶节点:最终结果(可以贷款1、不可以贷款0)决策树分类标准分类标准有哪些和参考博客参考博客:张小瓜参考博客:信息增益比 vs 信息增益1、ID3算法–>熵2、C4.5算法–>信息增益率3、CART决策树–>基尼系数先理解熵的计算熵值衡量标准和计算公式p

2020-05-14 15:08:04 323

原创 基础算法-KNN(邻近算法)

KNN算法原理介绍KNN概述knn的线性回归例子房东房屋出租:租多少钱合适呢?找到和自己房子位置、户型等条件类似的n套,它们多少租金,我也多少租金。knn的逻辑回归例子:有已知的4部电影:根据镜头类别多少来分类成动作片和爱情片。有一部未知电影,假设K = 3,那么就计算其与前3部电影的距离d1,d2,d3,当未知电影与爱情片的距离d1、d2小于和动作片的距离d3时,判定未知电影是爱情片。算法核心和实质核心:物以类聚,人以群分实质:找邻居,投票决定原理详述如何找邻居,找几个,如何投

2020-05-13 15:46:34 680

原创 基础算法-逻辑回归

逻辑回归算法原理介绍回归和分类的概念回归----预测的值为连续的值,如预测房价分类----预测的值为分类变量,如预测好人还是坏人逻辑回归的概念实际上是一种分类方法逻辑回归的核心函数:sigmoid函数列方程利用似然函数求解模型评估方法评估模型好坏的一种方式:混淆矩阵召回率:真实值=1里面预测对的比例F1值综合了精确率和召回率逻辑回归API参数详解tol:由于在梯度下降中不断迭代θ,去寻找最小值,在曲线谷底会来回徘徊,可以容忍的精度偏差就是tol,在这个位置偏差

2020-05-13 10:55:25 683

原创 基础算法-梯度下降的原理

数学原理梯度下降梯度下降概述why是用梯度下降:1、求解正规方程时,求矩阵的逆内存消耗比较大,特别是当数据量和Xn非常大时,内存消耗很大。利用梯度下降求解,虽然没有正规方程求解准确,但是降低了内存消耗,是一种折中的办法。梯度下降一般不会达到最小值,一般会在最小值附近徘徊。2、a.一个矩阵是方阵时才可逆。X不一定可逆,虽然numpy库会给出一个伪逆。b.A^-1 =A*/|A|,|A|等于0时就不存在逆梯度下降细节梯度下降只要在梯度上加个负号梯度下降的多种方式批量梯度下降BGD(较

2020-05-11 15:57:35 325

原创 基础算法-线性回归

线性回归线性回归概述一元线性回归模型多元回归模型误差项分析

2020-05-10 13:26:35 425

原创 机器学习简介

简介是什么为什么怎么学

2020-05-10 09:16:40 179

原创 pandas复习(简单数据分析)

基本统计描述分组函数groupby函数生成数据透视表相关分析

2020-05-09 12:06:46 341

原创 pandas入门复习(数据处理)

数据文件的导入和导出缺失值和重复值处理缺失值处理重复值处理slice函数的应用数据抽取数据框合并merge函数数据框计算随机抽样数据标准化数据分组...

2020-05-08 23:00:14 269

原创 pandas入门复习-基础数据类型

Series(系列)认识Series"""Series:1、认识Series(系列) 可以看做是竖起来的Series2、操作Series"""import pandas as pd#生成一个Series【按默认的index 】s_1 = pd.Series([1,2,3,4,5])print(s_1)#自定义indexs_2 = pd.Series([1,2,...

2020-05-08 09:10:01 160

原创 numpy复习

创建array、array属性创建arrayimport numpy as np#一位数组:序列list1 = [1,2,3,4,5]v = np.array(list1)print(v)'''[1 2 3 4 5]'''#二维数组:[多个一维数组构成],有两层中括号m = np.array([list1,list1,list1])print(m)'''[[1 2 ...

2020-05-07 16:32:08 197

原创 数据科学包——pandas快速入门二(处理丢失数据、统计、合并、分组)

一、处理丢失数据Pandas 使用 numpy.NaN 来表示丢失的数据,它不参与计算。#以jupyter为例,导入模块%matplotlib inlineimport pandas as pdimport numpy as npimport matplotlib .pyplot as plt#新建表格dates = pd.date_range( '2019.01.01' , pe...

2020-05-06 17:15:34 335

原创 数据科学包——pandas快速入门一(创建对象、查看、选择数据、修改数据)

一、创建 pandas 对象1.Pandas数据结构SeriesSeries 对象可以理解为一维数组1.1普通初始化import pandas as pdimport numpy as np s = pd.Series([1, 3, 5, np.nan, 6, 8]) #nan代表这个数字未被赋值print(s)'''0 1.01 3.02 5.03 ...

2020-05-05 21:05:34 293

原创 pandas快速入门

简介课程介绍panda能做什么结构化数据分析、数据挖掘,例如学生成绩分析、股票数据分析

2020-05-05 16:51:33 96

原创 数据科学包numpy-初识numpy

1、numpy & pandas 有什么用为什么用numpy & pandas?答:numpy & pandas是科学计算包,转换为矩阵计算,计算速度会快很多倍.2、numpy & pandas 安装anoconda 中自带了很多科学数据包。安装 Anaconda 以及numpy、 Scikit-learn 等必备库,参考以下链接https://blog...

2020-05-04 22:24:14 320

原创 python夯实基础日记-类详解

97.方法没有重载_方法的动态性方法没有重载在其他语言中,可以定义多个重名的方法,只要保证方法签名唯一即可。方法签名包含3个部分:方法名、参数数量、参数类型。Python中,方法的的参数没有类型(调用时确定参数的类型),参数的数量也可以由可变参数控制。因此,Python中是没有方法的重载的。定义一个方法即可有多种调用方式,相当于实现了其他语言中的方法的重载。如果我们在类体中定义了多个重名的...

2020-05-03 01:00:25 243

原创 python夯实基础日记-类

86.面向对象和面向过程的区别_执行者思维_设计者思维面向对象( Object oriented Programming,OOP)编程的思想主要是针对大型件设计而来的。面向对象编程使程序的扩展性更强、可读性更好,使的编程可以像搭积木一样简单。面向对象编程将数据和操作数据相关的方法封装到对象中,组织代码和教据的方式更加接近人的思维,从而大大提高了编程的效率。Python完全采用了面向对象的思想...

2020-05-01 16:41:06 357

原创 python夯实基础日记-函数详解

函数也是对象_内存分析Python中,“一切都是对象”。实际上,执行def定义函数后,系统就创建了相应的函数对象。在定义时就已经创建好了函数对象,调用时无需创建,只是反复调用执行如下程序,然后进行解释:#定义时创建了test01变量存在栈中,test01的id指向堆中的值对象def test01(): print('daxian')#函数带括号表示调用了该函数,执行了函数里面的...

2020-04-30 16:13:04 337

原创 python夯实基础日记-for循环、优化技巧、函数

057.for循环结构_遍历各种可迭代对象_range对象for循环通常用于可迭代对象的遍历,for循环的语法格式如下:for 变量 in 可迭代对象:循环体语句Python中的可迭代对象:1.序列。包含:字符串、列表、元组2.字典3.迭代器对象( iterator)4.生成器函数( generator)我们已经在前面学习了序列、字典等,迭代器对象和生成函数将在后面进行详...

2020-04-29 14:19:25 1124

空空如也

空空如也

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

TA关注的人

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