南宁网站推广v1如何申请建设网站域名
- 作者: 五速梦信息网
- 时间: 2026年03月21日 10:18
当前位置: 首页 > news >正文
南宁网站推广v1,如何申请建设网站域名,网站电话转化率,网站开发问题解决#x1f368; 本文为#x1f517;365天深度学习训练营 中的学习记录博客#x1f356; 原作者#xff1a;K同学啊 | 接辅导、项目定制 一、我的环境 1.语言环境#xff1a;Python 3.9 2.编译器#xff1a;Pycharm 3.深度学习环境#xff1a;TensorFlow 2.10.0 二、GPU设置… 本文为365天深度学习训练营 中的学习记录博客 原作者K同学啊 | 接辅导、项目定制 一、我的环境 1.语言环境Python 3.9 2.编译器Pycharm 3.深度学习环境TensorFlow 2.10.0 二、GPU设置 若使用的是cpu则可忽略 import tensorflow as tf gpus tf.config.list_physical_devices(GPU)if gpus:gpu0 gpus[0] #如果有多个GPU仅使用第0个GPUtf.config.experimental.set_memory_growth(gpu0, True) #设置GPU显存用量按需使用tf.config.set_visible_devices([gpu0],GPU) 三、加载数据 data_dir ./data/ img_height 224 img_width 224 batch_size 32train_ds tf.keras.preprocessing.image_dataset_from_directory(data_dir,validation_split0.3,subsettraining,seed12,image_size(img_height, img_width),batch_sizebatch_size)val_ds tf.keras.preprocessing.image_dataset_from_directory(data_dir,validation_split0.3,subsetvalidation,seed12,image_size(img_height, img_width),batch_sizebatch_size) 由于原始数据集不包含测试集因此需要创建一个。使用 tf.data.experimental.cardinality 确定验证集中有多少批次的数据然后将其中的 20% 移至测试集。 val_batches tf.data.experimental.cardinality(val_ds) test_ds val_ds.take(val_batches // 5) val_ds val_ds.skip(val_batches // 5)print(Number of validation batches: %d % tf.data.experimental.cardinality(val_ds)) print(Number of test batches: %d % tf.data.experimental.cardinality(test_ds)) class_names train_ds.class_names print(class_names) #[cat, dog] AUTOTUNE tf.data.AUTOTUNEdef preprocess_image(image,label):return (image/255.0,label)# 归一化处理 train_ds train_ds.map(preprocess_image, num_parallel_callsAUTOTUNE) val_ds val_ds.map(preprocess_image, num_parallel_callsAUTOTUNE) test_ds test_ds.map(preprocess_image, num_parallel_callsAUTOTUNE)train_ds train_ds.cache().prefetch(buffer_sizeAUTOTUNE) val_ds val_ds.cache().prefetch(buffer_sizeAUTOTUNE) plt.figure(figsize(15, 10)) # 图形的宽为15高为10for images, labels in train_ds.take(1):for i in range(8):ax plt.subplot(5, 8, i 1) plt.imshow(images[i])plt.title(class_names[labels[i]])plt.axis(off) 四、数据增强 我们可以使用 tf.keras.layers.experimental.preprocessing.RandomFlip 与tf.keras.layers.experimental. preprocessing.RandomRotation 进行数据增强。 tf.keras.layers.experimental.preprocessing.RandomFlip水平和垂直随机翻转每个图像。tf.keras.layers.experimental.preprocessing.RandomRotation随机旋转每个图像 data_augmentation tf.keras.Sequential([tf.keras.layers.experimental.preprocessing.RandomFlip(horizontal_and_vertical),tf.keras.layers.experimental.preprocessing.RandomRotation(0.2), ]) 第一个层表示进行随机的水平和垂直翻转而第二个层表示按照 0.2 的弧度值进行随机旋转。 plt.figure(figsize(8, 8)) for i in range(9):augmented_image data_augmentation(image)ax plt.subplot(3, 3, i 1)plt.imshow(augmented_image[0])plt.axis(off) 运行结果 五、增强方式 方法一将其嵌入model中 model tf.keras.Sequential([data_augmentation,layers.Conv2D(16, 3, paddingsame, activationrelu),layers.MaxPooling2D(), ]) #这样做的好处是
数据增强这块的工作可以得到GPU的加速如果你使用了GPU训练的话
注意只有在模型训练时Model.fit才会进行增强在模型评估(Model.evaluate)以及预测
(Model.predict)时并不会进行增强操作。
方法二在Dataset数据集中进行数据增强 batch_size 32 AUTOTUNE tf.data.AUTOTUNEdef prepare(ds):ds ds.map(lambda x, y: (data_augmentation(x, trainingTrue), y), num_parallel_callsAUTOTUNE)return ds 运行结果 train_ds prepare(train_ds) 六、训练模型 model tf.keras.Sequential([layers.Conv2D(16, 3, paddingsame, activationrelu),layers.MaxPooling2D(),layers.Conv2D(32, 3, paddingsame, activationrelu),layers.MaxPooling2D(),layers.Conv2D(64, 3, paddingsame, activationrelu),layers.MaxPooling2D(),layers.Flatten(),layers.Dense(128, activationrelu),layers.Dense(len(class_names)) ]) model.compile(optimizeradam,losstf.keras.losses.SparseCategoricalCrossentropy(from_logitsTrue),metrics[accuracy]) epochs20 history model.fit(train_ds,validation_dataval_ds,epochsepochs ) 运行结果 Epoch 1⁄20 14⁄14 [] - 9s 60ms/step - loss: 0.8157 - accuracy: 0.5452 - val_loss: 0.6570 - val_accuracy: 0.5811 Epoch 2⁄20 14⁄14 [] - 0s 32ms/step - loss: 0.5555 - accuracy: 0.7310 - val_loss: 0.4195 - val_accuracy: 0.8311 Epoch 3⁄20 14⁄14 [] - 0s 30ms/step - loss: 0.2668 - accuracy: 0.8881 - val_loss: 0.4676 - val_accuracy: 0.8041 Epoch 4⁄20 14⁄14 [] - 0s 31ms/step - loss: 0.1672 - accuracy: 0.9310 - val_loss: 0.3413 - val_accuracy: 0.8649 Epoch 5⁄20 14⁄14 [] - 0s 30ms/step - loss: 0.1526 - accuracy: 0.9452 - val_loss: 0.2555 - val_accuracy: 0.9054 Epoch 6⁄20 14⁄14 [] - 0s 29ms/step - loss: 0.0710 - accuracy: 0.9881 - val_loss: 0.2825 - val_accuracy: 0.9122 Epoch 7⁄20 14⁄14 [] - 0s 29ms/step - loss: 0.0278 - accuracy: 0.9976 - val_loss: 0.2849 - val_accuracy: 0.9054 Epoch 8⁄20 14⁄14 [] - 0s 28ms/step - loss: 0.0140 - accuracy: 0.9976 - val_loss: 0.2841 - val_accuracy: 0.9122 Epoch 9⁄20 14⁄14 [] - 0s 29ms/step - loss: 0.0103 - accuracy: 1.0000 - val_loss: 0.3034 - val_accuracy: 0.9122 Epoch 10⁄20 14⁄14 [] - 0s 29ms/step - loss: 0.0060 - accuracy: 1.0000 - val_loss: 0.7403 - val_accuracy: 0.8446 Epoch 11⁄20 14⁄14 [] - 0s 29ms/step - loss: 0.0620 - accuracy: 0.9738 - val_loss: 0.2892 - val_accuracy: 0.9054 Epoch 12⁄20 14⁄14 [] - 0s 29ms/step - loss: 0.0377 - accuracy: 0.9881 - val_loss: 0.3887 - val_accuracy: 0.8919 Epoch 13⁄20 14⁄14 [] - 0s 29ms/step - loss: 0.0312 - accuracy: 0.9881 - val_loss: 0.5183 - val_accuracy: 0.8784 Epoch 14⁄20 14⁄14 [] - 0s 28ms/step - loss: 0.0264 - accuracy: 0.9929 - val_loss: 0.7976 - val_accuracy: 0.8784 Epoch 15⁄20 14⁄14 [] - 0s 28ms/step - loss: 0.0697 - accuracy: 0.9690 - val_loss: 0.3325 - val_accuracy: 0.8851 Epoch 16⁄20 14⁄14 [] - 0s 28ms/step - loss: 0.0270 - accuracy: 0.9952 - val_loss: 0.4877 - val_accuracy: 0.9122 Epoch 17⁄20 14⁄14 [] - 0s 29ms/step - loss: 0.0129 - accuracy: 0.9952 - val_loss: 1.3700 - val_accuracy: 0.8378 Epoch 18⁄20 14⁄14 [] - 0s 28ms/step - loss: 0.0229 - accuracy: 0.9905 - val_loss: 0.4864 - val_accuracy: 0.9122 Epoch 19⁄20 14⁄14 [] - 0s 28ms/step - loss: 0.0231 - accuracy: 0.9952 - val_loss: 0.3220 - val_accuracy: 0.9257 Epoch 20⁄20 14⁄14 [] - 0s 28ms/step - loss: 0.0331 - accuracy: 0.9881 - val_loss: 0.4932 - val_accuracy: 0.8919 七、自定义增强函数 import random
这是大家可以自由发挥的一个地方
def aug_img(image):seed (random.randint(0,9), 0)# 随机改变图像对比度stateless_random_brightness tf.image.stateless_random_contrast(image, lower0.1, upper1.0, seedseed)return stateless_random_brightness image tf.expand_dims(images[3]*255, 0) print(Min and max pixel values:, image.numpy().min(), image.numpy().max()) plt.figure(figsize(8, 8)) for i in range(9):augmented_image aug_img(image)ax plt.subplot(3, 3, i 1)plt.imshow(augmented_image[0].numpy().astype(uint8))plt.axis(off) 八、总结 数据增强类型 1.图像增强 随机旋转随机翻转随机缩放裁剪和调整大小 2.文本数据增强 字符级别在字符级别数据增强涉及更改文本数据中的单个字符。 短语级别在短语级别扩充数据涉及以连贯的方式修改短语或单词组。 3.音频数据增强 噪声注入我们可以通过简单地使用 numpy 向数据添加一些随机值来增加音频样本的数量。 转移时间转移时间的想法非常简单。它只是随机将音频向左/向右移动。 改变音高我们可以使用 librosa 函数改变音高。 改变速度我们可以使用 librosa 函数以固定速率拉伸音频时间序列。
- 上一篇: 南宁网站提升排名wordpress负载均衡上传附件
- 下一篇: 南宁网站推广公司网站推广都做什么内容
相关文章
-
南宁网站提升排名wordpress负载均衡上传附件
南宁网站提升排名wordpress负载均衡上传附件
- 技术栈
- 2026年03月21日
-
南宁网站设计运营凡客网登录
南宁网站设计运营凡客网登录
- 技术栈
- 2026年03月21日
-
南宁网站设计方法工程项目信息查询
南宁网站设计方法工程项目信息查询
- 技术栈
- 2026年03月21日
-
南宁网站推广公司网站推广都做什么内容
南宁网站推广公司网站推广都做什么内容
- 技术栈
- 2026年03月21日
-
南宁网站推广手段口碑好的做网站公司
南宁网站推广手段口碑好的做网站公司
- 技术栈
- 2026年03月21日
-
南宁网站制作设计东莞寮步镇网站
南宁网站制作设计东莞寮步镇网站
- 技术栈
- 2026年03月21日
