Giter Site home page Giter Site logo

zhuohuwu0603 / ailearning Goto Github PK

View Code? Open in Web Editor NEW

This project forked from lizhi3158/ailearning

0.0 1.0 0.0 179.19 MB

AI => Python + MachineLearning(Sklearn) + DeepLearning(PyTorch)

License: GNU General Public License v3.0

Python 3.64% Perl 0.01% Shell 0.01% HTML 3.65% Jupyter Notebook 92.69%

ailearning's Introduction

AILearning (Geekhoo 组织)

简介:专注于AI领域的资源共享和整合

编程入门学习建议

具体的做法:

1、选择一个方向:产品、实施、测试、运维、编程、架构、算法、人工智能。
2、选择一门编程语言:Shell、JAVA、Python、C、C++、C#、PHP、GO
3、然后计算机基础:可以看看《计算机导论》和《计算机操作系统》,《计算机网络》《XXX编程语言教学指南》
4、然后开始着手你想要做的项目:Web前端? Web前端?自动化运维?数据分析?数据挖掘?
5、然后就开始去横冲直撞的找工作和选择Offer

说完这些干货后,我作为过来人想告诉你:
    书还是别看了,网上去搜索《某某技术》的视频教程??
    视频网站:百度搜索?网易云课堂?淘宝?慕课网?51CTO?哔哩哔哩?传智播客?

最后送你一句话:加油!!  路可远可近,但愿遇见都是好人一枚!

项目开发流程

1.理解实际问题,抽象为机器学习能处理的数学问题

    理解实际业务场景问题是机器学习的第一步,机器学习中特征工程和模型训练都是非常费时的,深入理解要处理的问题,能避免走很多弯路。理解问题,包括明确可以获得的数据,机器学习的目标是分类、回归还是聚类。如果都不是的话,考虑将它们转变为机器学习问题。参考[机器学习分类](http://www.cnblogs.com/wxquare/p/5281753.html)能帮助从问题提炼出一个合适的机器学习方法。

2.获取数据

    获取数据包括获取原始数据以及从原始数据中经过特征工程从原始数据中提取训练、测试数据。机器学习比赛中原始数据都是直接提供的,但是实际问题需要自己获得原始数据。“ 数据决定机器学习结果的上限,而算法只是尽可能的逼近这个上限”,可见数据在机器学习中的作用。总的来说数据要有具有“代表性”,对于分类问题,数据偏斜不能过于严重,不同类别的数据数量不要有数个数量级的差距。不仅如此还要对评估数据的量级,样本数量、特征数量,估算训练模型对内存的消耗。如果数据量太大可以考虑减少训练样本、降维或者使用分布式机器学习系统。

3.特征工程

    特征工程是非常能体现一个机器学习者的功底的。特征工程包括从原始数据中特征构建、特征提取、特征选择,非常有讲究。深入理解实际业务场景下的问题,丰富的机器学习经验能帮助我们更好的处理特征工程。特征工程做的好能发挥原始数据的最大效力,往往能够使得算法的效果和性能得到显著的提升,有时能使简单的模型的效果比复杂的模型效果好。数据挖掘的大部分时间就花在特征工程上面,是机器学习非常基础而又必备的步骤。数据预处理、数据清洗、筛选显著特征、摒弃非显著特征等等都非常重要,建议深入学习。

4.模型训练、诊断、调优

    现在有很多的机器学习算法的工具包,例如sklearn,使用非常方便,真正考验水平的根据对算法的理解调节参数,使模型达到最优。当然,能自己实现算法的是最牛的。模型诊断中至关重要的是判断过拟合、欠拟合,常见的方法是绘制学习曲线,交叉验证。通过增加训练的数据量、降低模型复杂度来降低过拟合的风险,提高特征的数量和质量、增加模型复杂来防止欠拟合。诊断后的模型需要进行进一步调优,调优后的新模型需要重新诊断,这是一个反复迭代不断逼近的过程,需要不断的尝试,进而达到最优的状态。

5.模型验证、误差分析

    模型验证和误差分析也是机器学习中非常重要的一步,通过测试数据,验证模型的有效性,观察误差样本,分析误差产生的原因,往往能使得我们找到提升算法性能的突破点。误差分析主要是分析出误差来源与数据、特征、算法。

6.模型融合

    一般来说实际中,成熟的机器算法也就那么些,提升算法的准确度主要方法是模型的前端(特征工程、清洗、预处理、采样)和后端的模型融合。在机器学习比赛中模型融合非常常见,基本都能使得效果有一定的提升。这篇[博客](http://www.cnblogs.com/wxquare/p/5440664.html)中提到了模型融合的方法,主要包括一人一票的统一融合,线性融合和堆融合。

7.上线运行 

    这一部分内容主要跟工程实现的相关性比较大。工程上是结果导向,模型在线上运行的效果直接决定模型的成败。 不单纯包括其准确程度、误差等情况,还包括其运行的速度(时间复杂度)、资源消耗程度(空间复杂度)、稳定性是否可接受。这些工作流程主要是工程实践上总结出的一些经验。并不是每个项目都包含完整的一个流程。这里的部分只是一个指导性的说明,只有大家自己多实践,多积累项目经验,才会有自己更深刻的认识。

面向0基础编程的同学,请仔细Coding

面向基础编程转型做 MachineLearning,请仔细Coding

第一部分-分类 第二部分 回归 第三部分 无监督学习 第四部分 其他工具
1」 机器学习基础 8」 预测数值型数据:回归 10」 k-means聚类 13」 利用PCA来简化数据
2」 k-近邻算法 9」 树回归 11」 使用Apriori算法进行关联分析 14」 利用SVD简化数据
3」 决策树 12」 使用FP-growth算法发现频繁项集 15」 大数据与MapReduce
4」 朴素贝叶斯
5」 Logistic回归
6」 支持向量机
7」 集成方法-随机森林、AdaBoost

面向 MachineLearning 转型做 DeepLearning,请仔细Coding

代码地址:高级-PyTorch/tutorial-contents

PyTorch 简介

PyTorch 神经网络基础

建造第一个神经网络

高级神经网络结构

高阶内容

项目名称 文档地址 代码地址 作者信息 更新时间
手写数字识别 文档 代码 片刻 2017-12-16
房屋预测 文档 代码 忧郁一休 2017-12-16

ailearning's People

Contributors

jiangzhonglian avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.