基于改进分类的深度学习扩展问题

mmaragmmarag 成员职位:35大师
2020年4月编辑 帮助

大家好,祝贺您在RM中实现了DeepLearning4j。

我试着用Word2Vec对BBC RSS源进行分类,稍微改变一下IMDB评论分类的现成过程。

我有这个错误:

  • 例外:java.lang.NullPointerException
  • 信息:零
  • 堆栈跟踪:
  • com.rapidminer.example.Example.getNominalValue (Example.java: 97)
  • com.rapidminer.extension.deeplearning.tools.LabeledTextProvider.nextSentence (LabeledTextProvider.java: 45)
  • org.deeplearning4j.iterator.CnnSentenceDataSetIterator.preLoadTokens (CnnSentenceDataSetIterator.java: 211)
  • org.deeplearning4j.iterator.CnnSentenceDataSetIterator.hasNext (CnnSentenceDataSetIterator.java: 201)
  • com.rapidminer.extension.deeplearning.ioobjects.TensorIOObject。(TensorIOObject.java: 62)
  • com.rapidminer.extension.deeplearning.operators.WordEmbeddingOperator.doWork (WordEmbeddingOperator.java: 118)
  • com.rapidminer.operator.Operator.execute (Operator.java: 1025)
  • com.rapidminer.operator.execution.SimpleUnitExecutor.execute (SimpleUnitExecutor.java: 77)
  • com.rapidminer.operator.ExecutionUnit 2.美元运行(ExecutionUnit.java: 812)
  • com.rapidminer.operator.ExecutionUnit 2.美元运行(ExecutionUnit.java: 807)
  • java.security.AccessController。doPrivileged(本地方法)
  • com.rapidminer.operator.ExecutionUnit.execute (ExecutionUnit.java: 807)
  • com.rapidminer.operator.OperatorChain.doWork (OperatorChain.java: 428)
  • com.rapidminer.operator.Operator.execute (Operator.java: 1025)
  • com.rapidminer.Process.execute (Process.java: 1322)
  • com.rapidminer.Process.run (Process.java: 1297)
  • com.rapidminer.Process.run (Process.java: 1183)
  • com.rapidminer.Process.run (Process.java: 1136)
  • com.rapidminer.Process.run (Process.java: 1131)
  • com.rapidminer.Process.run (Process.java: 1121)
  • com.rapidminer.gui.ProcessThread.run (ProcessThread.java: 65)

我的进程XML看起来是这样的:

< ?xml version="1.0" encoding="UTF-8"?> <过程version = " 9.0.002”>
> <上下文
<输入/ >
<输出/ >
<宏/ >
> < /上下文

<过程扩展= " true " >


< /操作符>


http://feeds.bbci.co.uk/news/business/rss.xml”/>
< /操作符>



< /操作符>

<列出关键= " function_descriptions " >

< / >列表
< /操作符>



<列出关键= " set_additional_roles " / >
< /操作符>

http://feeds.bbci.co.uk/news/technology/rss.xml”/>
< /操作符>



< /操作符>

<列出关键= " function_descriptions " >

< / >列表
< /操作符>



<列出关键= " set_additional_roles " / >
< /操作符>





< /操作符>

<枚举关键= "分区" >


< /枚举>

< /操作符>



<参数键= " max。_sentence_length " value = " 10 " / >
将训练句子转换为数字。
< /操作符>



<参数键= " max。_sentence_length " value = " 10 " / >
将测试句子转换为数字
< /操作符>









<过程扩展= " true " >




3,300 Kernel——>3 .正则内核大小;来自google word2vec模型的300个维度
< /操作符>




2个类别——>2个带有softmax的神经元
< /操作符>






> < /过程
< /操作符>

























> < /过程
< /操作符>
> < /过程

我使用1.2GB的Google文件作为词典。

问候

Manolis

