自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Day 57:聚类,k-means方法

Python 回忆录2021/07/27非监督学习2021/07/27非监督学习现在有一些数据,只有特征值 没有目标值,我们对这些数据进行分类。就是非监督学习,只有对相似样本进行分类,

2021-07-28 18:58:08 177

原创 Day 56:逻辑回归

Python回忆录2021/07/26逻辑回归逻辑回归的损失函数损失函数逻辑回归API案例:癌症肿瘤预测2021/07/26逻辑回归逻辑回归是一个分类算法,仅适用于二分类 并且还能得出概率。而且是以线性回归的式子作为输入的分类算法。我打个比方说网站上的广告,用户可以选择点击广告和不点击广告。这是一个二分类问题,更厉害的是逻辑回归可以预测出,用户会有多少几率去点击 (或者理解为有百分之多少的用户会点击广告)。这样网站也就能通过逻辑回归提前预测出上广告会有多少收益。上图就是Sigmoid函数。通俗

2021-07-26 21:26:08 161

原创 Day 55:岭回归,模型的保存和读取

Pyython 回忆录2021/07/23岭回归模型的保存与读取逻辑回归2021/07/23岭回归就是带有正则化的线性回归-Ridgesklearn.liner_model.Ridge正则化力度越大,高次幂的影响越小模型的保存与读取在sciklearn中也有模型保存和读取的APIsklearn.externals import joblibfrom sklearn.datasets import load_bostonfrom sklearn.linear_model import Li

2021-07-26 20:28:05 234

原创 Day 54:过拟合和欠拟合

