代码拉取完成,页面将自动刷新
Machine learning and Matrix operation library by TypeScript.
Make sure NPM is installed, Switch to the project directory then execute the following command.
$ npm install infers@latest
Reference in project:
import { Matrix, BPNet } from 'infers'
Matrix transpose:
let m = new Matrix([
[1, 5, 0],
[2, 4 , -1],
[0, -2, 0]
])
m.T.print()
// Matrix 3x3 [
// 1, 2, 0,
// 5, 4, -2,
// 0, -1, 0,
// ]
BP neural network example of XOR, three-layer network:
let xs = new Matrix([[1, 0], [0, 1], [0, 0], [1, 1]])
let ys = new Matrix([[1], [1], [0], [0]])
let model = new BPNet([2, [6, 'Tanh'], [1, 'Sigmoid']], { rate: 0.1 })
model.fit(xs, ys, {
epochs: 5000, onEpoch: (epoch, loss) => {
if (epoch % 100 === 0) console.log('epoch:' + epoch, 'loss:', loss)
}
})
model.predict(xs).print()
// Matrix 4x1 [
// 0.9862025352830867,
// 0.986128496195502,
// 0.01443800549676924,
// 0.014425871504885788,
// ]
BP neural network example of addition, four-layer network:
let xs = new Matrix([[1, 4], [3, 2], [6, 5], [4, 7]])
let ys = new Matrix([[5], [5], [11], [11]])
let model = new BPNet([2, 6, 6, 1], { mode: 'bgd', rate: 0.01 })
model.fit(xs, ys, {
epochs: 500, onEpoch: (epoch, loss) => {
console.log('epoch:' + epoch, 'loss:', loss)
}
})
let xs2 = new Matrix([[5, 8], [22, 6], [-5, 9], [-5, -4]])
model.predict(xs2).print()
// Matrix 4x1 [
// 12.994745740521667,
// 27.99134620596921,
// 3.9987224114576856,
// -9.000000644547901,
// ]
RNN: Recurrent neural network example:
let trainData = ['hello rnn', 'good morning', 'I love 🍎!', 'I eat 🍊!']
let net = new RNN({ trainData })
net.fit({
epochs: 1500, onEpochs: (epoch, loss) => {
if (epoch % 10 === 0) console.log('epoch: ', epoch, 'loss: ', loss)
}
})
console.log(net.predict('I love'))
console.log(net.predict('I eat'))
console.log(net.predict('hel'))
console.log(net.predict('good'))
// 🍊!/n
// 🍎!/n
// lo rnn/n
// morning/n
[number, (number | [number, ActivationFunction]), ...(number | [number, ActivationFunction])[]]
number
number
'Sigmoid' | 'Relu' | 'Tanh' | 'Softmax'
'sgd' | 'bgd' | 'mbgd'
Different learning rates, iterations and network shapes are needed to deal with different problems, which need to be adjusted according to the cost function. Parameter optimization is also the process of model optimization.
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。
1. 开源生态
2. 协作、人、软件
3. 评估模型