01.机器学习简介

演变过程

02.机器学习概述

什么是机器学习

机器学习是从数据中自动分析获得规律(模型),并利用规律对未知数据进行预测

为什么需要机器学习

机器学习的应用场景

医疗、航空、教育、物流、电商......

03.数据集的组成

数据来源以及数据格式

可用数据集

常用数据集数据的结构组成

结构:特征值+目标值

04.特征工程的定义

特征工程是什么

特征工程是将原始数据转换为更好地代表预测模型的潜在问题的特征的过程,从而提高了对未知数据的模型准确性

Scikit-learn库介绍

  1. Python语言的机器学习工具
  2. Scikit-learn包括许多知名的机器学习算法的实现
  3. Scikit-learn文档完善,容易上手,丰富的API,使其在学术界颇受欢迎。
  4. 目前稳定版本0.18

05.字典特征数据抽取

sklearn特征抽取API

sklearn.feature_extraction

字典特征抽取

作用:对字典数据进行特征值化类:sklearn.feature_extraction.DictVectorizer

DictVectorizer.fit_transform(X)

  1. X:字典或者包含字典的迭代器
  2. 返回值:返回sparse矩阵

DictVectorizer.inverse_transform(X)

  1. X:array数组或者sparse矩阵
  2. 返回值:转换之前数据格式

DictVectorizer.get_feature_names()

  1. 返回类别名称

DictVectorizer.transform(X)

  1. 按照原先的标准转换

one-hot编码分析

06.文本特征抽取以及中文问题

文本特征抽取

作用:对文本数据进行特征值化类:sklearn.feature_extraction.text.CountVectorizer

CountVectorizer语法

  • CountVectorizer(max_df=1.0,min_df=1,…)
  • 返回词频矩阵
  • CountVectorizer.fit_transform(X,y)
  • X:文本或者包含文本字符串的可迭代对象
  • 返回值:返回sparse矩阵
  • CountVectorizer.inverse_transform(X)
  • X:array数组或者sparse矩阵
  • 返回值:转换之前数据格式
  • CountVectorizer.get_feature_names()
  • 返回值:单词列表
import matplotlib.pyplot as plt
import pandas as pd
import numpy as np
import sklearn
from sklearn import feature_extractioncv = sklearn.feature_extraction.text.CountVectorizer()
data = cv.fit_transform(["life is short,i like python","life is too long,i dislike python"])
print(cv.get_feature_names())
print(data.toarray())
/Users/zhucan/PycharmProjects/pythonProject9/venv/bin/python /Users/zhucan/PycharmProjects/pythonProject9/main.py
['dislike', 'is', 'life', 'like', 'long', 'python', 'short', 'too']
[[0 1 1 1 0 1 1 0][1 1 1 0 1 1 0 1]]

注意:

  1. 单个字母不会被提取
  2. 中文需要分词后才能被提取
from sklearn import feature_extraction
import jieba
def cutword():con1 = jieba.cut("今天很残酷,明天更残酷,后天很美好,但绝对大部分是死在明天晚上,所以每个人不要放弃今天")con2 = jieba.cut("我们看到的从很远星系来的光是在几百万年之前发出的,这样当我们看到宇宙时,我们是在看它的过去。")con3 = jieba.cut("如果只用一种方式了解某样事物,你就不会真正了解它。了解事物真正含义的秘密取决于如何将其与我们所了解的事物相联系。")
#转换成列表content1 = list(con1)content2 = list(con2)content3 = list(con3)
#把列表转换成字符串c1 = ' '.join(content1)c2 = ' '.join(content2)c3 = ' '.join(content3)return c1,c2,c3def hanzivec():c1,c2,c3 = cutword()print(c1,c2,c3)cv = sklearn.feature_extraction.text.CountVectorizer()data = cv.fit_transform([c1,c2,c3])print(cv.get_feature_names())print(data.toarray())hanzivec()
今天 很 残酷 , 明天 更 残酷 , 后天 很 美好 , 但 绝对 大部分 是 死 在 明天 晚上 , 所以 每个 人 不要 放弃 今天 我们 看到 的 从 很 远 星系 来 的 光是在 几百万年 之前 发出 的 , 这样 当 我们 看到 宇宙 时 , 我们 是 在 看 它 的 过去 。 如果 只用 一种 方式 了解 某样 事物 , 你 就 不会 真正 了解 它 。 了解 事物 真正 含义 的 秘密 取决于 如何 将 其 与 我们 所 了解 的 事物 相 联系 。
['一种', '不会', '不要', '之前', '了解', '事物', '今天', '光是在', '几百万年', '发出', '取决于', '只用', '后天', '含义', '大部分', '如何', '如果', '宇宙', '我们', '所以', '放弃', '方式', '明天', '星系', '晚上', '某样', '残酷', '每个', '看到', '真正', '秘密', '绝对', '美好', '联系', '过去', '这样']
[[0 0 1 0 0 0 2 0 0 0 0 0 1 0 1 0 0 0 0 1 1 0 2 0 1 0 2 1 0 0 0 1 1 0 0 0][0 0 0 1 0 0 0 1 1 1 0 0 0 0 0 0 0 1 3 0 0 0 0 1 0 0 0 0 2 0 0 0 0 0 1 1][1 1 0 0 4 3 0 0 0 0 1 1 0 1 0 1 1 0 1 0 0 1 0 0 0 1 0 0 0 2 1 0 0 1 0 0]]

