Giter Club home page Giter Club logo

Comments (10)

12wang3 avatar 12wang3 commented on July 23, 2024

您好,感谢您对我们工作的关注。您说的这种情况在处理"Dead Node"的时候就处理掉了。我们会统计一直激活或一直不激活的节点,由于这类节点对于最终分类没有作用,我们可以将这类节点从模型中去除。

不过我更推荐你使用我们最新的工作https://github.com/12wang3/rrl,该工作同样可以学习离散规则,并能够直接优化离散模型,还有更好的可扩展性。

from mllp.

notAFigure avatar notAFigure commented on July 23, 2024

哦哦,明白了,意思就是这样的规则就直接从rule set中移除掉是吗

from mllp.

notAFigure avatar notAFigure commented on July 23, 2024

不过我更推荐你使用我们最新的工作https://github.com/12wang3/rrl,该工作同样可以学习离散规则,并能够直接优化离散模型,还有更好的可扩展性。

我也参考了rrl里面的梯度嫁接优化方法,但是网络结构还是依然用的mllp这样,一层里面只有合取或者析取规则不是像rrl那样的一层中是合取析取的concat。

from mllp.

12wang3 avatar 12wang3 commented on July 23, 2024

哦哦,明白了,意思就是这样的规则就直接从rule set中移除掉是吗

是的,因为如果一个节点一直激活或一直不激活,那么和它直接相连的上层节点,要么也是一直激活或一直不激活,要么就不受该节点影响。

from mllp.

12wang3 avatar 12wang3 commented on July 23, 2024

不过我更推荐你使用我们最新的工作https://github.com/12wang3/rrl,该工作同样可以学习离散规则,并能够直接优化离散模型,还有更好的可扩展性。

我也参考了rrl里面的梯度嫁接优化方法,但是网络结构还是依然用的mllp这样,一层里面只有合取或者析取规则不是像rrl那样的一层中是合取析取的concat。

嗯嗯,网络结构可以根据自己对任务的理解以及偏好来设置。不过在计算资源足够的情况下,RRL的设计(即一层逻辑层是合取层与析取层的concat)更好一些,或者说至少效果上不会更差。

from mllp.

notAFigure avatar notAFigure commented on July 23, 2024

哦哦,明白了,意思就是这样的规则就直接从rule set中移除掉是吗

是的,因为如果一个节点一直激活或一直不激活,那么和它直接相连的上层节点,要么也是一直激活或一直不激活,要么就不受该节点影响。

貌似通过dead node detection不能删掉我说那种情况的规则,比如这里我试一个数据集,可以发现得到的规则中有问题, 'ExternalRiskEstimate_1_<64.0_0', ' ExternalRiskEstimate_2_64.0<=X<68.0_0' 在规则中要求同时满足,但是实际数据集是不会离散化成这样,也就是这条规则永远不会被激活。
image

from mllp.

12wang3 avatar 12wang3 commented on July 23, 2024

哦哦,明白了,意思就是这样的规则就直接从rule set中移除掉是吗

是的,因为如果一个节点一直激活或一直不激活,那么和它直接相连的上层节点,要么也是一直激活或一直不激活,要么就不受该节点影响。

貌似通过dead node detection不能删掉我说那种情况的规则,比如这里我试一个数据集,可以发现得到的规则中有问题, 'ExternalRiskEstimate_1_<64.0_0', ' ExternalRiskEstimate_2_64.0<=X<68.0_0' 在规则中要求同时满足,但是实际数据集是不会离散化成这样,也就是这条规则永远不会被激活。 image

"ExternalRiskEstimate_1"和"ExternalRiskEstimate_2"这俩不是同一个特征吧?所以'ExternalRiskEstimate_1_<64.0_0'和 ' ExternalRiskEstimate_2_64.0<=X<68.0_0'应该是可以同时被满足的。

from mllp.

notAFigure avatar notAFigure commented on July 23, 2024

哦哦,明白了,意思就是这样的规则就直接从rule set中移除掉是吗

是的,因为如果一个节点一直激活或一直不激活,那么和它直接相连的上层节点,要么也是一直激活或一直不激活,要么就不受该节点影响。

貌似通过dead node detection不能删掉我说那种情况的规则,比如这里我试一个数据集,可以发现得到的规则中有问题, 'ExternalRiskEstimate_1_<64.0_0', ' ExternalRiskEstimate_2_64.0<=X<68.0_0' 在规则中要求同时满足,但是实际数据集是不会离散化成这样,也就是这条规则永远不会被激活。 image

"ExternalRiskEstimate_1"和"ExternalRiskEstimate_2"这俩不是同一个特征吧?所以'ExternalRiskEstimate_1_<64.0_0'和 ' ExternalRiskEstimate_2_64.0<=X<68.0_0'应该是可以同时被满足的。

这个数据集本来是连续的,我是先手动对它进行分箱离散化后以binary的形式输入网络,这相当于就是ExternalRiskEstimate特征的两个区间 : (-inf, +64.0) 和 [64, 68) ,常理来说是不可能被同时满足的;不过没事我这边直接对得到的规则再手动筛选一遍就可以。

from mllp.

12wang3 avatar 12wang3 commented on July 23, 2024

哦哦,明白了,意思就是这样的规则就直接从rule set中移除掉是吗

是的,因为如果一个节点一直激活或一直不激活,那么和它直接相连的上层节点,要么也是一直激活或一直不激活,要么就不受该节点影响。

貌似通过dead node detection不能删掉我说那种情况的规则,比如这里我试一个数据集,可以发现得到的规则中有问题, 'ExternalRiskEstimate_1_<64.0_0', ' ExternalRiskEstimate_2_64.0<=X<68.0_0' 在规则中要求同时满足,但是实际数据集是不会离散化成这样,也就是这条规则永远不会被激活。 image

"ExternalRiskEstimate_1"和"ExternalRiskEstimate_2"这俩不是同一个特征吧?所以'ExternalRiskEstimate_1_<64.0_0'和 ' ExternalRiskEstimate_2_64.0<=X<68.0_0'应该是可以同时被满足的。

这个数据集本来是连续的,我是先手动对它进行分箱离散化后以binary的形式输入网络,这相当于就是ExternalRiskEstimate特征的两个区间 : (-inf, +64.0) 和 [64, 68) ,常理来说是不可能被同时满足的;不过没事我这边直接对得到的规则再手动筛选一遍就可以。

那我建议你检查一下你处理之后的数据是否存在'ExternalRiskEstimate_1_<64.0_0'和 ' ExternalRiskEstimate_2_64.0<=X<68.0_0'同时为真的实例,因为如果按照你说的,r1,6这条规则是不可能被激活的,那么dead node detection这一步就应该将r1,6这条规则删除了。

from mllp.

notAFigure avatar notAFigure commented on July 23, 2024

谢谢解答。

from mllp.

Related Issues (3)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.