"Python小白逆袭大神"飞桨课程体会及知识点总结
整体课程体会
1、整体课程的知识密度还是比较大的,包含python基础知识(含numpy\pandas\matplotlib\PIL)、爬虫、深度学习(nlp、cv)概述、PaddleHub体验与应用、EasyDL体验等内容。
2、课程设计比较用心,知识点循序渐进,小白也可以跟得上,关键是不拖节奏。
3、可以在 AI studio上白嫖算力完成作业,会有人给作业打分,毕业好多年没有“写作业-批作业”的体验了(白嫖是我快乐)
4、如果一定要找缺点,就是AI studio环境偶尔不稳定,小白配置起来可能需要花费一些时间。
知识点总结
下面主要记录一下学到的比较重要的知识点:
- Python随机数
调用 random.random() 生成随机数时,每一次生成的数都是随机的。但是,当预先使用 random.seed(x) 设定好种子之后,其中的 x 可以是任意数字,此时使用 random() 生成的随机数将会是同一个。
import random
ran = random.random()
>>0.5835577694694334
ran = random.randint(1,20)
>>8
print ("------- 设置种子 seed -------")
random.seed(10)
print ("Random number with seed 10 : ", random.random())
>>Random number with seed 10 : 0.46300735781502145
# 生成同一个随机数
random.seed(10)
print ("Random number with seed 10 : ", random.random())
>>Random number with seed 10 : 0.46300735781502145
- PIL库
from PIL import Imag
im = Image.open('test.png') # 读取图片
im.rotate(45).show() # 将图片旋转,并用系统自带的图片工具显示图片
im.thumbnail(size, Image.ANTIALIAS) # 等比例缩放
#Image.convert(mode=None,matrix=None,dither=None,palette=0,color=256)
#使用下面的方式也可以实现图像的灰度化处理
im = im.convert("L")
#常用的图片的融合或者合成函数如下
PIL.image.alpha_composite(im1,im2)
PIL.image.blend(im1,im2,alpha)
PIL.Image.composite(im1,im2,mask)
#上述方法要求im1和im2的mode和size要一致;alpha代表图片占比的意思;mask是mode可以为”1”;”L”或者”RGBA”的size和im1、im2一致的
-
数据增强(Data Augmentation)
深层神经网络一般都需要大量的训练数据才能获得比较理想的结果。在数据量有限的情况下,可以通过数据增强(Data Augmentation)来增加训练样本的多样性,提高模型鲁棒性。 -
PaddleHub深度学习 挠头三连体验
PaddleHub的CV、NLP模型体验还是不错的,后续深入研究一下。
作业总结
- 遍历文件夹查找文件os.walk()
#导入OS模块
import os
#待搜索的目录路径
path = "Day1-homework"
#待搜索的名称
filename = "2020"
#定义保存结果的数组
result = []
def findfiles():
#在这里写下您的查找文件代码吧!
n=0
for root ,dirs, files in os.walk(path):
for i in files :
if i.find(filename) >= 0 :
n += 1
result.append([n,root,i])
print ([n,root+"/"