07.tf-df分析问题

TF-IDF

TF-IDF的主要思想是:如果某个词或短语在一篇文章中出现的概率高, 并且在其他文章中很少出现,则认为此词或者短语具有很好的类别区分能力,适合用来分类。

TF-IDF作用:用以评估一字词对于一个文件集或一个语料库中的其中一份文件的重要程度。

import sklearn
from sklearn import feature_extraction
import jieba
def cutword():con1 = jieba.cut("今天很残酷,明天更残酷,后天很美好,但绝对大部分是死在明天晚上,所以每个人不要放弃今天")con2 = jieba.cut("我们看到的从很远星系来的光是在几百万年之前发出的,这样当我们看到宇宙时,我们是在看它的过去。")con3 = jieba.cut("如果只用一种方式了解某样事物,你就不会真正了解它。了解事物真正含义的秘密取决于如何将其与我们所了解的事物相联系。")
#转换成列表content1 = list(con1)content2 = list(con2)content3 = list(con3)
#把列表转换成字符串c1 = ' '.join(content1)c2 = ' '.join(content2)c3 = ' '.join(content3)return c1,c2,c3def tfidfvec():c1,c2,c3 = cutword()print(c1,c2,c3)tf = sklearn.feature_extraction.text.TfidfVectorizer()data = tf.fit_transform([c1,c2,c3])print(tf.get_feature_names())print(data.toarray())tfidfvec()
今天 很 残酷 , 明天 更 残酷 , 后天 很 美好 , 但 绝对 大部分 是 死 在 明天 晚上 , 所以 每个 人 不要 放弃 今天 我们 看到 的 从 很 远 星系 来 的 光是在 几百万年 之前 发出 的 , 这样 当 我们 看到 宇宙 时 , 我们 是 在 看 它 的 过去 。 如果 只用 一种 方式 了解 某样 事物 , 你 就 不会 真正 了解 它 。 了解 事物 真正 含义 的 秘密 取决于 如何 将 其 与 我们 所 了解 的 事物 相 联系 。
['一种', '不会', '不要', '之前', '了解', '事物', '今天', '光是在', '几百万年', '发出', '取决于', '只用', '后天', '含义', '大部分', '如何', '如果', '宇宙', '我们', '所以', '放弃', '方式', '明天', '星系', '晚上', '某样', '残酷', '每个', '看到', '真正', '秘密', '绝对', '美好', '联系', '过去', '这样']
[[0.         0.         0.21821789 0.         0.         0.0.43643578 0.         0.         0.         0.         0.0.21821789 0.         0.21821789 0.         0.         0.0.         0.21821789 0.21821789 0.         0.43643578 0.0.21821789 0.         0.43643578 0.21821789 0.         0.0.         0.21821789 0.21821789 0.         0.         0.        ][0.         0.         0.         0.2410822  0.         0.0.         0.2410822  0.2410822  0.2410822  0.         0.0.         0.         0.         0.         0.         0.24108220.55004769 0.         0.         0.         0.         0.24108220.         0.         0.         0.         0.48216441 0.0.         0.         0.         0.         0.2410822  0.2410822 ][0.15698297 0.15698297 0.         0.         0.62793188 0.470948910.         0.         0.         0.         0.15698297 0.156982970.         0.15698297 0.         0.15698297 0.15698297 0.0.1193896  0.         0.         0.15698297 0.         0.0.         0.15698297 0.         0.         0.         0.313965940.15698297 0.         0.         0.15698297 0.         0.        ]]

