近两年机器学习火的一塌糊涂,智能两个字随处可见。今天分享的内容是我们如何在浏览器端实现机器学习,通过机器学习增强用户体验。
首先通过一个小示例l来体验一下 js 机器学习库 brain.js,我们让 brain.js 读取数据模型(体重和身高),学习如何鉴别是大人还是小孩。
1. 使用 npm init 创建一个项目
2. npm install brain.js --save(注意这里是 brain.js 而不是 brain)
3. 然后创建 app.js 输入下图中代码。
是不是很简单。train 方法接受数组作为参数,数组中每个对象都有一个 input 属性和一个 output 属性,input 中放用于决策的数据模型,output 中放置对应数据模型的结果,brain.js 通过学习这些数据,可以推测出某个数据模型的结果的概率。
看一些下面数据input[体重,身高] output [1 表示成人,0 表示儿童]
然后通过学习后,推测[65,172]是儿童还是成人。
我们了解如何使用 brain.js 实现浏览器端机器学习。我们就结合实际来一个实例。首先设计一下数据模型,input(r,g,b)(红,绿,蓝)输出是 dark:1 或 light:1)明暗。
然后我们用测试好的数据来喂机器学习,然后用一个我们事先已经知道 light:1 数据来让机器学习推测
效果不错吧。
正式开始,我们在项目根目录下创建 index.html 文件,还需要引入浏览器端的brain.js 效果如图,一个颜色选择器,一个蓝色为背景,白色文字的标题。
还需要做一些准备,将颜色值转为一个 的对象。
测试一下,
创建机器学习,然后提供机器学习的训练的数据,然后让机器学习读取标题背景色,然后判断背景色是明还是暗。
测试一下,当背景色为下图中颜色,看一下输出为 dark 0.9 ,推测的还是很准的。
需改适当一下代码,如图,这次此判断结果的值为 dark 或 light,然后我们通过输出的值来让文字显示为白色(dark)还是黑色(light)。
不错的库吧,很实用。
领取专属 10元无门槛券
私享最新 技术干货