一、简介
tochvision主要处理图像数据,包含一些常用的数据集、模型、转换函数等。torchvision独立于PyTorch,需要专门安装。
2025年10月19日
tochvision主要处理图像数据,包含一些常用的数据集、模型、转换函数等。torchvision独立于PyTorch,需要专门安装。
2025年10月19日
深度学习领域最迷人的生成模型之一,不仅能重构数据,更能创造新内容。
变分自编码器(Variational Autoencoder,VAE)作为深度学习领域一种强大的生成模型,近年来在人工智能生成内容(AIGC)领域展现出巨大潜力。
2025年10月19日
缺失数据处理一直是机器学习实践中的难点。MICE(Multivariate Imputation by Chained Equations)作为一种基于迭代思想的插补框架,可以处理复杂缺失值问题。因为它不是简单地用均值或中位数填补空缺,而是通过构建后验分布来建模不确定性,这种处理方式在统计学上更为严谨。
但MICE的学习曲线优点陡峭,迭代机制和模型依赖特性也让不少人望而却步,所以本文会通过PMM(Predictive Mean Matching)和线性回归等具体方法,拆解MICE的工作原理,同时对比标准回归插补作为参照。
2025年10月19日
依赖安装注意点:版本要匹配(
https://github.com/openvinotoolkit/nncf/blob/develop/docs/Installation.md),否则会有很多坑
import nncf
import openvino as ov
from paddle.io import DataLoader
from dataset import SimpleDataSet, DecodeImage, DetResizeForTest, NormalizeImage, ToCHWImage, KeepKeys
def transform_fn(data_item):
# images, _ = data_item
return data_item[0]
def quantization(model_path, output_path):
model = ov.Core().read_model(model_path)
transforms = [ # 以一个文本检测任务为例,基于paddleocr训练的模型
DecodeImage(img_mode='BGR',
channel_first=False),
DetResizeForTest(image_shape=[640, 640]),
NormalizeImage(scale=1. / 255.,
mean=[0.485, 0.456, 0.406],
std=[0.229, 0.224, 0.225],
order='hwc'),
ToCHWImage(),
KeepKeys(keep_keys=['image', 'shape'])
]
val_dataset = SimpleDataSet(
data_dir='D:/datasets/hukouben_crop_direction',
label_file_list='D:/datasets/hukouben_crop_direction/text_det/Label.txt',
do_shuffle=False,
mode='val',
ratio_list=[1],
delimiter='\t',
transforms=transforms,
seed=None
)
data_loader = DataLoader(val_dataset, batch_size=1)
calibration_dataset = nncf.Dataset(data_loader, transform_fn)
quantized_model = nncf.quantize(model, calibration_dataset)
ov.save_model(quantized_model, output_path)
if __name__ == '__main__':
model_path = 'hukouben_text_det_mv3_db++.onnx' # onnx模型路径
output_path = './output/ser_640_640_model_quant.xml' # openvino模型保存路径
quantization(model_path, output_path)
2025年10月19日
(K折、留一,留p,随机)
学习预测函数的参数,并在相同数据集上进行测试是一种错误的做法: 一个仅给出测试用例标签的模型将会获得极高的分数,但对于尚未出现过的数据它则无法预测出任何有用的信息。 这种情况称为 overfitting(过拟合). 为了避免这种情况,在进行(监督)机器学习实验时,通常取出部分可利用数据作为 test set(测试数据集) X_test, y_test。
利用 scikit-learn 包中的 train_test_split 辅助函数可以很快地将实验数据集划分为任何训练集(training sets)和测试集(test sets)。