- 博客(121)
- 资源 (1)
- 收藏
- 关注
原创 python matplot 中文显示解决
https://www.jianshu.com/p/e5ff582502afhttps://showteeth.tech/posts/60218.htmlhttps://blog.csdn.net/tonydz0523/article/details/85260252
2022-02-25 19:24:33
843
转载 用清华源pip 和 conda install 安装
用清华源pip 和 conda install 安装pippip install -i https://pypi.tuna.tsinghua.edu.cn/simple some-packagepypi 镜像每 5 分钟同步一次,所以应该是非常靠谱的condaconda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/freeconda config --add channels https://m
2022-02-25 19:20:40
2923
原创 FM模型简介
FM模型FM模型表达式FM模型的推导二阶交叉项复杂度可以从O(kd2)优化到O(kd)FM的优点1. 适用于大规模稀疏矩阵为什么?因为涉及到二阶交叉项,越稀疏越容易训练。本身FM模型的训练就消耗资源,稀疏矩阵可降低劣势、发挥其更大优势。2.泛化能力强为什么?训练时未有的特征组和在预测时依然可以计算出交叉特征的权重。(看交叉项推导便可知)参考:https://zhuanlan.zhihu.com/p/58160982赞https://www.biaodianfu.com/ctr-fm
2021-08-01 18:19:37
948
转载 shell的join操作
Shell使用awk命令完成两个文件的关联join先看看awk中的两个自身变量,NR和FNR。 awk可以指定同时读取多个文件,按照指定的先后顺序,逐个读取。NR指的是awk所读取到所有记录(包括多个文件)的行数索引号,大概是Number Of Record的意思。FNR只的是awk所读取到的每个文件中的行数索引号,当文件发生切换时候,FNR重新从1开始,大概是File Number Of Record的意思。# a.txt文件内容1 102 203 304 50# b.txt文件内容1
2021-06-25 20:48:45
713
转载 python中yield的用法
首先,如果你还没有对yield有个初步分认识,那么你先把yield看做“return”,这个是直观的,它首先是个return,普通的return是什么意思,就是在程序中返回某个值,返回之后程序就不再往下运行了。看做return之后再把它看做一个是生成器(generator)的一部分(带yield的函数才是真正的迭代器),好了,如果你对这些不明白的话,那先把yield看做return,然后直接看下面的程序,你就会明白yield的全部意思了:def foo(): print("starting..."
2021-05-18 20:37:43
194
转载 Python的lambda的用法
定义lambda函数也叫匿名函数,即,函数没有具体的名称。一、基础lambda语句构建的其实是一个函数对象。匿名函数有个限制,就是只能有一个表达式,不用写return,返回值就是该表达式的结果。lambda(a,b: a+b)#关键字lambda表示匿名函数,冒号前是参数,可以有多个,用逗号隔开,冒号右边的返回值。lambda优点:1、使用Python写一些执行脚本时,使用lambda可以省去定义函数的过程,让代码更加精简。2、对于一些抽象的,不会别的地方再复用的函数,有时候给函数起个名字
2021-05-18 16:56:44
573
原创 python内置模块itertools
一、 定义itertools 是python的迭代器模块,itertools提供的生成迭代器的函数,相当高效且节省内存。二、使用1.groupbyfrom itertools import groupbyfrom operator import itemgettertemp_list = [ {'id': '1854', 'severity': '严重', 'title': '【数据质量管理】【稽核模板管理】新增“字符长度”和“值域”的模板类型的数据的时候页面上有报错信息造成该类型的稽
2021-05-18 14:31:40
112
原创 shell和python判断集群文件是否存在
shell判断集群文件是否存在shell判断Linux系统文件是否存在# 这里的-f参数判断$file是否存在在这里插入代码片`if [ ! -f "$file" ]; then echo "文件不存在!"fihadoop内置提供了判断某个文件是否存在的命令:[iteblog@www.iteblog.com ~]$ hadoop fs -help......-test -[defsz] <path>:Answer various questions about &
2021-05-14 19:30:56
193
原创 python的dataframe与pyspark的dataframe
一、pyspark对dataframe的修改列值1.python对dataframe的处理# 对id列数据全部转换成utf-8编码df['id_tmp'] = df['id'].apply(lambda x: x.encode('utf-8')) 2.pyspark对dataframe的处理# 对id列数据全部转换成utf-8编码from pyspark.sql.functions import coldf = df.withColumn('id', col('id').encode('ut
2021-04-12 16:44:08
505
原创 pyspark读取csv和保存csv文件
1、读取csv文件为dataframe格式val data_left_ori = spark.read .option("inferSchema","true")//自动推导数据类型 .option("header","true")//读取列名 .csv("/user/root/image.csv")//文件路径2、dataframe数据保存为csv文件data.coalesce(1)//文件分区设置为1 .write.mode("overwrite")//保存方式为
2021-04-11 17:24:02
9821
原创 hive中on以及distinct中出现null的解决办法
distinct字段出现null1.distinct 中字段出现null时,会使得计算结果不准确。原因有1. 所有的null值会被归并到一项;2. count结果并不会统计null项SELECT DISTINCT id, value FROM table;2.可以使用coalesce函数解决SELECT DISTINCT(coalesce(ID, 0), coalesce(value, 0)) FROM table;3.关于distinct 与group bydisticnt会让所有数据sh
2021-04-06 19:25:06
2240
原创 anaconda环境切换
激活与退出anaconda环境# 激活 anaconda 环境 source activate# 退出 anaconda 环境 source deactivate查看所有的虚拟环境conda env list
2021-03-22 20:06:23
4153
原创 spark读取数据以及不同的处理方式与步骤
1.读取hive表中log数据,生成特征(1). 读取sql,转换成数值RDD SQL="""SELECT ID, NAME, SCORE FROM TABLE """ job_name = 'extract data' conf = SparkConf().setMaster("local").setAppName("My App") sc = SparkContext(conf = conf) hc = HiveContext(sc) sql_data
2021-03-01 16:41:24
990
转载 python与spark编码方式
环境:python2.7pyspark 2.4.3用python读入一个字典,然后对spark SQL dataframe对中文做处理的时候,匹配不到,这个是中文编码问题。python2.x 可用utf-8编码,但是pyspark是用unicode编码的,所以涉及数据交互的时候必须用进行编码和解码;python2.x 的中文是utf-8编码,需要 x.decode(“utf-8”) 转换为 unicode;pyspark 的中文是unicode编码,转换的话可用 x.encode(“
2021-02-25 14:46:19
575
转载 Spark之中map与flatMap的区别
一直不太明白spark之中map与flatMap之间的区别。map的作用很容易理解就是对rdd之中的元素进行逐一进行函数操作映射为另外一个rdd。flatMap的操作是将函数应用于rdd之中的每一个元素,将返回的迭代器的所有内容构成新的rdd。通常用来切分单词。 区别1: f...
2021-02-22 11:21:02
139
原创 HIVE表读数据并转成dict
1. 从HIVE表读数据并转成dictfrom pyspark import SparkContextfrom pyspark.sql import HiveContext,SparkSessionsc = SparkContext()sql_context = HiveContext(sc)sql_data = sqlContext.sql("SELECT key,value1,value2,value3 from db.table")sql_data_rdd = sql_data.rdd.
2021-02-20 17:04:13
779
1
转载 SQL生成序号的四种方式
排名函数是SQL SERVER2005新增的函数。排名函数总共有四种,分别是:row_number、rank、 dense_rank 、ntile。row_number:顺序生成序号。rank:相同的序值序号相同,但序号会跳号。dense_rank :相同的序值序号相同,序号顺序递增。ntile:装桶,把记录分成指的桶数,编序号。下面分别介绍一下这四个排名函数的功能及用法。在介绍之前假设有一个t_table表,表结构与表中的数据如图1所示:图1其中field1字段的类型是int,field2
2021-01-22 11:27:19
25245
转载 linux 随机抽取文件中N行
1.shell命令 直接用shuf -n5 t.txt > L则随机在t.txt 中抽取5列 到L中 2.awk awk 'BEGIN{srand()} {print rand()"\t"$0}' input_file | sort -nk 1 | head -n line_num | awk -F "\t" '{print $2}' 3.python impo...
2021-01-21 16:07:15
1758
原创 线性回归模型
线性回归模型一、线性回归的基本假设1.线性性和可加性假设因变量为Y,自变量为X1,X2,则回归分析的默认假设为Y=b+a1X1+a2X2+ε。线性性:X1每变动一个单位,Y相应变动a1个单位,与X1的绝对数值大小无关。可加性:X1对Y的影响是独立于其他自变量(如X2)的。2.误差项(ε)之间应相互独立。若不满足这一特性,我们称模型具有自相关性(Autocorrelation)。3.自变量(X1,X2)之间应相互独立。若不满足这一特性,我们称模型具有多重共线性性(Multicollinear
2020-08-12 20:08:50
3894
原创 模型评价指标
模型评价指标KSKolmogorov_Smimov,评估模型风险区分能力。KS用来衡量好坏样本累计分布之间的差值。好坏样本差异越大,KS指标越大,则模型风险区分能力越强。 KS计算步骤: 1.计算每个评分的好坏用户数 2.计算每个评分区间累计好用户数占总好用户数比列(good%),计算每个评分区间累计坏用户数占总坏用户数的比例(bad%) 3.计算每个评分区间累计好用户占比与累...
2020-08-02 19:39:21
464
转载 LightGBM
LightGBMLightGBM原理及实现LigthGBM是boosting集合模型中的新进成员,它和xgboost一样是对GBDT的高效实现,很多方面会比xgboost表现的更为优秀。原理上它和GBDT及xgboot类似,都采用损失函数的负梯度作为当前决策树的残差近似值,去拟合新的决策树。LightGBM vs xGBoostxgBoost算法的优点:XGB利用了二阶梯度来对节点进行划分,相对其他GBM来说,精度更高。利用局部近似算法对分裂节点的贪心算法优化,取适当的eps时,可以保持算法的
2020-05-30 21:16:46
378
原创 返回乱序数组中第k大的数
类似于快速排序,执行一次快速排序之后,每次只选择一部分继续执行快速排序,直到找到第K大个元素为止,这个元素在数组位置后面的元素即为所求。 利用快速排序子过程的返回哨兵的位置,将哨兵的序号和k - 1进行比较 时间复杂度:O(n)public class ChangeQuickSort { public static int sort(int arr[], int low, ...
2018-05-26 11:17:58
547
转载 有序数组翻转后的查找
题目:Suppose a sorted array is rotated at some pivot unknown to you beforehand.(i.e., 0 1 2 4 5 6 7 might become 4 5 6 7 0 1 2).You are given a target value to search. If found in the array return...
2018-05-25 15:32:30
2777
转载 word2vec如何得到词向量
前言word2vec是如何得到词向量的?这个问题比较大。从头开始讲的话,首先有了文本语料库,你需要对语料库进行预处理,这个处理流程与你的语料库种类以及个人目的有关,比如,如果是英文语料库你可能需要大小写转换检查拼写错误等操作,如果是中文日语语料库你需要增加分词处理。这个过程其他的答案已经梳理过了不再赘述。得到你想要的processed corpus之后,将他们的one-hot向量作为word2ve...
2018-05-08 00:47:34
3246
3
原创 连续子数组最大和
求连续子数组的最大和,数组元素有正有负。public class Solution { public int FindGreatestSumOfSubArray(int[] array) { if(array.length == 0 || array == null) return 0; int maxSum = Integer....
2018-05-06 19:19:54
190
原创 随机森林,GBDT,XGBoost的对比
随机森林,GBDT,XGBoost的对比 随机森林 RF RandomForest 随机森林的集成学习方法是bagging ,但是和bagging 不同的是bagging只使用bootstrap有放回的采样样本,但随机森林即随机采样样本,也随机选择特征,...
2018-05-05 22:07:45
53140
4
转载 SVM面试常见问题
转载:blog.csdn.net/szlcw1SVM的原理是什么?SVM是一种二类分类模型。它的基本模型是在特征空间中寻找间隔最大化的分离超平面的线性分类器。(间隔最大是它有别于感知机)(1)当训练样本线性可分时,通过硬间隔最大化,学习一个线性分类器,即线性可分支持向量机;(2)当训练数据近似线性可分时,引入松弛变量,通过软间隔最大化,学习一个线性分类器,即线性支持向量机;(3)当训...
2018-04-29 21:06:28
332
转载 xgboost原理
xgboost 已然火爆机器学习圈,相信不少朋友都使用过。要想彻底掌握xgboost,就必须搞懂其内部的模型原理。这样才能将各个参数对应到模型内部,进而理解参数的含义,根据需要进行调参。本文的目的就是让大家尽可能轻松地理解其内部原理。主要参考文献是陈天奇的这篇文章introduction to xgboost。在我看来,这篇文章是介绍xgboost...
2018-04-29 15:52:33
517
转载 特征选择
特征选择特征选择和降维的不同:特征选择只是删除了原始特征里和结果预测关系不大的特征,后者做特征的计算组合构成了新的特征。 特征选择包含:过滤型、包裹型、嵌入型过滤型方法:评价单个特征和结果之间的相关程度,排序留下Top相关的部分。评价方式:Pearson相关系数、互信息缺点:没有考虑到特征之间的关联作用,可能把有用的关联特征踢掉。...
2018-04-27 10:15:16
279
转载 特征处理之统计特征
特征处理之统计特征历届的Kaggle/天池比赛,天猫/京东排序和推荐业务线里模型用到的特征 1.加减平均:这个用户所买商品高于所有用户购买商品平均价格的多少(权衡一个人的消费能力),用户连续登录天数超过平均多少(表明这个用户对该产品的黏性) 2.分位线:商品属于售出商品价格的多少分位线处。(比如20%,说明20%的人买东西都不会低于这个价格)。 3...
2018-04-27 10:12:32
9280
原创 数据与特征处理
不同数据类型处理数值型统计值:max,min,mean,std(方差)离散化 比如将价格分成不同的段(可以等宽也可以不等宽),每一段表示一个向量,不同的价格可能会是同一个向量。Hash分桶每个类别下对应的变量统计值histogram(分布状况)可将数值型 => 类别型幅度调整/归一化类别型one-hot编码/哑变量 比如红、黄、蓝分别对应一个向量,...
2018-04-27 10:09:05
705
转载 数据不平衡
转自:https://blog.csdn.net/lujiandong1/article/details/52658675这几年来,机器学习和数据挖掘非常火热,它们逐渐为世界带来实际价值。与此同时,越来越多的机器学习算法从学术界走向工业界,而在这个过程中会有很多困难。数据不平衡问题虽然不是最难的,但绝对是最重要的问题之一。一、数据不平衡在学术研究与教学中,很多算法都有一个基本...
2018-04-26 16:00:56
5039
2
原创 特征工程-数据归一化和标准化
定义归一化:Xi−XminXmax−XminXi−XminXmax−Xmin\frac{X_i-X_{min}}{X_{max}-X_{min}} 标准化:Xi−μσXi−μσ\frac{X_i-\mu}{\sigma} 其中 μμ\mu 和 σσ\sigma 代表样本的均值和标准差, XmaxXmaxX_{max} 为最大值, XminXminX_{min} 为最小值。本质归...
2018-04-26 10:29:19
778
转载 python实现协同过滤之影片推荐
协同过滤算法即对一大群人进行搜索,找出其中品味与我们相近的一小群人,并将这一小群人的偏好进行组合来构造一个推荐列表。 本文利用Python3.5分别实现了基于用户和基于物品的协同过滤算法的影片推荐。具体过程如下:先建立了一个涉及人员、物品和评价值的字典,然后利用两种相似度测量算法(欧几里得距离和皮尔逊相关度)分别基于用户和基于物品进行影片推荐及评论者推荐,最后对...
2018-04-26 09:56:01
2782
原创 TensorFlow学习笔记-初步认识
张量(Tensor):张量有多种. 零阶张量为 纯量或标量 (scalar) 也就是一个数值. 比如 [1] 一阶张量为 向量 (vector), 比如 一维的 [1, 2, 3] 二阶张量为 矩阵 (matrix), 比如 二维的 [[1, 2, 3],[4, 5, 6],[7, 8, 9]] 以此类推, 还有 三阶 三维的 …Tensorflow过程Tensorflow 首先...
2018-04-25 15:44:15
169
原创 Map-Reduce思想
Map-Reduce是针对海量数据的分布式处理方法,将数据分块的存储在集群中。其精髓就是并行化。一个linux命令words(test.txt) | sort | uniq-cwords(test.txt)输出test.txt文件中所有的词,然后进行sort排序,再进行uniq-c统计每个单词出现的次数。 words(test.txt)的输出作为sort的输入,sort的输出作...
2018-04-24 23:37:56
223
转载 Java多线程:线程安全和非线程安全的集合对象
一、概念:线程安全:就是当多线程访问时,采用了加锁的机制;即当一个线程访问该类的某个数据时,会对这个数据进行保护,其他线程不能对其访问,直到该线程读取完之后,其他线程才可以使用。防止出现数据不一致或者数据被污染的情况。线程不安全:就是不提供数据访问时的数据保护,多个线程能够同时操作某个数据,从而出现数据不一致或者数据污染的情况。对于线...
2018-04-24 20:32:54
143
原创 word2vec理论基础
自然语言处理中,采用词向量表示文本。 用例子来说明 语料库:Today is a good day.Mona is a beautiful girl.词典:{"Today":1, "is":2, "a":3, "good":4, "day":5, "Mona":6, "beautiful":7, "girl":8}
2018-04-23 20:23:11
744
原创 pickle库
pickle库 那么为什么需要序列化和反序列化这一操作呢? 1.便于存储。序列化过程将文本信息转变为二进制数据流。这样就信息就容易存储在硬盘之中,当需要读取文件的时候,从硬盘中读取数据,然后再将其反序列化便可以得到原始的数据。在Python程序运行中得到了一些字符串、列表、字典等数据,想要长久的保存下来,方便以后使用,而不是简单的放入内存中关机断电就丢失数据。python模块大全中的Pic...
2018-04-21 16:16:00
308
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人