在14天内成为机器学习实践者
机器学习是一个引人入胜的研究领域,但您如何才能真正将其应用于自己的问题呢?
您可能对如何为机器学习最好地准备数据、使用哪些算法或如何选择一个模型而不是另一个模型感到困惑。
在这篇文章中,您将发现一个14部分的速成课程,使用 Weka 平台进行应用机器学习,其中不包含任何数学公式或编程代码。
完成本迷你课程后
- 您将了解如何端到端地处理数据集并提供一组预测或高性能模型。
- 您将熟悉 Weka 机器学习工作台,包括如何探索算法和设计受控实验。
- 您将知道如何创建问题的多个视图,评估多种算法,并使用统计数据为自己的预测建模问题选择表现最佳的模型。
使用我的新书《Weka 机器学习精通》**启动您的项目**,其中包括所有示例的**分步教程**和清晰的**屏幕截图**。
让我们开始吧。
(**提示**:您可能想打印或收藏此页面,以便以后参考)

使用 Weka 进行应用机器学习迷你课程
图片由Leon Yaakov拍摄,保留部分权利。
本迷你课程适合谁?
在我们开始之前,让我们确保你来对了地方。下面的列表提供了一些关于本课程设计对象的一般性指导。
如果您不完全符合这些要点,请不要惊慌,您可能只需要在某个领域稍作补充即可跟上。
您是一名略懂机器学习的开发者。
这意味着您了解机器学习的一些基础知识,例如交叉验证、一些算法以及偏差-方差权衡。这并不意味着您是机器学习博士,只是您知道里程碑或知道在哪里查找它们。
本迷你课程并非机器学习教科书。
它将引导您从一个略懂机器学习的开发者,成长为一个能够使用 Weka 平台从头到尾处理数据集并提供一组预测或高性能模型的开发者。
迷你课程概述(可以期待什么)
本迷你课程分为14个部分。
每节课设计为约30分钟。您可能会更快完成一些课程,而对于其他课程,您可能会选择深入研究并花费更多时间。
您可以根据自己的喜好快速或缓慢地完成每个部分。一个舒适的安排可能是两周内每天完成一节课。强烈推荐。
接下来14节课将涵盖的主题如下:
- **第01课**:下载并安装 Weka。
- **第02课**:加载标准机器学习数据集。
- **第03课**:描述性统计和可视化。
- **第04课**:重新缩放您的数据。
- **第05课**:对您的数据执行特征选择。
- **第06课**:Weka 中的机器学习算法。
- **第07课**:估算模型性能。
- **第08课**:您数据上的基线性能。
- **第09课**:分类算法。
- **第10课**:回归算法。
- **第11课**:集成算法。
- **第12课**:比较算法性能。
- **第13课**:调整算法参数。
- **第14课**:保存您的模型。
这将非常有趣。
您需要做一些工作,一点阅读,一点在 Weka 中修修补补。您想开始应用机器学习,对吗?
(**提示**:所有这些课程的答案都可以在本博客中找到,使用搜索功能)
有任何问题,请在下面的评论中提出。
在评论中分享你的结果。
坚持下去,不要放弃!
在Weka机器学习方面需要更多帮助吗?
参加我为期14天的免费电子邮件课程,逐步探索如何使用该平台。
点击注册,同时获得该课程的免费PDF电子书版本。
第01课:下载并安装 Weka
首先要做的是在您的工作站上安装 Weka 软件。
Weka 是免费的开源软件。它用 Java 编写,可以在任何支持 Java 的平台上运行,包括
- Windows。
- Mac OS X。
- Linux。
您可以下载 Weka 独立软件或捆绑 Java 的版本。
如果您的系统尚未安装 Java,我建议下载并安装捆绑 Java 的版本。
- 本课程的任务是访问 Weka 下载页面,下载并在您的工作站上安装 Weka。
第02课:加载标准机器学习数据集
现在您已经安装了 Weka,您需要加载数据。
Weka 设计用于加载名为 ARFF 的原生格式数据。它是一种修改后的 CSV 格式,其中包含有关每个属性(列)类型的附加信息。
您的 Weka 安装包含一个子目录,其中包含许多 ARFF 格式的标准机器学习数据集,供您加载。
Weka 还支持从原始 CSV 文件以及数据库加载数据,并根据需要将数据转换为 ARFF。
在本课程中,您将在 Weka 资源管理器中加载一个标准数据集。
- 启动 Weka(点击鸟图标),这将启动 Weka GUI Chooser。
- 点击“Explorer”按钮,这将打开 Weka Explorer 界面。
- 点击“Open file…”按钮,导航到 Weka 安装中的 data/ 目录并加载 diabetes.arff 数据集。
注意,如果您的 Weka 安装中没有 data/ 目录,或者您找不到它,请从 Weka 下载网页下载 .zip 版本的 Weka,解压缩并访问 data/ 目录。
您刚刚在 Weka 中加载了您的第一个数据集。
尝试加载 data/ 目录中的其他数据集。
尝试从 UCI 机器学习存储库下载原始 CSV 文件并在 Weka 中加载它。
第03课:描述性统计和可视化
一旦您可以在 Weka 中加载数据,查看它就很重要。
Weka 允许您查看从数据中计算出的描述性统计数据。它还提供可视化工具。
在本课程中,您将使用 Weka 了解更多关于您的数据。
- 打开Weka GUI选择器。
- 打开Weka Explorer。
- 加载 data/diabetes.arff 数据集。
- 点击“Attributes”列表中的不同属性,并在“Selected attribute”窗格中查看详细信息。
- 点击“Visualize All”按钮以查看所有属性分布。
- 点击“Visualize”选项卡并查看所有属性的散点图矩阵。
习惯在“Preprocess”选项卡中查看不同属性的详细信息,并在“Visualize”选项卡中调整散点图矩阵。
第04课:重新缩放您的数据
原始数据通常不适合建模。
通常,您可以通过重新缩放属性来提高机器学习模型的性能。
在本课程中,您将学习如何在 Weka 中使用数据过滤器来重新缩放数据。您将对数据集的所有属性进行归一化,将它们重新缩放到0到1的一致范围。
- 打开 Weka GUI Chooser,然后打开 Weka Explorer。
- 加载 data/diabetes.arff 数据集。
- 点击“Filter”窗格中的“Choose”按钮,然后选择 unsupervised.attribute.Normalize。
- 点击“Apply”按钮。
在“Selected attribute”窗格中查看每个属性的详细信息,并注意比例的变化。
探索使用其他数据过滤器,例如 Standardize 过滤器。
通过点击已加载过滤器的名称并更改其参数来探索配置过滤器。
通过点击“Preprocess”选项卡上的“Save…”按钮,测试保存修改后的数据集以备后用。
第05课:对您的数据执行特征选择
您的数据集中并非所有属性都与您想要预测的属性相关。
您可以使用特征选择来识别与您的输出变量最相关的属性。
在本课程中,您将熟悉使用不同的特征选择方法。
- 打开 Weka GUI Chooser,然后打开 Weka Explorer。
- 加载 data/diabetes.arff 数据集。
- 点击“Select attributes”选项卡。
- 点击“Attribute Evaluator”窗格中的“Choose”按钮,然后选择“CorrelationAttributeEval”。
- 系统将显示一个对话框,要求您更改为“Ranker”搜索方法,这是使用此特征选择方法时所需的。点击“Yes”按钮。
- 点击“Start”按钮运行特征选择方法。
查看“Attribute selection output”窗格中的输出,并记下每个属性的相关性分数,较大的数字表示更相关的特征。
探索其他特征选择方法,例如使用信息增益(熵)。
探索在“Preprocess”选项卡和“Remove”按钮中选择要从数据集中删除的特征。
第06课:Weka 中的机器学习算法
Weka 工作台的一个主要优点是它提供了大量的机器学习算法。
您需要熟悉机器学习算法。
在本课程中,您将仔细研究 Weka 中的机器学习算法。
- 打开 Weka GUI Chooser,然后打开 Weka Explorer。
- 加载 data/diabetes.arff 数据集。
- 点击“Classify”选项卡。
- 点击“Choose”按钮,并注意算法的不同分组。
- 点击所选算法的名称以对其进行配置。
- 点击配置窗口上的“More”按钮,了解更多关于实现的信息。
- 点击配置窗口上的“Capabilities”按钮,了解更多关于其用法的信息。
- 注意窗口上的“Open”和“Save”按钮,可以将不同的配置保存和加载。
- 将鼠标悬停在配置参数上,注意工具提示帮助。
- 点击“Start”按钮运行算法。
浏览可用算法。请注意,根据您的数据集是分类问题(预测类别)还是回归问题(预测实际值),某些算法可能不可用。
探索并了解 Weka 中可用的各种算法。
获得选择和配置算法的信心。
第07课:估算模型性能
现在您已经知道如何选择和配置不同的算法,您需要知道如何评估算法的性能。
在本课程中,您将学习在 Weka 中评估算法性能的不同方法。
- 打开 Weka GUI Chooser,然后打开 Weka Explorer。
- 加载 data/diabetes.arff 数据集。
- 点击“Classify”选项卡。
“Test options”窗格列出了可用于评估算法性能的各种不同技术。
- 黄金标准是10折“交叉验证”。这是默认选择的。对于小型数据集,折叠数可以从10调整到5甚至3。
- 如果您的数据集非常大,并且您想快速评估算法,您可以使用“Percentage split”选项。默认情况下,此选项将使用66%的数据集进行训练,并使用剩余的34%来评估模型的性能。
- 另外,如果您有一个包含验证数据集的单独文件,您可以通过选择“Supplied test set”选项来评估您的模型。您的模型将在整个训练数据集上进行训练,并在单独的数据集上进行评估。
- 最后,您可以评估模型在整个训练数据集上的性能。如果您更关注描述性模型而不是预测性模型,这会很有用。
点击“Start”按钮,使用您选择的测试选项运行给定算法。
尝试不同的测试选项。
通过点击“More options…”按钮,进一步完善提供的配置中的测试选项。
第08课:您的数据上的基线性能
当您开始评估数据集上的多个机器学习算法时,您需要一个用于比较的基线。
基线结果为您提供一个参考点,以了解给定算法的结果是好是坏,以及好坏的程度。
在本课程中,您将了解 ZeroR 算法,您可以将其用作分类和回归算法的基线。
- 打开 Weka GUI Chooser,然后打开 Weka Explorer。
- 加载 data/diabetes.arff 数据集。
- 点击“Classify”选项卡。ZeroR 算法是默认选择的。
- 点击“Start”按钮。
这将使用10折交叉验证在您的数据集上运行 ZeroR 算法。
ZeroR 算法也称为零规则,是一种可以用来计算数据集中所有算法性能基线的算法。它是“最差”的结果,任何表现更好的算法都说明它在您的问题上具有一定的能力。
在分类算法上,ZeroR 算法将始终预测最常见的类别。如果数据集的类别数量相等,它将预测第一个类别值。
在糖尿病数据集上,这导致分类准确率为65%。
对于回归问题,ZeroR 算法将始终预测平均输出值。
在各种不同的数据集上尝试 ZeroR 算法。在所有其他算法之前,您应该始终首先运行它以建立基线。
第09课:分类算法之旅
Weka 提供了大量的分类算法。
在本课程中,您将发现5种可用于分类问题的顶级分类算法。
- 打开 Weka GUI Chooser,然后打开 Weka Explorer。
- 加载 data/diabetes.arff 数据集。
- 点击“Classify”选项卡。
- 点击“Choose”按钮。
您可以用于分类的5种顶级算法包括
- 逻辑回归 (functions.Logistic)。
- 朴素贝叶斯 (bayes.NaiveBayes)。
- k-近邻 (lazy.IBk)。
- 分类与回归树 (trees.REPTree)。
- 支持向量机 (functions.SMO)。
尝试使用这些顶级算法。
在不同的分类数据集上试用它们,例如具有两个类的数据集和具有更多类的数据集。
第10课:回归算法之旅
分类算法是 Weka 的专长,但其中许多算法也可用于回归。
回归是对实际值结果(例如美元金额)的预测,与预测类别(例如“狗”或“猫”)的分类不同。
在本课程中,您将发现5种可用于回归问题的顶级回归算法。
您可以从 Weka 数据集下载网页下载一套标准回归机器学习数据集。下载名为“包含37个回归问题的 jar 文件,来自各种来源”的回归问题数据集-numeric.jar 压缩包。
- “包含37个回归问题的 jar 文件,来自各种来源”
使用您喜欢的解压缩程序解压缩 .jar 文件,您将获得一个名为 numeric/ 的新目录,其中包含37个可供您使用的回归问题。
- 打开 Weka GUI Chooser,然后打开 Weka Explorer。
- 加载 data/housing.arff 数据集。
- 点击“Classify”选项卡。
- 点击“Choose”按钮。
可用于回归的5种顶级算法包括
- 线性回归 (functions.LinearRegression)。
- 支持向量回归 (functions.SMOReg)。
- k-近邻 (lazy.IBk)。
- 分类与回归树 (trees.REPTree)。
- 人工神经网络 (functions.MultilayerPerceptron)。
尝试使用这些顶级算法。
在不同的回归数据集上尝试它们。
第11课:集成算法之旅
Weka 非常易于使用,这可能是它相对于其他平台的**最大优势**。
除此之外,Weka 还提供了一套庞大的集成机器学习算法,这可能是 Weka 相对于其他平台的**第二个巨大优势**。
值得花时间熟练使用 Weka 的集成算法。在本课程中,您将发现5种可用的顶级集成机器学习算法。
- 打开 Weka GUI Chooser,然后打开 Weka Explorer。
- 加载 data/diabetes.arff 数据集。
- 点击“Classify”选项卡。
- 点击“Choose”按钮。
您可以使用的5种顶级集成算法包括
- Bagging (meta.Bagging)。
- 随机森林 (trees.RandomForest)。
- AdaBoost (meta.AdaBoost)。
- 投票 (meta.Voting)。
- 堆叠 (meta.Stacking)。
尝试使用这些顶级算法。
大多数这些集成方法都允许您选择子模型。尝试使用不同子模型的组合。以非常不同的方式工作并产生不同预测的技术组合通常会带来更好的性能。
在不同的分类和回归数据集上试用它们。
第12课:比较算法性能
Weka 提供了一个专门用于比较算法的不同工具,名为 Weka 实验环境。
Weka 实验环境允许您设计和执行机器学习算法的受控实验,然后分析结果。
在本课程中,您将设计您的第一个 Weka 实验,并发现如何使用 Weka 实验环境来比较机器学习算法的性能。
- 打开“Weka Chooser GUI”。
- 点击“Experimenter”按钮,打开“Weka Experiment Environment”。
- 点击“New”按钮。
- 点击“Datasets”窗格中的“Add new…”按钮,并选择“data/diabetes.arff”。
- 点击“Algorithms”窗格中的“Add new…”按钮,并添加“ZeroR”和“IBk”。
- 点击“Run”选项卡,然后点击“Start”按钮。
- 点击“Analyse”选项卡,然后点击“Experiment”按钮,再点击“Perform test”按钮。
您刚刚在 Weka 中设计、执行并分析了您的第一个受控实验结果。
您比较了糖尿病数据集上 ZeroR 算法与 IBk 算法的默认配置。
结果显示 IBk 的分类准确率高于 ZeroR,并且这种差异具有统计显著性(结果旁边的小“v”字符)。
扩展实验并添加更多算法,然后重新运行实验。
更改“Analyse”选项卡上的“Test base”,以更改哪组结果作为与其他结果进行比较的参考。
第13课:调整算法参数
为了充分利用机器学习算法,您必须根据您的问题调整方法的参数。
您无法预先知道如何最好地做到这一点,因此您必须尝试许多不同的参数。
Weka 实验环境允许您设计受控实验,以比较不同算法参数的结果以及差异是否具有统计显著性。
在本课程中,您将设计一个实验来比较 k-近邻算法的参数。
- 打开“Weka Chooser GUI”。
- 点击“Experimenter”按钮以打开“Weka Experiment Environment”
- 点击“New”按钮。
- 点击“Datasets”窗格中的“Add new…”按钮,并选择“data/diabetes.arff”。
- 点击“Algorithms”窗格中的“Add new…”按钮,并添加3个“IBk”算法副本。
- 点击列表中的每个 IBk 算法,然后点击“Edit selected…”按钮,将3个不同算法的“KNN”分别更改为1、3、5。
- 点击“Run”选项卡,然后点击“Start”按钮。
- 点击“Analyse”选项卡,然后点击“Experiment”按钮,再点击“Perform test”按钮。
您刚刚设计、执行并分析了比较算法参数的受控实验结果。
我们可以看到,大 K 值的效果优于默认值1,并且差异显著。
探索更改 KNN 的其他配置属性,并建立开发实验以调整机器学习算法的信心。
第14课:保存您的模型
一旦您在问题上找到了表现最佳的模型,您就需要将其定稿以备将来使用。
在最后一课中,您将学习如何训练最终模型并将其保存到文件以备将来使用。
- 打开 Weka GUI Chooser,然后打开 Weka Explorer。
- 加载 data/diabetes.arff 数据集。
- 点击“Classify”选项卡。
- 将“Test options”更改为“Use training set”,然后点击“Start”按钮。
- 右键单击“Result list”中的结果,然后点击“Save model”,输入文件名,例如“diabetes-final”。
您刚刚在整个训练数据集上训练了一个最终模型,并将结果模型保存到文件中。
您可以将此模型重新加载到 Weka 中,并使用它对新数据进行预测。
- 右键单击“Result list”,点击“Load model”,然后选择您的模型文件(“diabetes-final.model”)。
- 将“Test options”更改为“Supplied test set”,然后选择 data/diabetes.arff(这可能是一个没有预测的新文件)
- 在“Test options”中点击“More options”,并将“Output predictions”更改为“Plain Text”
- 右键单击已加载的模型,然后选择“Re-evaluate model on current test set”。
新的预测现在将列在“Classifier output”窗格中。
尝试保存不同的模型并对全新的数据集进行预测。
使用 Weka 迷你机器学习课程回顾
恭喜,你做到了。干得好!
花点时间回顾一下你已经走了多远:
- 您发现了如何启动和使用 Weka 资源管理器和 Weka 实验环境,这可能是您第一次接触。
- 您加载了数据,对其进行了分析,并使用了数据过滤器和特征选择来为建模准备数据。
- 您发现了一套机器学习算法,以及如何设计受控实验来评估它们的性能。
不要轻视这一点,您在短时间内取得了长足的进步。这只是您使用 Weka 进行应用机器学习之旅的开始。请继续练习并发展您的技能。
您喜欢这门迷你课程吗?您有任何问题或难点吗?
留下评论,让我知道。
第7课
我没有看到这个选项 “CorrelationAttributeEval”
也许您的 Weka 版本中没有它?请确保您使用的是最新版本。
看起来它没有从 Weka 中删除
http://wiki.pentaho.com/display/DATAMINING/CorrelationAttributeEval
谢谢,在较新版本中找到了。
很高兴听到 Raman 的消息。
第10课和第11课
我按照第10课的步骤操作了,但没有弄清楚其整体目的。
第11课也有类似的反馈。
也许您为这些专门设置了单独的讨论,我会在您的网站上查找它们。
第9、10和11课是关于接触不同类型的算法。
是的,我确实在网站的其他地方更详细地介绍了每种算法。尝试使用搜索功能获取更多信息。
很棒的教程,我是weka初学者。但这个教程清晰地解释了我以前没有探索过的大部分功能。这帮助我轻松地掌握了这些工具。谢谢。
不客气,很高兴它对您有用,Martin。
我可以使用weka制作自定义提取器吗?它可以从句子中提取一些关键字
抱歉,我不太确定 Ramanth。
嗨,Jason!您在这里说这个网站适合“略懂机器学习的开发者”。
如果我对您提到的事情一无所知,我该从何开始呢?我正在大学攻读信息系统第二专业,所以我懂一些 Java 语言的基本编程。
嗨 Sid,
这里是一个很好的起点
https://machinelearning.org.cn/start-here/
这篇帖子是一个很好的开始
https://machinelearning.org.cn/basic-concepts-in-machine-learning/
嗨 Jason,这份文档很棒,非常有用。我能够按照指导使用 Weka 工具和示例数据。
但我还是不明白/无法可视化幕后发生了什么(每个分类器如何分析数据),以及如何读取和评估结果。
有没有什么案例研究能帮助我更深入地理解呢?
是的,请看这篇文章
https://machinelearning.org.cn/binary-classification-tutorial-weka/
“第2课:注意,如果您的 Weka 安装中没有 data/ 目录,或者您找不到它,请从 Weka 下载网页下载 .zip 版本的 Weka,解压缩并访问 data/ 目录。”
我在 Weka GUI 和网站上都找不到该文件?不知道在哪里获取数据。🙁
嗨 Mika,这里有更多关于下载和安装 Weka 及数据的信息
https://machinelearning.org.cn/download-install-weka-machine-learning-workbench/
下载没问题,但找不到数据。怎么办?需要数据才能继续进行..
这是数据集的直接链接
https://raw.githubusercontent.com/jbrownlee/Datasets/master/weka-datasets.zip
这确实是一个很棒的教程。我是应用机器学习的初学者,对此充满热情。我以前不知道如何开始,经过几天疯狂的谷歌搜索,我很幸运地找到了这个教程,它给了我这个领域一个很好的开端。我通过这个教程完成了加载、分析、制作模型和测试模型。我计划也完成所有的教程。请继续制作如此简单的教程并激励我们。我以前有点害怕机器学习,这个教程也让我相信机器学习并非火箭科学,你只需要有探索和学习的欲望。非常感谢 Jason。
Sreedev,我很高兴听到这个消息,坚持下去!
嗨,Jason,
首先,感谢您以如此愉快和易于理解的方式分享您的知识!
我有一个关于第12课的问题:比较算法性能。
请看以下示例:如果我比较 functions.Logistic 和 SMO 在 diabetes.arff(标准 weka 数据)上的性能,所有设置都使用默认值,我将得到:
functions.Logistic: 77.2135 % 正确分类实例
bayes.NaiveBayes: 76.3021 % 正确分类实例
如果我使用第12课中描述的实验器,我将得到以下结果:
functions.Logistic: 77.47 % 正确分类实例
bayes.NaiveBayes: 75.75 % 正确分类实例
为什么我在这里看到不同的值,无论我在哪里比较分类性能(实验器或资源管理器),它们不都应该相同吗?
希望您能解惑 🙂
谢谢,
Dominik
算法及其评估是随机的。请看这篇帖子
https://machinelearning.org.cn/randomness-in-machine-learning/
太棒了,Jason,非常感谢!
来自德国,祝您一切顺利,
Dominik
谢谢。
嗨,Jason
首先感谢这篇精彩的帖子。
我正在 Windows 7 上使用 Weka 3.8.1
在执行特征选择时,加载 diabetes 的 .arff 数据集后,CorrelationAttributeEval 可用。
但是当我加载相同数据集的 .csv 文件时,CorrelationAttributeEval 不可用。
也许在处理数据之前,先将其加载并保存为 ARFF 格式?
感谢本教程。我想知道 WEKA 上使用的 breast-cancer.arff 数据集是否与 Breast-cancer-Wisconsin 数据集相同?谢谢。
可能是这样,也许您可以将 Weka 提供的数据与 UCI 机器学习存储库上的数据进行比较。
谢谢。
嗨,Jason,
感谢这个精彩的教程。我今天刚开始学习。
我有一个问题。
在第5课中,当我查看“属性选择输出”窗格中的输出并注意到每个属性的相关性分数时,当我没有识别要预测的输出时,如何计算相关性分数。分数如何通过运行特征选择方法来计算?我的理解是,对于这个糖尿病示例,最终目标是使用选定的属性对一个人是否会患糖尿病进行分类。
没有识别我要预测的输出。分数如何通过运行特征选择方法来计算?我的理解是,对于这个糖尿病示例,最终目标是使用选定的属性对一个人是否会患糖尿病进行分类。
我预计它正在计算成对相关性,也就是说,寻找彼此高度相关的变量。
嗨教授,
我有一个问题。
如何将数据集(语言、句子、网页、字符)的预测序列类型导入到 weka 中?
请帮帮我。
抱歉,我没有在 Weka 中处理过文本,无法给您好的建议。
优秀有趣的指南!
我无法让“新目录名为 numeric/”工作,它应该存储在哪里?
我把它们放在这个文件夹里
C:\Program Files\Weka-3-8\doc\weka\classifiers
作为“numeric”文件夹??
这篇文章可能会有帮助
https://machinelearning.org.cn/download-install-weka-machine-learning-workbench/
教程大纲太棒了。请问我可以使用ANN进行分类吗?
谢谢。
是的,在weka中它被称为“多层感知器”。
刚学完。谢谢您帮助我进入机器学习世界。
干得好!
嗨,Jason,
感谢您创建这个超棒的网站,将机器学习传播给大众。
您在本博客中提到,本课程适用于略懂机器学习的开发者。
我是一名计算机科学专业的本科生,略懂 Python 和 C++。
这门课适合我吗?
不过我对学习充满热情。
完美!
嗨 Jason
在第5课中,我们学习了属性的相关性,输出以排名分数的Aunque形式给出,例如0.4666 2 plas,请问这是什么意思?
是不是说“属性2 plas与xxxx之间存在0.4666的相关性”?
那么这个 xxxx 是什么?是属性“class”吗?
是不是说默认情况下,数据集中最后一个属性是“输出”y?
变量根据其对类变量的预期重要性进行排名。一些排名较差的变量可能会被移除。
那么Weka会自动识别数据集中的最后一列是输出吗?输出就是指测试/训练数据中,模型试图预测的值。
是的,但您也可以在左侧的资源管理器中更改它。
嗨,Jason,
我喜欢您的这个工作坊和您的讲解方式。您是否提供或将来会提供机器学习认证,那会很棒。您知道,就像 Udacity、Coursera、Udemy 那样。我喜欢您的讲解方式。这完全取决于讲解者的能力。希望能收到您的回复。
目前还没有,也许将来会有。
我确实有一些电子书,它们教授我的推荐方法。
https://machinelearning.org.cn/products/
嗨 Jason,我非常感谢这些页面。
我只是想知道如何在 Weka 中找到 diabetes.arff 变量的实际描述以及我们试图预测的结果是什么,也就是说,我们有简短的名称(例如 preg、plas 等),但我无法找出如何获取更详细的描述,这会帮助我思考机器学习在这里实际应用于什么。
非常感谢,
Kevin
当然
https://github.com/jbrownlee/Datasets/blob/master/pima-indians-diabetes.names
嗨,Jason博士,
极好的教程!不过有一个问题。如何将 Weka 中创建的模型投入生产?有什么指导吗?
好问题。
这可能作为一个起点有所帮助
https://machinelearning.org.cn/save-machine-learning-model-make-predictions-weka/
保存模型并使用 Weka API 编写一些 Java 代码来使用模型进行预测可能是一个好主意?
嗨,博士,
我使用 weka 一段时间了,我想知道在使用 apriori 算法时,我是否可以向生成的规则中引入规则。
如果不能,我能否对在运行 apriori 算法时必须考虑的属性赋予权重?
此致
通过 Java API 也许可以,抱歉,我没有示例。
也许可以在 Weka 用户组上提问?
嗨,Jason,
我在您的网站上呆了几周,学到了很多。我决定开始练习,我得到一个混合了分类和数值属性的数据集。我不确定如何处理它。我们这里使用的所有数据集都是数值型的。您建议我从什么算法或模型开始?
谢谢
Shed
听起来很棒。
我建议遵循这个流程
https://machinelearning.org.cn/start-here/#process
嗨,Jason,当我尝试保存模型时,弹出一个提示说保存失败,访问被拒绝。
也许您正在尝试保存到无法写入的位置?
或许尝试保存到另一个目录?
你好,Jason
我发现weka explorer很有用。在特征选择中,我无法选择CorrelationAttributeEval时的开始按钮。
也许您的数据不是数值型的?
在 macOS 上安装并运行 weka:当我尝试运行 weka 应用程序时,遇到了一条消息:“macos 无法验证此应用程序是否不含恶意软件”。要解决此问题,请前往“系统偏好设置”->“安全性与隐私”->“通用”选项卡。选择“允许从 App Store 和已识别开发者下载的应用程序”。
是的。
第02课:我在 UCI 机器学习存储库中查找 .arff 文件时遇到了问题。我打开了大约20个数据集,但找不到任何带有此扩展名的文件。有 .csv(我打不开)例如 winequality-white.csv。原因:“值数量错误”。
我还意识到,文件内部有很多文件,而不仅仅是一个。其中一些带有 .names 扩展名,另一些则为 .data。这两种扩展名都非常常见。
注意以下部分:
Jason,当我尝试加载从 UCI 存储库下载的 CSV 文件时,出现错误——“Index1 out of bounds for length 1 problem encountered on line:2”
或许检查一下文件内容是否真的是CSV格式?
机器学习领域最好的作者之一
谢谢!
如何在weka中找到您的学习说明!!!
这会有帮助
https://machinelearning.org.cn/start-here/#weka
首先,感谢您的课程,它对机器学习学习非常有帮助。
我对机器学习糖尿病模型有一个疑问。
1. 根据第14课第4点
将“Test options”更改为“Use training set”,然后点击“Start”按钮。
这是否意味着在保存模型之前,我们需要将整个糖尿病数据视为训练数据?
2. 相同课程第2点
将“Test options”更改为“Supplied test set”,然后选择 data/diabetes.arff(这可能是一个没有预测的新文件)
当您说这可能是一个新文件时,新文件是否必须与训练文件具有相同的属性,即包括“class”在内的9个属性?
如果是,那么如何知道哪个实例被正确预测,因为测试集已经具有该属性?
请对已保存模型的最终测试提供一些指导?
再次感谢您的辛勤工作。
或许可以尝试在加载数据之前将其拆分为两个 CSV 文件。
第1课
通过提供的链接安装 Weka 非常容易。我在几分钟内就安装好了
是的。
先生,我已经下载了 weka,非常容易。
但它有太多的功能和屏幕分割。
感谢您即将带给我们的新技能
这些教程也可能会有所帮助
https://machinelearning.org.cn/start-here/#weka
谢谢,非常有用。
Weka 可以用于深度学习吗?
或许可以,抱歉我没有尝试过。
嗨,Jason,
我不知道如何打开从 UCI 存储库下载的原始 csv 数据文件。需要指导。我熟悉打开 .arff 文件。我选择尝试葡萄酒数据,文件类型显示为 wine.data,但 weka 无法打开。请帮助。
这个教程会有帮助
https://machinelearning.org.cn/load-csv-machine-learning-data-weka/
你好,Jason。
感谢您的课程。
请问,“Capabilities”按钮在哪里(第6/7课)?它似乎不在分类器窗口中。
谢谢。
你好,Jason。
请您回答一下,我有一个医学数据集需要用于检测药物相关问题。
如果我通过 weka 进行了特征选择步骤(基于决策树训练的包装器)
然后我将决策树分类应用于从特征选择步骤获得的特征子集,并且准确率提高了。
选择步骤获得的特征子集,并且准确率提高了。
我的问题是:我们是否可以说这些特征对于医生来说是其患者最需要考虑的特征?作为诊断的一部分。
我的问题是:我们是否可以说这些特征对于医生来说是其患者最需要考虑的特征?作为诊断的一部分。
你可以说它们可能是预测目标变量最重要的特征,你有一些证据支持这个假设……
你好,Jason。
感谢您建立这个很棒的页面。我决定再次尝试从开发人员转变为机器学习工程师,并且我选择了您的页面,而不是任何其他课程。
显然,您的 Weka 下载页面链接没有正确重定向。我认为 https 后面缺少冒号。
继续努力。
谢谢,已修复!
Weka是一个糟糕的工具。
我试过了,我试过了,但我不会学习它。学习Python比学习Weka更快,更有趣,更有用。
抱歉我的抱怨,Jason。你做得非常出色。
但是,我认为让其他人知道他们学习Python比Weka更好。我将转到关于Python算法的下一章。
感谢您分享您的想法。
嗨,Jason!你太棒了……
历史不会忘记你。
你给我的知识将继续萌芽。
你的解释模型是一流的。
谢谢!
Weka已下载并安装。它安装了两个版本,(i) Weka 3.8.5(带控制台)和(ii) Weka 3.8.5。
也许使用不带控制台的版本?
嗨,我伟大的老师
我从你的知识和你的风范中学到了更多
现在,我用weka做了一些工作,我可以分析一些算法和一些数据集,并比较算法,从现在开始,我该如何发展我的技能,在这个领域变得更好更深入,我钦佩你对我产生的积极影响。
真诚的,hossein
感谢您的欣赏。
首先,感谢您的本教程!
对于我们“在当前测试集上重新评估模型”的最后一步。结果显示每个实例的错误预测。它似乎在0到1之间。1表示高置信度,0表示低置信度,反之亦然?
谢谢!
两者都可以!模型只产生0到1,我们来解释它意味着什么。
感谢您提供如此精彩的教程,
我想问一下WEKA是否可以容纳多个目标(类)。如果可以,请解释。
你觉得这个有帮助吗?https://machinelearning.org.cn/multi-class-classification-tutorial-weka/
第二课已完成,等待剩余课程。谢谢
感谢您的反馈Oluyemi!继续努力!
Weka第5课:我们应该删除相关性排名较高的属性,还是根据它们的排名来决定保留或删除哪些属性?
嗨 Adit…以下资源可能对您有所帮助
https://machinelearning.org.cn/perform-feature-selection-machine-learning-data-weka/
嗨 Jason
第13课 – 在第6点,当我点击“算法”面板中的“添加新”按钮时,当我添加KStar副本时,它不显示KNN参数。我该怎么办?
Jason,我之所以选择Weka,是因为你在你的一个网站上评论说“让工具成为你研究的主题”。这使得Weka成为我的研究工具,我正在非常认真地研究它。感谢你一直提供这些金玉良言!
大家好,
在第2课中,我尝试打开您链接指向的文件,但没有成功。我收到以下错误消息
“无法从URL读取…”
“未找到适用于URL的合适URLSourcedLoader…”
嗨,Manal…Weka中的这个错误与软件尝试从提供的URL加载文件的方式有关。以下是可能发生这种情况的一些原因以及如何解决该问题
—
### **错误原因**
1. **互联网连接**
– Weka依赖活跃的互联网连接才能通过URL访问文件。如果您的互联网断开或不稳定,则无法加载文件。
2. **无效或过时的URL**
– 课程中提供的URL可能不再有效或可访问。网页或文件托管服务有时会移动或删除文件。
3. **文件格式问题**
– Weka需要特定格式的数据集,例如
.arff
、.csv
或.xrff
。如果URL上的文件格式不兼容,Weka无法处理它。4. **Weka的配置**
– Weka使用
URLSourcedLoader
从在线位置获取文件。如果此加载器配置错误或不可用,则进程将失败。—
### **如何解决问题**
以下是您可以采取的措施来解决此问题
#### **1. 验证URL**
– 仔细检查课程中提供的URL,确保其正确无误。
– 将URL复制并粘贴到浏览器中,查看文件是否正确下载。如果URL无效,请尝试查找更新的链接。
#### **2. 本地下载文件**
– 不直接从URL加载文件,而是将其手动下载到您的计算机
1. 在浏览器中访问URL。
2. 下载数据集文件(例如,
.arff
或.csv
)。3. 将其保存在计算机上的文件夹中。
#### **3. 在Weka中打开文件**
– 在Weka中,转到**预处理选项卡**。
– 点击**打开文件…**按钮。
– 导航到下载数据集的位置并选择文件。
#### **4. 使用不同的加载器**
– 如果必须通过URL加载文件,请确保使用正确的加载器
– 转到**预处理选项卡 > 选择**。
– 在
文件
按钮下选择**URL…**。– 粘贴URL并点击**打开**。
#### **5. 更新Weka**
– 确保您使用的是最新版本的Weka。旧版本可能不支持某些功能或URL访问方法。
#### **6. 解决Weka的URL访问问题**
– 如果上述方法均无效,问题可能与Weka处理URL的能力有关。在这种情况下
1. 打开Weka的设置或偏好设置,检查与URL相关的选项。
2. 考虑使用本地文件方法而不是使用URL。
—
嗨,再次,
我有点困惑,所有我打开的数据集都有“class”属性。
嗨,Manal…
Weka机器学习迷你课程中您遇到的数据集中存在**
class
属性**是故意的,对于课程中涵盖的大多数机器学习任务至关重要。让我解释一下原因—
### 为什么数据集有
Class
属性?1. **监督学习重点**
– Weka课程主要教授**监督学习**技术,其目标是训练模型来预测目标变量(通常称为**类别**)。
– **
class
属性**表示模型旨在预测的目标变量或标签。2. **类属性的作用**
– 对于分类任务,
class
属性通常是**分类的**(例如,Yes/No
,Setosa/Versicolor/Virginica
)。– 对于回归任务,
class
属性通常是**数值的**(例如,房价或温度)。3. **示例之间的一致性**
– 为确保清晰和统一,初学者教程中的数据集通常包含
class
属性作为标准功能。这使得理解如何训练和评估模型变得更容易。—
### 如果没有
Class
属性怎么办?如果数据集没有
class
属性,它通常用于1. **无监督学习**
– 聚类或关联规则挖掘等任务不需要
class
属性,因为它们专注于在没有预定义标签的情况下发现数据中的模式。– 示例:客户细分或市场购物篮分析。
2. **特征工程或预处理**
– 有时,数据集可能会被处理,以便以后为监督学习任务添加
class
属性。—
### 如何使用或添加
Class
属性如果您正在处理一个缺少
class
属性的数据集,并且您想探索监督学习1. **定义类属性**
– 确定您想要预测什么(例如,为客户行为添加一个二元标签,如
已购买:是/否
)。– 这可能涉及添加新列或转换现有数据。
2. **切换到无监督学习**
– 探索聚类或关联任务,而不是分类或回归。
3. **在Weka中修改数据集**
– 您可以直接在Weka的**预处理选项卡**中编辑数据集,通过添加或操作属性。
—