当前位置: 首页 > news >正文

cube-studio开源一站式机器学习平台,在线ide,jupyter,vscode,matlab,rstudio,ssh远程连接,tensorboard

全栈工程师开发手册 (作者:栾鹏)
一站式云原生机器学习平台


前言

开源地址:https://github.com/tencentmusic/cube-studio

cube studio 腾讯开源的国内最热门的一站式机器学习mlops/大模型训练平台,支持多租户,sso单点登录,支持在线镜像调试,在线ide开发,数据集管理,图文音标注和自动化标注,任务模板自定义,拖拉拽任务流,模型分布式多机多卡训练,超参搜索,模型管理,推理服务弹性伸缩,支持ml/tf/pytorch/onnx/tensorrt/llm模型0代码服务发布,以及配套资源监控和算力,存储资源管理。支持机器学习,深度学习,大模型 开发训练推理发布全链路。支持元数据管理,维表,指标,sqllab,数据etl等数据中台对接功能。支持多集群,边缘集群,serverless集群方式部署。支持计量计费,资源额度限制,支持vgpu,rdma,国产gpu,arm64架构。

aihub模型市场:支持AI hub模型市场,支持400+开源模型应用一键开发,一键微调,一键部署。

gpt大模型:支持40+开源大模型部署一键部署,支持ray,volcano,spark等分布式计算框架,支持tf,pytorch,mxnet,mpi,paddle,mindspre分布式多机多卡训练框架,支持deepspeed,colossalai,horovod分布式加速框架,支持llama chatglm baichuan qwen系列大模型微调。支持llama-factory 100+llm微调,支持大模型vllm推理加速,支持智能体私有知识库,智能机器人。

在线开发是一个很重要的功能,对于大部分用户来说,在线的IDE比命令vim是要方便很多。cube主要提供了vscode和jupyter两种在线ide。并没有将代码和数据进行分割存储。所以在notebok中打开的就是完全用户自己的代码和数据,可以方便的进行调试。

vscode

theia是一个在线vscode,更像本地IDE,主要服务纯代码开发(多实例,一个人可以同时开多个theia)

在这里插入图片描述

工作目录默认是/mnt,归档目录是/archives,可以把一些想永久保存,不易被误删的文件放在归档目录。

在这里插入图片描述

在vscode里面(本质为theia),用户跟本地vscode基本一致,上传下载文件/文件夹,也可以在theia中打开命令行终端。并且在其中封装了用户的基本环境需求,比如python。

需要说明的是,由于theia的功能中有些进程,例如rg进程,会不停的搜索扫描目录下的所有文件。由于个人目录下包含了用户的代码和用户的数据,文件可能非常多(千万到亿级别的文件数量)。这些进程扫描会严重拖慢分布式存储的性能。所以cube做了定时检杀的功能,能够及时检杀rg和git进程,提高在线vscode的响应速度。

jupyter

在这里插入图片描述

数据挖掘的用户使用jupyter会更多一些。在jupyter里面跟vscode里面相同,也安装了一些实用的插件,比如tensorboard,使用jupyter pro版本可以在jupyter里面打开。

比如我们在pipeline/example/tensorboard中有一个示例文件demo.py,运行这个文件,会生成一个fit_logs文件夹,这就是tf的log目录,进入这个目录,然后使用tensorboard按钮启动tensorboard,就可以查看该训练的情况。

大数据版本

大数据版本的Jupyter notebook,创建notebook时选择Jupyter(bigdata)镜像,集成了大数据常用的基础包,比如spark、flink等。支持爬虫、数据分析、数据挖掘和可视化等常用Python包的使用。

机器学习版本

机器学习版本的Jupyter notebook,创建notebook时选择Jupyter(machinelearning)镜像,集成了机器学习常用的基础包,比如sklearn、scipy等。

深度学习版本

深度学习版本的Jupyter notebook,创建notebook时选择Jupyter(DeepLearning)镜像,集成了深度学习常用的基础包,比如TensorFlow、Keras等。

rstudio

R版本的notebook,创建notebook时选择rstudio(bigdata)镜像,集成了R语言的在线IDE,IDE名称为Rstudio。

matlab

MATLAB版本的notebook,创建notebook时选择matlab(DeepLearning)镜像,集成了MATLAB的在线IDE。

pro版本

Pro版本的Jupyter中使用不同版本的Python内核,从python2.7到python3.9均可支持。

在这里插入图片描述

tensorboard可视化训练

pro版本的Jupyter有tensorboard,创建notebook时镜像选择jupyter-conda-pro(cpu),创建一个pro版本的jupyter,运行/mnt/$username/pipeline/example/tensorboard/demo.py,运行结束会产生结果文件。进入结果文件夹,此时点击“+”符号,打开tensorboard,再选择需要进行可视化的文件,即可查看可视化结果,如下图所示。