答案

  • sgenzersgenzer 管理员,版主,员工,RapidMiner认证分析师,社区经理,成员,大学教授,PM版主职位:2959年社区经理

    @mmarag你来测试我们新的深度学习扩展真是太好了。我在联系我们的DL大师@pschlunder以便后续跟进。

    斯科特

  • mmaragmmarag 成员职位:35大师

    谢谢

    实际上,现在该进程导致RM终止:(

  • Pavithra_RaoPavithra_Rao 管理员,版主,员工,RapidMiner认证分析师,RapidMiner认证专家,会员职位:123RM数据科学家

    @mmarag

    我正试图在我的工作室重现此错误,是否有可能在GoogleNews-vectors-negative300.bin.gz中共享数据样本?

    谢谢,

  • pschlunderpschlunder 员工、RapidMiner认证分析师、RapidMiner认证专家、RMResearcher、会员职位:96RM研究

    @mmarag

    谢谢分享你的问题。稍后我会尝试重现并与大家分享我的发现。

    关于studio的崩溃,你是在studio设置中手动设置了最大内存使用量还是将其保留为默认值?我可以问一下,被测试的机器有多少内存。

    @Pavithra_Rao请查看提供的示例过程"//Samples/Deep Learning/processes/06 Text classification using Word2Vec",其中包含到上述Word2Vec模型的链接。这款手机的容量为1.65GB,因此有下载链接。

    问候,

    菲利普

    Pavithra_Rao
  • mmaragmmarag 成员职位:35大师

    你好再次,

    谢谢你努力想办法解决问题。我已经离开了这个领域(最大内存量)空白,因为原来是。另外,我使用的是华硕Zenbook, i7和16GB或RAM。我也会尝试在更大的机器上运行它

    问候

  • mmaragmmarag 成员职位:35大师

    你好,

    我在一台巨大的64GB双Xeon机器上运行了这个过程。在到达第16号运营商之前,内存消耗大约是25GB

    mem.jpg请看附件图片

    当它结束时,结果并不好.....

    result.jpg

  • mmaragmmarag 成员职位:35大师

    我也在使用RM的Word2Vec扩展,它非常快,但不会为以后训练分类器产生张量。也许你可以看到一些合作的机会,让操作员来完成这项工作。

    再接再厉!

    sgenzer
  • mmaragmmarag 成员职位:35大师

    你好再次,

    你设法重现错误了吗?

    问候

    Manolis

  • MaerkliMaerkli 成员职位:84大师

    喂Manolis,

    我怎么能访问GoogleNews-vectors-negative300文件?

    Maerkli。

  • pschlunderpschlunder 员工、RapidMiner认证分析师、RapidMiner认证专家、RMResearcher、会员职位:96RM研究

    @mmarag

    很抱歉回复晚了。我已经在研究同事的Word2Vec扩展输出上的张量创建。完成后,我会在这里分享。

    虽然暂时可能会发生,但内存消耗会稍微高一些。关于网络性能,最好知道你是如何配置深度学习算子和网络洞察力的。也许您可以共享xml过程。

    问候,

    菲利普

    sgenzer
  • pschlunderpschlunder 员工、RapidMiner认证分析师、RapidMiner认证专家、RMResearcher、会员职位:96RM研究

    @Maerkli

    在6号样品工艺的说明中找到该模型的链接。安装扩展后,深度学习样例进程是在你的RapidMiner Studio的通用//Samples/文件夹内。

    问候,

    菲利普

    sgenzer
  • MaerkliMaerkli 成员职位:84大师

    谢谢菲利普。

    Maerkli。

  • mmaragmmarag 成员职位:35大师

    您好,再次感谢您的关注。

    下面是DL操作符的XML:










    <过程扩展= " true " >




    3,300 Kernel——>3 .正则内核大小;来自google word2vec模型的300个维度
    < /操作符>




    2个类别——>2个带有softmax的神经元
    < /操作符>






    > < /过程
    < /操作符>

    sgenzer
  • pschlunderpschlunder 员工、RapidMiner认证分析师、RapidMiner认证专家、RMResearcher、会员职位:96RM研究

    @mmarag

    不知何故,这个过程中缺少了激活映射的数量。您为conv层设置了多少激活映射?

    在许多情况下,0.1的学习率有点太高了。请查看解释历史图用法的示例过程,以找到更好的学习率。例如,从0.0001开始,增加epoch的数量。

    问候,

    菲利普

    sgenzer
  • mmaragmmarag 成员职位:35大师

    你好,

    我使用了样本文件夹中的确切过程,//样本/深度学习/过程/06使用Word2Vec的文本分类,而不是加载电影评论数据集,我使用RSS源。

    然而,即使ε= 0.01,当内存超过20GB时,进程也会崩溃

    问候

  • MaerkliMaerkli 成员职位:84大师

    我不知道我是否正确理解了这个问题,但它似乎是有效的。我应用XML文件。因为我无法打开((C:\Users\mmara\Downloads\))GoogleNews-vectors-negative300.bin.gz,我停用操作符“打开文件”并开始执行。在结果视图,

    ExampleSet(115个示例,1个特殊属性,1个常规属性)。我做错了什么吗?

    Maerkli

  • lbookmanlbookman 成员职位:5贡献我

    我尝试在深度学习文件夹中运行原始示例过程:使用Word2Vec进行文本分类。我已经安装了深度学习扩展。下面是打开文件操作符需要下载的文件GoogleNews-vectors-negative300.bin.gz的链接:

    https://drive.google.com/file/d/0B7XkCwpI5KDYNlNUTTlSS21pQmM/edit

    我从日志文件中得到以下错误:

    元数据转换错误:java.lang.RuntimeException: Cannot clone
    示例数:= 375
    2属性:text, label
    label: label(标称in = {negative, positive};
    维数: (375, 1, 10, -1)
    注:维数为-1表示当前进程无法估计的维数

登录注册置评。