美文网首页
机器学习零基础笔记(DAY2)

机器学习零基础笔记(DAY2)

作者: 北海小道长 | 来源:发表于2017-08-20 18:01 被阅读0次

    学习以第一篇的课本为主,基本都是看书,理解,复现书本的案例。笔记主要包含自己的一些想法,实际操作过程中遇到的问题。

    上篇讲到两类学习模型,监督学习和无监督学习。从监督学习开始,监督学习又分为分类学习和回归预测两种。

    我们从分类学习开始,原因是  书本的次序如此。

    分类学习:

    常见案例,肿瘤诊断,数字识别,新闻分类,物种鉴定,垃圾邮件判断等(书本上提供了一个关于泰坦尼克号的经历者的预测(后面会写到),我感觉不算典型的分类)

    基本流程:

    Step1:准备数据集,包括但不限于 文本,图像,音频,视频等

    Step2:抽取需要的特征,形成特征向量(这一步很关键。两点:1:选择特征,为什么要选这个特征,值得研究。2:量化,用来学习。这个地方是我个人的理解,可能不对。欢迎指正。)

    Step3:将特征向量连同标记/目标,放入学习算法之中。训练出一个预测模型。

    Step4:采用相同的特征抽取方法作用于新测试数据,得到用于测试的特征向量。

    Step5:使用预测模型对这些待测试的特征向量进行预测并得到结果。

    下面开始介绍具体的模型:

    1:线性分类器

          估计是最简单的分类模型。

          概念:假设特征与分类结果存在线性关系的模型。

          方法:累加计算每个维度的特征与各自权重的乘积来帮助类别决策。

    最典型是 一条y=kx+b的直线,通过确定k和b的数值,进行区分。在实际过程中,我们采用Logistic函数,其表达式为:

         没有公式编辑器,所以直接贴度娘的链接。

         逻辑函数百度

    关于这个算法的细节,可以参考斯坦福大学吴恩达教授的课间。课本中给出的数据集是关于乳腺癌肿瘤数据的预处理。

    刚刚看了一下随手的笔记,发现没有写完整的代码。

    首先关于数据缺失的问题。这个问题,对于有过数据处理经验的同学来说一定很熟悉。因为各种各样的原因,这种问题实在是太常见了。常用的解决方法,使用平均数代替。#data=data.replace(to_replace='?',value=np.nan)

    在读取数据之后,会用上面的代码。这句代码的作用是 将?替换为标准缺失值来表示。

    #data = data.dropna(how='any')

    丢弃掉带有缺失值的数据(只要有一个维度存在缺失)

    #train_test_split()

    分割数据,非常常见的。

    这里关于二分类判断模型的评估,有一个常见的通用思想。即所有二分类任务下,预测结果(Predicted Condition)和正确标记(True Condition)之间存在四种不同的组合。(这个就是预测真,预测假,实际真,实际假排列组合)故而可以构成一个二阶混淆矩阵。

    混淆矩阵百度

    关于第一个例子,因为理解起来很简单。不多赘述了,后面笔记肯定补代码。

    相关文章

      网友评论

          本文标题:机器学习零基础笔记(DAY2)

          本文链接:https://www.haomeiwen.com/subject/xhifdxtx.html