首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >TensorflowJS文本/字符串分类

TensorflowJS文本/字符串分类
EN

Stack Overflow用户
提问于 2018-08-05 20:43:51
回答 2查看 5.2K关注 0票数 6

主题

你好。我想在NodeJS.中使用Tensorflow.js实现文本分类功能。

它的工作将是将字符串与一些预定义的主题匹配起来。

示例:

输入:String:“我的狗喜欢在海滩上散步”

["dog", "cat", "cow"]预定义的主题Array<String>Array<String>

output :有许多输出变体我对此很满意。这些是一些例子,但如果你能提出更好的建议,就去做吧!

  • String (最有可能的话题)-例如:“狗”
  • Object (每个主题都有预测的分数) 示例:{"dog": 0.9, "cat": 0.08, "cow": 0.02}

研究

我知道,通过过滤主题名称的字符串并执行一些算法,可以获得类似的结果,但也可以使用ML实现。

已经有一些关于使用字符串、对文本进行分类和用TensorFlow创建自动完成(但不确定TFjs__)的文章,如下所示:

你怎么才能帮上忙

我的目标是使用TensorflowJS进行主题预测。我只需要一个最好的方法来训练字符串模型的例子,或者如何分类文本,然后将其余的扩展自己。

EN

回答 2

Stack Overflow用户

发布于 2019-02-26 22:44:31

文本分类还有一个额外的挑战,那就是首先从单词中找到向量。根据所解决问题的性质,有多种方法。在建立模型之前,可以确保将向量与语料库中的所有单词相关联。在从语料库中表示向量之后,又出现了另一个稀疏性问题。这就产生了字嵌入的需求。用于此任务的两种最流行的算法是Wor2VecGloVe。在js中有一些实现。或者,我们可以使用概述的这里中的单词袋来创建向量。

一旦有了向量,完全连接的神经网络FCNN就足以预测文本的主题。要考虑的其他事项是决定案文的长度。如果一篇文章是简短的,可能会有一些填充,等等.这是一个模型

代码语言:javascript
复制
const model = tf.sequential();
model.add(tf.layers.dense({units: 100, activation: 'relu', inputShape: [lengthSentence]}));
model.add(tf.layers.dense({units: numTopics, activation: 'softmax'}));
model.compile({optimizer: 'sgd', loss: 'categoricalCrossentropy'});

关键技术--模型

该模型简单地将输入连接到分类输出。这是一个非常简单的模型。但是在某些情况下,可以考虑在输入层之后添加一个嵌入层。

代码语言:javascript
复制
model.add(tf.layers.embedding({inputDim: inputDimSize, inputLength: lengthSentence, outputDim: embeddingDims}))

在另一些情况下,LSTM层可能是相关的。

代码语言:javascript
复制
tf.layers.lstm({units: lstmUnits, returnSequences: true})
票数 3
EN

Stack Overflow用户

发布于 2018-08-15 23:35:34

我干过这样的事。

我的代码https://github.com/ran-j/ChatBotNodeJS/blob/master/routes/index.js

基于https://chatbotsmagazine.com/contextual-chat-bots-with-tensorflow-4391749d0077

而他们

代码语言:javascript
复制
classify('is your shop open today?')
[('opentoday', 0.9264171123504639)]

但我的代码还没有预测

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51698131

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档