0%

硬件资源准备

首先需要准备计算机的硬件资源,可以是本地服务器,也可以是云服务器。

显存要求:12GB

由于我本地计算机没有相应的GPU资源可以直接调用,故选择云服务器资源。我选择的云服务器厂商是腾讯云,云服务器租赁教程如下:

  1. 首先,登录腾讯云,然后在首页选择产品。

    image-20240320200717006

    阅读全文 »

什么是张量?

  1. “Tensor”(张量)是一个数学和计算机科学术语,用于表示多维数组的数据结构。在深度学习和机器学习中,张量是一种常见的数据结构,用于存储和表示多维的数据,如标量(0维张量,即单个数值)、向量(1维张量,如一维数组)、矩阵(2维张量,如二维数组)以及更高维度的数据。张量可以包含整数、浮点数或其他数据类型,具体取决于应用的需要。
  2. 在深度学习中,张量是神经网络的核心数据结构。神经网络的层、权重、激活函数和输入都表示为张量。张量的多维性使其适用于处理各种复杂的数据,如图像、文本、音频等,并且能够在GPU和TPU等计算资源上执行并行式计算,大大提高资源利用率。
1
import torch
1
torch.__version__
'2.1.0+cu121'
阅读全文 »

前言

大家在使用Centos操作系统安装软件包和库时,经常会使用到yum命令去安装相关软件,使用yum时会自动去下载安装软件所需的所有依赖,这种方式极大提高了用户安装软件的速度。

但是,有些场景下这种方式又会带来一些问题,比如在离线安装的场景下【比如:政府部门、高校等部门服务器是不允许连接互联网的】,依赖问题就无法在线解决,这个时候就需要使用到离线安装技术。

阅读全文 »

引言

在工作中我们经常会遇到这样的一些问题,例如公司服务器数据存放在公司内容,现在在外面出差无法通过资源浏览器直接访问,通常的做法是使用远程控制软件如to_desk、向日葵等等,这种方式虽然能够解决我们文件查找的问题,但是在进行传输的时候,第三方工具的传输速度太慢,并且这种方式也不太优雅;再比如,公司在做开发时,一般是很多人一起完成一个项目,每个人负责一部分代码,这个时候就设置到一个代码同步的问题,场景的做法就是在局域网中搭建gitlab,然后大家统一将代码上传到gitlab,但是有的时候由于一些原因有些工作需要回家完成,但是在家完成后又无法直接上传到公司的局域网gitlab,和其他同事之间就无法进行及时的同步进度~~~~。

这些问题在学习完本文的内容后都会得到解决。

安装前的准备工作

设备

我在这里演示的设备有3个:

  1. 服务端:阿里云服务器Centos7操作系统。【服务端一定要位于公网】
  2. 客户端1:本机Windows11操作系统。
  3. 客户端2:公司服务器Centos7操作系统
阅读全文 »

项目目录结构

例如,在此演示的发布库的项目结构如下所示:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
MinglogUtils
├─LICENSE
├─README.md
├─setup.py
├─CVUtils
│ ├─CVUtils.py
│ ├─test.py
│ ├─__init__.py
│ ├─files
│ │ ├─province.txt
│ │ └─WordAndNum.txt
│ └─__pycache__
│ ├─CVUtils.cpython-38.pyc
│ └─__init__.cpython-38.pyc
└─SpiderUtils
├─SpiderUtils.py
└─__init__.py
阅读全文 »

Hadoop集群规划

hadoop102 hadoop103 hadoop104
HDFS NameNode DataNode DataNode SecondaryNameNode DataNode
YARN NodeManager ResourceManager NodeManager NodeManager

这里的规划方式和前面我们讲到的一致。

相关IP配置如下所示:

宿主机网络信息:

IP192.168.128.66

GATEWAY192.168.128.2

DNS1192.168.128.2

集群网络配置:

hadoop102192.168.128.102

hadoop103192.168.128.103

hadoop104192.168.128.104

阅读全文 »

第一题

现有数据score_info.txt文件,文件内容如下所示:

1
2
3
4
5
6
7
8
9
1001    01 90
1001 02 90
1001 03 90
1002 01 85
1002 02 85
1002 03 70
1003 01 70
1003 02 70
1003 03 85

编写HiveQL代码,完成以下问题:

  1. 创建score_info表,字段名分别为uidsubject_idscore

    1
    2
    3
    4
    5
    6
    7
    8
    create table if not exists score_info(
    uid string,
    subject_id string,
    score int
    )
    row format delimited
    fields terminated by '\t'
    lines terminated by '\n';
  2. 将数据导入score_info表。

    1
    2
    3
    load data local 
    inpath '/opt/module/hive-3.1.2/datas/score_info.txt'
    overwrite into table score_info;
  3. 求出每门学科的平均成绩。

    1
    2
    3
    4
    5
    6
    select uid,
    score,
    subject_id,
    avg(score) over (partition by subject_id) avg_score
    from
    score_info
  4. 找出所有科目成绩都大于某个学科平均成绩的学生。

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    select
    t2.uid
    from
    (
    select
    t1.uid,
    if(score > avg_score, 0, 1) flag
    from(
    select uid,
    score,
    subject_id,
    avg(score) over (partition by subject_id) avg_score
    from
    score_info
    ) t1
    ) t2
    group by uid
    having sum(t2.flag) = 0;

第二题

现有数据action.txt文件,文件内容如下所示:

1
2
3
4
5
6
7
8
u01 2017/1/21  5
u02 2017/1/23 6
u03 2017/1/22 8
u04 2017/1/20 3
u01 2017/1/23 6
u01 2017/2/21 8
u02 2017/1/23 6
u01 2017/2/22 4

编写HiveQL代码,完成以下问题:

  1. 创建action表,字段名分别为userIdvisitDatevisitCount

    1
    2
    3
    4
    5
    6
    7
    8
    create table if not exists action(
    userid string,
    visitDate string,
    visitCount int
    )
    row format delimited
    fields terminated by '\t'
    lines terminated by '\n';
  2. 将数据导入action表。

    1
    2
    3
    load data local 
    inpath '/opt/module/hive-3.1.2/datas/action.txt'
    into table action;
  3. 统计出每个用户的月累计访问次数。

    1
    2
    3
    4
    5
    select
    userid,
    substring(visitDate, 0, 6) visitMonth,
    sum(visitCount) over (partition by userid, month(visitDate)) sumCount
    from action;
  4. 统计出每个用户的逐月累计访问次数。

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    select
    userid,
    visitMonth,
    max(sumCount)
    from(
    select
    uid,
    substring(visitDate, 0, 6) visitMonth,
    sum(visitCount) over (partition by userid, month(visitDate) order by visitDate) sumCount
    from action) t1
    group by userid, visitMonth;