【AutoML框架】TransmogrifAI配置问题及简要分析

如上一篇所简要介绍,TransmogrifAI可以为机器学习开发者节省大量特征处理及建模时间,官方网站有安装配置过程,以下是我个人配置及调试TransmogrifAI过程中记录的问题及要点。

安装:

1、安装Scala2.12.*,尽量装12版本,13可能不支持

2、安装hadoop和spark2.2.*,同样注意版本号,安装gradle

3、下载TransmogrifAI的Release版本,目前是0.3.4

4、按官方安装步骤来。

问题1:已安装gradle,执行过程中还出现downloading gradle。如何不自动重复下载?

解决:TransmogrifAI/gradle/wrapper/gradle-wrapper.properties中将***url=http://***改为本文件夹下,同时将对应版本的gradle包放入本文件夹下(或统一为其他固定文件夹下)

问题2:出现git命令错误

解决:首先git init,然后将TransmogrifAI/gradle/version-properties.gradle中的组合git命令代码替换为固定值,如下:

【AutoML框架】TransmogrifAI配置问题及简要分析

上面为原代码,下面为修改后。

问题3:执行中如果报Xmxsize:4G类似的错误,可能是由于电脑内存不够spark分配所致。需要将工程种spark.gradle中的driverMemory,executorMemory设置成合适的值。

 

自动建模过程:

1、需要提供一个数据文件和数据文件说明avsc文件,具体格式参考helloworld里的avsc文件。

2、全部采用默认设置,全程不配置任何模型参数的流程

3、按官方文档里bootstrap your first project 里的步骤逐步进行,注意修改对应的参数。

4、数据文件去掉表头,因为自动生成的代码默认是使用noheader模式。据此,avsc文件应该要按顺序进行解释。

5、建一个**.answer在cli目录下,否则会报错

6、schema名与工程名区分开,否则后面会报错

7、score和evaluate模式下,需要修改主程序**.scala文件中的 val evaluator最后加上setProbabilityCol(prob)。

正常执行,模型就会生成在指定目录了,可loadModel()进行预测。

 

TransmogrifAI简单使用下来,能够方便的从数据直接生成模型,效果还不错。它提供了较为强大的数据处理和特征处理的能力,可以减轻此部分工作。但同时它内置的ModelSelector支持的机器学习算法还较少,超参数调节的方法为网格搜搜索,没有提供随机搜索算法。

当前版本适用简单问题的快速处理。