机器学习machine learning

news2024/11/26 2:54:29
1. 概念

机器学习是从数据中提取知识。涉及统计学和人工智能,也被称为预测分析或统计学习。

应用领域非常广泛,用户习惯预测,个性推荐,分析DNA序列等等。

机器学习优势是将决策过程自动化,需要涉及较好的算法。如果决策过程从已知示例泛化得出,这种叫监督学习(supervised learning),就是输入包括预期输出和待处理输入,算法给出输出结果。无监督学习(unsupervised learning algorithm),输入只有待处理输入。

无论监督学习还是无监督学习,将输入数据表征为计算机可以处理的形式都非常重要。例如,将数据想象成二维表格。你要处理的每一个数据点对应表格中一行记录,比如某学生,学生姓名,年龄,专业等等;用每个像素的灰度值描述肿瘤图像,或者大小、形状和颜色。

在机器学习中,每个实体或每一行称为一个样本(sample)或数据点,每一列被称为特征(feature)。如何构建良好的数据表征,被称为特征提取(feature extraction)或特征工程(feature engineering)。

2. 数据处理(机器学习)基本过程OCAI

机器学习和数据分析本质上都是迭代过程,由数据驱动分析。

对象(Objects):我想解决问题是什么?问题的对象是谁?

采集(Collectiong):收集到的数据能够回答这个问题吗?

分析(Analysis):用哪种方法分析我的问题,选择哪类机器学习算法?这些特征能否正确预测?

呈现(Interpretation):如何表述机器学习结果是有效的?对解决其它相关问题的影响?

3. 机器学习利器——Python

Python具有通用变成语言的强大功能,具有特定领域脚本语言的易用性,如Matlab或R。具有进行数据读取、统计、自然语言处理、图像处理、可视化等各种功能库。为数据科学家提供丰富的工具库。

4. 机器学习库scikit-learn

scikit-learn项目开源免费使用,包含众多机器学习算法,详细文档网址:http://scikit-learn.org/stable/documentation

4.1 安装scikit-learn

scikit-learn依赖包:NumPy和SciPy。进行绘图和交互开发,还需安装matplotlib、IPython和Jupyter Notebook,可通过pip install 的方式安装。

 pip install numpy scipy matplotlib ipython scikit-learn pandas
  • Jupyter Notebook

    浏览器运行代码的交互环境

  • NumPy

    Python科学计算基础包之一。功能包括多为数组、高级数学函数,以及伪随机数生成器。在scikit-learn中,NumPy数组是基本数据结构。scikit-leearn接受NumPy数组格式的数据。待处理的数据都必须转换成NumPy数组。NumPy的核心功能是ndarray类,即多维(n维)数组。数组的所有元素必须是同一类型。举例

import numpy as np
DataX = np.array([[3,6,9],[4,7,0]])
print("Data:\n{}".format(DataX))

结果:

x:
[[3 6 9]
 [4 7 9]]
  • Scipy

SciPy是Python中科学计算的函数集合。具有线性代数高级程序、数学函数优化、信号处理、

特殊数学函数和统计分布等功能。scikit-learn利用SciPy函数集合实现算法。用SciPy中scipy.sparse可以给出稀疏矩阵(sparse matrice)。示例如下:

from scipy import sparse
eye = np.eye(4)
print("NumPy array:\n{}".format(eye))

结果:

NumPy array:
[[ 1. 0. 0. 0.]
 [ 0. 1. 0. 0.]
 [ 0. 0. 1. 0.]
 [ 0. 0. 0. 1.]]
  • matplotlib

Python中主要科学绘图库,如折线图、直方图、散点图等。在Jupyter Notebook中,可以使用%matplotlib notebook和%matplotlib inline命令,在浏览器中现实图像。

%matplotlib inline
import matplotlib.pyplot as plt
# 在-10和10之间⽣成⼀个数列,共100个数
x = np.linspace(-10, 10, 100)
# ⽤正弦函数创建第⼆个数组
y = np.sin(x)
# plot函数绘制⼀个数组关于另⼀个数组的折线图
plt.plot(x, y, marker="x")

  • pandas

