在新页面上使用Web挖掘模型

tschmidttschmidt 委员、大学教授职位:12大学教授
2020年8月编辑 帮助

我正在使用《Predictive Analytics and Data Mining using Rapid Miner》一书中的一个过程。具体来说,是第9.1章中的一个,我将在下面发布。在调整了这个过程以便输入文件使用https: pages而不是http之后,我从中得到了一个双集群k - mediid模型。

我如何使用这个模型来评估一个全新的网页,看看它属于哪个集群?

谢谢,

汤姆

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







<过程扩展= " true " >















<列出关键= "注释" >

< / >列表



<列出关键= " data_set_meta_data_information " >

< / >列表


< /操作符>














< /操作符>













< /操作符>














<列出关键= " specify_weights " / >
<过程扩展= " true " >










< /操作符>





< /操作符>




< /操作符>





< /操作符>


< /操作符>










> < /过程
< /操作符>















< /操作符>























< /操作符>













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

标记:

最佳答案

  • lionelderkrikorlionelderkrikor 主持人,RapidMiner认证分析师,会员职位:1195年独角兽
    解决方案接受

    @tschmidt

    我在你的进程中看到,你执行RapidMiner 6.1(“进程版本=”6.1.000“)

    我建议你更新RapidMiner(实际上是8.2版本)。

    下面是这个过程的截图:

    Web_Mining_Clustering.png

    问候,

    莱昂内尔

    sgenzer

