Machine Learning Onramp on MATLAB 学习笔记

本文是关于使用MATLAB进行机器学习的教程,涵盖了数据导入、预处理、特征提取、模型构建及评估。内容包括标准化单位调整、时间戳处理、长宽比和时长特征计算、k最近邻(kNN)模型的构建和评估,以及数据存储和预处理操作。
摘要由CSDN通过智能技术生成

Machine Learning

Machine Learning Onramp

2.1 Overview

输入数据 -> 组织与预处理数据 -> 探索性数据分析与特征提取 ->建立模型 -> 评估模型 -> 部署并使用模型

Import Data -> Organize and Preprocess Data -> Explore Data & Engineer Feature -> Build Model -> Evaluate Model -> Deploy Model for Use

2.2 Import Data

Task 1

手写字母作为单独的文本文件存储。每个文件均以逗号分隔,并包含四列:时间戳记,笔的水平位置,笔的垂直位置以及笔的压力。时间戳是自开始收集数据以来经过的毫秒数。其他变量以归一化单位(0到1)表示。对于笔位置,0代表书写表面的底部和左侧边缘,而1代表顶部和右侧边缘。

您可以使用readtable函数从电子表格或文本文件导入表格数据,并将结果存储为表格。

letter = readtable("J.txt");

这将从电子表格myfile.xlsx导入数据,并将其存储在名为data的表中。

Task 2

您可以使用点表示法来引用表中的任何单个变量

X = letter.X;
Y = letter.Y;
plot(X,Y)

这将从表letter中提取变量X并将结果存储在名为X的新变量中。类似地,将变量Y提取到Y中,并使用plot()函数绘图。

默认轴限制会扭曲字母的纵横比。可以使用axis命令强制轴保留数据的纵横比。

axis equal

使用命令轴equal来校正绘图的纵横比。

经过矫正后,图片显示比例正常。

2.3 Process Data

Task 1

1.手写数据的笔位置以标准化单位(0到1)测量。然而,用于记录数据的平板电脑并不方正。这意味着1的垂直距离相当于10英寸,而相同的水平距离相当于15英寸。要更正此问题,应将水平单位调整为范围[0 1.5],而不是[0 1]。

将表格字母的X变量中的值乘以纵横比1.5。将结果重新分配回X,以便字母包含更正的数据。

letter.X = X * 1.5;

2.处理时间戳

将所有时间戳都减去第一个值,并且将其除以1000

letter.Time = (letter.Time - letter.Time(1)) / 1000

2.4.1 Extract Features

Task 1

提取一个信号持续的时间,从letter中提取最后一个Time值到dur中,即为该字母书写所用的时间。

dur = letter.Time(end)
Task 2

range()函数可以返回数组中值的范围,即range(X) = max(X) - min(X);

使用range函数通过将letter.Y的值范围除以letter.X的值范围来计算字母的长宽比。将结果分配给一个名为aratio的变量。

aratio = range(letter.Y) / range(letter.X)

2.4.2 Viewing Features

MAT文件featuredata.mat包含一个提取的功能表,该功能表提取了由各种人撰写的470个字母。表格功能具有三个变量:AspectRatio(长宽比)和Duration(时长)和Character(已知字母)。

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值