处理和分析数据的库。它基于一种叫DataFrame的数据结构,模仿R语言中DataFrame。类似于Excel表格,包含大量修改表格和操作表格的方法,可以项SQL一样对表格进行查询和连接。与NumPy要求数组中所有元素数据类型完全一致,与NumPy不同的是,pandas允许每一列数据类型不同,可以从许多文件格式和数据库中提取数据。可以利用字典创建数据集。

import pandas as pd
from IPython.display import display
# 创建关于⼈的简单数据集
data = {'Name': ["John", "Anna", "Peter", "Linda"], 'Location' : ["New York", "Paris","Berlin", "London"], 'Age' : [24, 13, 53, 33] }
data_pandas = pd.DataFrame(data)
# IPython.display可以在Jupyter Notebook中打印出“美观的”DataFrame
display(data_pandas)

注:本文内容建议使用Jupyter Notebook实现

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1587849.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

如何打造高度柔性动态的智能仓储物流解决方案?

近年来,仓储物流行业步入自动化系统集成时代,以货架为存储主体的方式逐步发展成为了自动化储方式,核心设备也由货架转变为机器人货架,形成系统集成物流存储体系。河北沃克根据客户需求精准发力,推出了新一代海格里斯智…

九招!教做出立体感十足的地图组件,不服?还有谁

一、立体感地图在可视化大屏中的作用 在可视化大屏中,立体感十足的地图组件可以起到以下作用: 引导用户注意力:立体感的地图组件可以吸引用户的注意力,使其更加关注地图所代表的信息和数据。通过增加立体感,地图组件可…

Spring Security——08,自定义失败处理

自定义失败处理 一、自定义实现类1.1 实现AccessDeniedHandler1.2 实现AuthenticationEntryPoint 二、配置SpringSecurity三、测试3.1 认证失败3.2 权限不足 一键三连有没有捏~~ 我们还希望在认证失败或者是授权失败的情况下也能和我们的接口一样返回相同结构的json&#xff0c…

SpringBoot3整合RabbitMQ之二_简单队列模型案例

SpringBoot3整合RabbitMQ之二_简单队列模型案例 文章目录 SpringBoot3整合RabbitMQ之二_简单队列模型案例1. 简单队列模型1. 消息发布者1. 创建简单队列的配置类2. 发布消费Controller 2. 消息消费者3. 输出结果 1. 简单队列模型 简单队列模型就是点对点发布消息,有…

基于spring boot的社区医院管理服务系统

基于spring boot的社区医院管理服务系统设计与实现 开发语言:Java 框架:springboot JDK版本:JDK1.8 服务器:tomcat7 数据库:mysql 5.7(一定要5.7版本) 数据库工具:Navicat11 开…

【MySQL】数据库开篇

SueWakeup 个人主页:SueWakeup 系列专栏:学习技术栈 个性签名:保留赤子之心也许是种幸运吧 本文封面由 凯楠📸友情提供 目录 本系列传送门 1. 什么是数据库? 2. 为什么使用数据库 3. 数据库的分类 4. NoSQL 与关系…

Python实现对一个IP地址和端口号列表进行nmap扫描

一.功能目的 使用python实现对一个IP地址和端口号列表进行nmap扫描 二.功能调研 根据查找得知我们需要用到python的subprocess库 1.代码示例 以下是搜到的简单的subprocess库代码 import subprocess result subprocess.run([ls, -l], capture_outputTrue, textTrue) …

使用Code开发Django_模版和CSS

转到定义 和 查看定义 在使用Django或任何其他库的过程中,我们可能需要检查这些库中的代码。VS Code提供了两个方便的命令,可以直接导航到任何代码中的类和其他对象的定义: 转到定义 在Python开发环境中,我们可以轻松地对函数、类或者其他导入模块中的成员使用“Go to Def…

