当前位置:首页 > 经验 >

javascript实例教程(javascript 开发实例)

来源:原点资讯(www.yd166.com)时间:2022-11-01 09:33:58作者:YD166手机阅读>>

摘要: 本篇文章教你如何使用JavaScript在浏览器中完整地定义、训练和部署机器学习算法。

虽然它可能不是机器学习传统选择的开发语言,但是 JavaScript 正在证明有能力完成这样的工作 —— 即使它目前还不能与主要的机器学习语言 Python 竞争。在进一步学习之前,让我们做一下机器学习的介绍。

根据Skyhoshi这个有着超过13年开发人员的实际经验,机器学习赋予计算机根据所提供的数据进行学习的能力,并且识别模式,然后得出结论,而不需要明确的人为干预。

从传统上来说,JavaScript在机器学习中不常用,有以下两个主要的原因,包括有限的库支持和实现的复杂性。

虽然如此,JavaScript最近已经颇欢迎了,主要是因为在客户端上有完整的部署机器学习应用的广泛机会。

在这篇文章中,我将演示一个简单的机器学习辅导项目,它展示了JavaScript也能够为机器学习应用提供动力。

对于这个相对简单的项目,我将使用Neal.js程序文件,它是一个简便的开源JavaScript库,它为机器学习提供了预处理的神经网络。

该项目的目的是用一组训练数据来训练一个神经网络,使得它可以预测颜色的对比是亮的还是暗的。

第一步:安装库

让我们使用NoDE.js这个文件,并通过NPM包管理器来安装库。为此,你需要在计算机上预先安装No.js文件。

这里是你可以用在终端上运行的代码。(切记把它安装在你要处理的文件夹上)

npm install brain.js

第二步: 导入库

使用以下代码在你的文件上导入库:

const brain = require("brain.js");

第三步:创建一个神经网络

以下是代码:

const network = new brain.NeuralNetwork();

第四步:训练数据

在机器学习之中,训练的数据和收到的结果一样好。更高质量的数据可能比较低质量的数据预测出更好的结果。

该数据是一组示例,它被提供给算法并“指导”算法要搜索什么东西。

在这个例子中,由于我们希望这个机器学习算法学会识别光亮和黑暗之间颜色对比的差异,所以我们将给出这些例子来训练学习模型。

在这之后,该算法将利用所提供的实例来辨别两个组之间的本质特征。

如果在将来提供了未知的数据,那么这个算法将根据从原始训练模型中识别出来的特征进行分类。

对于这个项目,我们将使用内置的brain.js程序文件中的train()函数来使用实例数据的数组来训练神经网络。

每个实例中的训练数据都将有一个输入对象和一个输出对象,它们都应该是一个从0到1的数组。

因为我们正在使用颜色来进行研究,因此我们要去找到它们的RGB值。由于RGB颜色介于0和255之间,所以我们可以将它们转换为被255相除的0到1之间的值。

举个例子,如果颜色的RGB值为(158,183,224),我们通过除以255来转换每个值,它将变成(0.62,0.72,0.88)。

在这之后,我们需要提供RGB值的一些示例数据集,并指定输出将是亮的还是暗的。

以下是代码:

network.train([

{input: {r:0.62,g:0.72,b:0.88}, output:{light: 1}},

{input: {r:0.1,g:0.84,b:0.72}, output:{light: 1}},

{input: {r:0.33,g:0.24,b:0.29}, output:{dark: 1}},

{input: {r:0.74,g:0.78,b:0.86}, output:{light: 1}},

]);

第五步: 查看结果

在用一些实例数据进行训练算法之后,现在是查看预测结果的时候了。

我们只需调用Run()函数,并提供一个颜色色调的参数,目的是想知道它是亮的还是暗的。

以下是代码:

const result = network.run({r:0.0,g:1,b:0.65});

console.log(result);

如果我们在Windows终端上执行以上代码,输出将是这样的:

javascript实例教程,javascript 开发实例(1)

正如你所看到的,我们给初学者的机器学习算法预测到颜色对比度是亮色的,准确度为0.97(97%)。

如果我们希望输出是亮的或者是暗的,那么可以添加下面的代码:

