Chinaunix首页 | 论坛 | 博客
  • 博客访问: 389818
  • 博文数量: 273
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 1430
  • 用 户 组: 普通用户
  • 注册时间: 2018-02-02 15:57
文章分类

全部博文(273)

文章存档

2018年(273)

我的朋友

分类: 大数据

2018-06-19 15:41:16

 随着人工智能和深度学习的兴起,网络上存在的学习资源以及开源项目也越来越多。本文精选了的五个项目,都含有潜在新的机器学习想法,且全都是用Python实现。下面简单介绍
       下这五个项目,感兴趣的可以自己上手复现一下,说不定会对自己的项目产生一些新的想法。


1


       在训练模型的时候最好不要只关注最终的结果,耐心观察整个训练过程,查看每个epoch的训练结果,弄清楚模型的训练曲线是否正常,是否出现过拟合等现象。
       PiotrMigda?等人开发了一个Python源代码包,可以为Keras,PyTorch和其他框架提供实时训练损失的曲线。
       当使用的是Keras深度学习框架时,实时损失曲线图可以简单地通过以下回调函数调用:
from livelossplot import PlotLossesKeras
model.fit(X_train, Y_train,
          epochs=10,
          validation_data=(X_test, Y_test),
          callbacks=[PlotLossesKeras()],
          verbose=0)

       该项目由Jason Carpenter开发,他是旧金山大学数据科学专业的硕士,目前是Manifold的机器学习实习生。
       该项目是用于并行化Sklearn机器学习模型的拟合和灵活评分的数据包,具有可视化的功能。一旦导入该数据包,就可以自由使用bestFit()或其他功能。

2


代码示例:
from parfit import bestFit # Necessary if you wish to use bestFit # Necessary if you wish to run each step sequentially from parfit.fit import * from parfit.score import * from parfit.plot import * from parfit.crossval import *

grid = { 'min_samples_leaf': [1, 5, 10, 15, 20, 25], 'max_features': ['sqrt', 'log2', 0.5, 0.6, 0.7], 'n_estimators': [60], 'n_jobs': [-1], 'random_state': [42]
}
paramGrid = ParameterGrid(grid)

best_model, best_score, all_models, all_scores = bestFit(RandomForestClassifier(), paramGrid,
                                                    X_train, y_train, X_val, y_val, # nfolds=5 [optional, instead of validation set] metric=roc_auc_score, greater_is_better=True, 
                                                    scoreLabel='AUC')

print(best_model, best_score)

       Yellowbrick是一款促进机器学习模型选择的视觉分析和诊断工具。具体来说,Yellowbrick是一套名为“展示台(Visualizers)”的视觉诊断工具,它扩展了scikit-learn API,以便人为地指导模型选择过程。简而言之,Yellowbrick将scikit-learn与matplotlib结合在一起,且具有模型生成可视化的效果。


阅读(923) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~