在这里插入图片描述

需要注意的是,集成了tensorboard的notebook是CPU版本的,因此,如果我们需要用GPU来训练模型,并且用tensorboard做可视化,可以用GPU版本的notebook来做模型训练,把需要可视化的结果文件写到分布式存储中,再在pro版本的notebook中打开tensorboard。

密码保护

需要修改config.py配置文件中ENABLE_JUPYTER_PASSWORD设置为True并更新到线上,重启后端,则会在每个jupyter后面会自动生成密码,每次进入jupyter要使用这个密码。

在这里插入图片描述

登录jupyter时需要密码

在这里插入图片描述

ssh远程连接jupyter功能

实现原理

jupyter版本的notebook中提供了sshd,会在notebook创建时自动启动ssh-server,并且会自动生成配置文件example/ssh链接

并为每个notebook的pod配置一个单独的service,service使用ip和端口的形式对外暴漏,每个notebook使用的端口为10000+10*id+1

需要公司网络能通过ip+端口的形式访问notebook的服务

操作方法

按照example/ssh链接 文件中的描述,在本地~/.ssh/config中添加链接配置文件

# 将此文件内容追加到~/.ssh/config   ssh root登录密码 cube-studio
# ssh-copy-id -p PORT root@HOST  本地设置免密登录Host cube-studioHostName xx.xx.xx.xxPort xxUser rootIdentityFile ~/.ssh/id_rsaServerAliveInterval 10ControlMaster autoControlPath ~/.ssh/master-%r@%h:%pForwardAgent yes

然后就可以ssh链接远程notebook了,并且可以在本地将文件拖拽到本地vscode,这样文件就是自动同步到在线notebook中

单端口代理jupyter内部ssh server

要实现这个目标,您可以使用SSH端口转发功能。具体来说,您可以在内网中设置一个跳板机(也称为SSH代理服务器),并通过它连接到其他内网SSH服务器。以下是如何实现这个目标的步骤:

  1. 首先,确保您可以从本地客户端访问内网中的跳板机。例如,假设跳板机的IP地址为192.168.1.1,端口号为22,用户为user1。

  2. 在本地客户端上设置SSH代理隧道。这将允许您通过跳板机访问其他内网SSH服务器。例如,假设您希望连接到内网中的SSH服务器A(IP地址:192.168.1.2,端口:10022,用户:user2)和SSH服务器B(IP地址:192.168.1.3,端口:10023,用户:user3)。在本地客户端上,运行以下命令以创建SSH隧道:

    ssh -L 10022:192.168.1.2:10022 -L 10023:192.168.1.3:10023 user1@192.168.1.1 -p 22
    

    user1 是您在跳板机上的用户名。这将在您的本地客户端上创建两个端口转发(10022和10023),分别连接到内网中的SSH服务器A和B。

  3. 现在,您可以通过本地客户端上的端口10022和10023来访问内网中的SSH服务器A和B。例如,要连接到SSH服务器A,您可以运行以下命令:

    ssh user2@127.0.0.1 -p 10022
    

    要连接到SSH服务器B,您可以运行以下命令:

    ssh user3@127.0.0.1 -p 10023
    

    在这两个命令中,user2user3 是您在SSH服务器A和B上的用户名。

通过这种方法,您可以通过仅可以访问的内网IP和端口来访问内网中的不同SSH服务器。

jupyter里面链接spark

对于需要连接数据中台的场景,例如连接Hive或Spark集群,我们可以在自定义Notebook中预先配置好相关的XML文件,以便用户直接使用。这样,开发者只需要配置一次,普通用户就可以直接使用,无需再次配置。

在jupyter中启动提交spark任务,作为driver端需要监听端口,每个notebook在创建的时候会预留 P O R T 1 和 PORT1和 PORT1PORT2两个环境变量代表的端口来对外监听,同时在$SERVICE_EXTERNAL_IP环境变量代表的主机上进行监听,所以需要告诉spark的master,driver的服务监听地址,这样能让master返回数据到driver端

# 创建 SparkSession
spark = SparkSession.builder \.appName("PythonPi") \.master('spark://myspark-master-0.myspark-headless.kubeflow.svc.cluster.local:7077') \.config("spark.executor.memory", "2g") \.config("spark.executor.cores", "2") \.config("spark.cores.max", "8") \.config("spark.driver.memory", "2g") \.config("spark.ui.enabled", False) \.config("spark.driver.port", os.getenv('PORT1')) \.config("spark.blockManager.port", os.getenv('PORT2')) \.config("spark.driver.bindAddress", '0.0.0.0') \.config("spark.driver.host", os.getenv('SERVICE_EXTERNAL_IP')) \.getOrCreate()