const result = brain.likely({r:0.0,g:1,b:0.65}, network);

console.log(result);

以下终端上的显示结果:

javascript实例教程,javascript 开发实例(2)

结论:

以下是整个项目的代码:

const brain = require("brain.js");

const network = new brain.NeuralNetwork();

network.train([

{input: {r:0.62,g:0.72,b:0.88}, output:{light: 1}},

{input: {r:0.1,g:0.84,b:0.72}, output:{light: 1}},

{input: {r:0.33,g:0.24,b:0.29}, output:{dark: 1}},

{input: {r:0.74,g:0.78,b:0.86}, output:{light: 1}},

]);

//const result = network.run({r:0.0,g:1,b:0.65});

const result = brain.likely({r:0.0,g:1,b:0.65}, network);

console.log(result);

在这篇文章中,我演示了一个简单的关于JavaScript的机器学习项目。为了提高你的机器学习技能,你当然也需要完成类似的项目。

阿里云云栖社区组织翻译。

文章原标题《9 Reasons why your machine learning project will fail》

作者: Alberto Artasanchez

译者:奥特曼,审校:袁虎。

栏目热文

javascript全套自学教程(javascript语言入门自学)

javascript全套自学教程(javascript语言入门自学)

你应该已经知道,没有什么简单方法可以创建有效且跨浏览器的JavaScript 代码,除了编写整洁代码的常规挑战外,我们还...

2022-11-01 09:48:26查看全文 >>

javascript开发手册(javascript官方手册)

javascript开发手册(javascript官方手册)

JavaScript 是世界上最流行的编程语言之一。我相信这是您第一个绝佳选择的编程语言。我们主要使用JavaScrip...

2022-11-01 10:18:23查看全文 >>

javascript 菜鸟教程(javascript基础语法菜鸟教程)

javascript 菜鸟教程(javascript基础语法菜鸟教程)

/* * 创建文本框 * _id:文本框编号 * _text:文本框上的文字 * _x:文本框的x位置 * _y:文本...

2022-11-01 10:15:53查看全文 >>

javascript快速入门教程(javascript学习方法)

javascript快速入门教程(javascript学习方法)

JavaScript(通常缩写为JS)是一种解释型、面向对象、多范式的高级编程语言。它被世界上的绝大多数网站所使用,也被...

2022-11-01 09:32:09查看全文 >>

js教程从入门到精通(编程必背50个代码)

js教程从入门到精通(编程必背50个代码)

目录一个简单vue应用的创建选择什么方式创建vue应用创建项目结构分析运行vue.js知识点的学习vue.js是怎么构成...

2022-11-01 10:08:48查看全文 >>

javascript教程零基础(javascript全套教程)

javascript教程零基础(javascript全套教程)

怎么自学javascript?下面本篇文章就来给大家介绍一下系统学习JavaScript的方法。有一定的参考价值,有需要...

2022-11-01 10:20:49查看全文 >>

菜鸟教程javascript(零基础javascript教程)

菜鸟教程javascript(零基础javascript教程)

0x1. 起因得到 APP 中有个文稿模块,这部分是内嵌的前端开发的 Web 页面,支持在客户端和微信中访问,其中有一个...

2022-11-01 10:17:36查看全文 >>

js教程案例(js基础的简单例子)

js教程案例(js基础的简单例子)

小编为大家收集了11个web前端开发,大企业实战项目案例 5W行源码!拿走玩去吧!获取途径:转发 关注并私信小编:“前端...

2022-11-01 10:01:34查看全文 >>

javascript从入门到精通(javascript全套教程)

javascript从入门到精通(javascript全套教程)

JavaScript(简称“JS”) 是一种具有函数优先的轻量级,解释型或即时编译型的编程语言。虽然它是作为开发Web页...

2022-11-01 09:44:43查看全文 >>

js基础知识点汇总(js基础学完了感觉跟没学一样)

js基础知识点汇总(js基础学完了感觉跟没学一样)

前端知识点总结——JS基础1.javascript概述(了解)1.什么是javascriptjavascript简称为j...

2022-11-01 10:00:42查看全文 >>

文档排行