TensorFlowJS是一个开源软件库JavaScript ,可以在浏览器和 Node.js 训练和部署机器学习模型,可用于各种感知和语言理解任务的机器学习。目前被50个团队用于研究和生产许多Google商业产品,如语音识别、Gmail、Google 相册和搜索。

本系列课程从基本概念开始,由浅入深的介绍了如何利用TensorflowJS在浏览器中进行深度学习。

在浏览器中进行深度学习:TensorFlow.js (一)基本概念

线性代数(Linear algebra)是整个深度学习的数学基础。而张量(Tensor)是线性代数的基本数学概念和运算单元。这一张介绍了有关张量的基本概念和运算。

http://immersivemath.com/ila/index.html

希望了解更多的有关线性代数的知识,请参考:

  • 机器学习中的线性代数
  • 用于深度学习的线性代数备忘清单
  • 为什么线性代数如此难教?

在浏览器中进行深度学习:TensorFlow.js (二)线性回归

线性回归是最基本的机器学习,适合学习其它模型之前来了解。

在统计学中,线性回归是利用称为线性回归方程的最小二乘函数对一个或多个自变量和因变量之间关系进行建模的一种回归分析。这种函数是一个或多个称为回归系数的模型参数的线性组合。只有一个自变量的情况称为简单回归,大于一个自变量情况的叫做多元回归。 在线性回归中,数据使用线性预测函数来建模,并且未知的模型参数也是通过数据来估计。

希望了解更多的线性回归的知识,请参考:

  • 免费Python机器学习课程一:线性回归算法
  • 线性回归终极指南
  • 图解机器学习 线性回归

在浏览器中进行深度学习:TensorFlow.js (三)更多的基本模型

在本章中,我们利用TensorflowJS实现了逻辑回归和K近邻算法。并利用梯度下降的原理解决了一个几何问题,如果通过平面上的三个点来确定一个圆。

更多逻辑回归,梯度下降的内容,请参考:

  • 逻辑回归的几何解释
  • 机器学习算法简介-Logistic回归
  • 了解逻辑回归系数
  • 图解机器学习 逻辑回归
  • 梯度下降方法的视觉解释(动量,AdaGrad,RMSProp,Adam)

在浏览器中进行深度学习:TensorFlow.js (四)识别MNIST手写数据

MINST数据集来进行手写识别对于深度学习而言,就像是学习编程的Hello World。本节利用TensorflowJS来演示了如何手写数字的识别。

在浏览器中进行深度学习:TensorFlow.js (五)构建一个神经网络

神经网络(Neural Network)是深度学习的基础,基本概念包括:神经元,层,反向传播等等。本节利用TensorflowJS构建一个基本的神经网络。

更多神经网络的知识请参考:

  • 神经网络可视化帮助你更好地了解神经网络如何工作
  • 码农必须了解的5种神经网络架构
  • 从头开始可视化神经网络的工作方式
  • 了解神经网络和模型泛化
  • 每种机器学习算法都可以表示为神经网络
  • 在理解通用逼近定理之前,你都不会理解神经网络
  • 可视化解释11种基本神经网络架构
  • 为什么神经网络如此强大?
  • 用Numpy从零开始构建神经网络
  • 神经网络架构简介
  • 神经网络介绍 – 深度学习

在浏览器中进行深度学习:TensorFlow.js (六)构建一个卷积网络

卷积神经网络是一种前馈神经网络,卷积神经网络最擅长的就是图片的处理。它受到人类视觉神经系统的启发。

CNN 有2大特点:

  • 能够有效的将大数据量的图片降维成小数据量
  • 能够有效的保留图片特征,符合图片处理的原则

目前 CNN 已经得到了广泛的应用,比如:人脸识别、自动驾驶、美图秀秀、安防等很多领域。

更多卷积神经网络的知识,请参考:

  • 卷积神经网络学习识别手写数字时的可视化
  • 卷积神经网络(机器学习从零到大师,第3部分)
  • 如何训练神经网络—CNN简介 「Pytorch基础知识」

在浏览器中进行深度学习:TensorFlow.js (七)递归神经网络

神经网络除了CNN之外的另一个常见的类别是RNN,递归/循环神经网络。这里的R其实是两种神经网络,Recurrent:时间递归 , Recusive:结构递归。时间递归神经网络的神经元间连接构成有向图,而结构递归神经网络利用相似的神经网络结构递归构造更为复杂的深度网络。我们大部分时间讲的RNN指的是前一种,时间递归神经网络。

