
机器学习
文章平均质量分 78
Clozzz
在撸码的道路上越走越远
展开
-
大数据进阶之协同过滤推荐算法——SparkML ALS交替最小二乘法
算法介绍:ALS是交替最小二乘法的简称,ALS特指使用交替最小二乘求解的一个协同过滤的推荐算法。通过观察用户对购买商品的评价,来推断每个用户的喜好并向用户推荐合适的商品。案例解析:西游记水浒传红楼梦三国演义简爱用户13748用户225用户36用户4741上表所描述的是一个用户对几本名著的一个评分结果。近似的可以理解成为一个矩阵。在现实的生产环境中,矩阵的行和列都会非常大,ALS的基本思想就是将一个很大的矩阵拆分原创 2020-10-22 00:09:43 · 983 阅读 · 0 评论 -
大数据进阶之算法——KMeans聚类算法
首先说一下分类和聚类的区别:分类:分类其实就是从特定的数据中挖掘模式,做出相对应的判断。例如对班级的学生进性性别的分类,我事先已经知道只有男性和女性两个分类。聚类:聚类的目的也是将数据分类,但是在事前不知道按照何种标准去分类,完全是靠算法自己来判别各条数据的相似性,相似的就放在一起。聚类和分类最大的不同在于:分类的目标是事先已知的,而聚类则完全不一样,举类事先不知道分类标准是什么,完全靠算法自己去判别。KMeansKMeans算法是聚类中最常用最普遍的一种算法,该算法最大的特点就是简单,易于原创 2020-10-19 22:57:04 · 5135 阅读 · 2 评论 -
大数据基础之算法——Spark ML归一化方法 MinMaxScaler
归一化是一种简化计算的方式,即通过某种算法将原始数据集限制在你需要的一定范围内,一方面是数据处理的方便,另一方面是为了后面放入模型计算的方便,使得运行时的收敛性更快。Spark ML机器学习库中包含了4种归一化的方法:NormalizerStandardScalerMinMaxScalerMaxAbsScaler在我的项目中只用到了MinMaxScaler方法,在这里我就着重分享该方法的用法。MinMaxScaler作用是将每一维度的特征向量映射到指定的区间内,通常是[0,1]。他一般有两原创 2020-10-17 18:01:38 · 1414 阅读 · 0 评论 -
大数据进阶之算法——Spark ML库VectorAssemble详解
VectorAssemble是将给定列列表组合成单个向量列的转换器。为了训练逻辑回归和决策树等ML模型,将原始的多个特征列组合成一个特征向量是很有用的。VectorAssemble将接受一下的输入列类型:所有数值类型、布尔类型和向量类型。在每一行中,输入列的值将按照指定的顺序连接到一个向量中。示例:以下是我的一些项目模拟数据原始数据集:处理后的数据集:VecotrAssemble代码实现://num_fmt为原始数据集val va = new VectorAssembler().setI原创 2020-10-17 17:20:44 · 838 阅读 · 0 评论 -
大数据进阶之算法——SparkML库 StringIndexer、IndexToString详解
StringIndexerStringIndexer是指将一组字符串类型的标签数据转化成数值类型的数据。其基本原理就是将字符串出现的频率进行排序,优先编码出现频率最高的字符串,索引的范围为0到字符串数量。如果输入的是数值型的,就会先把他转成字符串型的,然后再进行编码处理。在pipeline组件,比如Estimator和Transform中,想要用到字符串索引的标签的话,我们一般需要通过setInputCol来设置输入列。另外,有的时候我们通过一个数据集构建了一个StringIndexer,然后准备把它应原创 2020-10-15 23:34:02 · 1869 阅读 · 2 评论