关闭。这个问题需要更多 focused .它目前不接受答案。
想改进这个问题?更新问题,使其仅关注一个问题 editing this post .
3年前关闭。
Improve this question
我当前的网络应用项目需要一点 NLP:
...如果您有 NLTK,其中大部分是一项幼稚的简单任务— 我这样做了,有点:应用程序后端是 Tornado 上的 Django;你会认为做这些事情不是问题。
但是,我必须以交互方式提供需要标记器的用户反馈,因此我需要对数据客户端进行标记。
现在我实际上正在使用 NLTK,通过 REST API 调用包装了 NLTK 函数的 Tornado 进程,几乎没有其他内容。目前,对于这种临时服务,延迟和并发性之类的东西显然不是最理想的,礼貌地说。我认为,如果不自己重新实现它,我应该做的是获得此功能的 Coffee/Java 版本。
但是从我所看到的情况来看,JavaScript 还没有被认为很酷,以至于没有足够长的时间来积累可以在 C 或 Python(甚至是 Erlang)中找到的不仅仅是 Web 特定的通用库 schmorgasbörd。从任何人的 Angular 来看,NLTK 当然是一个出色的项目,但我只需要它包装的百分之几。
但现在我正处于十字路口——我必须加倍努力:
或者完全是别的东西。我应该怎么办?喜欢开始做事。这是我的问题。我对涉及非典型方法的解决方案持开放态度——只要您的建议不令人反感(例如“使用 Silverlight”)和/或时间漩涡(例如“获得计算语言学博士学位,你是 troglodyte”)我就是游戏。先感谢您。
最佳答案
我认为,正如您在评论中所写,运行有效算法所需的数据量最终会阻止您在客户端执行操作。即使是基本处理也需要大量数据,例如二元/三元频率等。另一方面,符号方法也需要大量数据(语法规则、字典等)。根据我的经验,如果没有至少 3MB 到 5MB 的数据,你就无法运行一个好的 NLP 流程,我认为这对于今天的客户来说太大了。
所以我会通过网络做事。为此,我建议使用异步/推送方法,也许使用 Faye还是 Socket.io ?只要用户在客户端等待服务器处理文本时没有卡住,我相信你可以实现完美流畅的用户体验。
关于javascript - CoffeeScript 或 JavaScript 中的基本 NLP——Punkt 标记化,简单训练的贝叶斯模型——从哪里开始?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9721173/