机器学习
生成模型 GAN 网络
目前GAN的身影已经出现在非常多商业应用中,比如换脸等。 生成对抗网络想解决的问题是机器学习中另外一种问题,主要区别于机器识别,生成网络不想识别物体,它想做的是凭借它的"想象力"创造物体。 这个实践教程将会带着你从入门到"放弃",深度体验一把GAN的魅力, 见证你的计算机创造新事物的过程。
强化学习 (Reinforcement Learning)
强化学习 Reinforcement Learning 是机器学习大家族中重要一员. 他的学习方式就如一个小 baby. 从对身边的环境陌生, 通过不断与环境接触, 从环境中学习规律, 从而熟悉适应了环境. 实现强化学习的方式有很多, 比如 Q-learning, Sarsa 等, 我们都会一步步提到. 我们也会基于可视化的模拟, 来观看计算机是如何学习的. 这一个 强化学习 教程 包括: 各种强化学习的方法.
进化算法 (Evolutionary-Algorithm)
进化算法 (Evolutionary Algorithm) 是机器学习的一个分支, 最著名的进化算法之一就是遗传算法 (Genetic Algorithm). 进化算法是受达尔文进化理论的启发. 想象自己的计算机里生长着一群族群, 而且他们还会根据 "适者生存, 不适者淘汰" 不停进化, 有没有感觉自己的电脑会像科幻片里面那样, 迟早有一天主宰地球. 哈哈, 不知道这么说你们会不会感兴趣, 反正我就是抱着这种想法学习这一类算法的. 我就想看看自己电脑里面的小生物能够进化到多聪明. 进化算法 教程 会介绍到主要的几个板块: 经典的遗传算法 (Genetic Algorithm), 神经进化 (NeuroEvolution), 进化策略 (Evolution Strategy)
Tensorflow
Tensorflow 是由 Google 团队开发的神经网络模块, 正因为他的出生, 也受到了极大的关注, 而且短短几年间, 就已经有很多次版本的更新. 这一个 Tensorflow 教程 从 Tensorflow 的基础结构开始讲解, 直到能手把手教你建立自己的第一个神经网络. 其中, 我们会不断用例子进行巩固. 比如学会用 Tensorflow 搭建卷积神经网络 CNN 来识别图片, 搭建循环神经网络 RNN 来预测不断变化的曲线. 学会使用 Tensorboard 可视化你所搭建的神经网络等等. 结合理论和实践, 这一套 Tensorflow 的教程是入门到高级的最佳途径了.
PyTorch
PyTorch 的开发/使用团队包括 Facebook, NVIDIA, Twitter 等, 都是大品牌, 算得上是 Tensorflow 的一大竞争对手. PyTorch 使用起来简单明快, 它和 Tensorflow 等静态图计算的模块相比, 最大的优势就是, 它的计算方式都是动态的, 这样的形式在 RNN 等模式中有着明显的优势. 不过各家有各家的优势/劣势, 我们要做的, 就是选择一个自己感兴趣的模块, 死命地学, 学好一个就够用了. PyTorch 教程 我们会从初级的使用方法开始介绍, 然后一步步往高级的神经网络形式走, 神经网络的基础一个也不落下.
Keras
Keras 是建立在 Tensorflow 和 Theano 之上的更高级的神经网络模块, 所以它可以兼容 Windows, Linux 和 MacOS 系统. 而且使用 Keras 来创建神经网络会要比 Tensorflow 和 Theano 来的简单, 因为他优化了很多语句. 所以, 如果图一个快, 容易, 那选择学习 keras 准没错. Keras 教程 包含了很多内容, 是以例子为主体. 对每一种神经网络形式都有例子为基础. 在 keras 教程中, 不会再涉及到神经网络的基本知识, 所以这是一个比较适合已经有一定 Theano 或 Tensorflow 经验的同学们学习. 在 Keras 教程中, 会要介绍如何搭建普通的分类和回归神经网络, CNN, RNN, Autoencoder 等.
SciKit-Learn
SciKit-Learn 又称 sklearn, 是众多机器学习模块中比较优秀的. 因为他汇集了太多太多机器学习的方法. 比如各种监督学习, 非监督学习, 半监督学习的方法. 所以说, sklearn 就像机器学习模块中的瑞士军刀. 在 sklearn 中, 你总能找到一个适合你的机器学习方法. sklearn 教程 包括: 介绍基本使用, 如何选择合适的机器学习方法, 通用的训练模式等等.