答案

  • tschmidttschmidt 委员、大学教授职位:12大学教授

    数据源文件称为pages.txt。它是一个3行文件,如下所示:

    links_to_scan
    https://www.detroitperforms.org/category/dance/
    https://www.detroitperforms.org/category/film/

  • lionelderkrikorlionelderkrikor 主持人,RapidMiner认证分析师,会员职位:1195年独角兽

    @tschmidt

    你必须:

    -对你的分数数据集执行相同的预处理步骤(获取页面,选择属性,处理文档等)。

    -连接磨破的输出端口。过程文档操作员的“列车分支”将您的工艺转移到磨破的输入端口过程文档“分数分支”的操作员。

    -使用应用模型操作符。

    过程如下:

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

    <过程扩展= " true " >




    <列出关键= "注释" >

    < / >列表

    <列出关键= " data_set_meta_data_information " >

    < / >列表
    < /操作符>



    < /操作符>



    < /操作符>






    <列出关键= " specify_weights " / >
    <过程扩展= " true " >







    < /操作符>











    > < /过程
    < /操作符>






    < /操作符>




    < /操作符>





    <列出关键= "注释" >

    < / >列表

    <列出关键= " data_set_meta_data_information " >

    < / >列表
    < /操作符>



    < /操作符>



    < /操作符>







    <列出关键= " specify_weights " / >
    <过程扩展= " true " >







    < /操作符>











    > < /过程
    < /操作符>






    < /操作符>

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






























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

    我希望能有所帮助,

    问候,

    莱昂内尔

    sgenzer
  • tschmidttschmidt 委员、大学教授职位:12大学教授

    我会试试的,狮子长老。我注意到,在您的流程XML中有一些项阻止我加载该项。比如这个:

    \ \莱昂内尔\ \用户文档Formations_DataScience \ Rapidminer \ Predictive_Analytics_and_Data_Mining

    我会试着听从你的指示。我不想对数据进行测试,所以我想我要做的是添加另一个可读页面,然后看看我是否可以分类。

    谢谢你的建议。

    汤姆

  • tschmidttschmidt 委员、大学教授职位:12大学教授

    还要注意,在我发送的流程中没有任何“mod”输出,因此没有“apply model”流程项的输入。

  • lionelderkrikorlionelderkrikor 主持人,RapidMiner认证分析师,会员职位:1195年独角兽

    @tschmidt

    您必须使用您自己的路径和文件设置读取URL列表(读取CSV)的路径(就像您共享的过程一样)。

    其次,你必须使用包含你想要分类的链接的新文件在分数分支的Read URL列表上做相同的设置。

    问候,

    莱昂内尔

  • lionelderkrikorlionelderkrikor 主持人,RapidMiner认证分析师,会员职位:1195年独角兽

    @tschmidt

    为了更好地理解,您可以导入我分享的流程吗?

    你必须连接第一个俱乐部的输出端口。聚类的操作员国防部的输入端口应用模型操作符。

    问候,

    莱昂内尔

  • tschmidttschmidt 委员、大学教授职位:12大学教授

    不,您发布的流程不导入。你能把你正在做的事情的截图贴出来吗?

  • tschmidttschmidt 委员、大学教授职位:12大学教授

    导入您的流程会得到所附的结果。截屏2018-06-27下午5点49分04秒。png

  • tschmidttschmidt 委员、大学教授职位:12大学教授

    我在这里加载的过程中没有Score Branch,所以你的说明让我很困惑。

  • tschmidttschmidt 委员、大学教授职位:12大学教授

    好的,Clu添加到Mod输入。现在我需要得到一些输入数据。看看我得到了什么。

  • tschmidttschmidt 委员、大学教授职位:12大学教授

    好吧,我有办法了。使用输入从美国芭蕾舞剧院。我现在就买了,谢谢你的帮助。

    汤姆

  • lionelderkrikorlionelderkrikor 主持人,RapidMiner认证分析师,会员职位:1195年独角兽

    不客气@tschmidt

    问候,

    莱昂内尔

  • tschmidttschmidt 委员、大学教授职位:12大学教授

    我也经历了一个非常相似的过程。我有一个问题。您从顶部流程文档上的word获取输出,并将其提供给底部流程文档上的word。您从底部选择属性的Exa获取输出,并将其提供给底部流程文档。

    我完全按照你的图片做了,除了两个过程文档之间的Wor链接。将这个模型应用到另一个Web页面上,我得到了一个决定,显示我的新Web页面属于“正确的”集群。

    Wor-Wor链接给了我什么?

    谢谢,

    汤姆

  • tschmidttschmidt 委员、大学教授职位:12大学教授

    我运行的是RapidMiner Studio 8.2。我发布的脚本来自于2016年出版的一本书,在RapidMiner 6的黑暗日子里。我猜是x。

    如果脚本使用旧版本,会有什么不同吗?

  • lionelderkrikorlionelderkrikor 主持人,RapidMiner认证分析师,会员职位:1195年独角兽

    @tschmidt

    有时不同版本的RapidMiner之间存在兼容性问题。

    更一般地说,拥有最新版本总是为了利用最新功能。

    问候,

    莱昂内尔

  • lionelderkrikorlionelderkrikor 主持人,RapidMiner认证分析师,会员职位:1195年独角兽

    @tschmidt

    在集群模型中设置k = 2。

    我打个赌:我确定您的新链接被归类为“cluster_0”。

    我是对的??

    ……(待续).....

    问候,

    莱昂内尔

  • tschmidttschmidt 委员、大学教授职位:12大学教授

    是的,我们把芭蕾舞团命名为Cluster_0。

    这在很多方面都很有用。我们可以构建一个简单的双向分类器,并将其应用于许多网页。

  • lionelderkrikorlionelderkrikor 主持人,RapidMiner认证分析师,会员职位:1195年独角兽

    @tschmidt

    你关于两者之间联系的问题磨破流程文档之间的连接提示我执行

    这个过程有和没有联系,我发现了一个结果,对我来说,很奇怪:

    我使用以下网站来训练聚类模型当k = 2时

    https://www.laprovence.com/Edition-marseille
    https://www.laprovence.com/faits-divers-justice

    我使用以下网站进行评分:

    https://fr.news.yahoo.com/
    https://fr.news.yahoo.com/france/
    https://news.google.com/?taa=1&hl=fr&gl=FR&ceid=FR:fr
    https://news.google.com/topics/CAAqIggKIhxDQkFTRHdvSkwyMHZNR1k0YkRsakVnSm1jaWdBUAE?hl=fr&gl=FR&ceid=FR%3Afr
    https://news.google.com/topics/CAAqKAgKIiJDQkFTRXdvSkwyMHZNR1ptZHpWbUVnSm1jaG9DUmxJb0FBUAE?hl=fr&gl=FR&ceid=FR%3Afr

    因此,直观地,我们可以认为前2个网站将被分类在一个集群中,最后3个网站将被分类在另一个集群中。

    1/进程执行没有世界港口之间的连接:

    Web_Mining_Clustering_2.png

    2/进程执行世界港口之间的连接:

    Web_Mining_Clustering_3.png

    我们看到,对于前2个网站,所有属性都= 0,对于最后3个网站,属性大多数都没有空值,

    所以当我们看到这些结果时,直观地,我们可以认为前2个网站属于一个簇最后3个网站属于另一个簇。

    然而,RapidMiner将所有网站分类在一个独特的集群中。

    -这个结果有合理的解释吗?

    -为什么我们没有找到与第一种情况相同的结果,对我来说,结果更符合现实?

    -我们应该得出什么结论:过程文件的两个端口之间是否有链接?

    在附件文件的文本文件与培训/分数网站。

    过程:

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

    <过程扩展= " true " >




    <列出关键= "注释" >

    < / >列表

    <列出关键= " data_set_meta_data_information " >

    < / >列表
    < /操作符>



    < /操作符>



    < /操作符>






    <列出关键= " specify_weights " / >
    <过程扩展= " true " >







    < /操作符>











    > < /过程
    < /操作符>





    < /操作符>




    < /操作符>




    <列出关键= "注释" >

    < / >列表

    <列出关键= " data_set_meta_data_information " >

    < / >列表
    < /操作符>



    < /操作符>



    < /操作符>






    <列出关键= " specify_weights " / >
    <过程扩展= " true " >







    < /操作符>











    > < /过程
    < /操作符>





    < /操作符>

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





















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

    谢谢你,

    问候,

    莱昂内尔

  • Telcontar120Telcontar120 主持人,RapidMiner认证分析师,RapidMiner认证专家,会员职位:1635年独角兽

    链接wordlist端口迫使RapidMiner在分析第二个集合时使用从第一个集合生成的单词列表,这意味着它将使用内部操作符对文档进行标记和处理,但随后只对第一个单词列表中存在的标记执行单词向量计算。如果您正在构建一个预测模型,这是绝对必要的,因为该列表中的单词将是模型中的属性,如果您动态生成一个全新的单词列表,它们可能会丢失,并且如果缺少所需的属性,则在Apply model时将得到一条错误消息。

    对于聚类来说,这并不是严格必要的,因为即使包含了新术语而缺少了旧术语,聚类“模型”仍然可以工作。然而,它与以前的集群模型并不相同。本质上,您应该使用相同的单词列表,但您还应该在原始集合中拥有所有未来“类型”文档的代表。当你不这样做时,聚类模型的行为将不稳定或可靠,这就是你在“实验”中观察到的:-)

    布莱恩·T。
    Lindon合资企业
    乐鱼平台进入来自认证RapidMiner专家的数据科学咨询
    sgenzer lionelderkrikor
  • lionelderkrikorlionelderkrikor 主持人,RapidMiner认证分析师,会员职位:1195年独角兽

    @Telcontar120

    好的,谢谢,我现在明白了。

    问候,

    莱昂内尔

登录注册置评。