Python回忆录2021/07/22过拟合 和欠拟合非线性关系欠拟合原因和解决方法过拟合原因和解决方法正则化2021/07/22过拟合 和欠拟合在建立模型中,很有可能遇见 训练数据训练的时候很准确,但是一到测试集就会有很大误差。这就要了解过拟合和欠拟合两个名词了。先看图片上图能看出来机器学习经过简单的模型,学习到的特征很少,依靠两个特征分类,导致把很多的目标值也预测错误。不是天鹅的图片也识别为天鹅(欠拟合)上图看出来机器学习,特征学习到了很多特征 但是最后预测结果正确的也被认为是错误的(过拟

2021-07-22 23:08:31 399 7

原创 Day 53:线性回归

Python 回忆录线性回归线性回归算法主要就是解决分类和回归问题。像随机森林用于解决分类,最终结果只能是True 或者 False。而回归问题的结果就是什么样的数值,和数字相关。而线性回归呢,其实就像是多元方程。找出自变量和因变量之间的关系。...

2021-07-21 22:07:52 238 2

原创 Day 52: 随机森林

Python 回忆录2021/06/08集成学习方法随机森林建立多个树的过程随机森林的APIAPI使用案例优缺点2021/06/08集成学习方法通过建立多个模型来解决单一的预测问题,其实就可以比喻成多个不同的人来解决同一个问题。这些模型最后预测的结果合成单预测,这样的预测结果优于任何一个单分类的结果。随机森林随机森林也是一个集成学习方法,主要就是多个决策树模型来解决一个问题。比如,你训练了5个树,其中4个树的结果是true,1个树的结果是false, 那么最终结果就是少数服从多数 为True 。

2021-06-09 00:32:29 160 7

原创 Day 51: 决策树 和案例

Python 回忆录2020/05/13决策树信息熵信息增益2020/05/13决策树决策树其实就是一直不断地if else 条件筛选。但是那个条件放在开始哪个条件放在最后 这就有一个条件的权重问题了。这时候就会有信息增益和信息熵的概念信息熵就是特征的不确定性,算是一个概率问题。比如32支球队 争夺冠军。 在不知道任何球队信息的时候, 每个球队得到冠军的概率d都是一样 1/32,所以 信息熵就是log32 就是5比特。当假如知道哪个球队强的话 改变了那支球队获胜的概率 那么这个信息熵就会比5比特

2021-06-08 00:35:03 369 6

原创 2021顺丰科技实习 面经

Python 回忆录2021/03/07面经2021/03/07面经我在国外读本科大三 软件工程专业,因为疫情出不去 想着不能继续待在家里了。需要出去工作,赚钱养家了。所以过年前亲戚内推3家公司去实习,分别是腾讯字节顺丰。前面两次面试凉了,最后面的顺丰科技 倒是通过了。可能是有凉经的经验积累,也可能无所畏惧,凉就凉的心态 然后就比较自信的去面了。有什么说什么,反正把我所知道的都说出来,不会的就回答不了解并询问是不是和我所知道的知识点有什么联系。毕竟面试嘛,就是让公司了解你有什么,符不符合公司的要求,能

2021-03-07 17:35:37 2220 3

原创 Day 50 :模型的调优 交叉验证与网格搜索

Python 回忆录2021/2/7交叉验证2021/2/7交叉验证是为了让模型更加稳定可信交叉验证会把训练集继续分为训练集和验证集。确定好把数据分成几等分就是 几折交叉验证

2021-02-08 23:02:00 399

原创 Day 49: 分类模型的评估,精确率和召回率

Python 回忆录2021/2/7混淆矩阵精确率,召回率的API2021/2/7对于模型评估最常见直观的方式就是前面用到的estimator.score()预测结果正确的百分比。这当然只是一个评估标准,还有几个其他评估标准就在今天这篇文章介绍一下。混淆矩阵先在二分类情况下讨论混淆矩阵。预测结果和实际正确结果之间会有4种不同的组合,构成混淆矩阵,当然混淆矩阵也可以适用于多分类。TP(true positive)FP(false positive)FN(false negative)TN(t

2021-02-07 12:24:38 284

原创 Day 48 : 朴素贝叶斯算法

Python 回忆录2020/2/6朴素贝叶斯概率贝叶斯公式朴素贝叶斯API 和案例优缺点2020/2/6朴素贝叶斯一般用于分类模型。比如把文章中每一个词取出来 计算占文章内容的多少,并依靠学习预测出未知的文章是哪一类。朴素的意思:把每个特征都完全独立出来。贝叶斯的意思是:由一个古典概率的计算方法 推论出来的贝叶斯公式概率复习一下概率联合概率:包含多个条件,且所有条件同时成立 记作P(A,B)条件概率:就是事件A在另外一个事件B已经发生条件下的发生概率P(A|B)。特性:P(A1,A2|B)

2021-02-06 20:10:12 224 1

原创 Day 47 :k-近邻算法

Python 回忆录2020/2/3介绍k-近邻算法近邻算法API2020/2/3介绍k-近邻算法如果一个样本在特征空间中的k个最相似(即特征空间中最邻近)的样本中的大多数属于某一个类别,则该样本也属于这个类别。近邻算法 其实就是找很多存在样本和未知对比找出最相似的已知样本。这样就能推断未知样本的目标值应该和已知样本的目标值一样,之后就能得出结论。如何求出相似距离(相似程度)就是k-近邻算法要做的,并且在输入数据前还需要做标准化处理。近邻算法APIsklearn.neighbors.KNe

2021-02-04 22:34:06 145

原创 Day 46:数据集的划分,转换器,估计器

Python 回忆录2021/2/22021/2/2

2021-02-02 18:19:44 99

原创 Day 45: 机器学习开发流程

Python 回忆录2021/2/1数据类型机器学习算法分类机器开发的流程2021/2/1数据类型**离散型数据:**记录不同个体得到的数据,相当于一个一个数出来的数据。只能是整数,不能再细分了**连续型数据:**一段范围内任取一个数,取值是可以连续性的。一般就是有小数的,可以不断的去细分。数据类型的不同,机器学习方法也不同机器学习算法分类监督学习:有特征值和目标值。可以预测出来可能的目标值。因为有对比分类:确定是哪一类的数据,最基础的就是二分类,即判断是和否。所以只用离散型: k-近邻

2021-02-01 23:39:42 85

原创 Day 44: 运用PCA的例子

Python 回忆录2020/1/28Kaggle项目案例内容数据内容思路2020/1/28Kaggle项目kaggel.com一个进行数据发掘和预测竞赛的在线平台. 国内还有一个天池网站(www.tianchi.aliyuncom)是一样的性质。未来可以在上面找项目做,拿名次。最重要的是可以用数据锻炼自己的思维能力。这一次的小练习,也是在kaggel上找到的一个项目,目前还没有学习机器算法相关的知识,所以这次只是记录一下如何把数据进行预处理(运用一下PCA)。案例内容希望预测出来哪一些物品会

2021-01-28 23:01:56 319 2

原创 Day 43:数据降维:特征选择 & 主成分分析PCA

Python 回忆录2020/1/26数据降维特征选择特征选择的工具主成分分析降维2020/1/26数据降维其实就是数据特征数量的减少,和数组的维度根本不一样。对于数据降维有两个方法:1.特征选择2.主成分分析特征选择就是选择部分特征用来当作机器学习的数据。选择特征选择的原因:冗余:部分特征相似,关联度高。容易消耗计算性能,可以不需要。噪声:部分特征对预测结果有很大的影响特征选择的工具Filter(过滤式):VarlanceThreshold (Varlance方差)其实就

2021-01-26 22:04:19 407

原创 Day 42: 归一化,标准化,处理缺失值

Python 回忆录2021/1/24特征预处理归一化特点2021/1/24特征预处理其实就是把得到的数据样本,特征数据转换算法可用的数据。对于数值型数据,用到两大方法来预处理 : 1.归一化,2.标准化。还有缺失值的预处理对于类别型数据, 用one-hot编码来预处理对于时间类型数据,用时间切分方法来预处理归一化sklearn的预处理APIsklearn.preprocessing所有预处理方法都在这个模块里面特点通过对原始数据变化,映射到默认的[0,1]这个区间数据变化后最

2021-01-24 17:22:39 749

原创 Day 41: tf-idf 分析问题

Python 回忆录2020/1/23介绍TF,IDFTF-IDF 类的使用2020/1/23介绍TF,IDF上一篇文章介绍了可以利用sklearn工具 把文章特征值化。文章特征值化最常见的应用就是 文章分类。比如说一篇文章经常提到一个词,那么这个文章的主题大概率就是和这个词相关。像第一饼图 大概率讲的是和共享车相关,第二个饼图大概率讲的是和银行经济相关。像“我,明天,做”这些都是其他词语,其他词语的比例占的是最多的,所以这时候就要用到TF(term frequency),IDF (inverse

2021-01-23 16:13:59 238

原创 Day 40:文本特征抽取,中文特征值化

Python 回忆录2020/1/18文本特征抽取流程中文流程2020/1/18文本特征抽取其实就是对文本数据进行特征值化,运用到sklearn的类是sklearn.feature_extraction.text.CountVectorizer注意是在text模块下的。CountVectorizer()返回的是词频矩阵CountVectorizer.fit_transform(x)X:文本或者包含文本字符串的可迭代对象,返回sparse矩阵CountVectorizer.inverse_tra

2021-01-18 21:48:52 270

原创 Day 39: 数据集的特征工程抽取

Python回忆录2021/1/15数据集数据集的结构特征工程(比较广的方面)Scikit-learn工具介绍特征工程的第一步:特征抽取字典数据进行特征值化:2021/1/15数据集机器学习的数据大部分都是csv格式的。我们主要用Pandas来读取和整合数据。不选择用mysql的原因:性能瓶颈,读取速度堪忧。选择Pandas的原因:运用numpy 释放了GIL锁。实现正真的多线程。增加效率一般从这3个数据集获得数据数据集的结构其实就是特征值 + 目标值如下图中:房子面积,房子位置,房子楼

2021-01-17 17:31:02 338

原创 Day 38: 机器学习基础介绍

Python 回忆录2020/11/21定义人类的学习到机器学习举个栗子2020/11/21定义对于给定的任务T,在合理的性能度量方案P的前提下,计算机程序可以自主学习任务T的经验E;随着合适优质大量的经验E,该程序可以对于任务T的性能逐步提高。复杂的定义看完,其实就是对于一个任务来说,计算机不断的执行任务,通过大量的数据训练,积累经验 程序能自主的优化算法,性能不断提升人类的学习到机器学习人类从无知到掌握知识的过程 总共有3种学习方式有监督学习假设给大量关于月亮的图片。标记的信息是(x1

2020-12-01 20:43:52 95

原创 Day 37 : 重组时间序列,案例

Python 回忆录2020/11/14重组时间序列问题(处理空气质量数据)2020/11/14重组时间序列运用PeriodIndex(year=df["columns"],month=df["columns"],day=df["columns"],hour=df["columns"],freq="H")可以把不同列里面的数据组合为一个时间序列,并且按照freq 的设定来分行。问题(处理空气质量数据)现有一个北京的空气质量数据,绘制出PM2.5随时间的变化情况可以看出来 数据中的时间被分为几列

2020-11-14 11:14:03 188

原创 Day 36 : 时间序列,重采样

Python 回忆录2020/11/11问题1问题22020/11/11问题1现在有2015年到2017年25万条911的紧急电话的数据,统计出这些数据不同类型的紧急情况的次数问题2统计出不同月份不同类型紧急电话的次数的变化情况...

2020-11-12 16:37:13 402 2

原创 Day 35 : 分组groupby

Python 回忆录2020/11/10分组(groupby 语句)分组后的遍历分组后的函数问题(呈现出店铺总数前十的国家)2020/11/10分组(groupby 语句)在pandas里分组的操作就是df.groupby(by= "columns_name")返回的是一个DataFrameGroupBy这个类型。这个类型可以遍历,也可以聚合。 现在有一个星巴克店铺的统计数据 ,有如下数据当然也可以进行两列分组df.groupby(by=[df[“Country”],df[“State/Pr

2020-11-10 21:00:24 123

原创 Day 34 :数据合并Join,Merge

Python 回忆录2020/11/08合并方法 :join(相同行索引)合并方法: merge(相同列索引)外连接左连接右连接没有相同的列索引时2020/11/08合并方法 :join(相同行索引)join:默认情况下是把行索引相同的数据合并在一起先建立两个DataFramedf1 和 df2 虽然形状不同,列索引不同 但是有相同的行索引(ABC)然后使用join方法以df1为基础的话,df1 有几行 就是几行数据以df2为基础的话,df2有几行就是几行 对于df1没有的值用NaN填充合

2020-11-08 16:14:54 644 1

原创 Day 33 :字符串离散化

Python 回忆录2020/11/7把整合在一起的数据分开(字符串离散)2020/11/7把整合在一起的数据分开(字符串离散)例如 每一部电影类型里 有 “喜剧,动作,爱情,剧情” 等不同的用逗号隔开的标签。所以想要知道 包含喜剧的片子有多少部的话,就得把这些标签分开。思路把字符串转化成数据进行统计,相当于把字符串离散化成为数据。先构造一个全为0的列表,把出现过的字符串为转化为1,然后再统计1出现的次数import pandas as pdfrom matplotlib import p

2020-11-08 11:30:36 508

原创 Day 32 : Pandas 布尔索引,数据处理

Python回忆录2020/11/04Pandas 布尔索引Pandas 缺失数据问题2020/11/04Pandas 布尔索引对于布尔索引 可能还有其他的条件 来挑选。在DataFrame里 用括号把每个条件括起来和 & 符号 连接df[( 800<df["Count_AnimalName"] ) & ( df["Count_AnimalName"]< 1000 )]& 是且| 是或Pandas 缺失数据一般数据缺失 就补充为NaN(和np.nan

2020-11-04 16:43:51 916

原创 Day31 : Pandas DataFrame的操作

Python 回忆录2020/11/03Pandas 读取外部数据Pandas 的 DataFrame问题(哪个狗的名字使用最多)Pandas 切片操作Pandas 布尔索引2020/11/03Pandas 读取外部数据pd.read_csv`("./filename.csv")通过pd.read语句也能读取其他不同的数据,甚至是数据库中的数据Pandas 的 DataFrame根据昨天的的内容知道,DataFrame是pandas 的二维常用数据类型,也是series的容器。pd.DataFr

2020-11-03 15:54:52 208

原创 Day 30: Pandas

Python回忆录2020/11/2PandasSeries 建立2020/11/2Pandasnumpy 能帮我们处理数组,数值。但是像字符串,时间序列等只能用Pandas来处理。 所以来说pandas 是全能型的,除了处理数值之外(这其实是基于numpy的),还能处理其他类型的数据。常用的数据类型Series 一维的,带标签的数组(其实就是索引,可以被改变)DataFrame 二维的,Series容器Series 建立import pandas as pdt = pd.S

2020-11-02 19:18:24 804

原创 Day29 : Numpy 随机选数

Python 回忆录2020/11/1Numpy 好用的方法生成随机数Numpy 中的nan 和 infNumpy中常用的统计函数2020/11/1Numpy 好用的方法获取最大值和最小值的位置np.argmax(t,axis=0)np.argmin(t,axis=1)全为0的数组:np.zeros(3,4)全为1的数组:np.ones(3,4)创建一个对角线为1的正方形数组np.eye(3)生成随机数np.random.rand(2,3)#里面的数字全是随机的,每一个的概率一样n

2020-11-01 16:12:08 523

原创 Day28 : Numpy 的切片和数值整合

Python 回忆录2020/10/30Numpy 的切片和索引2020/10/30Numpy 的切片和索引其实大部分操作和python中的列表切片很像a[1] #取一行 第二行a[:,2] #取一列 第三列a[1:3]#取多行 第2二行和第3行a[:,2:4]#取多列 第3列和第4列...

2020-10-31 23:39:28 229

原创 Day 27:Numpy的 读取数据

Python 回忆录2020/10/29轴(axis)Numpy读取数据Numpy 转置方法数据呈现的思考过程2020/10/29轴(axis)前面提到的数组 有一维,二维和三维。也可以联想成是一维坐标,二维坐标和三维坐标。 那么轴代表的意义就是坐标轴,一般用0,1,2表示坐标轴一维轴用0 表示二维 轴用0 表示横轴 1表示纵轴三维 用0 表示块轴,1表示横轴,2 表示纵轴Numpy读取数据其实pandas对于读取数据有更多的功能,所以普遍都是使用pandas,但是也需要了解Numby

2020-10-29 18:50:06 1578

原创 Day 26: Numpy 建立数组

Python 回忆录2020/10/28Numpy用numpy创建数组(矩阵)数组的形状和计算(矩阵的计算)广播原则2020/10/28Numpy一个在Python 中做科学计算的基础库,重在数值计算,也是大部分Python科学计算库的基础库,多用于在大型,多维数组上进行计算。可以理解为对矩阵进行计算。用numpy创建数组(矩阵)import numpy as npt1 = np.array([1,2,3,4])print(t1)print(type(t1))t2 = np.array

2020-10-28 21:34:17 216

原创 Day 25 :用matplotlib 绘制散点图,条形图,直方图 和拓展

Python 回忆录2020/10/27绘制散点图绘制条形图绘制多个条形图绘制直方图问题2其他画图工具2020/10/27绘制散点图from matplotlib import pyplot as pltfrom matplotlib import font_managermy_font = font_manager.FontProperties(fname="/System/Library/Fonts/Hiragino Sans GB.ttc")y_3 = [11,17,16,11,12,1

2020-10-27 17:31:40 335

原创 Day 24 :数据分析 库的介绍

Python 回忆录2020/10/25数据分析数据分析的流程jupyter notebookmatplotlib问题运用matplotlib时过程常用统计图对比2020/10/25数据分析数据分析就是用适当的方法对收集来的大量数据进行分析,帮助人们做出判断,以便采取适当行动数据分析的流程提出准确的问题准备收集相应的数据 (用爬虫爬或者直接收集)分析数据(用到一些库numpy)获得结论,给老板看老板看不懂,就得让成果可视化。使结论易懂老板做出一些决定jupyter notebook

2020-10-26 15:13:44 273

原创 Day23 : 二叉树的遍历和树的实现

Python 回忆录2020/10/17二叉树二叉树的性质二叉树的遍历2020/10/17二叉树二叉树是每个节点最多有两个子树的树结构。通常子树被称作“左子树”(left subtree)和“右子树”(right subtree)二叉树的性质性质1: 在二叉树的第i层上至多有2^(i-1)个结点(i>0)性质2: 深度为k的二叉树至多有2^k - 1个结点(k>0)性质3: 对于任意一棵二叉树,如果其叶结点数为N0,而度数为2的结点总数为N2,则N0=N2+1;性质4:具有n个结

2020-10-18 23:34:50 100

原创 Day 22 : 树的概念

Python 回忆录2020/10/14树的概念树的术语树的种类树的存储和表示常见的一些树的应用场景2020/10/14树的概念Tree用来模拟具有树状结构性质的数据集合 二维空间的集合,是由有限的节点组成的一个层次关系的集合。树具有以下特点:每个节点有零个或多个子节点没有父节点的节点称为根节点非根节点只能有一个父节点除了根节点外,每个子节点可以分为多个不相交的子树树来说有两个指针区域,在树中一个节点可以有多个连接域,但只能有一个信息域 指向父节点树的术语节点的度:一个节点含有

2020-10-14 22:17:54 117

原创 Day 21 : 归并排序,二分查找法

Python 回忆录2020/10/13归并排序时间复杂度对比表二分查找法非递归方法实现递归方法实现2020/10/13归并排序merge_sort 其实就是把无序的序列不断2分。拆分到只有一个元素时 ,才开始合并。在合并的过程中开始比较大小.。def merge_sort(alist): n = len(alist) if n <= 1: return alist mid = n // 2 left_list = merge_sort(alis

2020-10-13 20:03:37 138

原创 Day 20 :希尔排序,快速排序

Python 回忆录2020/10/11希尔排序快速排序2020/10/11希尔排序Shell Sort 是插入排序的一种,也称缩小增量排序,是直接插入排序算法的一种更高息的改进版本,希尔排序是非稳定排序该方法实质上是一种分组插入方法.优点:不需要大量的辅助空间,比插入算法更有效率。在中等大小规模的数据表现良好。在最坏的情况下和平均情况下的执行效率是相差不是很多。代码总体和插入排序一样,就是得注意gap的原理def shell_sort(alist): n = len(alist)

2020-10-11 17:20:31 100

原创 Day 19 :选择排序和插入排序

Python 回忆录2020/10/10选择排序算法2020/10/10选择排序算法Selection sort 选择排序就是把无序的元素全部比较出来最小的拎起来放在第一位。之后再全部比较n-i个元素(i代表挑选循环的次数)。def select_sort(alist): n = len(alist) for j in range(n-1): min_index = j for i in range(j+1, n): if a

2020-10-10 17:59:30 73

空空如也

空空如也

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

TA关注的人

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