课程分类

课程介绍
课程目录
用户评论
课程介绍
课程目录
用户评论

你将获得

  • 掌握某些知识点
  • 学会某些技巧(或思路)

教学服务

  • icon

    1v1专属答疑服务

  • icon

    BAT专家面试辅导

讲师介绍

  • 出身于C++,成长于.NET,投身过IoT,捣腾过互联网,现在被大数据和机器学习所吸引。在微软做过码农,在创业公司当过合伙人;在项目中摸爬滚打过多年,跟同学们谈笑风生到现在。让我们成为学习路上的合伙人,我们一起用最短的时间,最轻松的方式,最贴近本质的做法,完成你的入行之旅

  • 课程详情


    简介

    学习目标
    1. 掌握机器学习中必备的数学知识
    2. 理解并实现基本的机器学习算法
    3. 能够使用典型的机器学习库完成分类、回归和预判
    4. 掌握机器学习模型的评价和优化方法
    5. 了解和掌握深度神经网络的设计方法
    6. 能够使用TensorFlow实现典型的深度神经网络和卷积神经网络


    适用人群
    对机器学习、深度学习等感兴趣的技术人员


    预备知识
    熟练掌握Python基本语法


    工具和平台
    1. Visual Studio Code
    2. Python及:numpy, scipy,scikit-sklearn, matplotlib
    3. TensorFlow for Python
    4. 数据集:MNIST、CIFAR-10


    课程安排
    计划共14次课,每次课程约90分钟

    第一次课:数学基础(一)

    1. numpy.array的典型操作
    2. 向量、矩阵的dot和*运算
    3. 概率分布和随机数
    4. 函数求导及链式法则
    5. 求和公式导数计算
    6. 拉格朗日乘子法和凸优化

    第二次课:数学基础(二)

    1. 矩阵和向量的求导
    2. 链式求导法则的图解法
    3. 求解函数极值
    4. 基本统计量:偏差、方差、标准差、协方差、相关性

    第三次课:数学基础(三)

    1. 最小二乘法推导及Analytic解法
    2. 最小二乘法的Numeric解法:梯度下降算法

    第四次课:数学基础(四)

    1. 梯度下降算法的Python实现
    2. 使用scipy.optimize求解普通函数极值
    3. 使用sklearn.linear_model.LinearRegression实现一元线性回归
    4. 一元线性回归的梯度下降算法实现

    第五次课:线性回归

    1. 线性回归的效能评价
    2. 使用sklearn.linear_model.LinearRegression实现多元线性回归
    3. 多元线性回归的梯度下降算法实现
    4. 数据归一化(Normalization)
    5. 超参数:Learning Rate
    6. 非线性拟合(高阶拟合)的线性处理
    7. 欠拟合(Underfit)和过拟合(Overfit)

    第六次课:逻辑回归

    1. 使用sklearn.linear_model.LogisticRegression实现二分类
    2. 二分类的梯度下降算法实现
    3. 模型正则化(Regularization)
    4. 使用sklearn.linear_model.LogisticRegression实现多分类
    5. 多分类的自定义实现
    6. Validation和Cross Validation
    7. 超参数:λ
    8. 模型效能评价:F1 Score

    第七次课:凸优化

    1. 距离计算
    2. 拉格朗日乘子法
    3. 凸优化
    4. 使用scipy.optimize求解带约束条件的函数极值
    5. 使用sklearn.svm实现二分类
    第八次课:SVM
    1. SVM的优化目标
    2. 使用凸优化求解SVM目标函数
    3. 核函数的作用和工作方式
    4. 使用sklearn.svm实现多分类
    第九次课:KNN和K-Means
    1. 使用sklearn.neighbors.NearestNeighbors实现分类
    2. KNN的自定义实现
    3. 超参数:K
    4. 交叉验证
    5. 使用sklearn.cluster.KMeans实现无监督学习的分类
    6. K-Means算法的自定义实现
    7. 条件概率和贝叶斯公式
    8. 朴素贝叶斯方法与文本信息分类
    第十次课:贝叶斯分类、决策树和随机森林
    1. 朴素贝叶斯文本信息分类的自定义实现
    2. 使用sklearn.naive_bayes.MultinomialNB实现文本信息分类
    3. 信息熵的计算
    4. ID3算法的Step By Step演示
    5. 决策树特征的预处理:数值化和向量化
    6. 决策树的自定义实现
    7. 使用sklearn.tree.DecisionTreeClassifier
    8. 使用sklearn.ensemble.RandomForestClassifier
    9. 随机森林的自定义实现
    10. 神经网络的前向传播计算
    11. 使用sklearn.neural_network.MLPClassifier实现手写图片分类识别
    第十一次课:图像分类基础
    1. cifar-10数据集
    2. mini-batch
    3. SVM线性分类器
    4. Softmax线性分类器
    5. 神经网络反向传播算法原理
    6. 神经网络的自定义实现
    第十二次课:多层神经网络要点
    1. 激活函数
    2. 数据预处理考量
    3. 权重初始化考量
    4. Batch Normalization
    5. 梯度更新策略
    6. Dropout
    7. 使用模块化的全连接神经网络实现图像分类
    第十三次课:卷积神经网络
    1. 图像过滤器
    2. 卷积层计算
    3. 池化层计算
    4. 全连接层
    5. 典型图像分类卷积神经网络的层次结构
    6. 卷积神经网络的自定义实现
    第十四次课:TensorFlow
    1. TensorFlow使用入门
    2. 使用TensorFlow完成典型的机器学习任务
    3. 使用TensorFlow简化卷积神经网络代码编写
    4. 使用卷积神经网络实现图像分类