Word作为神经网络输入

时间:2017-01-19 09:43:19

标签: neural-network

任务: 我有字母组合,例如“hafe”,“cool”,“zcna”,我想学习NN来判断这些字母组合是否“漂亮”。 我尝试通过下一个算法将字母转换为数组:`arr [i] = word [i] - 'a'== i? 1:0,如果是当前字母,则arr [i]为1,否则为0。 NN的输入是这些数组的串联。 我使用了感知器这样的输入,但它不起作用。 有任何想法吗?也许有更好的选择将单词转换为输入?或者我需要使用不同的架构?

UPD

我用于学习NN的代码。 JS + Synaptic。

const network = new synaptic.Architect.Perceptron(26 * 7, 100, 1)

const feedInitialData = () => {
    data = data
        .concat(names
            .slice(0, 10000)
            .filter(name => name.length == 7)
            .map(wordToArray)
            .map(input => ({input, output: [1]}))
        )

    for (let i = 0; i < 300; i++) {
        let word = randomString(7)
        data.push({input : wordToArray(word), output : [0]})
    }

    network.trainer.train(data, { 
        iterations: 10000000,
        cost: synaptic.Trainer.cost.MSE,
    })

    console.log(network.activate(data[0].input))
    data = []
}

0 个答案:

没有答案