
机器学习
文章平均质量分 52
机器学习各种算法以及项目实战
Angeliaaa
这个作者很懒,什么都没留下…
展开
-
如何处理推荐系统流行度长尾问题
流行度长尾问题是推荐系统的一个原生问题,就是原来很热门的物品更容易被推荐,原本就很冷门的物品越不容易推荐,即“头大长尾”问题。为了解决这个问题,我们可以先计算出每个物品的流行度ppli=ln(1+|Ni|)用户相似度: 计算出每个物品的流行度之后,按照以下公式计算用户间的形似度,就是在原先相似度的基础上除以ppli。即,越热门的物品咱给他赋的权重越小。这样还能提高冷门物品的点击率。物品相似度: 也可以在计算出每个物品的流行度之后,计算阿尔法相似...原创 2021-11-25 20:52:25 · 1085 阅读 · 0 评论 -
基于k近邻的User_CF协同过滤推荐算法
下面就是基于k近邻的User_CF协同过滤推荐算法的完整代码,通过该代码,我们求出了每个用户的最相近的k个邻居,然后将这k个邻居观看的电影列表依次和该用户的电影列表做并集,就得到了该用户的推荐列表。代码有很多个函数块组成,下面依次对每个函数块展开解释:readDatas():读取数据,只取出前两列(用户id和电影id)将user_dict映射成一个字典,字典中的关键词即用户id,字典列表即为电影列表getTrainsetAndTestset(dct):得到训练数据和测试数据,在取出...原创 2021-11-25 12:20:43 · 874 阅读 · 0 评论 -
逻辑回归推荐算法
逻辑回归公式:基于逻辑回归的推荐过程:(1)将用户年龄、性别、物品属性、物品描述、当前时间、当前地点等特花转换成数值型特征向量。(2)确定逻辑回归模型的优化目标(以优化“点击率”为例),利用已有样本数据对逻辑回归模型进行训练,确定逻辑回归模型的内部参数。(3)在模型服务阶段,将特征向量输入逻辑回归模型,经过逻辑回归模型的推断,得到用户“点击”(这里用点击作为推荐系统正反馈行为的例子)物品的概率。(4)利用“点击”概率对所有候选物品进行排序,得到推荐列表。...原创 2021-11-22 21:28:56 · 944 阅读 · 0 评论 -
矩阵分解算法
SVD奇异值分解下面是矩阵分解的一种方法——奇异值分解,设矩阵M是一个mXn的矩阵,则一定存在一个分解M=UWV,其中U是mXm的正交矩阵,V是nXn的正交矩阵,W是mXn的对角阵。如下图:取对角阵中较大的k个元素作为隐含特征,删除对角阵中其他维度以及U和V中对应的维度,矩阵M就被分解为下面三个矩阵相乘,至此完成了隐向量维度为k的矩阵分解。如果共现矩阵中1行5列的元素值为空,那个这个位置的元素值(也就是评分)就等于下图中横线位置的向量相乘。据此,就可预测出该位置用户对该物品的评分数值。原创 2021-11-22 20:33:13 · 1204 阅读 · 0 评论 -
完整的神经网络模型验证套路
以下就是完整的神经网络模型验证套路,我们拿到的数据集是CIFAR10,CIFAR-10数据集由10个类的60000个32x32彩色图像组成,每个类有6000个图像。有50000个训练图像和10000个测试图像。它能够将图像进行10分类。我们训练好我们的模型之后,那么模型已经保存好了,我们就要拿这个模型来验证我们的分类效果如何,下面就是完整的神经网络模型验证套路:# 姓 名:杨雅静# 开发时间:2021/11/15 9:33import torchimport torchvisi...原创 2021-11-15 11:40:48 · 2717 阅读 · 0 评论 -
完整的神经网络模型训练套路
以下就是完整的神经网络模型训练套路,我们拿到的数据集是CRIF10,CIFAR-10数据集由10个类的60000个32x32彩色图像组成,每个类有6000个图像。有50000个训练图像和10000个测试图像。它能够将图像进行10分类。我们就用CIFAR10来进行神经网络的训练:利用CPU训练# 姓 名:杨雅静# 开发时间:2021/11/13 19:59import torchimport torchvisionfrom torch.utils.data import D...原创 2021-11-15 09:22:05 · 1334 阅读 · 0 评论 -
神经网络来啦
本文以下面这个图为例,来实战演示神经网络中的卷积层、池化层、线性层的具体用法,使得由原来输入3@32x32(3渠道,宽32,高32)的数据,最终转化为了10的线性数据。并且采用两种方式去写,一种没有用Sequential,一种用了Sequential。发现,当神经网络需要很多层的变换的时候,往往使用Sequential会会更加的方便。1.卷积层 由3@32X32(3渠道,宽32,高32)的数据转换成32@32X32(32渠道,宽32,高32)的代码实现是怎么样的呢?代码如下...原创 2021-11-11 12:01:25 · 1268 阅读 · 0 评论 -
自然语言处理
自然语言处理用于拼写检查、关键字检索、文本挖掘、文本分类、机器翻译、客服系统以及负责对话系统。1.语言模型 举一个例子,我 今天 下午打 篮球,P(S)称为语言模型,即用来计算一个句子概率的模型,P(S)的表达式如下:存在两个问题: 1.数据过于稀疏 2.参数空间太大 在意识到这两个问题后,想办法优化一下模型,其实一个词出现的概率只可能跟他前面一个或者两个词相关,再往前的词实际上就没什么关系了,所以我们可以优...原创 2021-09-11 20:46:39 · 984 阅读 · 0 评论 -
支持向量机
1.决策边界 支持向量机是一种分类算法,可以二分类,也可以多分类,重点在于决策边界的选取,要选出来离雷区最远的(雷区就是边界上的点),如下图所示,优先选择右边的图。即在满足分类的前提下,使得边界越宽越好。2.距离的计算 要计算一些地雷离决策边界的距离,可以将决策边界看作一个平面,平面方程为W(T)x+b=0,两个x是平面上的点,W是平面的法向量。 要计算点到平面的距离,其实就是在平面是取一个点,然后计算出投影即可。经过推到得到以...原创 2021-09-07 21:03:54 · 229 阅读 · 0 评论 -
循环神经网络
循环神经网络是基于记忆模型的想法,期望网络能够记住前面出现的特征,并依据特征推断后面的结果,而且整体的网络结构不断循环,因此得名循环神经网络。1.循环神经网络的基本结构 循环神经网络的基本结构非常简单,就是将网络的输出保存在一个记忆单元中,这个记忆单元和下 一次的输入一起进入神经网络中,输入序列的顺序改变,会影响网络的输出结果,因为记忆单元的存在,使得两个序列在改变顺序之后记忆单元的元素也改变了,所有会影响最终的输出结果。 使用双向循环神经网络,网络会先从序...原创 2021-09-06 19:05:48 · 1046 阅读 · 0 评论 -
卷积神经网络
1.卷积神经网络的原理和结构 卷积神经网络中的主要层结构主要包含三个:卷积层、池化层和全连接层、通过堆叠这些层结构形成了一个完整的卷积神经网络结构,卷积神经网络将原始图片转换成最后的类别得分,其中一些层包含参数,一些层不包含参数,比如卷积层和全连接层包含参数,而激活层和池化层不包含参数。这些参数通过梯度下降法来更新,最后使得模型尽可能正确的识别出图片类别。1.1卷积层 卷积层是卷积神经网络的核心,大多数计算都是在卷积层进行的。...原创 2021-09-06 18:17:26 · 350 阅读 · 0 评论 -
简单多层全连接神经网络
1.简单多层全链接前向网络1.1模拟神经元 脑神经元收到一个输入的信号,经过不同的突触、信号进入神经元,接着通过神经元内部的激活处理,最后沿着神经元的轴突输出一个信号,这个轴突通过与下一个神经元的突触相连,从而将输出信号传到下一个神经元。 在神经网络的计算模型中,输入信号就是我们的输入数据,模型的参数就相当于突触,然后输入信号传入神经元就像是输入的数据和模型参数进行线性组合,然后经过激活函数,最后传出模型。1.2单层神经网络分类器 一个神经元可以对...原创 2021-08-30 21:46:23 · 1608 阅读 · 0 评论 -
http日志聚类分析8.25
实际上遇到数据的时候,数据很可能是非常隐晦的,很难看出来想表达出来什么,像列表那样的数据其实已经是一目了然的很清晰的数据了,但是如果是碰到类似于下图所示的数据时,我们就要想办法提取出一些特征变量了。1.提取特征变量根据题目要求,提取出一些特征变量,提取这些特征变量的方法有两个,第一就是找一个从业三十多年的专家,他说哪个是特征变量,咱就如醍醐灌顶一样立马提取这些特征变量,另一个就是根据平时积累的知识,或者看一些期刊、论文去提取出这些特征变量。提取出的特征变量如下图所示对应的数量列是这样..原创 2021-08-25 18:39:29 · 480 阅读 · 0 评论 -
贷款申请利润最大化--数据清洗、逻辑回归
任务要求:本项目的背景为某互联网贷款网站提供的贷款人的个人信息,通过建立模型来预测新来了一个人银行是否对他进行放贷并评估模型的效果。大致思路:本项目的数据量很大且非常冗余,因此先进行数据预处理,对数据进行清洗,然后采用逻辑回归模型预测是否要对某人房贷,模型的建立比较简单,关键是在评估模型效果的时候发现效果很一般,通过数据增强效果也没有好太多,于是换成集成森林模型来评估,发现集成森林和逻辑回归模型的效果差不多。代码详解:1.数据预处理1.1删除无用的列通过观察数据,发现数据量是非常原创 2021-08-24 18:06:17 · 531 阅读 · 0 评论 -
逻辑回归之大学生录取预测8.22
任务要求:根据数据集中大学生的两次考试成绩(gpa,gra)预测大学生能否被美国大学录取(admit=1表示录取,否则为不录取)。大致思路:(1)建立模型:采用sklearn中的逻辑回归模型,先进行数据训练,得出模型参数之后,再预测一下不同考试成绩的学生能否被录取(2)评估模型:在模型评估中可以分别验证正例和负例的效果、测试ROC指标、交叉验证等等。其中交叉验证可以直接调用sklearn的库。代码详解:读入数据,因为数据没有列名,所以添加上列名,从数据可看到,分越高越可能被录取原创 2021-08-22 21:55:53 · 2258 阅读 · 1 评论 -
线性回归实战之分析汽车油耗效率8.18
任务要求:根据不同配置下的汽车使用一加仑的汽油跑的公里数这一数据,来预测一下不同重量的汽车在使用一加仑汽油时跑的公里数。大致思路:(1)建立模型:采用sklearn中的线性回归模型,先进行数据训练,得出模型参数之后,再预测一下不同重量下的汽车的行驶公里数(汽车自重越大,行驶公里数越小)(2)评估模型:对比一下预测值和真实值,计算均方误差mse(mse=(真实值-预测值)^2 (对所有样本点求和))代码详解:import pandas as pdimport matplotli..原创 2021-08-18 17:14:53 · 1345 阅读 · 0 评论