tensorboard

使用pro版本的jupyter,在左侧目录树,进入到tensorboard对应的日志目录,再打开右侧的tensorboard按钮

在这里插入图片描述

就可以查看日志目录中所包含的记录的训练过程中的信息和模型的信息

在这里插入图片描述

git功能

pro版本的notebook中,可以直接使用git。比如直接clone一个项目到notebook中,修改文件,点击git图标,就能直接看到原文件和修改后文件的对比。

在这里插入图片描述

gpu监控,cpu,内存监控

图示按钮,可帮助用户在notebook中查看资源的使用情况。需要注意的是,只有GPU版本的notebook可以在notebook中查看GPU监控,其他版本的notebook即使调用了GPU,也只能在grafana中统一查看GPU资源的监控。

在这里插入图片描述

jupyter多内核态

在使用自定义Notebook时,需要注意的是,安装包时应该先激活对应的环境,然后再进行安装。这是因为Jupyter的内核和conda环境是两个不同的概念,需要分别进行管理。

在线ide的资源占用问题

cube采用的方案是只设置notebook的pod的limit,而不设置request,这种方案就对不资源进行独占,这样也就不用清理notebook,只是允许了notebook中的资源干扰。

GPU的占用方式上,允许独占、共享、VGPU三种方式,gpu申请(单位卡),示例:填写1,2,表示训练任务每个容器独占整卡。填写-1为共享占用方式,填写小数(0.1)为vgpu方式,申请具体的卡型号,可以类似 1(V100),目前支持T4/V100/A100。

在这里插入图片描述

在线ide的环境重置问题

如果notebook因为oom,定时清理,机器故障,主动reset等可能原因而重启,notebook中的环境就会丢失,但分布式存储下的内容都会保留,也就是/mnt/$username文件夹下的内容都会保留。

所以我们如果需要环境保存,有两个方案:

  1. cube添加了notebook启动后自动执行/mnt/$username/init.sh脚本,用户只需要在init.sh中定义notebook特定的环境,就可以在启动notebook后拥有自己独特的环境了。

  2. 在notebook中有一个“镜像保存”按钮,每次notebook环境更改之后,都可以点击这个按钮,保存环境,下次重启就会自动用这个镜像来启动notebook,如下图所示。

notebook镜像保存

多实例的virtualservice代理

多实例在线IDE图示

每个用户可以配置多个在线IDE,可以自己配置资源,镜像,类型。每个在线IDE都是通过istio virtualservice来代理的。所以只要在线IDE的镜像启动的web服务支持url prefix,就可以被加进来作为在线IDE,比如matlab,rstudio。每个在线IDE实例,都有独立的以名称为prefix的url地址,在virtualservice配置绑定istio ingressgateway,这样来实现多实例。

名为admin-9d3d的在线IDE的url prefix:

名为admin-e00f的在线IDE的url prefix:

在线ide镜像保存

如果想保存自己notebook中的环境,可以在notebook列表中点击"镜像保存"的按钮,平台将自动将该notebook的pod通过docker commit成镜像,镜像名称为jupyter-user:$notebook-name,并推送到仓库,所以还需要管理员提前配置自己内网的仓库地址和账号密码

在线ide清理和需求

默认情况下在线ide每天晚上会清理三天前的,清理只是关闭容器,不会清理文件,重启容器,环境会丢失。

定时清理任务的配置

在config.py的task_delete_notebook,注释这个任务,可以停止定时清理notebook,每次notebook有效期为3天,清理前一天会提醒用户进行续期。

任务续期

点击对应notebook后的续期按钮,可以为当前notebook续期三天使用时间。

在这里插入图片描述

相关文章:

cube-studio开源一站式机器学习平台,在线ide,jupyter,vscode,matlab,rstudio,ssh远程连接,tensorboard

全栈工程师开发手册 (作者:栾鹏) 一站式云原生机器学习平台 前言 开源地址:https://github.com/tencentmusic/cube-studio cube studio 腾讯开源的国内最热门的一站式机器学习mlops/大模型训练平台,支持多租户&…...

1976 ssm 营地管理系统开发mysql数据库web结构java编程计算机网页源码Myeclipse项目

一、源码特点 ssm 营地管理系统是一套完善的信息系统,结合springMVC框架完成本系统,对理解JSP java编程开发语言有帮助系统采用SSM框架(MVC模式开发),系统具有完整的源代码和数据库,系统主要采用B/S模式开…...

技术派全局异常处理

