• 大数据vs计算机



    大数据有两个方向,一个是偏计算机的,另一个是偏经济的。你学过Java,所以你可以偏将计算机

    基础
    1. 读书《Introduction to Data Mining》,这本书很浅显易懂,没有复杂高深的公式,很合适入门的人。
    另外可以用这本书做参考《Data Mining : Concepts and Techniques》。第二本比较厚,也多了一些数据仓库方面的知识。
    如果对算法比较喜欢,可以再阅读《Introduction to Machine Learning》。
    当然,还有《机器学习:实用案例解析》

    2. 实现经典算法。有几个部分:
    a. 关联规则挖掘 (Apriori, FPTree, etc.)
    b. 分类 (C4.5, KNN, Logistic Regression, SVM, etc.)
    c. 聚类 (Kmeans, DBScan, Spectral Clustering, etc.)
    d. 降维 (PCA, LDA, etc.)
    e. 推荐系统 (基于内容的推荐,协同过滤,如矩阵分解等)
    然后在公开数据集上测试,看实现的效果。可以在下面的网站找到大量的公开数据集:UCI Machine Learning Repository/

    3. 熟悉几个开源的工具: Weka (用于上手); LibSVM, scikit-learn, Shogun

    4. 到 Kaggle: Go from Big Data to Big Analytics/ 上参加几个101的比赛,学会如何将一个问题抽象成模型,并从原始数据中构建有效的特征 (Feature Engineering).

    到这一步的话基本几个国内的大公司都会给你面试的机会。

    进阶篇:

    1. 读书,下面几部都是大部头,但学完进步非常大。
    a.《Pattern Recognition and Machine Learning》
    b.《The Elements of Statistical Learning》
    c.《Machine Learning: A Probabilistic Perspective》
    第一本比较偏Bayesian;第二本比较偏Frequentist;第三本在两者之间,但我觉得跟第一本差不多,不过加了不少新内容。当然除了这几本大而全的,还有很多介绍不同领域的书,例如《Boosting Foundations and Algorithms》,《Probabilistic Graphical Models Principles and Techniques》;以及理论一些的《Foundations of Machine Learning》,《Optimization for Machine Learning》等等。这些书的课后习题也非常有用,做了才会在自己写Paper的时候推公式。

    2. 读论文。包括几个相关会议:KDD,ICML,NIPS,IJCAI,AAAI,WWW,SIGIR,ICDM;以及几个相关的期刊:TKDD,TKDE,JMLR,PAMI等。跟踪新技术跟新的热点问题。当然,如果做相关research,这一步是必须的。例如我们组的风格就是上半年读Paper,暑假找问题,秋天做实验,春节左右写/投论文。

    3. 跟踪热点问题。例如最近几年的Recommendation System,Social Network,Behavior Targeting等等,很多公司的业务都会涉及这些方面。以及一些热点技术,例如现在很火的Deep Learning。

    4. 学习大规模并行计算的技术,例如MapReduce、MPI,GPU Computing。基本每个大公司都会用到这些技术,因为现实的数据量非常大,基本都是在计算集群上实现的。

    5. 参加实际的数据挖掘的竞赛,例如KDDCUP,或 Kaggle: Go from Big Data to Big Analytics/ 上面的竞赛。这个过程会训练你如何在一个短的时间内解决一个实际的问题,并熟悉整个数据挖掘项目的全过程。

    6. 参与一个开源项目,如上面提到的Shogun或scikit-learn还有Apache的Mahout,或为一些流行算法提供更加有效快速的实现,例如实现一个Map/Reduce平台下的SVM。这也是锻炼Coding的能力。(转)
    以下回答出自我之前的一个总结:想从事大数据、海量数据处理相关的工作,如何自学打基础?
    想做数据处理尤其是大数据量处理的相关工作必须兼具计算机科学基础和统计基础

    如果你有机会在学校学习这些课程或者自学,会对你的职业目标有帮助。

    基础中的基础:
    线性代数,概率论

    核心知识:
    数理统计
    预测模型
    机器学习

    计算机:
    • 数学软件:强大矩阵运算和优化功能的matlab,专而精的mathematica。
    • 语言:fortran(强大的计算语言,充分优化的现成代码),R(相比于matlab,java,c,R是个高富帅),python.
    • 可视化
    统计:时间序列分析
    应用回归分析
    多元统计分析

    强烈推荐:Distance Education § Harvard University Extension School 和哈佛的学生一起学习Data Science。

    课后问题的材料:CS109 Data Science

    相关问题:

    另外,这是我的知乎专栏,会不断更新数据科学的文章,欢迎关注。Introduction to DαΓαSciεηce - DαΓαSciεηce - 知乎专栏
  • 相关阅读:
    贪吃蛇大作战游戏攻略
    非对称加密算法RSA
    使用java库中的对称加密算法
    HMAC加密的消息摘要码
    md5和SHA校验码
    拼图可解的充要条件
    Base64编码
    java中文文档官方下载
    JAVA中对字符串的常见处理函数汇总
    测试工程师面试题
  • 原文地址:https://www.cnblogs.com/timssd/p/5568599.html
Copyright © 2020-2023  润新知