- 博客(51)
- 资源 (1)
- 收藏
- 关注
原创 论文翻译1-----DSSM:Deep Structured Semantic Models
潜在语义模型,比如LSA,打算在基于关键词匹配经常失败的语义级别上将查询映射到其相关的文档。在该研究中,我们努力开发了一系列基于深层结构的新的潜在语义模型,该模型将queries和documents映射到一个公共的低维空间中,在该低维空间中,被给定的query和一个document的相关性是很容易通过它们之间的距离计算得到。本文提出的深度结构语义模型通过使用点击数据最大化给定query的情况下被点击的文档的条件似然估计进行判别训练。
2022-09-03 20:02:29
535
原创 爬虫入门_9:增量式爬虫
概念:检测网站数据更新的情况,只会爬取网站最新更新出来的数据增量式爬取的核心是去重,去重方法如下:思路:通过redis的set集合实现去重的目的将爬取过程中产生的URL存储到redis的set数据结构中根据sadd(key,value) 的返回结果,判断此 URL 是否已爬取过1 表示没有爬取过,则发起请求; 0 表示已爬取过,则不进行请求示例:在redis中输入以下内容,可以得到下图# 向name(set集)中添加一个'jay'sadd name jaysadd n.
2022-02-20 10:26:14
1648
原创 爬虫入门_8:scrapy框架
scrapy简介框架:是一个集成了很多功能并且具有很强通用性的一个项目模板如何学习框架?专门学习框架封装的各种功能的详细用法scrapy:爬虫中封装好的 一个明星框架。功能:高性能的持久化存储,异步的数据下载,高性能的数据解析,分布式scrapy框架的基本使用环境的安装:mac or linux : pip install scrapywindows:安装wheel:pip install wheel下载twisted下载地址:https:/
2022-02-19 22:36:07
1313
2
原创 爬虫入门_7:动态加载数据处理及案例实战
selenium模块的基本使用简介selenium最初是一个自动化测试工具,而爬虫中使用它主要是为了解决requests无法直接执行JavaScript代码的问题。selenium本质是通过驱动浏览器,完全模拟浏览器的操作,比如跳转、输入、点击、下拉等,来拿到页面渲染之后的结果,可支持多种浏览器。问题:selenium模块和爬虫之间具有怎样的关联?便捷的获取网站中动态加载的数据便捷实现模拟登录selenium模块:基于浏览器自动化的一个模块。环境安装下载安装selenium:pip
2022-02-19 14:33:38
1583
原创 爬虫入门_6:高性能异步爬取及案例实战
基本知识目的:在爬虫中使用异步实现高性能的数据爬取操作异步爬取的方式:多线程,多进程(不建议):好处:可以为相关阻塞的操作单独开启线程或者进程,阻塞操作就可以异步执行弊端:无法无限制的开启多线程或者多进程线程池、进程池(适当的使用):好处:我们可以降低系统对进程或线程创建和销毁的频率,从而很好的降低系统的开销弊端:池中线程或进程的数据是有上限单线程+异步协程(推荐):event_loop:事件循环,相当于一个无限循环,我们可以把一些函数注册到这个时间循环上,当满足某些条件的时候,函数
2022-02-18 06:48:17
424
原创 爬虫入门_5:requests模块高级使用及案例实战
模拟登录模拟登录:爬取基于某些用户的用户信息。cookiecookie:用来让服务器端记录客户端的相关状态。手动处理:通过抓包工具获取cookie值,将该值封装到headers中(不建议)自动处理:cookie值的来源在哪里?模拟登录post请求后,由服务器端创建session会话对象:作用:可以进行请求的发送如果请求过程中产生了cookie,则该cookie会被自动存储/携带在该session对象中创建一个session对象:session=reque
2022-02-18 06:32:57
219
原创 爬虫入门_4:验证码识别及案例实战
反爬机制:验证码。需要识别验证码图片中的数据,用于模拟登陆操作。识别验证码的操作人工肉眼识别(不推荐)第三方自动识别(推荐)需要收费,识别率高地址云打码地址超级鹰地址本文通过OCR技术来对验证码图片数据识别(推荐)免费的,识别率一般实战:需求:识别古诗文网登陆页面中的验证码编码流程将验证码图片进行本地下载进行图片数据识别代码实现验证码识别封装在VerificationCode.py文件里,具体代码如下:import re # 用于正则f
2022-01-14 07:07:46
764
原创 爬虫入门_3:数据解析及案例实战
聚焦爬取:爬取页面中指定的页面内容编码流程:指定url发起请求获取响应数据数据解析持久化存储数据解析分类正则re.M: 多行匹配re.S:单行匹配bs4xpath(***)数据解析原理概述:解析的局部的文本内容都会在标签之间或者标签对应的属性中进行存储进行指定标签的定位标签或者标签对应的属性中存储的数据值进行提取(解析)1. 数据解析—正则表达式正则表达式在线测试地址:https://c.runoob.com/front-end/
2022-01-14 06:28:48
734
原创 爬虫入门_2:requests模块学习及案例实战
1. requets模块初始环境安装pip install requests使用流程指定urlUA伪装请求参数处理基于requests模块发起请求获取响应对象中的数据值持久化存储2. requests案例实战2.1 需求:爬取搜狗首页的页面数据# 导包import requests# step1:指定urlurl = 'https://www.sogou.com/'# step2:发起请求:使用get方法发起get请求,该方法会返回一个响应对象。参数u
2022-01-04 22:18:14
679
原创 爬虫入门_1:爬虫基础简介
由于最近这段时间在学习爬虫相关知识,所以将相关笔记整理出来,分享给大家~~~1.1 爬虫初始及深入爬虫,就是通过编写程序,模拟浏览器上网,然后让其去互联网上抓取数据的过程。1.1.1 爬虫在使用场景中的分类通用爬虫抓取系统种农药组成部分。抓取的是一整张页面数据聚焦爬虫是建立在通用爬虫的基础之上。抓取的是页面中特定的局部内容增量式爬虫检测网站中数据更新的情况。只会抓取网站中最新更新出来的数据1.1.2 反爬&反反爬机制反爬机制:门户网站,可以通过指定相应的策略
2022-01-04 06:50:48
721
原创 python自然语言处理--安装JDK和Stanford Parser
1. 安装JDK和设置JAVA_HOME在windows系统上安装JDK和设置JAVA_HOME的步骤如下:下载JDK,点这里,选择相应的JDK,并单击"Download"安装JDK将JDK安装在您的计算机上,例如: C:\Program Files\Java\jdk1.6.0_02 下,如果需要,也可以安装在其他位置安装完成后,设置JAVA_HOME右键点击“我的电脑”,然后选择“属性”在“高级”选项卡上,选择“环境变量”,然后编辑JAVA_HOME,增加JDK所在位置(例如:
2021-08-23 20:24:57
610
原创 在windows x64上安装CRFPP并进行地址识别【亲测有效】--python自然语言处理实战
安装CRFPP在百度网盘上下载CRF+±0.58链接:点这里提取码:peub在windows x64上安装,需要在\CRF+±0.58\python\中,运行下面两个语句python setup.py buildpython setup.py install说明:python setup.py install 有可能会遇到权限不足的问题, 需要换成管理员模式安装验证是否安装成功,如果导入后没有报错,则安装成功模型训练及预测在DOS里,进入CRF+±0.5
2021-08-07 18:11:00
581
1
原创 相关性分析【用python&pandas实现】
相关分析是指对两个或多个具备相关性的变量元素进行分析,从而衡量两个因素的的相关密切程度,相关性的元素之间需要存在一定的联系或者概率才可以进行相关性分析。判断数据之间的关系,常用的方法有两种:散点图和相关关系。散点图散点图:是判断数据是否具有相关关系最直观的方法。相关系数相关系数是反映两个变量之间线性相关程度的指标(相关系数的平方称为判定系数)常用的衡量变量间相关性的方法主要有三种:Pearson相关系数:即皮尔逊相关系数,用于衡量两个连续性随机变量间的相关系数。Spearman相关系数:
2021-07-14 20:57:36
5420
1
原创 SQL基本知识
1. 数据库概述数据库的两种类型:关系型数据库(Relational Database Management System, RDBMS)和非关系型数据库。关系型数据库的主要产品有:oracle、mysql非关系型数据库的主要产品有:Redis(key-value 存储系统)、MongoDB(基于分布式文件存储的数据库)RDBMS和数据库的关系SQL(Structured Query Language) 是结构化查询语言,是一种用来操作RDBMS的数据库语言,当前关系型数据库都支持使用SQL语言
2021-04-07 21:28:25
206
原创 集成算法--AdaBoost算法【含python代码】
1. 基于数据集多重抽样的分类器将不同的分类器组合起来,称为集成算法(ensemble method) 或者 元算法(meta-algorithm)。使用集成算法会有多种形式:可以是不同算法的集成,也可以是同一算法在不同设置下的集成,还可以是数据集不同部分分配给不同分类器之后的集成。常用的是基于同一种分类器多个不同实例的两种计算方法。bagging: 基于数据随机重抽样的分类器构建方法自举汇聚法(bootstrap aggregating),也称bagging方法,是在从原始数据集中选择S次后得到S个
2020-09-30 07:02:14
2675
1
原创 回归---OLS、LWLR、缩减方法、岭回归、lasso、前向逐步回归【含python代码】
回归的目的就是预测数值型的目标值。最直接的办法就是写出一个目标值的计算公式,即所谓的回归方程,需要求方程中的回归系数。一旦有回归系数,就可以进行预测了,具体做法是用回归系数乘以输入值,再将结果全部加起来,就得到预测值了。下面首先介绍找出最佳拟合直线的两种方法普通最小二乘法(OLS)和局部加权线性回归(LWLR),然后介绍缩减方法,如岭回归、lasso、前向逐步回归。普通最小二乘法(OLS,Ordinary Least Squares)核心思想:对于给定的数据集上,找出最佳拟合直线,使得真实值与预测值之
2020-09-29 20:20:35
1620
原创 【最全的】分类算法的性能度量指标
机器学习分类算法的评价指标有:混淆矩阵(Confuse Matrix)、准确率(Accuracy)、错误率(ErrorRate)、精准率(Precision)和召回率(Recall)、F1 Score、ROC曲线(Receiver Operating Characteristic Curve)、AUC(Area Under the Curve)、KS曲线、Lift值、P-R曲线 。接下来对以上这些指标进行一一解释,并给出多分类问题的综合评价指标,如宏平均、微平均、Kappa系数,最后用一个多分类实例来计算
2020-09-23 22:02:13
2887
原创 有监督学习-----支持向量机(含python实现代码)
支持向量机(support vector machines, SVM)是一种二分类模型,它的基本模型是定义在特征空间上的间隔最大的线性分类器;SVM的的学习策略就是间隔最大化,SVM的的学习算法就是求解凸二次规划的最优化算法。SVM的实现中,最流行的一种实现是序列最小优化(Sequential Minimal Optimization, SMO)。SVM可以使用核函数(kernel)的方式,可以对非线性可分的数据进行分类。原理希望找到离分隔超平面最近的点,确保它们离分隔面的距离尽可能远。这里点到分隔面
2020-09-09 21:09:09
1386
原创 python 简单实现进度条
python实现import sys, timen = 100print("耐心等待......")for i in range(1, n): # \r回到当前行首的位置 rate = (i+1) / float(n) rate_str = str(int(rate * 100)) print("\r" +'完成率为: '+ rate_str +"%", end='', flush=True) sys.stdout.flush() # 立即刷新输出的内容
2020-08-17 16:48:09
255
原创 监督学习--逻辑回归
逻辑回归(Logistic Regression,LR)是分类常用的算法。逻辑回归在西瓜书中又被称为对数几率回归。进行分类的主要思想是:根据现有数据对分类边界线建立回归公式,以此进行分类。训练分类器时的做法就是寻找最佳拟合参数,使用的是最优化算法。适合数据类型:数值型优点:计算代价不高,易于理解和实现缺点:容易欠拟合,分类精度可能不高原理正负类区分正负类没有明确区分,但是按经验来说负类(0):一般表示没有什么,比如没有癌症,非垃圾邮件正类(1):一般表示具有我们要寻找的东西,比如 有癌症,
2020-08-04 22:23:05
897
原创 朴素贝叶斯的应用----文档分类、垃圾邮件过滤
1. 基于朴素贝叶斯的文档分类 以在线社区的留言板为例。为了不影响社区的发展,需要屏蔽侮辱性的言论,所以要构件一个快速过滤器,如果某条留言使用了负面或者侮辱性的语言,那么久将该留言标识为内容不当。过滤这类内容是一个很常见的需求。对此问题建立两个类别:侮辱类和非侮辱类,使用1和0分别表示。 把文本看成单词向量或者词条向量,也就是说将句子转换为向量。考虑出现在所有文档中的所有单词,需要构件词汇表,然后必须要将每一篇文档转换为词汇表上的向量。 这里的留言文本数据,已经被切分好,存放在列表中,并且
2020-07-27 22:08:32
802
原创 朴素贝叶斯原理【详细介绍,一文看懂】
贝叶斯分类算法是统计学是一种概率分类方法,朴素贝叶斯分类时贝叶斯分类中最简单的一种。利用贝叶斯公式根据某特征的先验概率计算出其后延概率,然后选择具有最大后延概率的类作为该特征所属的类。朴素贝叶斯,称之为“朴素”,是因为整个形式化过程只做了最原始、最简单的假设,具体假设如下:特征之间相互独立每个特征同等重要1. 概率相关先验概率: 比如向女生表白成功的概率是20%,记为P(A)=20%条件概率:在事件B发生的情况下,事件A发生的概率,用P(A|B)表示,具体计算公式如下。如帅的前提下,向女生表白
2020-07-27 22:04:07
4064
原创 利用Python进行数据分析(中文第一版)
通过对《利用Python进行数据分析》这本中文书的学习,了解和掌握了很多python相关知识,将自己编写的脚本和数据集附上。 由于我用的是python3.6版本,用书中有些地方会报错,所以,我的代码中会有相关修改,保证运行成功!数据集+脚本点这里环境说明系统:Win10python版本:3.6数据集说明 数据集多集中在‘datasets.rar’压缩包中,具体包括以下数据集:具体章节 主要包括以下代码,具体脚本链接点这里第2章:引言第3章:python基础
2020-06-29 06:37:33
574
原创 【python3】 csv/txt/excel/pkl/json/html文件读写
python3 pandas文件的读写csv文件读写csv读取1. 数据中有索引列(时间类型),第一行为列名import pandas as pd## 方法一## 在调用read_csv()方法时指定engine为Python,避免文件名含中文报错volume=pd.read_csv('volume.csv',engine = 'python', parse_dates=True,index_col=0)volume.head()## 方法二# 也可用read_table 默认分隔符‘
2020-06-22 09:36:54
559
原创 Pycharm 设置默认文件头
在Pycharm中创建py文件时,希望每次能自动添加默认文件头。打开Pycharm后,按照如下进行设置:File -> settings -> Editor -> File and Code Templates -> Python Script找到Python Script选项,然后将以下内容添加进文本框,点击 ok 即可:# !/usr/bin/env python# -*-coding:utf-8 -*-"""# File : ${NAME}.py#
2020-06-06 09:52:56
4697
原创 决策树算法--CART分类树算法
ID3和C4.5算法,生成的决策树是多叉树,只能处理分类不能处理回归。而CART(classification and regression tree)分类回归树算法,既可用于分类也可用于回归。 分类树的输出是样本的类别, 回归树的输出是一个实数。CART算法步骤特征选择;递归建立决策树;决策树剪枝;CART分类树算法ID3中使用了信息增益选择特征,增益大优先选择。C4.5中,采用信息增益率选择特征,减少因特征值多导致信息增益大的问题。CART分类树算法使用基尼系数选择特征,基尼系数代表了
2020-05-10 22:15:15
3175
原创 决策树算法--CART回归树算法
分类树与回归树的区别在样本的输出,如果样本输出是离散值,这是分类树;样本输出是连续值,这是回归树。分类树的输出是样本的类别,回归树的输出是一个实数。分类模型:采用基尼系数的大小度量特征各个划分点的优劣。回归模型:采用误差平方和度量。建立CART回归树步骤输入:训练数据集D输出:回归树T计算各个特征各个值划分的两部分 D1和D2D_1和D_2D1和D2 的误差平方和,选择误差平方和最小的(如下式)作为最优特征和最优切分点minA,a[minc1∑xiϵD1(A,a)(yi−c1)2+
2020-05-10 21:54:05
1112
原创 决策树算法--C4.5算法
C4.5算法是用于生成决策树的一种经典算法,是ID3算法的一种延伸和优化。C4.5算法对ID3算法进行了改进 ,改进点主要有:用信息增益率来选择划分特征,克服了用信息增益选择的不足,但信息增益率对可取值数目较少的属性有所偏好;能够处理离散型和连续型的属性类型,即将连续型的属性进行离散化处理;能够处理具有缺失属性值的训练数据;在构造树的过程中进行剪枝;特征选择特征选择也即选择最优划分属性,从当前数据的特征中选择一个特征作为当前节点的划分标准。 随着划分过程不断进行,希望决策树的分支节点所包含的
2020-05-10 21:28:40
5460
1
原创 上传本地文件(夹)到GitHub和更新仓库文件
本人在网上查了很多关于github上传的资料,终于,上传成功,中间踩了很多坑(可能是本人了解比较少),所以,写下这篇文章,希望给和我遇到相同问题的小伙伴们,能提供参考。1. 使用git上传文件到github下载git客户端,并在本地安装完成打开这个网址:https://git-scm.com/downloads选择你所对应的系统进行下载,并安装打开github官网...
2020-04-26 10:33:06
799
原创 决策树算法--ID3算法
决策树算法–ID3算法决策树(Decision Tree)是一类常见的机器学习方法,是一种非常常用的分类方法,它是一种监督学习。常见的决策树算法有ID3,C4.5、C5.0和CART(classification and regression tree),CART的分类效果一般要优于其他决策树。决策树是基于树状结构来进行决策的,一般地,一棵决策树包含一个根节点、若干个内部节点和若干个叶节点。...
2020-04-20 22:03:59
3598
原创 提取pdf文件中的文字
提取pdf文件中的文字环境说明windows10系统python3.6版本安装网上很多说需要安装pdfminer3k和pdfminer3k.six,我尝试了先安装pdfminer3k后安装pdfminer3k.six,但是安装后都会导致pdfminer3k里面的相关包不见了,最终我发现提取pdf文件中的文字,只需要安装pdfminer3k.six一个包即可安装语句pip instal...
2020-04-13 20:08:11
761
原创 python安装basemap【在地图上绘制2D数据】
python安装basemapbasemap工具集(https://matplotlib.org/basemap/)使得我们能够用python在地图上绘制2D数据。basemap提供了许多不同的地球投影一级一种将地球上的经纬度坐标投影转换为二维matplotlib图的方式打开网址(点这里),下载basemap和pyproj这两个安装包,找到适应自己电脑和python的对应版本安装 ...
2020-04-03 22:20:11
1371
原创 python 安装 basemap
basemap工具集(https://matplotlib.org/basemap/)使得我们能够用python在地图上绘制2D数据。basemap提供了许多不同的地球投影一级一种将地球上的经纬度坐标投影转换为二维matplotlib图的方式打开网址(点这里),下载basemap和pyproj这两个安装包,找到适应自己电脑和python的对应版本安装先执行pip install pypro...
2020-04-03 19:24:20
324
原创 kNN算法
k近邻(k-Nearest Neighbor,kNN)算法是机器学习算法中最基础、最简单的算法之一。它既能用于分类,也能用于回归。kNN通过计算不同特征值之间的距离来进行分类或回归。 具体的距离计算公式点这里kNN分类算法基本思想输入没有标签的数据后,将这个没有标签的数据的每个特征与训练集中的数据对应的特征进行比较,然后提取特征最相近的数据(最近邻)的分类标签。一般而言,只选择样本数据集中...
2020-03-30 19:52:25
931
原创 FP-growth算法
FP-growth算法FP-growth算法将数据集存储在一种称作FP树的紧凑数据结构中,然后发现频繁项集或者频繁项对,即常在一块出现的元素项的集合FP树。FP代表频繁模式(Frequent Pattern)。FP树通过链接(link)来连接相似元素,被连起来的元素项可以看成一个链表。本文代码主要来源于《机器学习实战》书,为了适配python3.6,部分代码做了修改。FP树的一个例子如下...
2020-03-26 19:51:31
561
1
原创 关联分析--Apriori算法
关联分析–Apriori算法关联分析是一种在大规模数据集中寻找有趣关系的任务。这些关系有两种形式:频繁项集或关联规则。频繁项集是指经常出现在一起的物品集合。关联规则暗示两个物品之间可能存在很强的关系。 如 “{尿布} —> {啤酒}”这条关联规则,意味着如果有人买了尿布,就很可能也会买啤酒使用频繁项集和关联规则,使商家可以更好的理解他们的顾客。大部分关联规则分析来自于零售...
2020-03-23 16:36:48
843
原创 特征值分解和奇异值分解
特征值分解特征值分解是将一个方阵A分解为如下形式:A=QΣQ−1A=Q\Sigma Q^{-1}A=QΣQ−1其中,Q是方阵A的特征向量组成的矩阵,Σ\SigmaΣ是一个对角矩阵,对角线元素是特征值。通过特征值分解得到的前N个特征向量,表示矩阵A最主要的N个变化方向。利用这前N个变化方向,就可以近似这个矩阵(变换) 。奇异值分解奇异值分解(Singular Value Decomp...
2020-03-19 22:12:27
1309
原创 数据降维--主成分分析PCA
主成分分析法(PCA,principal components analysis)试图找到一个低维平面对数据进行投影,最小化投影误差的平方,即最小化数据与投影后的对应点之间的距离的平方值在进行PCA之前需要对数据进行均值化和特征缩放PCA不是线性回归线性回归是使真实值y与预测值y之间的误差最小(垂直距离最小)PCA是使点到低维平面上的投影的距离平方最小(投影距离平方最小)...
2020-03-15 19:53:18
918
原创 聚类算法之——K-Means||、Canopy、Mini Batch K-Means
K-Means||算法K-Means||算法是为了解决K-Means++算法缺点而产生的一种算法;主要思路是改变每次遍历时候的取样规则,并非按照K-Means++算法每次遍历只获取一个样本,而是每次获取K个样本,重复该取样操作O(logn)次**(n是样本的个数)**,然后再将这些抽样出来的样本聚类出K个点,最后使用这K个点作为K-Means算法的初始聚簇中心点。实践证明:一般5次重复采用就可...
2020-03-12 22:20:29
818
jieba分词获取词频top10关键词.py
2019-12-01
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人