作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试建立一个简单的 Brain.js 示例来了解它是如何工作的。我用过this tutorial (成人/ child 示例为 5:10 标记)。我的代码如下所示:
var brain = require("brain.js");
const network = new brain.NeuralNetwork();
network.train([
{input:{height:1, weight:20},output:{adult:0}},
{input:{height:2, weight:40},output:{adult:0}},
{input:{height:3, weight:60},output:{adult:0}},
{input:{height:4, weight:80},output:{adult:0}},
{input:{height:5, weight:100},output:{adult:0}},
{input:{height:5, weight:200},output:{adult:1}},
{input:{height:6, weight:220},output:{adult:1}},
{input:{height:7, weight:240},output:{adult:1}},
{input:{height:8, weight:260},output:{adult:1}},
]);
const testPerson = network.run({height:1,weight:20})
console.log(testPerson)
很明显,如果您的高度为 4 英尺或以下,则您是 child ;如果您的高度为 6 英尺或以上,则您是成年人。如果您高度 5 英尺,则取决于您的体重。
但是如果我在那里放一个明确的 child (testPerson
),我会返回:
{ adult: 0.4641557037830353 }
看来根据数据,应该更有把握判断一个1英尺20磅的人不是成年人。
关于该软件的工作原理,我缺少什么?
最佳答案
您只需规范化您的输入:https://jsfiddle.net/robertleeplummerjr/jn056e7L/5/
const network = new brain.NeuralNetwork();
network.train([
{input:{height:1, weight:20},output:{child:1}},
{input:{height:2, weight:40},output:{child:1}},
{input:{height:3, weight:60},output:{child:1}},
{input:{height:4, weight:80},output:{child:1}},
{input:{height:5, weight:100},output:{child:1}},
{input:{height:5, weight:200},output:{adult:1}},
{input:{height:6, weight:220},output:{adult:1}},
{input:{height:7, weight:240},output:{adult:1}},
{input:{height:8, weight:260},output:{adult:1}},
].map(normalize))
const testChild = network.run(normalizeInput({height:2,weight:20}))
console.log('a child', testChild)
const testAdult = network.run(normalizeInput({height:5,weight:200}))
console.log('an adult', testAdult)
function normalize(item) {
return {
input: normalizeInput(item.input),
output: item.output
}
}
function normalizeInput(input) {
return {
height: input.height / 10,
weight: input.weight / 300
};
}
关于javascript - Brain.js 根据高度/体重猜测成人还是 child ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49966630/
我希望该按钮(子项)占水平 LinearLayout(其父项)全宽的 25%。代码: LinearLayout ll = new LinearLayout(this); ll.setLayoutPar
我想问一下,当循环开始并再次循环时,字符串变量名称会增加1,我该怎么做。这个程序应该问你要写多少个病人。如果你为前任写信。 10,那么循环将进行10次,它会询问我想要的所有信息,然后将它们添加到我已经
我是一名优秀的程序员,十分优秀!