机器学习算法基础(基础机器学习课程)——第一天相关推荐

  1. 机器学习算法的基础知识

    机器学习算法的基础知识 1.评估指标 2.偏差与方差(过拟合与欠拟合) 3.正则化(解决过拟合) 4.梯度下降算法(算法优化方式) 5.数据不平衡 1.评估指标 预测值 0 1 实际 0 TN FP ...

  2. 《机器学习算法竞赛实战》笔记 - 第一部分 磨刀事半,砍柴功倍

    <机器学习算法竞赛实战>笔记 - 第一部分 磨刀事半,砍柴功倍 I. 图书豆瓣背景: II. 主要框架: 初见竞赛 问题建模 数据探索 特征工程 模型训练 模型融合 1. 初见竞赛: 竞赛 ...

  3. 深度学习算法和机器学习算法_63种机器学习算法介绍

    深度学习算法和机器学习算法 Data Science and analytics are transforming businesses. It has penetrated into all dep ...

  4. Andrew Ng机器学习算法入门(二):机器学习分类

    机器学习的定义 Arthur Samuel给出的定义,Field of Study that gives computers the ability to learn without being ex ...

  5. 机器学习算法平台alink_机器学习-逻辑回归算法

    1-逻辑回归算法原理推导 逻辑回归算法其实是一个分类算法,是非常经典,优秀的算法.一般我们不知道用哪个分类算法的时候,首先用逻辑回归算法试一试:它不仅可以实现二分类算法,还可以解决多分类问题 逻辑回归 ...

  6. Python大数据综合应用 :零基础入门机器学习、深度学习算法原理与案例

    机器学习.深度学习算法原理与案例实现暨Python大数据综合应用高级研修班 一.课程简介 课程强调动手操作:内容以代码落地为主,以理论讲解为根,以公式推导为辅.共4天8节,讲解机器学习和深度学习的模型 ...

  7. 机器学习 第三讲 机器学习基础、机器学习算法(K-近邻算法、朴素贝叶斯算法)

    文章目录 一.机器学习基础 1.明确几点问题 2.机器学习算法的判别依据 3.机器学习算法分类 4.机器学习开发流程 二.机器学习算法 1.sklearn数据集 (1)数据集划分 (2)sklearn ...

  8. 机器学习需要哪些基础知识?

    机器学习需要一些基础知识,包括以下几个方面: 机器学习需要哪些基础知识? 数学基础:机器学习涉及到很多数学知识,如线性代数.微积分.概率论和统计学等.这些数学知识是理解和应用机器学习算法的基础. 编程 ...

  9. 机器学习算法_五分钟了解机器学习十大算法

    本文为有志于成为数据科学家或对此感兴趣的读者们介绍最流行的机器学习算法. 机器学习是该行业的一个创新且重要的领域.我们为机器学习程序选择的算法类型,取决于我们想要实现的目标. 现在,机器学习有很多算法 ...

  10. 机器学习算法数学基础之——微积分篇(1)

    最近在听台大老师林轩田老师的 機器學習基石 课程,意识到做好机器学习必须要把根本学好,也就是机器学习算法的基础 -- 数学.高等数学虽然在本科时已经学过了,但很多概念和定理由于太久不使用,很多细节已经 ...

最新文章

  1. MOSS2007 webcast系列(一)
  2. java之上三角矩阵_7-1 判断上三角矩阵
  3. 实现弹出窗口并转到另一个页面
  4. 2021年中国大屏幕拼接系统市场趋势报告、技术动态创新及2027年市场预测
  5. 从字节码层面,解析 Java 布尔型的实现原理
  6. VC++界面美化---模仿MS Office 选项对话框
  7. matlab画带有正态密度曲线的直方图
  8. 简单的MD5加密解密
  9. DBeaver解决连接Oracle之后出现库名为数字问题
  10. Rabbitmq面试题总结,非常详细,杜绝标题党,不详细你打我,下次不写博客了
  11. 如何利用计算机班级成绩分析,计算机二级excel真题:制作期末成绩分析表
  12. 微信开发者工具 wxmi修改模版颜色_Logo设计模版与设计管理
  13. python基础语言与应用第五章_《Python基础教程》 读书笔记 第五章(下)条件语句...
  14. 使用PayPal收款要注意哪些细节?
  15. 被动语态和非谓语区别_一招区分谓语、非谓语动词。附练习与详解
  16. Bootstrap无法加载CSS样式,或者CSS样式不生效
  17. Golang教程:(十三)Map
  18. scn,headroom
  19. Selenium 入门
  20. Android 系统增加字体库及修改系统默认字体

热门文章

  1. c++ string 头文件_“延期不延学” 第25期 | C++篇 | C/C++常用函数
  2. 计算器界面分析及界面程序实现
  3. python水印_用python来给图片加水印
  4. 玄惭 mysql_阿里云数据库专家玄惭的“武功”全记录之最佳实践、双十一特别篇...
  5. 5获取http请求头_获取托管者发送http请求报文的解决方案
  6. java小程序连接数据库_Java程序连接各种数据库的方法
  7. 温铁军、林毅夫、陈平,从学术、现实等多方面来分析,谁的价值高?
  8. caffe的prototxt文件
  9. 我的微信luogantt
  10. php调用接口接口代码无法执行,php调用c接口无错版介绍