首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    基于TensorFlow.js在浏览器上构建深度学习应用

    这只需要矩阵乘法就可以计算,在TensorFlow.js中只用单个张量操作。因为训练一个KNN分类器比训练神经网络模型要快得多(你需要做的只是将训练样本增加到矩阵)。...这时我们调用图片的3D张量对象的dispose()方法,它会释放指定部分张量的GPU的内存。如果不这么操作,随着迭代训练每次迭代都会持续地分配图片张量对象,我们会出现内存泄漏 。...下面总结一下,TensorFlow.js 的迭代训练过程如下: 从摄像头抓取一张图片,并使用tf.fromPixels 函数将其转换成一个3D张量 检查我们当前是否在处理某个手势。...这两个函数包括在浏览器上运行石头剪刀布游戏的有效代码。它们处理游戏的流程,监控TensorFlow.js迭代过程中设置的中间变量,检查用户当前在摄像头做的哪种手势,并相应的更新UI。...然而,这里我们并不去深究两个函数,因为它们并不包含TensorFlow.js相关的代码。理解这两个函数留作课外练习。

    1.2K40

    面向纯新手的TensorFlow.js速成课程

    本课程由CodingTheSmartWay.com出品,在本系列的第一部分中,你将学到: TensorFlow.js是什么 如何将TensorFlow.js添加到Web应用程序中 如何使用TensorFlow.js...TensorFlow.js基础知识 在进行实际示例之前,让我们来看看TensorFlow中的主要构建块。 ? 张量 张量(Tensor)是TensorFlow中的主要数据单位。...此外,你可以使用以下函数来增强代码可读性: tf.scalar:只有一个值的张量 tf.tensor1d:具有一个维度的张量 tf.tensor2d:具有两个维度的张量 tf.tensor3d:具有三维的张量...: [[0,0,0], [0,0,0]] 在TensorFlow.js中,所有张量都是不可变的。...由于张量运算的不变性,结果值总是返回一个新的张量TensorFlow.js提供了许多有用的操作,如square,add,sub和mul。

    7.3K50

    前端开发教程:JavaScript的相等比较你了解

    如果你是一个JavaScript新手,那么有些基础知识需要你掌握,从新手到大神就是一条踩坑和出坑的过程,下面先说一个最基本的相等相等 如果你搞C#或Java一定非常熟悉==比较运算符。...值类型(或字符串)相等只需要比较值,引用类型相等需要有相同的引用。...JavaScript有两个等值运算符:==和===,最初我的大部分代码都是用的==,废话不说,上代码 var x = 1; console.log(x == "1") //true 整数1是如何和字符串"1"相等的...在JavaScript中,有相等(==)和严格相等(===)之说。相等运算符将强制转换两边的操作数为相同类型后执行严格相等比较。...严格相等不进行类型转换。如果操作数类型不同(如整数和字符串),那么他们不全等(严格相等)。

    51120

    掌握深度学习,为什么要用PyTorch、TensorFlow框架?

    Tensor(张量)是一种物理学和工程学中广泛使用的数学结构。2 阶的 Tensor 是一种特殊的矩阵;而对向量和张量取内积就可以得到另一个拥有新长度和新方向的向量。...TensorFlow 这个名字就来自张量在其网络模型中流动的方式。NumPy 也用到了 Tensor,名为 ndarray 。 GPU 加速是大多数现代深度神经网络框架的基础。...在 TensorFlow.js、ml5.js 之上还有一个高级库,它隐藏了张量和优化器的复杂性。 TensorFlow.js 可以通过浏览器支持移动设备和桌面设备。...,或者“你有什么不可或缺的应用?” 同样,“我应该使用哪种深度学习框架?”也算不上一个真正的问题。这个问题同样取决于你自己,比如首先想一想“你想用你的模型干什么?”...然后,你可能会意识到这两个框架的确有多相似之处,而且它们赖以生存的概念和技术都是相同的。 在很多情况下,选用哪种框架无关紧要:你会发现每个框架可用的模型基本相同。

    1.4K10

    为什么要用 PyTorch、TensorFlow 框架

    Tensor(张量)是一种物理学和工程学中广泛使用的数学结构。2阶的Tensor是一种特殊的矩阵;而对向量和张量取内积就可以得到另一个拥有新长度和新方向的向量。...TensorFlow这个名字就来自张量在其网络模型中流动的方式。NumPy也用到了Tensor,名为ndarray。 GPU加速是大多数现代深度神经网络框架的基础。...在TensorFlow.js、ml5.js之上还有一个高级库,它隐藏了张量和优化器的复杂性。 TensorFlow.js可以通过浏览器支持移动设备和桌面设备。...,或者“你有什么不可或缺的应用?” 同样,“我应该使用哪种深度学习框架?”也算不上一个真正的问题。这个问题同样取决于你自己,比如首先想一想“你想用你的模型干什么?”...然后,你可能会意识到这两个框架的确有多相似之处,而且它们赖以生存的概念和技术都是相同的。 在很多情况下,选用哪种框架无关紧要:你会发现每个框架可用的模型基本相同。

    1.1K21

    TensorFlow发布面向JavaScript开发者的机器学习框架TensorFlow.js

    TensorFlow.js 项目主页:https://js.tensorflow.org/ TensorFlow.js 的核心概念 TensorFlow.js 是一个开源的用于开发机器学习项目的 WebGL-accelerated...Tensor TensorFlow.js 中的中心数据单元是张量(tensor):一维或多维数组。一个 Tensor 实例的 shape 属性定义了其数组形状(即,数组的每个维度上有多少个值)。...Tensor 主要构造函数是 tf.tensor 函数: Variable Variable 使用一个张量值来初始化。然而,和 Tensor 不一样,它们的值是可变的。...你可以用 assign 方法分配一个新的张量到一个已有的变量(variable): Variable 主要用于在模型训练过程中保存和更新值。...TensorFlow.js 提供了多种适用于张量的线性代数和机器学习运算的 Op。由于 Tensor 是不可改变的,这些 Op 不会改变它们的值,而会返回新的 Tensor。

    939120

    前端工程师掌握这18招,就能在浏览器里玩转深度学习

    TensorFlow.js 发布之后我就把之前训练的目标/人脸检测和人脸识别的模型往 TensorFlow.js 里导,我发现有些模型在浏览器里运行的效果还相当不错。...大家可能心中会有个疑问:你脑残?要用浏览器训练模型?...性能 ▌13.内存泄漏 不知道大家知不知道 TensorFlow.js 不会自动帮你进行垃圾回收。张量所占的内存必须自己手动调用 tensor.dispose() 来释放。...大家把 tf.memory() 每次迭代都输出来看看张量的个数。如果没有一直增加那说明没泄漏。 ?...▌14.调整画布大小,而不是张量大小 在调用 TF . from pixels 之前,要将画布转换成张量,请调整画布的大小,否则你会很快耗尽 GPU 内存。

    59510

    教程 | 用摄像头和Tensorflow.js在浏览器上实现目标检测

    一部分张量操作不可行。 Tensorflow.js 还很年轻,因此有一些功能暂时不可用,例如 boolean mask 以及 NMS。...你不能使用 5d 张量 注意,Tensorflow,js 的 WebGL 后端不支持 5d 张量。既然无法想象五维的样子,为什么还要使用它们?...另一种做法是不将输出重塑为 5d 张量。但是有些细节还需要谨慎处理。 除此之外,我的使用体验是连贯的。我只需要重新实现两个通常情况下 Tensorflow 不使用的 CPU 算法(传统 JS)。...这也是 Tensorflow.js 最棒的部分之一。 我们可以从文件(DOM)中取出视频或者图像然后将其转换为一个张量!...现在可以将图像作为张量输入!之后,从图像切换到网络摄像头,你只需将其指向正确的元素即可。这对我来说很神奇。 在这之后,我们要做一些预处理。

    2.3K41

    前端工程师深度学习,就能在浏览器里玩转深度学习

    image TensorFlow.js 发布之后我就把之前训练的目标/人脸检测和人脸识别的模型往 TensorFlow.js 里导,我发现有些模型在浏览器里运行的效果还相当不错。...image.png 大家可能心中会有个疑问:你脑残?要用浏览器训练模型?...性能 ▌13.内存泄漏 不知道大家知不知道 TensorFlow.js 不会自动帮你进行垃圾回收。张量所占的内存必须自己手动调用 tensor.dispose() 来释放。...大家把 tf.memory() 每次迭代都输出来看看张量的个数。如果没有一直增加那说明没泄漏。 ?...image ▌14.调整画布大小,而不是张量大小 在调用 TF . from pixels 之前,要将画布转换成张量,请调整画布的大小,否则你会很快耗尽 GPU 内存。

    94530

    前端入门机器学习 Tensorflow.js 简明教程

    Tensor(张量) Tensor(张量) 是TensorFlow中的基本数据结构,它是向量和矩阵向更高维度的推广,从编程的角度来看,它的核心数据不过就是多维数组。...这样,神经网络中的信息传递就通过张量(Tensor)的流动(Flow)表现出来了。...Fit 阶段执行的是模型训练的工作(fit本身是拟合的意思),通过调用模型的fit方法就可以启动训练循环,官方示例代码如下(fit方法接收的参数分别为输入张量集、输出张量集和配置参数): const batchSize...卷积神经网络的基本工作原理图如下(图中各个层的数量并不是固定的): 为了搞清楚卷积网络的工作流程,需要先了解卷积和池化这两个术语的含义。...后面是将图片数据读取1000张图片转换成Tensorflow.js可运算的数据Tensor(张量),以及随机读取这1000张以外的200张验证数据。

    3.9K43

    PyTorch的Broadcasting 和 Element-Wise 操作 | PyTorch系列(八)

    如果两个元素在张量内占据相同位置,则称这两个元素是对应的。该位置由用于定位每个元素的索引确定。...[ [9,8], [7,6] ], dtype=torch.float32) 这两个张量均为2 x 2形状的2阶张量。...我们知道,如果两个元素在张量内占据相同位置,则认为这两个元素是对应的,并且该位置由用于定位每个元素的索引确定。让我们看一个对应元素的例子。 > t1[0][0] tensor(1....], [2., 4.]], dtype=float32) > t1 + t2 tensor([[3., 5.], [3., 5.]]) broadcasting之后,这两个张量之间的加法运算是同一形状张量之间的...在TensorFlow.js系列中有一篇文章更详细地介绍了广播。这里有一个实际的例子,并讨论了确定一个特定的张量如何广播的算法,所以检查一下,对广播进行更深入的讨论。

    6.4K61

    TensorFlow.js进行人体姿态估计:在浏览器中即可实时查看人体姿态

    PoseNet运行在TensorFlow.js上任何拥有普通摄像头的桌面或手机的人都可以在网络浏览器中体验这项技术。...由于TensorFlow.js上的PoseNet在浏览器中运行,因此任何姿态数据都不会离开用户的计算机。...我们将在一分钟内讨论它们各自的含义,但现在下面的插图以高级方式捕获每个姿态关键点与一个热图张量和一个偏移矢量张量的关联。 ?...PoseNet返回的17个姿态关键点中的每一个都与一个热图张量和一个偏移矢量张量相关联,用于确定关键点的确切位置。 这两个输出都是具有高度和宽度的3D张量,我们将其称为分辨率。...这会产生17×2的张量,每行都是相应关键点的偏移向量。

    5.2K40
    领券