美文网首页
AI直通车 day02 笔记

AI直通车 day02 笔记

作者: 撸吗撸码 | 来源:发表于2023-05-12 14:28 被阅读0次

    创建一个项目

    • 新建一个文件夹即可
    • 新建一个虚拟环境
    • 查看已有的虚拟环境命令

    02 搭建环境

    • anaconda —Python
    • pycharm /vscode — IDE

    03虚拟环境

    • 进入anaconda安装目录-》选择anaconda prompt 就会进入专有的命令行下面的命令都是在这里面敲的
    • 查看已有的虚拟环境命令 :
    conda env list
    
    • 查看使用的Python版本命令(我的base 环境是3.8.2):
      python -V
    • 创建虚拟环境命令:
    conda create -n py310 python=3.10
    
    • 激活虚拟环境命令:
    conda activate py310  
    
    • 停止某个虚拟环境
    conda deactivate
    

    04 使用虚拟环境

    1.打开pycharm 窗口右下角点击Python 3.8 会弹出一个窗口,选择interpreter setting
    2.再打开的新窗口选择 add interpreter,选中你自己创建的环境即可

    框架Framework

    • 避免重复造轮子
    • 偏底层
      1.三剑客
      • 科学计算:numpy
      • 二维表处理: pandas
      • 数据可视化: matplotlib
    • 偏上层的框架:
      2.机器学习
      • sklearn 实现了所有机器学习算法!!!重点学习
      • 科研,学术,工业皆可
        3.深度学习
    • TensorFlow 老牌巨头,日薄西山
    • pytorch 学术新贵,日益火爆!!!重点学习
    • paddlepaddle 国内 百度,学好上面两个,就好转这个了
    • 只提供积木,本身并没有实现任何算法

    05 科学计算神器**

    • numpy
    • pytorch

    06 IDE选择问题

    • 传统开发 web,GUI,游戏开发,运维开发 pycharm,vscode首选,强大的提醒和补全
    • 数据科学 加载大量的数据 算法开发或调试:首选jupyter,玉皇大帝角色
    • 线上运行时:py文件
    • import torch (不是pytorch)

    07 编程要领

    • 现学现卖

    • Print 一切皆可打印

    • Type 一切皆可查看类型,因为是动态语言,

    • Dir 一切皆可查看功能

    • 查看文档

    • jupyter 快键键:

    • Tab键补全

    • shift + tab 查看方法文档

    • Ctrl+ / 注释反注释

    • Ctrl + enter

    • shift+ enter

    • 代码模式 enter

    • 命令模式 esc

    • 命令模式下 M markdown Y code模式

    • 命令模式下 b 下面加一个cell,a上面加一个cell

    • dd 删除当前cell

    08 pytorch 安装

    官网 https://pytorch.org/get-started/locally/

    注意电脑系统不同,生成的命令是不同的。

    选择 stable2.0.1 OS选Mac package 选 conda language 选 python

    compute platform 选default ,如果有独立显卡可以选cuda打头的

    然后复制下面的代码即可

    MPS acceleration is available on MacOS 12.3+

    conda install pytorch::pytorch torchvision torchaudio -c pytorch

    09 科学计算

    • 看得懂公式
    • 把公式变成代码
    • 矢量计算
    • 矩阵计算

    10 矢量

    • 标量 scalar 单个数 维度为0

    • 向量 矢量 : vector 一串数 一维数组 维度为1

    • 矩阵 matrix 【m,n】一个面数 二维数组 维度为2

    • 张量 tensor 【N,C,H,W】 高维数组

    11 易混概念

    • 向量,矢量,一维数组
    • 向量的模,向量的长度,向量的二范数
    • 向量的内积,向量的点乘积,@

    12 arr = np.array([1,2,3])

    • arr **2 即可计算每个元素的平方

    • (arr**2).sum()可以对前面的数组求和

    • np.sqrt() 求开方

    • np.linalg.norm(arr) 求数组的二范数

    • ab内积 == a 的模乘以b的模 乘以cos ab的夹角,

    • Numpy下两个向量求内积方式有3种

    • a*b 之后对结果进行遍历相加

    • 直接用 a@b求

    • 直接用a.dot(b)求

    • 元素级相乘 a*b 是一个跟ab一样长的向量。

    • 向量相乘 向量点乘积 是个数 a@b

    • 求两个向量相似度

    • cosine_similarity_a_b = a@b/np.linalg.norm(a)/np.linalg.norm(b)

    • 矩阵相乘 前提条件 矩阵a如果是M行N列,矩阵b必须是N行K列。

    • 矩阵相乘的过程其实就是矩阵a每行和b每列的内积。

    • 快速的生成一个矩阵

    • 1. 用np.array(list(range(12))) 产生一个一维数组

    • 2. 再用 arr.reshape(3,4)生成一个3行4列的二维矩阵,后面的4可以写成-1,这样计算机会自己算几列。

    • 矩阵相乘: 矩阵a @ 矩阵b即可,计算前必须验证两个矩阵是否可以相乘

    • 两个矩阵的ndim方法返回值必须是2,第一个矩阵的列必须和第二矩阵的行必须相同

    • ndim 返回数组的纬度,是一个数字

    • Shape 表示各维度的大小,返回的是一个元组

    • Dtype 数组数据类型,比如 int32

    • astype astype:转换数组的数据类型。

    • int32 --> float64 完全ok

    • float64 --> int32 会将小数部分截断

    • string --> float64 如果字符串数组表示的全是数字,也可以用astype转化为数值类型

    相关文章

      网友评论

          本文标题:AI直通车 day02 笔记

          本文链接:https://www.haomeiwen.com/subject/xuuesdtx.html