1 什么是机器学习?

机器学习一般有如下三个步骤:

  1. 根据问题假设模型
  2. 使用数据训练模型
  3. 应用模型预测分析

这三个步骤在实际操作中分别对应着:

  1. 根据问题假设函数
  2. 使用数据求解参数
  3. 应用函数预测分析

也就是说,机器学习中所谓的模型就是函数,理解这一点非常重要!

定义:机器学习是对研究问题进行模型假设,并利用计算机从训练数据中学习得到模型参数,并最终对数进行预测和分析的一门学科。

2 机器学习过程演示

接下来我们使用一个非常简单的案例来演示上述机器学习的过程...

2.1 第 0 步:问题

如下图所示,请预测当 x = 10 时,y 值是多少?

2.2 第 1 步:根据问题假设模型(根据问题假设函数)

根据观察,我们可以看出图上的数据点大致分布在一条直线上,但并非完全在一条直线上(否则用初中知识就能完美预测了),因此我们根据问题假设该数据的分布符合一次函数,也就是y = kx + b。那么,我们的任务就转换成了如何求解参数 k 和 b。

2.3 第 2 步:使用数据训练模型(使用数据求解参数)

这里通过对残差平方和进行求导,当导数为 0 时,残差平方和取得极小值,从而求得参数 k 和 b。

其中 k = 1.4,b = 0.78

2.4 第 3 步:应用模型预测分析(应用函数预测分析)

将 x = 10 代入函数 y = 1.4x + 0.78,得 y = 14.78

3 模型可视化

4 完整代码

# 数据
X = [[1], [2],[3], [4], [5]]
Y = [2, 4, 5, 6, 8]# 模型
from sklearn.linear_model import LinearRegression
regr = LinearRegression()    # 假设模型
regr.fit(X, Y)    # 训练模型
y = regr.predict([[10]])    # 预测# 可视化
import matplotlib.pyplot as plt
plt.scatter(X, Y)
plt.plot(X, regr.predict(X))
plt.show()

5 结语

有问题或者建议可以留言,如果对你有帮助的话,也可以关注我的公众号,谢谢。

什么是机器学习?简单理解相关推荐

  1. 简单理解机器学习中的L1距离,L2距离,L-Inf距离

    Overview 这三个东西的话,都是用来算相似度的,用更准确的说法应该叫∣∣L∣∣1||L||_1∣∣L∣∣1​,∣∣L∣∣2||L||_2∣∣L∣∣2​,∣∣L∣∣∞||L||_{\infty}∣ ...

  2. 人工智能:深度学习算法及应用——简单理解CNN卷积神经网络并python实现(带源码)

    深度学习算法及应用 一. 实验目的 二. 实验要求 三. 实验的硬件.软件平台 四. 实验原理 1.1. 深度学习概述 1.2. 深度学习的常见结构 1.3. 卷积神经网络(CNN) **卷积** * ...

  3. 稀疏表示和字典学习的简单理解

    稀疏表示和字典学习的简单理解 特征分类 稀疏表示 字典学习 特征分类 相关特征:对当前有用的属性 冗余特征:所包含的信息有时能从其他特征中推演出来.如若某个冗余特征恰好对应了学习任务所需"中 ...

  4. 机器学习是什么?我对机器学习的理解

    第一次听到机器学习这个名词的时候,很恍惚,不知道它到底是什么? 我对机器学习的理解 机器学习是什么? 机器学习的工作流程是什么? 在机器学习中对于数据集的理解 数据分割 什么是特征工程? 特征工程分类 ...

  5. 简单理解:ML、DB、NLP

    这段话引用了很多次: 事实上,如果我们把人工智能相关的技术以及其他业界的技术做一个类比,就可以发现机器学习在人工智能中的重要地位不是没有理由的. 人类区别于其他物体,植物,动物的最主要区别,作者认为是 ...

  6. Adam优化器简单理解和实现

    前言:因为要实现GAN,简单理解一下训练过程需要用到的Adam优化器. 零.何为优化器 机器学习的任务就是优化参数使之达到最合适的值,同时也就是时损失函数达到最小.损失函数即目标函数的值与真实值的差值 ...

  7. 熵 熵的简单理解和实例

    熵 熵的简单理解和实例 熵是信息量,越大越混乱,越小越确定 1. 熵的由来 假设两个相互独立随机变量,x,y的概率分布分别为p(x),p(y).那么联合概率分布: P(x,y)=p(x)⋅p(y)P( ...

  8. 机器学习简单代码示例

    机器学习简单代码示例 //在gcc-4.7.2下编译通过. //命令行:g++ -Wall -ansi -O2 test.cpp -o test #include <iostream> u ...

  9. android 点击事件消费,Android View事件分发和消费源码简单理解

    Android View事件分发和消费源码简单理解 前言: 开发过程中觉得View事件这块是特别烧脑的,看了好久,才自认为看明白.中间上网查了下singwhatiwanna粉丝的读书笔记,有种茅塞顿开 ...

  10. 【转载】Deep learning:十九(RBM简单理解)

    Deep learning:十九(RBM简单理解) 这篇博客主要用来简单介绍下RBM网络,因为deep learning中的一个重要网络结构DBN就可以由RBM网络叠加而成,所以对RBM的理解有利于我 ...

最新文章

  1. shell 执行 oracle sql
  2. 【并发编程】线程中的Sleep、Yield、Join等api方法方法线程状态转换
  3. 电子邮件成企业主动营销的首选工具
  4. 搭建一个redis高可用系统
  5. uva 1025——A Spy in the Metro
  6. 数据结构入门之链表(C语言实现)
  7. 语音合成技术与资源 - 资源篇
  8. 10.7 csp-s模拟测试63 Median+Game+Park
  9. Anaconda——conda换源可以直接通过conda命令来实现
  10. matlab脑肿瘤识别与分割程序_车牌识别算法
  11. C# Json文件读取
  12. Maven工程pom.xml文件秒变gradle工程的命令
  13. ROS2与C++入门教程-进程内(intra_process)话题发布和订阅演示
  14. 三层交换机与路由器之间的区别
  15. 【verilog】【Modelsim仿真】“XXX“already declared in this scope
  16. 谷歌大小写转换_如何轻松更改Google文档中文本的大小写
  17. IntelliJ IDEA 小技巧之Bookmark(书签)的使用
  18. 关于80端口和tomcat默认8080端口
  19. FPGA学习笔记——分频电路设计
  20. P vs. NP:从一则数学家谋杀案说起

热门文章

  1. 聂易铭:3月20日数字货币筑底失败,破位遥遥无期
  2. pycharm跳出括号快捷键
  3. 在html语言中的换行标记是指,南开20春学期(1709、1803、1809、1903、1909、2003)《电子商务网页制作》在线作业题目【标准答案】...
  4. Evolutionary Spectral Clustering by Incorporating Temporal Smoothness论文整理
  5. Bootstrap 表格内容水平、垂直居中
  6. 过程之美——过程让结果更精彩
  7. NoSQL数据库与分布式缓存对比:同工异曲
  8. 搭载专业游戏芯片,这款百元真无线耳机很强吗?开箱实测一番
  9. 《置身事内》读书笔记第一章 地方政府的权利与事务
  10. mysql使用什么语句为指定_在MySQL中,可以使用_____语句来为指定数据库添加用户。...