ML5, sentiment analysis: Uncaught (in promise) TypeError: Cannot read property 'the' of undefined
ML5, sentiment analysis: Uncaught (in promise) TypeError: Cannot read property 'the' of undefined
我正在尝试使用 ML5 sentiment
api:
来评估一本书的情绪
const sentiment = ml5.sentiment('movieReviews', modelReady)
// When the model is loaded
function modelReady() {
// model is ready
console.log("Model Loaded!");
}
// make the prediction
fetch('../../data/brothers.txt')
.then(response => response.text())
.then(text => {
const prediction = sentiment.predict(text)
console.log(prediction)
createDiv('predicted sentiment - ' + prediction)
})
function setup() {
}
text
加载正常,我可以将其打印到控制台。使用predict
方法的行上出现以下错误:
如果我用一个单词替换 text
,错误仍然存在。那么我在这里做错了什么,如何使事情正常进行?
它不起作用,因为在加载模型之前调用了该函数(正如@dwosk所述)。对 predict
的调用必须在 模型准备就绪后 完成。
换句话说,函数必须在A处调用,而不是在B处调用:
function modelReady() {
console.log("Model Loaded!");
[A: THIS LOADS WHEN THE MODEL IS READY]
}
[B: THIS LOADS BEFORE THE MODEL IS READY]
这是一个工作示例:https://codepen.io/adelriosantiago/pen/RwaXjez?editors=1011
请注意,为简单起见,fetch
函数被模拟为 return“一只美丽的快乐猫”。
我正在尝试使用 ML5 sentiment
api:
const sentiment = ml5.sentiment('movieReviews', modelReady)
// When the model is loaded
function modelReady() {
// model is ready
console.log("Model Loaded!");
}
// make the prediction
fetch('../../data/brothers.txt')
.then(response => response.text())
.then(text => {
const prediction = sentiment.predict(text)
console.log(prediction)
createDiv('predicted sentiment - ' + prediction)
})
function setup() {
}
text
加载正常,我可以将其打印到控制台。使用predict
方法的行上出现以下错误:
如果我用一个单词替换 text
,错误仍然存在。那么我在这里做错了什么,如何使事情正常进行?
它不起作用,因为在加载模型之前调用了该函数(正如@dwosk所述)。对 predict
的调用必须在 模型准备就绪后 完成。
换句话说,函数必须在A处调用,而不是在B处调用:
function modelReady() {
console.log("Model Loaded!");
[A: THIS LOADS WHEN THE MODEL IS READY]
}
[B: THIS LOADS BEFORE THE MODEL IS READY]
这是一个工作示例:https://codepen.io/adelriosantiago/pen/RwaXjez?editors=1011
请注意,为简单起见,fetch
函数被模拟为 return“一只美丽的快乐猫”。