- 博客(43)
- 资源 (1)
- 收藏
- 关注

原创 anaconda环境和包安装问题
anaconda环境问题查看环境信息: conda info -e创建一个新环境:conda create --name 环境名创建环境并添加包:conda create --name 环境名 包名删除环境:conda env remove --name 环境名切换环境:conda activate 环境名...
2020-05-09 19:18:53
973
原创 volatile 关键字作用与用法
volatile关键字用于告诉编译器:该变量的值可能会在程序之外发生变化,因此编译器不能对其进行优化。它常用于硬件寄存器、内存映射 I/O、中断标志、共享的多线程变量等场景。使用volatile可以防止编译器缓存变量值,但它不提供线程间同步或原子性保证,需要配合其他同步机制使用。
2024-12-03 15:10:42
878
1
原创 C内联汇编
C语言的内联汇编提供了灵活的方式来嵌入底层操作,允许程序员直接访问CPU寄存器、执行低级指令或进行特殊优化。它是一个非常强大的工具,但也需要谨慎使用,特别是在跨平台开发和代码维护时。
2024-12-03 15:09:27
964
原创 机器指令与指令集异同
机器指令是指令集中的具体指令,代表了处理器可以直接执行的低级操作,通常是二进制编码。指令集是一个完整的指令集合,定义了处理器可以执行的所有操作。因此,机器指令和指令集是不同的概念,但机器指令是指令集的具体实现形式。
2024-12-03 15:08:19
538
原创 超标量与超线程技术
超标量技术更多关注在单个核心内部通过并行执行多个指令来提高计算效率。超线程技术则是通过增加逻辑处理器的数量,在多线程工作负载下提升处理器资源的利用率。这两项技术通常可以结合使用,以进一步提升处理器的性能。
2024-12-03 15:04:47
957
原创 指令调度与寄存器分配
指令调度主要关注在指令执行时序上的优化,目的是通过并行执行和减少等待时间提升程序执行效率。寄存器分配则关注如何高效地将变量和临时值分配到有限的寄存器中,以减少内存访问并提高执行速度。这两项技术在编译优化中是紧密结合的,互相协调共同作用,以实现更高效的代码执行和更低的执行开销。
2024-12-03 15:00:50
1037
原创 SIMD与SIMT
SIMD适用于数据级并行性较高的任务,在执行相同操作时可以显著提高性能,特别是在处理向量数据时。SIMT适用于线程级并行性的任务,尤其是在GPU计算中,适合处理独立线程的计算,每个线程可以有独立的数据和执行路径。两者的主要区别在于执行的并行单位:SIMD侧重于在一个指令下并行处理多个数据元素,而SIMT侧重于在多个线程下执行相同的指令,处理不同的数据。SIMT常见于GPU计算,SIMD则多用于CPU架构的并行化计算。
2024-12-03 14:58:43
871
转载 神经网络加速器设计参考
【VeriMake】在安路FPGA开发板上移植ARM Cortex-M0内核(开头讲了一个简单的案例)【VeriMake】在安路FPGA开发板上移植ARM Cortex-M0内核(上)(比较详细)【VeriMake】在安路FPGA开发板上移植ARM Cortex-M0内核(下)(比较详细)【优快云】基于FPGA的深度卷积神经网络的加速器设计(论文译文)(个人感觉非常好)★。【正点原子】开拓者FPGA开发板视频教程-(Nios II篇)(F盘)《计算机组成与设计:硬件/软件接口(原书第5版 ARM版)》
2024-03-18 20:28:48
186
原创 windows usbip(瑞芯微windows开发)
除usbipd之外,还有一个usbip仓库可以参考。检查 vhci_hcd 模块: 确保。wsl2中运行,可发现设备。windows上运行。
2023-11-16 11:02:54
935
原创 wsl环境下docker报错:Cannot connect to the Docker daemon
wsl环境下docker报错:Cannot connect to the Docker daemon
2022-09-19 20:56:27
1306
1
原创 Pyinstaller 打包踩坑指南
创建一个新的环境用于打包,这样不会导致打包exe太大遇到的问题及正确解决方案:1、[WinError 6] 句柄无效Traceback (most recent call last): ... File "subprocess.py", line 383, in run File "subprocess.py", line 640, in __init__ File "subprocess.py", line 850, in _get_handlesOSError: [WinErro
2021-11-13 21:58:04
2378
1
原创 PyTorch Image Models(timm)库基础
timm是由Ross Wightman创建的深度学习库,是一个关于SOTA的计算机视觉模型、层、实用工具、optimizers, schedulers, data-loaders, augmentations,可以复现ImageNet训练结果的训练/验证代码。代码网址:https://github.com/rwightman/pytorch-image-models简略文档:https://rwightman.github.io/pytorch-image-models/详细文档:https://fa
2021-09-07 16:12:59
8181
1
原创 VScode远程连接失败
原文链接:https://stackoverflow.com/questions/56671520/how-can-i-install-vscode-server-in-linux-offline/57601121#57601121commit_id=f06011ac164ae4dc8e753a3fe7f9549844d15e35# Download url is: https://update.code.visualstudio.com/commit:${commit_id}/server-linu
2021-07-25 16:49:24
375
1
原创 庖丁解牛-特征归一化/标准化
为什么要对特征做归一化/标准化?统一量纲,对于距离敏感性模型能够提升精度(如K-means、KNN、PCA、SVM),对基于梯度下降的模型能加快收敛(如线性回归、逻辑回归、神经网络)。为什么对于基于距离的模型能够提升精度?不同的特征的数量级不同,如果不使用标准化/归一化,原始数量级大的特征可能会对模型输出造成较大影响,而数量级小的特征可能对于模型输出影响较小。也即模型要学习到:在特征同等重要的情况下,对数量级大的特征分配一个小的权重,对数量级小的特征分配一个大的权重。归一化之后可以优化这一过程,降低了
2021-06-21 22:19:23
201
原创 Python进阶
为什么要使用装饰器?目的?假设我们要增强一个函数A的功能,但又不希望修改函数A的定义,这种在代码运行期间动态增加功能的方式,称之为“装饰器”(Decorator)。说白了,就是通过新写一个函数B将原函数A包装进去,并添加一些新的代码增加额外的功能。如何实现?实现基础原理:由于函数也是一个对象,而且函数对象可以被赋值给变量,所以,通过变量也能调用该函数。例:设计一个decorator,它可作用于任何函数上,并打印该函数的执行时间:import functoolsdef metric(fn):
2021-06-19 17:49:56
128
原创 终端复用工具screen
screen是一款非常简单易上手的终端复用工具,可以将会话与窗口分离,避免断线导致服务器程序断掉。如需要更强大的功能,可参考。Ctrl + a,c #在当前screen会话中创建一个子会话。Ctrl + a,0-9 #在第0窗口至第9子会话间切换。,tmux是一种功能更加强大的终端复用工具。Ctrl + a,d #暂离当前会话。Ctrl + a,p #上一个子会话。Ctrl + a,n #下一个子会话。Ctrl + a,w #子会话列表。创建一个叫做python的会话。
2021-06-02 20:25:21
228
转载 SQL基础
数据库表一个数据库通常包含一个或多个表。每个表有一个名字标识(例如:“Websites”),表包含带有数据的记录(行)。use RUNOOB; 命令用于选择数据库。set names utf8; 命令用于设置使用的字符集。SELECT * FROM Websites; 读取数据表的信息。SQL 对大小写不敏感:SELECT 与 select 是相同的。某些数据库系统要求在每条 SQL 语句的末端使用分号。分号是在数据库系统中分隔每条 SQL 语句的标准方法,这样就可以在对服务器的相同请求中
2021-03-06 16:43:20
236
原创 Counterfactual Explanations for Machine Learning: A Review
Counterfactual Explanations for Machine Learning: A Review机器学习的社会意义建立公平性和使自动化工具的决策具有可解释性是我们可以确保机器学习对社会产生公平影响的两种主要方法。公平性研究旨在开发算法,以确保系统产生的决策不会偏向特定的人口统计学群体,这些群体是根据敏感特征(例如种族,性别,宗教信仰)定义的。反歧视法律规定,使用敏感功能作为任何决定的基础是非法的。有偏见的决策也可能引起广泛的批评,因此对于避免此类行为很重要。关联关联可以理解成找相
2021-02-26 20:46:11
676
原创 Explainable Artificial Intelligence Approaches: A Survey
Explainable Artificial Intelligence Approaches: A Survey现有的一些工具:LIME, DeepVis Toolbox, TreeInterpreter, Keras-vis, Microsoft InterpretML, MindsDB, SHAP, Tensorboard WhatIf, Tensorflow’s Lucid, Tensorflow’s Cleverhans解释方法分为三类:Intrinsically Interpretable M
2021-02-26 20:39:50
445
原创 Multi-view Integration Learning for Irregularly-sampled Clinical Time Series
Multi-view Integration Learning for Irregularly-sampled Clinical Time Series介绍问题电子健康记录(EHR)数据==稀疏且不规则==,因为它以不规则的时间间隔记录,并且在每个观察点测量不同的临床变量。不同数量的观察值和跨数据的时间对齐方式的缺乏使假定具有固定维特征空间的机器学习模型的使用无效。研究进展研究背景:基于RNN的方法已成为处理临床时间序列数据的实际解决方案,因为RNN可以管理各种长度的顺序数据。但是传统的RNN方法
2021-02-26 20:21:38
420
2
原创 微信8.0自动发送炸弹python脚本
import itchatimport argparsedef get_arguments(): parser = argparse.ArgumentParser(description='文献表情包发送') parser.add_argument('--name', type=str, default="xxx", help='要发送的人的微信备注') parser.add_argument('--group', type=
2021-01-27 15:45:41
8075
2
原创 指定GPU训练模型
指定GPU训练模型1、直接在终端运行时加入相关语句实现指定GPU的使用运行test.py文件时,使用编号为0的GPU卡CUDA_VISIBLE_DEVICES=0 python test.py运行test.py文件时,使用编号为0和2的GPU卡CUDA_VISIBLE_DEVICES=0,2 python test.py2、在Python程序中添加使用第一张与第二张GPU卡import osos.environ["CUDA_VISIBLE_DEVICES"] = "1, 2"..
2020-12-30 09:57:58
1429
1
原创 命令行选项、参数和子命令解析器
命令行参数def get_arguments(): parser = argparse.ArgumentParser(description='sequence to point learning \ example for NILM') parser.add_argument('--data_dir', type=str, default=DATA_DIRECTORY,
2020-12-24 16:11:03
165
1
原创 python下载源更改
conda添加国内镜像源conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/freeconda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/mainconda config --set show_channel_urls yes换回默认源conda config --remove-key c
2020-12-22 16:38:59
1203
原创 安装tensorflow,pytorch并测试GPU是否可用
测试GPU是否可用tensorflowimport tensorflow as tfprint(tf.test.is_gpu_available())pytorchimport torchprint(torch.cuda.is_available())输出True代表可用
2020-12-21 20:29:26
445
1
原创 服务器连接
参考https://www.cnblogs.com/cookiewu/p/9664062.html服务端(必须)1.安装ssh服务端sudo apt-get install openssh-server;2.确认sshserver是否启动了ps -e | grep ssh如果只有ssh-agent那ssh-server还没有启动,需要/etc/init.d/ssh start,如果看到sshd那说明ssh-server已经启动了3.启动sshserver/etc/init.d/ssh sta
2020-12-14 21:49:13
286
原创 mxnet模型序列化
mxnet模型序列化,因为mxnet是动态图,需要前向运行一遍#mxnet 模型序列化'''keep the model to json 保存模型和参数'''net2.hybridize()output = net2(image.as_in_context(mx.gpu(0)))[1] #image是一张ndarray图net2.export('net2')'''load the model and the params 还原模型'''net3 = gluon.SymbolBlock.impo
2020-11-26 17:56:42
129
原创 三分类SHAP图(特征标准化之后怎么画)
画三分类SHAP图出错今天干了一件很蠢的事情,还耽误了很多时间,特此记录一下我将数据标准化之后训练模型,然后将未标准化的数据作为输入计算了SHAP值,得出的结果显然不对。类似于下图这种但是如果画图时将X_test输入作为参数,那么横坐标就对应的是标准化之后的值,所以我们可以先对X_test未经标准化时候制作一个copy版本X_test1,然后作为画图时候参数输入就可以正确画出SHAP图的横坐标了,也可以得到我们想要的信息。另外三分类shap values得到一个3维数据,有时候使用起来需要切片,比如
2020-11-23 20:12:05
6558
7
原创 机器学习模型性能提升方案
机器学习最有价值的部分是预测建模。 这是在历史数据上训练模型并对新数据进行预测的模型的开发。 关于预测建模的首要问题是:如何获得更好的结果?这份备忘单包含了多年以来我的最佳应用程序,以及我对顶尖的机器学习从业人员和比赛获胜者的学习所总结出的最佳建议。 有了本指南,您不仅会得到解脱和提升的性能,甚至可以在预测问题上获得世界一流的结果。概述 此备忘单旨在为您提供一些想法,以提高您的机器学习问题的性能。 取得突破是一个好主意。 当您遇到问题时,一个好主意值得一吨黄金,本指南包含32种可以尝试的想法
2020-10-16 20:01:57
591
原创 列表和数组
列表和数组区别列表的数据类型可以不同,数组的数据类型相同数组和列表最关键的区别是:数组是基于向量化操作的,列表不是,我们在实际项目中处理的数据一般是矩阵结构,对该数据以行向量或列向量的形式进行计算,向量计算是基于数组实现的,因此数组比列表的应用更广。函数可以应用到数组的每一项,列表不行。另一个区别是已经定义的numpy数组不可以增加数组大小,只能通过定义另一个数组来实现,但是列表可以增加大小。同样长度的数组所占的空间小于列表数组的属性包括:数组的维度(ndim)数组的形状(shape)
2020-10-09 13:02:18
3468
原创 vs code中文乱码
这个不是vscode的问题,而是powershell的问题。打开powershell输入chcp查看,因为vscode使用UTF8编码,使用powershell也要时用UTF8编码(65001),如果不是65001就会造成中文乱码。
2020-07-11 21:21:42
287
原创 数据泄露
参考:https://www.kaggle.com/alexisbcook/data-leakageData leakage当您的训练数据包含有关目标的信息时,就会发生数据泄漏(或泄漏),但是当模型用于预测时,类似的数据将不可用。这将导致训练集(甚至可能包括验证数据)的高性能,但是模型在生产中的表现会很差。泄漏有两种主要类型:target leakage和train-test contamination。Target leakage当预测变量包含在进行预测时将不可用的数据时,就会发生目标泄漏。重要的
2020-07-06 18:33:11
606
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人