2018-01-28

最近完成了Coursera上两门课的学习:Introduction to data science with python和Applied machine learning in Pyhon。这两门课属于的范畴,主要介绍了Python有关机器学习的库:sklearnpandas。通过课程的学习,了解了这两个库的概要以及内部工作逻辑。其中,sklearn不同的机器学习方法的工作逻辑很相规整,用起来比较方便;而pandas作为sklearn的数据容器,其工作逻辑与数据本身的的特性强烈相关。这两门课的编程作业设计地十分棒,具有一定难度,可以充分磨练技术。里面有一些数据直接来源于维基百科的文本,需要做大量的数据清洗工作才能得到比较规整的数据,推荐给需要学习这两门的同学。

Introduction to data science in python 简要总结

这门课主要讲解了pandas库的使用。第一周课程简要介绍了Python,第二周介绍了Pandas的基本使用,第三种介绍了Pandas的高级使用,第四周介绍了概率相关知识以及t检验。主要知识点有:

  • Pandas主要提供两种数据结构,1D的Series和2D的DataFrame。二者在API上有很多相似的地方。使用.loc[行标签:, 列标签]来进行标签索引,使用iloc[行号 , 列号]进行普通的索引,可以使用bool索引。
  • pd.merge()
  • DataFrame.groupby(分组列标签)[列标签列表].agg({列标签:处理函数}),这种Pipeline真地非常方便
  • 从一个DataFrame中去掉另一个DataFrame(From StackOverflow)
pd.concat([df1, df2, df2]).drop_duplicates(keep=False)# 仅对少量数据适用
  • 对每三列求平均然后组合成新的DF(From StackOverflow)
pd.concat([df.ix[:,i:i+3].mean(axis=1) for i in range(0,len(df.columns),3)], axis=1)
  • scipy.stats.ttest_ind()

Appiled to machine learning with python 简要总结

课程主要介绍了监督学习的常见方法的大致原理和sklearn接口,从KNN入手,到linear models(linear regression,lasso,ridge,logistic),再到SVM,决策树,Bayes, Random Forests, GBDT, 最后讲了简单的NN。最后将非监督学习的内容作为选听,主要分为变换聚类变换主要讲了PCA, MDS, t-SNE,聚类主要就是k-means, Agglomerative Clustering和DBSCAN。主要知识点如下:

  • train_test_split()
  • fit(), predict()
  • GridSearchCV()
  • 通过核方法将将线性不可分转换为线性可分(数据的维度提升)


    2018-01-28_第1张图片
    image.png

你可能感兴趣的:(2018-01-28)