机器学习实战(一):The Machine Learning Landscape

Types of Machine Learning Systems

  • supervised, unsuper‐vised, semisupervised, and Reinforcement Learning
  • online ,batch learning
  • instance-based , model-based learning

Supervised/Unsupervised Learning

Supervised learning

典型:分类任务,预测变量
算法:

  • k-Nearest Neighbors(K-近邻算法)
  • Linear Regression(线性回归)
  • Logistic Regression(逻辑回归)
  • Support Vector Machines (SVMs)(支持向量机,SVM)
  • Decision Trees and Random Forests(决策树和随机森林)
  • Neural networks(神经网络)

Unsupervised learning

训练数据是未经标记的
常见任务:异常检测(anomaly detection)、 关联规则学习(Association rule learning)、可视化和降维(Visualization and dimensionality reduction)、 聚类(Clustering)
算法:
聚类算法(Clustering):

  • k-Means(K-平均算法)
  • Hierarchical Cluster Analysis (HCA)(分层聚类分析)
  • Expectation Maximization(最大期望算法)

可视化和降维(Visualization and dimensionality reduction):特征提取

  • Principal Component Analysis (PCA)(主成分分析)
  • Kernel PCA(核主成分分析)
  • Locally-Linear Embedding (LLE)(局部线性嵌入)
  • t-distributed Stochastic Neighbor Embedding (t-SNE)(t-分布随机近邻潜入)

关联规则学习(Association rule learning)

  • Apriori
  • Eclat

semisupervised Learning

大量未标记数据,少量标记数据,大部分为监督式与无监督式结合:DBN

Reinforcement Learning

观察环境,做出选择,得到回报,自学习好的策略,获得最大回报

Batch and Online Learning

Batch Learning

必须使用所有可用数据训练,离线完成,需要大量资源与时间,不能增量,可轻易自动化。

Online Learning

小批量,单独训练小组数据,逐渐持续提供数据,离线完成(叫增量学习更为合适),学习度(适应数据变化速度)

Instance-Based Versus Model-Based Learning

Instance-Based Learning

系统先记住学习实例,在通过相似度学习模型泛化

Model-Based Learning

先构建模型,再使用模型预测
大体步骤:学习数据,选择模型,使用训练数据训练,使用模型预测新数据

Main Challenges of Machine Learning

Insuffcient Quantity of Training Data(训练数据数量不足)
Nonrepresentative Training Data
Poor-Quality Data :异常数据,丢弃或手动修复;实例缺少部分特征,忽略,或补充(中位数),或分开训练
Irrelevant Features:特征选择,特征提取,手机新数据创造新特征
Overfitting the Training Data(训练数据过度拟合):简化模型(选择较少参数模型,减少属性,约束模型:正则化(超参数控制程度)),收集更多数据,减少噪声(修复错误,消除异常值)
Underfitting the Training Data(训练数据拟合度不足):选择带更多参数、更强大模型;给学习算法提供更好特征集;减少模型约束(减少正则化超参数)

Testing and Validating

数据分成训练集(train set)和测试集(test set),generalization error (or out-of-sample error):新场景误差率。
如果训练误差很低,泛化误差很高:过拟合。
再单独分出来一个保留集合(validation set)验证集,训练集训练多个模型,验证集选择最好参数和模型,用测试集得到泛化误差估值。
避免验证集浪费太多数据:cross-validation

你可能感兴趣的:(机器学习,机器学习,python)