更多递归神经网络的知识请参考:

  • 详解LSTM网络

在浏览器中进行深度学习:TensorFlow.js (八)生成对抗网络

GAN是深度学习中非常有趣的一种模型。GAN的两个主要支柱是生成器和鉴别器。 这是两个复杂的神经网络。通过生成器和鉴别器的相互对抗,生成以假乱真的内容。

更多生成对抗网络的内容,请参考:

  • 深度学习中的生成对抗网络GAN
  • GAN(生成对抗网络)背后的数学
  • 初学者的生成对抗网络(GAN)教程
  • 条件对抗网络的图像到图像翻译 Pix2Pix
  • 这将改变您看待GAN的方式

在浏览器中进行深度学习:TensorFlow.js (九)训练词向量

词向量,英文名叫Word Embedding,在自然语言处理中,用于抽取语言模型中的特征,简单来说,就是把单词用一个向量来表示。词向量嵌入训练是自然语言处理的基础。

更多词向量嵌入和自然语言处理的内容,请参考:

  • 使用TensorFlow在10分钟内掌握词嵌入
  • 用IMDB评论在10分钟内掌握单词嵌入
  • 自然语言处理(NLP)入门
  • Python 自然语言处理从零到大师
  • 对于自然语言处理,你需要了解3种神经网络架构

在浏览器中进行深度学习:TensorFlow.js (十)构建一个推荐系统

推荐系统是机器学习的一个常见应用场景,它用于预测用户对物品的“评分”或“偏好”。通常推荐系统产生推荐列表的方式通常有两种:

  • 协同过滤以及基于内容推荐,或者基于个性化推荐。协同过滤方法根据用户历史行为(例如其购买的、选择的、评价过的物品等)结合其他用户的相似决策建立模型。这种模型可用于预测用户对哪些物品可能感兴趣(或用户对物品的感兴趣程度)。
  • 基于内容推荐利用一系列有关物品的离散特征,推荐出具有类似性质的相似物品。

更多推荐系统的内容请参考:

  • 手把手教你基于深度学习构建推荐系统
  • 如何使用Python Surprise构建基于内存的推荐系统
  • Netflix推荐系统-大数据案例研究

在浏览器中进行深度学习:TensorFlow.js (十一)时间序列预测

时间序列预测的机器学习的一种常见应用,例如预测股票和金融产品价格走势, 温度,天气的走势等等。

更多时间序列分析的内容请参考:

  • 时间序列分析快速入门
  • 用于时间序列预测的AutoML
  • Sktime:用于时间序列机器学习的统一Python库
  • Prophet+深度学习= NeuralProphet

在浏览器中进行深度学习:TensorFlow.js (十二)异常检测算法

异常检测是机器学习领域常见的应用场景,例如金融领域里的信用卡欺诈,企业安全领域里的非法入侵,IT运维里预测设备的维护时间点等。

更多异常检测的内容,请参考:

  • 每个数据科学家都需要的3种简单的异常检测算法
  • 用Python中从头开始的实现完整的异常检测算法
  • 用TensorFlow 2.0实现基于自编码器的异常检测
  • 用Python做单变量数据集的异常点分析
  • 如何在数据流中轻松检测异常值
  • 使用Apache Kafka和Cassandra进行大规模可扩展的异常检测

本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。

最常见的情况是下载不完整: 可对比下载完压缩包的与网盘上的容量,若小于网盘提示的容量则是这个原因。这是浏览器下载的bug,建议用百度网盘软件或迅雷下载。 若排除这种情况,可在对应资源底部留言,或联络我们。

对于会员专享、整站源码、程序插件、网站模板、网页模版等类型的素材,文章内用于介绍的图片通常并不包含在对应可供下载素材包内。这些相关商业图片需另外购买,且本站不负责(也没有办法)找到出处。 同样地一些字体文件也是这种情况,但部分素材会在素材包内有一份字体下载链接清单。

如果您已经成功付款但是网站没有弹出成功提示,请联系站长提供付款信息为您处理

源码素材属于虚拟商品,具有可复制性,可传播性,一旦授予,不接受任何形式的退款、换货要求。请您在购买获取之前确认好 是您所需要的资源