简介
- 一个用javaScript实现的机器学习库
- 可以直接在浏览器和Node.js中直接使用机器学习技术( 录音 手机摄像头 等等直接调用手机设备即可)
具体功能
- 运行现有模型
- 重新训练现有模型
- 使用javaScript开发机器学习模型(从0-1开发机器学习模型)
具体的demo
- 寻找Emoji
- 声音命令
- 使用预训练模型进行图片分类
- 使用摄像头控制吃豆人
安装TensorFlow.js在浏览器中
- 使用script标签
- 使用NPM 包安装,并使用parcel或者webpack构建
在Node.js中安装
- 安装带有原生C++绑定的TensorFlow.js
为什么要tensor
- 中文名张量
- 张量是向量和矩阵向更高维度的推广
- 相当于多维数组
Tensor和机器学习有什么关系?
- 神经网络是什么样子
- 如果让你设计神经网络数据结构,你会怎么设计?
神经网络数据结构设计
- 神经网络的每一层都要存储N维数据
-
N层的For循环运算
传统的for循环代码
//传统For循环
const input = [1,2,3,4]
const w = [[1,2,3,4],[2,3,4,5],[3,4,5,6],[4,5,6,7]]
const output = [0,0,0,0]
for(let i=0;i<w.length;i++){
for(let j=0;j<input.length;j++){
output[i] += input[j]*w[i][j]
}
}
console.log(output)
使用tensorflow我们可以看到,轻松一句代码
tf.tensor(w).dot(tf.tensor(input)).print()
我们查看结果
具体的我们可以查下相关APIhttps://js.tensorflow.org/api/4.10.0/#dot