【Python机器学习】Apriori算法——示例:发现毒蘑菇的相似特征

有时我们并不想寻找所有的频繁项集,而只对包含某个特定元素项的项集感兴趣。在下面这个例子里,我们会寻找毒蘑菇中的一些公共特征,利用这些特征就可以避免吃到那些有毒的蘑菇。

UCI的机器学习数据集合中有一个关于肋形蘑菇的23中特征的数据集,每一个特征都包含一个标称数据值。我们必须将这些标称数据值转化成一个集合。我们已经把每个蘑菇特征样本转换成一个特征集合,其中枚举了每个特征的所有可能值,如果某个样本包含特征,那么该特征对应的整数值被包含数据集中。

下面观察数据:

第一个特征表示有毒或者可食用。如果某样本有毒,则值为2。如果可食用,则值为1.下一个特征是蘑菇伞的形状,有六种可能的值,分别用整数3-8表示。

为了找到毒蘑菇中存在的公共特征,可以运行Apriori算法来寻找包含特征值为2的频繁项集:

python 复制代码
mushDataSet=[line.split() for line in open('test/mushroom.dat').readlines()]
#print(mushDataSet)
L,suppData=apriori(mushDataSet,minSupport=0.3)
for item in L[1]:
    if item.intersection('2'):
        print(item)

上述代码中在Apriori算法结果中搜索了包含有毒特征2 的频繁项集,下面,对更大的项集来重复上述过程:

python 复制代码
for item in L[3]:
    if item.intersection('2'):
        print(item)

接下来,需要观察这些特征,以便知道了解野蘑菇的那些方面。

相关推荐
人工智能AI技术7 分钟前
LangGraph 本地 build 频频翻车,最终在服务器跑通流式对话
人工智能
Flynn Liang29 分钟前
同一需求三套写法:用 Spring AI、LangChain4j、AgentScope Java 各实现一个带工具调用的 RAG 助手(实战对比)
java·人工智能·大模型·架构设计·spring ai·langchain4j·agentscope
汤姆宝库39 分钟前
构建一个能用的RAG系统:切块、嵌入、混合检索与融合排序
人工智能
Dawson Zhu42 分钟前
【LLM推理与Serving⑪】MoE推理与MLA:DeepSeek-V3架构下的显存与通信权衡
人工智能·语言模型·架构·aigc·agi
github_is_geeksKai1 小时前
50 个 AI 与开源工具怎么选:从实际用途到实现边界
人工智能
IT_陈寒1 小时前
Vite的HMR把我整不会了:一个生产环境的热更新坑
前端·人工智能·后端
github_is_geeksKai1 小时前
浏览器 AI 小工具怎么选?40 个项目与 5 类商业任务的参考指南
人工智能
styshoo1 小时前
[snapshot]7-placeholder与恢复流程
人工智能
用户956256254291 小时前
跟做:Firecrawl 单页转 Markdown 再丢进沙箱总结
python·api
威哥爱编程2 小时前
模拟面试智能体开发实战 02:回答等半分钟,谁还愿意练?把服务端和流式输出搭起来
python·agent·harmonyos