【发布时间】:2012-10-05 00:26:18
【问题描述】:
我正在尝试使用 Node.JS 中的自然模块。我编写了一个简单的程序,它从浏览器获取输入并使用贝叶斯分类器对其进行分类。但是,在运行时,我收到以下错误:
/home/hadoop/cloud_major/testing/node_modules/natural/node_modules/apparatus/lib/apparatus/classifier/bayes_classifier.js:95
classifier.__proto__ = BayesClassifier.prototype;
^
TypeError: Cannot set property '__proto__' of undefined
at Function.restore (/home/hadoop/cloud_major/testing/node_modules/natural/node_modules/apparatus/lib/apparatus/classifier/bayes_classifier.js:95:27)
at restore (/home/hadoop/cloud_major/testing/node_modules/natural/lib/natural/classifiers/bayes_classifier.js:37:54)
at /home/hadoop/cloud_major/testing/node_modules/natural/lib/natural/classifiers/bayes_classifier.js:44:23
at /home/hadoop/cloud_major/testing/node_modules/natural/lib/natural/classifiers/classifier.js:114:13
at fs.readFile (fs.js:176:14)
at Object.oncomplete (fs.js:297:15)
现在,为了研究,我在另一个 Node.JS 模块中遇到类似问题的人浏览了以下线程: https://github.com/andris9/mailcomposer/issues/6 我按照自然卸载重装的解决方案,没有任何帮助。 我还发现:http://tommytcchan.blogspot.in/2012_07_01_archive.html我用 npm ls 得到:
├─┬ natural@0.1.17
│ ├─┬ apparatus@0.0.6
│ │ └── sylvester@0.0.21
│ └── underscore@1.4.2
然后,我通过:Find the version of an installed npm package 得到以下输出:
├─┬ natural@0.1.17
│ ├─┬ apparatus@0.0.6
│ │ └── sylvester@0.0.21
│ └── underscore@1.4.2
即我认为已安装包的本地版本与所需的依赖项匹配。有其他人使用此包并设法调试此错误吗?
非常感谢!
【问题讨论】:
-
我没有意识到节点有任何 ml/nlp 包。有机会我会看看的。最好的 NLP 工具是用 java 和 python 编写的,所以我强烈考虑使用它们。
-
我无法在最新版本上重现此问题。你试过升级吗?自然@0.1.18;仪器@0.0.7;西尔维斯特@0.0.21;下划线@1.4.3。如果这样做不行,您能否将代码添加到您的问题中以帮助调试?
标签: node.js