云计算期中作业:Spark机器学习问题解决

news/2024/11/25 10:34:24/

在原有pdf教程教程上,做一个补充

idea内搭建环境

导入依赖

就直接利用之前的作业工程项目里直接写,所以依赖基本上不用再导入了,如果要导入,看自己依赖的版本号,不要直接复制教程,比如我的:

        <dependency><groupId>org.apache.spark</groupId><artifactId>spark-core_2.12</artifactId><version>3.1.1</version></dependency><dependency><groupId>org.apache.spark</groupId><artifactId>spark-sql_2.12</artifactId></dependency><dependency><groupId>org.apache.spark</groupId><artifactId>spark-mllib_2.12</artifactId></dependency>

依赖导入失败

因为之前连热点下载依赖可能网太慢下载出现了问题,出现了下面的问题:

net.sf.opencsv:opencsv:jar:2.3 failed to transfer from https://maven.aliyun.com/repository/public   during a previous attempt. This failure was cached in the local repository and resolution is not reattempted until the update interval of aliyunmaven has elapsed or updates are forced. Original error: Could not transfer artifact net.sf.opencsv:opencsv:jar:2.3 from/to aliyunmaven (https://maven.aliyun.com/repository/public):   transfer failed for

直接去本地仓库的对应路径把文件删掉,然后刷新就可以了

读取数据集

参考:https://blog.csdn.net/heiren_a/article/details/122133564
注意上文中提到,第一行是列名和需要自动推断数据类型的情况
如:

    val training = spark.read.option("header", "true") // 假设文件没有表头.option("inferSchema", "true") // 自动推断列的数据类型.csv(dataPath).toDF("timestamp", "back_x", "back_y", "back_z", "thigh_x", "thigh_y", "thigh_z", "label")

注意:后面组合特征向量的时候,不要把label列放进去了

将时间戳转换为数值型

参考:
https://blog.csdn.net/bowenlaw/article/details/111644932

    // 将时间戳转换为数值型val trainWithTimestamp = training.withColumn("timestamp_numeric", to_timestamp(col("timestamp")))val dataWithNumericFeatures = trainWithTimestamp.withColumn("timestamp_numeric", col("timestamp_numeric").cast("double"))

模型使用,逻辑回归和决策树

https://blog.csdn.net/qq_44665283/article/details/131766504

sparkF1Score_55">spark模型评估和选择,准确率,F1-Score

直接调接口,https://blog.csdn.net/weixin_43871785/article/details/132334104
https://blog.csdn.net/yeshang_lady/article/details/127856065

在单个节点上运行多个worker

编辑配置文件:
进入Spark的conf目录,复制spark-env.sh.template文件并重命名为spark-env.sh。
编辑spark-env.sh文件,添加以下配置(根据需要调整):

export SPARK_WORKER_INSTANCES=1  # 在单机上模拟的Worker数量(可以设置为多个,但需要不同端口)
export SPARK_WORKER_CORES=1  # 每个Worker的CPU核心数

参考:https://www.cnblogs.com/xinfang520/p/8038306.html

spark_web_ui_67">Spark运行的中间结果查看spark web ui

注意要在运行时进4040端口,参考:
https://www.cnblogs.com/bigdata1024/p/12194298.html

题目附录

数据集说明

  1. 时间戳:记录样本的日期和时间(使用的时候最好将其转换为数值型)
  2. back_x: 单位时间中,背部传感器在 x 方向(下)的加速度
  3. back_y: 单位时间中,背部传感器在 y 方向(左)的加速度
  4. back_z: 单位时间中,背部传感器在z 方向(向前)的加速度
  5. thigh_x: 单位时间中,大腿传感器在 x 方向(下)的加速度
  6. thigh_y: 单位时间中,大腿传感器在 y 方向(右)的加速度
  7. thigh_z: 单位时间中,大腿传感器在 z 方向(向后)的加速度
  8. label:带注释的活动代码
    1:步行 2:运行 3:洗牌 4:楼梯(上升) 5:楼梯(下降) 6:站立 7:坐着 8:撒谎 13: 自行车 (坐着) 14: 自行车 (站着)

http://www.ppmy.cn/news/1549793.html

相关文章

Java 8 Stream API 在数据转换中的应用 —— 将列表转换为映射

文章目录 背景原因1. 数据库设计或约束问题2. 业务逻辑问题3. 测试数据4. 数据库同步问题5. 编程错误 如何避免和处理键冲突1. 数据库层面2. 业务逻辑层面3. 测试数据管理4. 代码层面示例代码 总结 背景 本文实际生产案例讲解配套文章&#xff1a;sysUserList 中为何会出现多个…

NVR管理平台EasyNVR多个NVR同时管理:全方位安防监控视频融合云平台方案

EasyNVR是基于端-边-云一体化架构的安防监控视频融合云平台&#xff0c;具有简单轻量的部署方式与多样的功能&#xff0c;支持多种协议&#xff08;如GB28181、RTSP、Onvif、RTMP&#xff09;和设备类型&#xff08;IPC、NVR等&#xff09;&#xff0c;提供视频直播、录像、回放…

C++从零到满绩——类和对象(中)

目录 1>>前言 2>>构造函数&#xff08;我称之为初始化函数&#xff09; 3>>析构函数&#xff08;我称之为销毁函数&#xff09; 4>>拷贝构造函数&#xff08;我称之为复制函数&#xff09; 5>>运算符重载 5.2>>赋值运算符重载 ​编辑…

低温存储开关机问题

问题&#xff1a; 某消费电子产品在进行可靠性实验室&#xff0c;在低温-30C存储两个小时后&#xff0c;上电不开机。在常温25C时&#xff0c;开关机正常。 分析&#xff1a; 1、接串口抓log信息&#xff0c;从打印信息可以看出uboot可以起来&#xff0c;在跑kernel时&#x…

React Native 基础

React 的核心概念 定义函数式组件 import组件 要定义一个Cat组件,第一步要使用 import 语句来引入React以及React Native的 Text 组件: import React from react; import { Text } from react-native; 定义函数作为组件 const CatApp = () => {}; 渲染Text组件

aws服务(二)机密数据存储

在AWS&#xff08;Amazon Web Services&#xff09;中存储机密数据时&#xff0c;安全性和合规性是最重要的考虑因素。AWS 提供了多个服务和工具&#xff0c;帮助用户确保数据的安全性、机密性以及合规性。以下是一些推荐的存储机密数据的AWS服务和最佳实践&#xff1a; 一、A…

力扣 LeetCode 404. 左叶子之和(Day8:二叉树)

解题思路&#xff1a; 后序遍历 左叶子节点&#xff1a;父节点的左节点不为空&#xff0c;该左节点的左右节点都为空 class Solution {public int sumOfLeftLeaves(TreeNode root) {return recur(root);}public int recur(TreeNode root) {if (root null) return 0;if (roo…

R虚拟环境中安装ncdf4库包编译库问题

目录 R虚拟环境中安装ncdf4的问题 解决方案 R虚拟环境中安装ncdf4的问题 > install.packages("ncdf4")trying URL https://mirrors.bfsu.edu.cn/CRAN/src/contrib/ncdf4_1.23.tar.gzContent type application/octet-stream length 125897 bytes (122 KB)downloa…