http://click.aliyun.com/m/1000006144/
以下是5个新的机器学习或与机器学习有关的项目,你可能还没有听说过,但是你不能错过!
本文将给大家介绍五个十分可怕但还鲜为人知的机器学习项目,囊括了一些潜在的机器学习的新想法。它们基本都是Python项目。我并不是故意这么选的,但毫无疑问有我自己偏好的影响在里面。以前我也介绍过许多各种各样的项目(R、Go、C++、Scala、Java等)。
我承诺很快会出一个R版的,并在评估这些项目时使用一些外部帮助(我得承认我不是很适应R生态)。
1. Live Loss Plot
不要闭着眼睛训练深度学习模型!要有耐心地去观察你的每一期训练!
这是一个由Piotr migdaet al提供的开源Python库,可以在Jupyter Notebook中为Keras、PyTorch和其他框架提供训练损失图像。当使用Keras时,Live Loss Plot是一个简单的回调函数。
代码如下:
fromlivelossplotimportPlotLossesKeras model.fit(X_train, Y_train, epochs=10, validation_data=(X_test, Y_test), callbacks=[PlotLossesKeras()], verbose=0)
2.Parfit
这个项目来自Jason Carpenter,他是旧金山大学数据科学硕士研究生,同时也是一名机器学习工程师。这个库可以将sklearn机器学习模型的拟合和评分情况并行化和可视化。一旦导入,您可以自由地使用bestFit()或其他函数。
代码如下:
fromparfitimportbestFit # Necessaryifyou wish to use bestFit # Necessaryifyou wish to run each step sequentiallyfromparfit.fitimport*fromparfit.scoreimport*fromparfit.plotimport*fromparfit.crossvalimport* 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, insteadofvalidation set] metric=roc_auc_score, greater_is_better=True, scoreLabel='AUC') print(best_model, best_score)
3.Yellowbrick
Yellowbrick是以一个“促进机器学习模型选择的可视化分析和诊断工具”。更确切地,Yellowbrick是一套视觉诊断的可视化工具,它扩展了scikit-learn API,以引导人们选择模型。简单地说,Yellowbrick将scikit-learn与matplotlib结合在一起,这是scikit-learn文档的传统优点,但它可以为您的模型生成可视化!
请参阅Github上的示例以及更多详细的文档。
4.textgenrnn
textgenrnn为文本生成任务带来了额外的抽象层,旨在让您“轻松在任何文本数据集上仅用几行代码就训练自己的文本生成神经网络”。
该项目建立在Keras上,并拥有以下功能:
一种新的神经网络架构,利用新技术作为注意力加权和跳跃嵌入来加速训练模型和提高模型质量。
能够在字符级或文字级上训练并生成文本。
能够配置RNN大小,RNN的层数,以及是否使用双向RNN。
能够在任何输入文本文件上进行训练,甚至包括大型文件。
能够在GPU上训练模型,然后用它们来生成含有CPU的文本。
能够在GPU上使用强大的CuDNN实现RNN,与典型的LSTM实现相比,这将大大加快训练时间。
Textgenrnn很容易上手及运行。