
机器学习与深度学习
文章平均质量分 92
包含深度学习框架、模型与实战项目
笼中小夜莺
春招已上岸,梦想是环游世界。
展开
-
基于用户、物品和模型的协同过滤算法原理及实现
定义UserCF:基于用户的协同过滤算法ItemCF:基于物品的协同过滤算法什么是协同过滤算法协同过滤简单来说是利用某兴趣相投、拥有共同经验之群体的喜好来推荐用户感兴趣的信息,个人通过合作的机制给予信息相当程度的回应(如评分)并记录下来以达到过滤的目的进而帮助别人筛选信息,回应不一定局限于特别感兴趣的,特别不感兴趣信息的纪录也相当重要。其中,基于用户和基于物品的协同过滤成为基于近邻的协同过滤,还有基于模型的协同过滤UserCF原理找到和目标用户兴趣相似的用户集合找到这个集合中的用户喜欢原创 2021-04-10 22:22:34 · 3744 阅读 · 0 评论 -
图片处理(一):pillow模块常用操作
安装:pip install Pillow引入:import PILfrom PIL import Image简述pillow库志愿者在PIL的基础上创建了一个分支版本,命名为Pillow。这个库专们用来处理图片,支持最新的python3版本。坐标系统PIL使用笛卡尔像素坐标系统,坐标(0,0)位于左上角,从上往下为正方向,从左到右为正方向。坐标经常用于二元组(x,y)。长方形则表示为四元组,前面是左上角坐标。例如,一个覆盖800x600的像素图像的长方形表示为(0,0,800,600原创 2020-11-01 08:56:38 · 1725 阅读 · 0 评论 -
Pytorch入门学习笔记
pytorch==1.5为什么选择Pytorch活跃度越来越高,逐渐形成了完整的开发生态,资源多动态图架构,运行速度较快代码简洁,易于理解,设计优雅,易于调试课程内容研究的两类问题Tensortensor是张量,你可能听说过向量,标量等等,我们可以通过张量描述任意维度的物体,其实是对标量,向量,矩阵更加泛化的一个概念,我们使用Tensor描述样本Tensor常见类型数据类型CPU TensorGPU Tensor32 bit 浮点torch.Floa.原创 2021-03-30 00:25:57 · 883 阅读 · 2 评论 -
各深度学习各主流框架介绍
前言深度学习神经网络正步入成熟,而深度学习框架目前众多,大都可以在图像识别、手写识别、视频识别、语音识别、目标识别和自然语言处理等诸多领域大显身手。什么是深度学习框架?深度学习框架的出现降低了入门的门槛,你不需要从复杂的神经网络开始编代码,你可以根据需要选择已有的模型,通过训练得到模型参数,你也可以在已有模型的基础上增加自己的layer,或者是在顶端选择自己需要的分类器和优化算法(比如常用的梯度下降法)。当然也正因如此,没有什么框架是完美的,就像一套积木里可能没有你需要的那一种积木,所以不同的框架适用原创 2020-12-29 00:46:41 · 3044 阅读 · 0 评论 -
神经网络中的数据格式(很重要)
简介神经网络只能识别数字,即int或float,我们的文本啊,图片啊,语音啊都要转化为相应的数字才能处理,我们针对不同的载体,每种类型的数字格式是不同的数据格式现实生活中的数据格式:结构化数据(数据表(班级名单、股票价格))非结构化数据(序列(文本)、图片、视频)神经网络中可以使用的数据:数据表-2D——形状=(样本数、特征数)一般可以使用csv或者excel存储,样本数为行数,特征数为列数序列表-3D——形状=(样本数、步长、特征数)一般称为3D张量,通常用来表示文本。一段原创 2020-12-17 18:18:53 · 6571 阅读 · 0 评论 -
pytorch入门(三):一些进阶部分的原理和实现
为什么pytorch是动态的简单来说,说因为pytorch传入的参数可以动态修改,我们甚至可以在循环里修改,其次呢就是框架可以自动求导具体是什么原理就不过多介绍了gpu加速mac用户不支持gpu这个东西,拜拜hiahiahia简述只有Nvidia厂家且支持cuda模块的gpu才可以加速(amd yes不了了)我们可以在官网查看https://developer.nvidia.com/cuda-gpus常见的就geforce了,部分型号截图如下如何安装cuda首先,去官网下载cuda原创 2020-11-01 08:02:22 · 479 阅读 · 0 评论 -
pytorch入门(二):常见神经网络的原理及实现
cnn/rnn/autoencoder/gan/原创 2020-11-01 06:47:40 · 1056 阅读 · 0 评论 -
pytorch入门(一):基本概念、模型训练与保存、优化器
什么是深度学习深度学习是机器学习中的神经网络的延伸,它将这门学问发扬光大!什么是神经网络计算机神经网络是模仿生物神经网络的一种运算模型。神经网络有输入层、隐藏层和输出层,通过输出层可以直观看到计算机的判断。我们需要许多张带有标签的数据,给他看数据,首先会给我们不成熟的答案,通过一张张辨识,错误答案会反向传播让神经元的激活函数的参数进行调整,使得部分神经元变得活跃或迟钝。黑盒其中,输入层可以是将原数据进行处理之后的数据,称为特征,加工后的数据称为代表特征。依次打开黑盒,就相当于黑盒不存在,与其原创 2020-10-29 21:04:40 · 1151 阅读 · 1 评论 -
我的第一个神经网络模型
使用pytorch预测y的值,并且每5步就进行一次可视化跟着莫凡大神学习的,呜呜呜,我好爱他import torchimport torch.nn.functional as Fimport matplotlib.pyplot as plt# 生成二维数据x = torch.unsqueeze(torch.linspace(-1,1,100),dim=1)# 添加噪点y = x.pow(2) + 0.2*torch.rand(x.size())plt.scatter(x.data.num原创 2020-10-29 18:54:34 · 585 阅读 · 1 评论 -
使用torch进行简单的手写数字识别
手写数字识别大致思路线性模型添加非线性部分只有线性部分的计算是很难完成识别任务的,因此我们需要添加非线性部分。sigmoid函数(激活函数)是最常用的,我们这里使用ReLu函数,当输入的和大于0就是原来的和,当小于零就忽略掉。将非线性部分添加到原模型我们只需要乘到前面就好了。由于ReLu函数是线性的,因此模型的线性能力增强了,还具有很强的非线性能力。看看如何用梯度下降的方法解决再使用argmax函数得到索引值。import torchfrom torch import nn原创 2020-10-27 08:36:36 · 1395 阅读 · 0 评论