嵌入式学习50-单片机3

知识散记: 1. xdata 开到扩展内存 2.memcpy 内存拷贝 1、什么是并行通信、串行通信? 并行通信: …

DS18B20与单片机的通信、DS18B20采集温度、MODBUS协议、练习框架

我要成为嵌入式高手之4月9日51单片机第四天!! ———————————————————————————— DS18B20温度传感器 单总线数字温度计 异步的半双工的串行通信 测量范围从-55℃ ~ 125℃,增量值为0.5℃ 要用DS18B20采集温度&am…

远程控制软件免费

远程控制软件免费:选择、价值与安全性探讨 随着科技的进步和互联网的普及,远程控制软件在日常生活和工作中的应用越来越广泛。这类软件允许用户通过网络远程访问和控制另一台计算机,为远程办公、技术支持和在线教育等提供了极大的便利。本文…

Java中双重检查锁(double checked locking)

系列文章目录 文章目录 系列文章目录前言 前言 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站,这篇文章男女通用,看懂了就去分享给你的码吧。 双重检查锁&#x…

电脑硬件 - 内存

内存,是一台电脑的CPU与硬盘间数据交互的中转站。不稳定的内存时常会导致蓝屏,黑屏,死机,甚至电脑无法亮机。 在电脑工作中,CPU和硬盘间无时无刻地进行着大量的数据交互。为了保证软件流畅正常运行,会在中…

大厂Java笔试题之与7有关的数

题目:输出 1到n之间 的与 7 有关数字的个数。 一个数与7有关是指这个数是 7 的倍数,或者是包含 7 的数字(如 17 ,27 ,37 ... 70 ,71 ,72 ,73...) 比如输入20,…

游戏测试审表流程

备注:本文为博主原创文章,未经博主允许禁止转载。如有问题,欢迎指正。 个人笔记(整理不易,有帮助,收藏+点赞+评论,爱你们!!!你的支持是我写作的动力) 笔记目录:笔记本~笔记目录_airtest和selenium那个好用-CSDN博客 个人随笔:工作总结随笔_8、以前工作中都接触过哪…

【黑马头条】-day06自媒体文章上下架-Kafka

文章目录 今日内容1 Kafka1.1 消息中间件对比1.2 kafka介绍1.3 kafka安装及配置1.4 kafka案例1.4.1 导入kafka客户端1.4.2 编写生产者消费者1.4.3 启动测试1.4.4 多消费者启动 1.5 kafka分区机制1.5.1 topic剖析 1.6 kafka高可用设计1.7 kafka生产者详解1.7.1 同步发送1.7.2 异…

吴恩达机器学习笔记:第 7 周-12支持向量机(Support Vector Machines)12.1-12.3

目录 第 7 周 12、 支持向量机(Support Vector Machines)12.1 优化目标12.2 大边界的直观理解 第 7 周 12、 支持向量机(Support Vector Machines) 12.1 优化目标 到目前为止,你已经见过一系列不同的学习算法。在监督学习中,许多学习算法的性能都非常类似&#xf…

【Python】python学生体能考核成绩管理系统(数据库) (源码+报告)【独一无二】

👉博__主👈:米码收割机 👉技__能👈:C/Python语言 👉公众号👈:测试开发自动化【获取源码商业合作】 👉荣__誉👈:阿里云博客专家博主、5…

新版chrome 解决在http协议下无法调用摄像头和麦克风的问题(不安全)

解决办法:亲测可行 chrome浏览器地址栏中输入chrome://flags/#unsafely-treat-insecure-origin-as-secure,回车,如下图,将该选项置为Enabled, edge浏览器打开:edge://flags/#unsafely-treat-insecure-orig…

linux文件访问权限理解

目录 一,涉及指令: 二,权限的表示 三,权限命令使用 一,涉及指令: umask chmod chown/chgrp 二,权限的表示 rwx rwx r-x含义: 访问方式: r-可读;w-可写;x-可执行; 访问用户:u-所有者;…