黑马程序员技术交流社区
标题: 【上海校区】什么是机器学习2-(谈谈我对机器学习的看法) [打印本页]
作者: 不二晨 时间: 2018-8-6 09:33
标题: 【上海校区】什么是机器学习2-(谈谈我对机器学习的看法)
机器学习的类别:
机器学习根据所处理数据的种类的不同,可以分为有监督学习,无监督学习,半监督学习和强化学习等几种类型。实践中应用较多的也就会前两中类型。
- 监督学习:所谓的监督学习就是说数据样本会告诉计算机在该情形下的输出结果,希望计算机能够在面对没有见过的输入样本时也能输出正确的结果,从而达到预测未知的目的。监督学习的任务是做分类问题和回归问题。
- 无监督学习:是指在数据样本没有给定正确结果信息的情况下,计算机在数据中发现的一些规律。半监督学习的主要任务是分类和降维
- 半监督学习:介于监督学习和无监督学习之间的一种增强学习,问题可以通过决策来获得反馈,但反馈与某一决策问题没有之间关系。
- 强化学习:强化学习(reinforcement learning),又称再励学习、评价学习,是一种重要的机器学习方法,在智能控制机器人及分析预测等领域有许多应用。
开发机器学习应用程序的步骤:
通常遵循以下步骤:
- 收集数据:我们可以使用多种方法来收集数据,如:制作网络爬虫,从RSS反馈或者API中的到信息,或是设备发过来的实际数据。
- 准备输入数据:得到数据据以后,还必须保证数据格式符合要求,例如python 语言的list。使用标准数据格式可以融合算法和数据源,方便匹配操作。此外还需要为机器学习算法提供特定的数据格式,如某些特征集使用特定的格式,一些算法要求目标变量和特征值是字符串类型,而另一种算法则可能要求是整数类型。但与收集数据的格式相比,处理特殊的算法要求的格式相对简单的多。
- 分析输入数据:此步骤主要是人工分析以前的得到的数据,通常可以使用任意的方法。这一步的主要作用是确保数据集中没有垃圾数据。如果在产品化系统中使用机器学习算法并且可以处理系统产生的数据格式,或者给我们信任数据来源,我们可以直接跳过这一步。此步骤需要人工干预,如果在自动化系统中还需要人工干预,就降低了系统的价值。
- 训练算法:机器学习算法从这一步才真正开始学习。根据算法的不同,第四,五步是机器学习算法的核心部分。我们将前两步得到的格式化数据输入到算法,从中抽取到知识或信息。这里得到的知识需要存储为计算机可以处理的格式,方便后续步骤使用。(如果使用无监督学习算法,由于不存在目标变量值,故而也不需要训练算法,所以与算法相关的部分都集中在第五步)
- 测试数据:为了评估算法,必须测试算法工作的效果。对于监督学习,必须用于评估算法的目标变量值;对于无监督学习,也必须用其他评估手段来检测算法的成功率。无论哪种情况,如果你不满意输出结果,则可以回到第4步改正并加以测试。问题常常会跟数据的收集和准备有关,这时你必须跳回第一步重新打开。
- 使用数据:将机器学习算法转换为应用程序,执行实际任务,以检验上述步骤是否可以在实际环境中应用。
机器学习的十大算法
c4.5决策树
K-均值(K-mean)
支持向量机(SVM)
Apriori
最大期望算法(EM)
PageRank算法
AdaBoost算法
k-近邻算法(KNN)
朴素贝叶斯算法(NB)
分类回归树(CART)算法
作者: 不二晨 时间: 2018-8-9 17:39
奈斯
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) |
黑马程序员IT技术论坛 X3.2 |