前言 全局的异常处理是Java后端不可或缺的一部分,可以提高代码的健壮性和可维护性。 在我们的开发中,总是难免会碰到一些未经处理的异常,假如没有做全局异常处理,那么我们返回给用户的信息应该是不友好的,很抽象的&am…...

对于mysql 故障的定位和排查

故障表现 他的执行时间超过规定的限制(比如1000ms)CPU使用率高大量业务失败,数据连接异常执行sql越来越慢,失败越来越多 解决方案 定位 应急 故障恢复 定位 查询慢sql的日志查看mysql 的performance schena(里面…...

什么是电航空插头插座连接器有什么作用

航空插头概述 定义与功能 航空插头,又称航空连接器,是一种专门用于航空领域的电连接器,因其最初在航空领域得到广泛应用而得名。航空插头的主要功能是实现电源或信号的连接,尤其适用于芯数较多、结构复杂的线束连接,…...

数据挖掘常见算法(分类算法)

K-近邻算法(KNN) K-近邻分类法的基本思想:通过计算每个训练数据到待分类元组Zu的距离,取和待分类元组距离最近的K个训练数据,K个数据中哪个类别的训练数据占多数,则待分类元组Zu就属于哪个类别…...

【深度学习】调整加/减模型用于体育运动评估

摘要 一种基于因果关系的创新模型,名为调整加/减模型,用于精准量化个人在团队运动中的贡献。该模型基于明确的因果逻辑,将个体运动员的价值定义为:在假设情景下,用一名价值为零的球员替换该球员后,预期比赛…...

重生之算法刷题之路之链表初探(三)

算法刷题之路之链表初探(三) 今天来学习的算法题是leecode2链表相加,是一道简单的入门题,但是原子在做的时候其实是有些抓耳挠腮,看了官解之后才恍然大悟! 条件 项目解释 有题目可以知道,我们需…...

哪吒汽车,正在等待“太乙真人”的拯救

文丨刘俊宏 在360创始人、哪吒汽车股东周鸿祎近日连续且着急的“督战”中,哪吒汽车(下简称哪吒)终究还是顶不住了。 6月26日,哪吒通过母公司合众新能源在港交所提交了IPO文件,急迫地希望成为第五家登陆港股的造车新势力…...

HDC Cloud 2024 | CodeArts加速软件智能化开发,携手HarmonyOS重塑企业应用创新体验

2024年6月21~23日,华为开发者大会HDC 2024在东莞溪流背坡村隆重举行。期间华为云主办了以“CodeArts加速软件智能化开发,携手HarmonyOS重塑企业应用创新体验”为主题的分论坛。论坛汇聚了各行各业的专家学者、技术领袖和开发者,共同探讨Harmo…...

基于隐马尔可夫模型的股票预测【HMM】

基于机器学习方法的股票预测系列文章目录 一、基于强化学习DQN的股票预测【股票交易】 二、基于CNN的股票预测方法【卷积神经网络】 三、基于隐马尔可夫模型的股票预测【HMM】 文章目录 基于机器学习方法的股票预测系列文章目录一、HMM模型简介(1)前向后…...

PostgreSQL Replication Slots

一、PostgreSQL的网络测试 安装PostgreSQL客户端 sudo yum install postgresql 进行网络测试主要是验证客户端是否能够连接到远程的PostgreSQL服务器。以下是使用psql命令进行网络测试的基本步骤: 连接到数据库: 使用psql命令连接到远程的PostgreSQL数据库服务器…...

centos7搭建zookeeper 集群 1主2从

centos7搭建zookeeper 集群 准备前提规划防火墙开始搭建集群192.168.83.144上传安装包添加环境变量修改zookeeper 的配置 192.168.83.145 和 192.168.83.146 配置 启动 集群 准备 vm 虚拟机centos7系统zookeeper 安装包FinalShell或者其他shell工具 前提 虚拟机安装好3台cen…...

Arrays.asList 和 java.util.ArrayList 区别

理解 Java 中的 Arrays.asList 和 java.util.ArrayList 的区别 在 Java 编程中,Arrays.asList 方法和 java.util.ArrayList 是两种常用的处理列表数据的方式。虽然它们在功能上看起来相似,但在内部实现和使用上有着本质的不同。本文将探讨这两种方式的区…...

代码随想录-Day44

322. 零钱兑换 给你一个整数数组 coins ,表示不同面额的硬币;以及一个整数 amount ,表示总金额。 计算并返回可以凑成总金额所需的 最少的硬币个数 。如果没有任何一种硬币组合能组成总金额,返回 -1 。 你可以认为每种硬币的数…...

CriticGPT: 用 GPT-4 找出 GPT-4 的错误

CriticGPT 是 OpenAI 发布的一个基于 GPT-4 的模型,它可以帮助我们人类 Review 并纠正 ChatGPT 在生成代码时的错误。使用 CriticGPT 审查代码时,有 60% 的概率生成的代码更好更正确。...

SpringBoot:SpringBoot中调用失败如何重试

一、引言 在实际的应用中,我们经常需要调用第三方API来获取数据或执行某些操作。然而,由于网络不稳定、第三方服务异常等原因,API调用可能会失败。为了提高系统的稳定性和可靠性,我们通常会考虑实现重试机制。 Spring Retry为Spri…...

2024-06-24 问AI: 在大语言模型中,什么是ray?

文心一言 在大语言模型中,Ray是一个开源的统一框架,用于扩展AI和Python应用程序,特别是在机器学习领域。以下是关于Ray的详细解释: 核心功能: Ray为并行处理提供了计算层,使得用户无需成为分布式系统专家…...

仓库管理系统09--修改用户密码

1、添加窗体 2、窗体布局控件 UI设计这块还是传统的表格布局&#xff0c;采用5行2列 3、创建viewmodel 4、前台UI绑定viewmodel 这里要注意属性绑定和命令绑定及命令绑定时传递的参数 <Window x:Class"West.StoreMgr.Windows.EditPasswordWindow"xmlns"http…...

在Spring Data JPA中使用@Query注解

目录 前言示例简单示例只查询部分字段&#xff0c;映射到一个实体类中只查询部分字段时&#xff0c;也可以使用List<Object[]>接收返回值再复杂一些 前言 在以往写过几篇spring data jpa相关的文章&#xff0c;分别是 Spring Data JPA 使用JpaSpecificationExecutor实现…...

【UE5.1】Chaos物理系统基础——01 创建可被破坏的物体

目录 步骤 一、通过笔刷创建静态网格体 二、破裂静态网格体 三、“统一” 多层级破裂 四、“簇” 群集化的破裂 五、几何体集的材质 六、防止几何体集自动破碎 步骤 一、通过笔刷创建静态网格体 1. 可以在Quixel Bridge中下载两个纹理&#xff0c;用于表示石块的内外纹…...

Linux下SUID提权学习 - 从原理到使用

目录 1. 文件权限介绍1.1 suid权限1.2 sgid权限1.3 sticky权限 2. SUID权限3. 设置SUID权限4. SUID提权原理5. SUID提权步骤6. 常用指令的提权方法6.1 nmap6.2 find6.3 vim6.4 bash6.5 less6.6 more6.7 其他命令的提权方法 1. 文件权限介绍 linux的文件有普通权限和特殊权限&a…...

Redis主从复制搭建一主多从

1、创建/myredis文件夹 2、复制redis.conf配置文件到新建的文件夹中 3、配置一主两从&#xff0c;创建三个配置文件 ----redis6379.conf ----redis6380.conf ----redis6381.conf 4、在三个配置文件写入内容 redis6379.conf里面的内容 include /myredis/redis.conf pidfile /va…...

GPT-4o文科成绩超一本线,理科为何表现不佳?

目录 01 评测榜单 02 实际效果 什么&#xff1f;许多大模型的文科成绩竟然超过了一本线&#xff0c;还是在竞争激烈的河南省&#xff1f; 没错&#xff0c;最近有一项大模型“高考大摸底”评测引起了广泛关注。 河南高考文科今年的一本线是521分&#xff0c;根据这项评测&…...

Lombok的hashCode方法

Lombok对于重写hashCode的算法真的是很经典&#xff0c;但是目前而言有一个令人难以注意到的细节。在继承关系中&#xff0c;父类的hashCode针对父类的所有属性进行运算&#xff0c;而子类的hashCode却只是针对子类才有的属性进行运算&#xff0c;立此贴提醒自己。 目前重写ha…...

关于springboot创建kafkaTopic

工具类提供&#xff0c;方法名见名知意。使用kafka admin import org.apache.kafka.clients.admin.*; import org.apache.kafka.common.KafkaFuture;import java.util.*; import java.util.concurrent.ExecutionException;import org.apache.kafka.clients.admin.AdminClient; …...

OOAD的概念

面向对象分析与设计&#xff08;OOAD, Object-Oriented Analysis and Design&#xff09;是一种软件开发方法&#xff0c;它利用面向对象的概念和技术来分析和设计软件系统。OOAD 主要关注对象、类以及它们之间的关系&#xff0c;通过抽象、封装、继承和多态等面向对象的基本原…...

Day47

Day47 手写Spring-MVC之DispatcherServlet DispatcherServlet的思路&#xff1a; 前端传来URI&#xff0c;在TypeContainer容器类中通过uri得到对应的类描述类对象&#xff08;注意&#xff1a;在监听器封装类描述类对象的时候&#xff0c;是针对于每一个URI进行封装的&#x…...

【面试系列】后端开发工程师 高频面试题及详细解答

欢迎来到我的博客&#xff0c;很高兴能够在这里和您见面&#xff01;欢迎订阅相关专栏&#xff1a; ⭐️ 全网最全IT互联网公司面试宝典&#xff1a;收集整理全网各大IT互联网公司技术、项目、HR面试真题. ⭐️ AIGC时代的创新与未来&#xff1a;详细讲解AIGC的概念、核心技术、…...

mac|浏览器链接不上服务器但可以登微信

千万千万千万不要没有关梯子直接关机&#xff0c;不然就会这样子呜呜呜 设置-网络&#xff0c;点击三个点--选择--位置--编辑位置&#xff08;默认是自动&#xff09; 新增一个&#xff0c;然后选中点击完成 这样就可以正常上网了...

Spring Cloud Alibaba之负载均衡组件Ribbon

一、什么是负载均衡&#xff1f; &#xff08;1&#xff09;概念&#xff1a; 在基于微服务架构开发的系统里&#xff0c;为了能够提升系统应对高并发的能力&#xff0c;开发人员通常会把具有相同业务功能的模块同时部署到多台的服务器中&#xff0c;并把访问业务功能的请求均…...

tkinter显示图片

tkinter显示图片 效果代码解析打开和显示图像 代码 效果 代码解析 打开和显示图像 def open_image():file_path filedialog.askopenfilename(title"选择图片", filetypes(("PNG文件", "*.png"), ("JPEG文件", "*.jpg;*.jpeg&q…...

000.二分查找算法题解目录

000.二分查找算法题解目录 69. x 的平方根&#xff08;简单&#xff09;34. 在排序数组中查找元素的第一个和最后一个位置&#xff08;中等&#xff09;...

数据资产赋能企业决策:通过精准的数据分析和洞察,构建高效的数据资产解决方案,为企业提供决策支持,助力企业实现精准营销、风险管理、产品创新等目标,提升企业竞争力

一、引言 在信息化和数字化飞速发展的今天&#xff0c;数据已成为企业最宝贵的资产之一。数据资产不仅包含了企业的基本信息&#xff0c;还蕴含了丰富的市场趋势、消费者行为和潜在商机。如何通过精准的数据分析和洞察&#xff0c;构建高效的数据资产解决方案&#xff0c;为企…...

【java开发环境】多版本jdk 自由切换window和linux

win10 一、准备 各种版本的jdk&#xff0c;按自己的需要下载。 我这里是需要jdk17和jdk8。 1、jdk17 下载&#xff1a;Java Downloads | Oracle&#xff0c;选择exe后缀文件 2、jdk8下 载&#xff1a;Java Downloads | Oracle&#xff0c;选择exe后缀文件 二、详细步骤 1、…...

MySQL实训项目——餐饮点餐系统

项目简介&#xff1a;餐饮点餐系统是一款为餐厅和顾客提供便捷点餐服务的在线平台。通过该系统&#xff0c;餐厅能够展示其菜单&#xff0c;顾客可以浏览菜品&#xff0c;并将其加入购物车或直接下单。系统还提供了订单管理功能&#xff0c;方便餐厅跟踪和处理顾客的订单。 1. …...

昇思MindSpore学习总结七——模型训练

1、模型训练 模型训练一般分为四个步骤&#xff1a; 构建数据集。定义神经网络模型。定义超参、损失函数及优化器。输入数据集进行训练与评估。 现在我们有了数据集和模型后&#xff0c;可以进行模型的训练与评估。 2、构建数据集 首先从数据集 Dataset加载代码&#xff0…...

AI时代创新潮涌,从探路到引路,萤石云引领千行百业创新

步入AI新时代&#xff0c;AI、云计算、大数据等技术迅速迭代&#xff0c;并日益融入经济社会发展各领域全过程&#xff0c;数字经济成为推动千行百业转型升级的重要驱动力量。 今年的政府工作报告提出&#xff0c;深入推进数字经济创新发展。积极推进数字产业化、产业数字化&a…...

计算机毕业设计Python深度学习美食推荐系统 美食可视化 美食数据分析大屏 美食爬虫 美团爬虫 机器学习 大数据毕业设计 Django Vue.js

Python美食推荐系统开题报告 一、项目背景与意义 随着互联网和移动技术的飞速发展&#xff0c;人们的生活方式发生了巨大变化&#xff0c;尤其是餐饮行业。在线美食平台如雨后春笋般涌现&#xff0c;为用户提供了丰富的美食选择。然而&#xff0c;如何在海量的餐饮信息中快速…...

【鸿蒙学习笔记】鸿蒙ArkTS学习笔记

应用开发导读&#xff1a;https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/application-dev-guide-V5 这里写目录标题 基础组件通用属性容器组件Button 迭代完备 【鸿蒙培训】第&#xff11;天・环境安装 【鸿蒙培训】第&#xff12;天・装饰器・组件和页面…...

广东行政职业学院数据智能订单班开班暨上进双创工作室签约仪式圆满结束

为响应教育领域数字化与智能化浪潮这一变革&#xff0c;给学生提供更好的教育资源和实践机会&#xff0c;6月27日&#xff0c;“泰迪广东行政职业学院数据智能订单班开班仪式暨上进双创工作室签约授牌”在广东行政职业学院举行。广东行政职业学院智慧政务学院&#xff08;电子信…...

python与matlab微分切片的区别

python python使用np中的linespace生成等间隔数值&#xff0c; import numpy as np numpy.linspace(start, stop, num50, endpointTrue, retstepFalse, dtypeNone, axis0)start&#xff1a;序列的起始值。stop&#xff1a;序列的结束值。如果 endpoint 为 True&#xff0c;该…...

MSPG3507——蓝牙接收数据显示在OLED,滴答定时器延时500MS

#include "ti_msp_dl_config.h" #include "OLED.h" #include "stdio.h"volatile unsigned int delay_times 0;//搭配滴答定时器实现的精确ms延时 void delay_ms(unsigned int ms) {delay_times ms;while( delay_times ! 0 ); } int a0; …...

Linux 安装 Redis 教程

优质博文&#xff1a;IT-BLOG-CN 一、准备工作 配置gcc&#xff1a;安装Redis前需要配置gcc&#xff1a; yum install gcc如果配置gcc出现依赖包问题&#xff0c;在安装时提示需要的依赖包版本和本地版本不一致&#xff0c;本地版本过高&#xff0c;出现如下问题&#xff1a…...

【高考志愿】建筑学

目录 一、专业介绍 1.1 专业定义 1.2 专业培养目标 1.3 核心课程 二、就业方向和前景 2.1 就业方向 2.2 专业前景 三、报考注意 四、行业趋势与未来展望 五、建筑学专业排名 一、专业介绍 1.1 专业定义 建筑学&#xff0c;这一充满艺术与科技魅力的学科&#xff0c;…...

Kubernetes的发展历程:从Google内部项目到云原生计算的基石

目录 一、起源与背景 1.1 Google的内部项目 1.2 Omega的出现 二、Kubernetes的诞生 2.1 开源的决策 2.2 初期发布 三、Kubernetes的发展历程 3.1 社区的成长 3.2 生态系统的壮大 3.3 重大版本和功能 3.4 多云和混合云的支持 四、Kubernetes的核心概念 4.1 Pod 4.…...

/proc/config.gz

前言 有时候&#xff0c;我们想知道一个运行着的内核都打开了哪些编译选项&#xff0c;当然&#xff0c;查看编译环境的 .config 文件是一个不错的选择&#xff0c;除此之外&#xff0c;还有没有别的办法呢&#xff1f;当然有&#xff0c;那就是 /proc/config.gz。 一睹风采 …...

论坛万能粘贴手(可将任意文件转为文本)

该软件可将任意文件转为文本。 还原为原文件的方法&#xff1a;将得到的文本粘贴到记事本&#xff0c;另存为UUE格式&#xff0c;再用压缩软件如winrar解压即可得到原文件。建议用于小软件。 下载地址&#xff1a;https://download.csdn.net/download/wgxds/89505015 使用演示…...

学习笔记——动态路由——OSPF(OSPF协议的工作原理)

八、OSPF协议的工作原理 1、原理概要 (1)相邻路由器之间周期性发送HELLO报文&#xff0c;以便建立和维护邻居关系 (2)建立邻居关系后&#xff0c;给邻居路由器发送数据库描述报文(DBD)&#xff0c;也就是将自己链路状态数据库中的所有链路状态项目的摘要信息发送给邻居路由器…...

Mybatis1(JDBC编程和ORM模型 MyBatis简介 实现增删改查 MyBatis生命周期)

目录 一、JDBC编程和ORM模型 1. JDBC回顾 2. JDBC的弊端 3. ORM模型 Mybatis和hibernate 区别: 4. mybatis 解决了jdbc 的问题 二、MyBatis简介 1. MyBatis快速开始 1.1 导入jar包 1.2 引入 mybatis-config.xml 配置文件 1.3 引入 Mapper 映射文件 1.3 测试 …...

Python处理excel数据详解

1.导入文件 注意&#xff1a;要把excel放到跟你的python文件在同一个地方 import pandas as pd import numpy as np dfpd.read_excel("鸢尾花训练数据.xlsx",engine"openpyxl") import pandas 先引入 (若没有下载 需要在终端下载 pip install pandas)…...

基于深度学习的人脸关键点检测

1. 任务和目标 人脸关键点检测的主要任务是识别并定位人脸图像中的特定关键点&#xff0c;例如眼睛的角点、眉毛的顶点、鼻子的底端、嘴角等。这些关键点不仅能提供面部结构的几何信息&#xff0c;还可以用于分析表情、识别个体&#xff0c;甚至检测面部姿势。 2. 技术和方法…...

学生管理系统

一、登录 用户类&#xff1a;属性&#xff1a;用户名、密码、身份证号码、手机号码 1、欢迎页面 System.out.println("欢迎来到学生管理系统"); System.out.println("请选择操作1登录 2注册 3忘记密码"); 代码实现&#xff1a; //欢迎页面public static…...

基于Freetype的文字渲染流程以及缓存策略

1. 前言 OpenGL 对于文字的绘制以及字体的操纵提供了低层次的支持&#xff0c;即位图字体。每个字形根据他们的编号被放到位图字体中的确切位置&#xff0c;在渲染这些字形的时候根据这些排列规则将他们取出并贴到指定的位置。这种方法相对来说很容易实现。 2. 基于 FreeType…...

Java基础面试题(简单版):

1.java的8个基本数据类型? 整型: byte(占用1个字节) short(占用2个字节) int(占用4个字节) long(占用8个字节) 浮点型: float(占用4个字节)、double(占用8个字节) 字符型: char 布尔型: boolean 2.ArrayList和LinkedList的区别? 可以说ArrayList和LinkedList除了是同属于集合…...

深度学习 --- stanford cs231学习笔记七(训练神经网络之梯度下降优化器)

5&#xff0c;梯度下降优化器 5&#xff0c;1 梯度下降在深度学习中的作用 在深度学习中&#xff0c;权重W的值是否合理是由损失函数L来判断的。L越小&#xff0c;表示W的设置越happy。L越大&#xff0c;表示W的值越unhappy。 为了让L越来越小&#xff0c;常用的方法是梯度下降…...

充电更快!外观更帅!新款起亚EV6亮相!

谈起起亚EV6这一款车,相信国内的网友还是有些陌生,毕竟这是一款23年才在国内亮相的车型,但早在2021年,这一款车型就已经亮相了。在2024年5月,起亚推出了新款EV6。新车在各方面都有着大变化,一起来看看!新款EV6的升级部分主要体现在细节上,例如在前脸部分,新的大灯组造…...

纯电续航提升!岚图FREE318预告发布!

作为东风旗下一个专注于高级、豪华的新能源品牌,岚图旗下的车型从产品力上来看还是相当不错的,作为岚图的第一款车型,岚图FREE也收获到了一部分消费者的喜欢。而在今天,岚图官方发布了一组岚图FREE318车型的官图,新车将会在5月30日开启预售。外观方面,岚图FREE318基本上延…...

美团医美驶入深水区,用户数破6000万,从种草到履约保障

美团司南医师榜单发布 图源:美团官方近日,美团在上海首次发布2024“司南医师榜”,全国16城共136名医美医生入选,平均从业年限达到18年,副主任医师及以上职称比例达68%。据悉,该榜单通过五轮累计上万小时的专业医学交叉盲评、1000多名医美用户打分以及平台数据校验最终评定…...

非量表题如何进行信效度分析

效度是指设计的题确实在测量某个东西&#xff0c;一般问卷中使用到。如果是量表类的数据&#xff0c;其一般是用因子分析这种方法去验证效度水平&#xff0c;其可通过因子分析探究各测量量表的内部结构情况&#xff0c;分析因子分析得到的内部结构与自己预期的内部结构进行对比…...

基于广义极大极小凹惩罚的心电信号降噪方法(MATLAB R2021B)

凸优化是数学最优化的一个子领域&#xff0c;研究定义于凸集中的凸函数最小化问题。由于心电信号降噪的过程可以理解为求信号的稀疏近似解&#xff0c;因此基于凸优化和稀疏性表达的去噪方法可用于心电信号处理。在凸优化的数学模型中&#xff0c;惩罚项的选取对最终结果会产生…...

搜维尔科技:Movella Xsens用于动画,CG,短视频制作案例

用户名称 广州百漫文化传播有限公司 应用场景 基于Xsens MVN Link 动作捕捉系统的动画制作、CG制作、短视频制作、快速动画MAYA插件、影视动漫实时合成预渲染。 现场照片 《西行纪》内容简介&#xff1a;在远古神明的年代&#xff0c;世间存在着天众、龙众、阿修罗等八部众…...