{ "info": { "author": "Ram Seshadri", "author_email": "", "bugtrack_url": null, "classifiers": [ "Operating System :: OS Independent", "Programming Language :: Python :: 3" ], "description": "# Auto_ViML\n\n## Automatically Build Variant Interpretable ML models fast!\n #########################################################################################################\n ############# This is not an Officially Supported Google Product! #########################\n #########################################################################################################\n #### Automatically Build Variant Interpretable Machine Learning Models (Auto_ViML) ######\n #### Developed by Ramadurai Seshadri ######\n ###### Version 0.61 #########\n ##### Improved downsampling method for Imbalanced data. Aug 17,2019 #########\n #########################################################################################################\n #Copyright 2019 Google LLC #######\n # #######\n #Licensed under the Apache License, Version 2.0 (the \"License\"); #######\n #you may not use this file except in compliance with the License. #######\n #You may obtain a copy of the License at #######\n # #######\n # https://www.apache.org/licenses/LICENSE-2.0 #######\n # #######\n #Unless required by applicable law or agreed to in writing, software #######\n #distributed under the License is distributed on an \"AS IS\" BASIS, #######\n #WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. #######\n #See the License for the specific language governing permissions and #######\n #limitations under the License. #######\n #########################################################################################################\n #### Auto_ViML was designed for building a High Performance Interpretable Model With Fewest Vars. ###\n #### The \"V\" in Auto_ViML stands for Variant because it tries Multiple Models and Multiple Features ###\n #### to find the Best Performing Model for any data set.The \"i\" in Auto_ViML stands \" Interpretable\"###\n #### since it selects the fewest Features to build a simpler, more interpretable model. This is key. ##\n #### Auto_ViML is built mostly using Scikit-Learn, Numpy, Pandas and Matplotlib. Hence it should run ##\n #### on any Python 2 or Python 3 Anaconda installations. You won't have to import any special ####\n #### Libraries other than \"SHAP\" library for SHAP values which provides more interpretability. #####\n #### But if you don't have it, Auto_ViML will skip it and show you the regular feature importances. ###\n #########################################################################################################\n #### INPUTS: ###\n #########################################################################################################\n #### train: could be a datapath+filename or a dataframe. It will detect which is which and load it.####\n #### test: could be a datapath+filename or a dataframe. If you don't have any, just leave it as \"\". ### \n #### submission: must be a datapath+filename. If you don't have any, just leave it as empty string.#### \n #### target: name of the target variable in the data set. ####\n #### sep: if you have a spearator in the file such as \",\" or \"\\t\" mention it here. Default is \",\". ####\n #### scoring_parameter: if you want your own scoring parameter such as \"f1\" give it here. If not, #####\n #### it will assume the appropriate scoring param for the problem and it will build the model.#####\n #### hyper_param: Tuning options are GridSearch ('GS') and RandomizedSearch ('RS'). Default is 'GS'.###\n #### feature_reduction: Default = 'True' but it can be set to False if you don't want automatic ####\n #### feature_reduction since in Image data sets like digits and MNIST, you get better #####\n #### results when you don't reduce features automatically. You can always try both and see. #####\n #### KMeans_Featurizer = True: Adds a cluster label to features based on KMeans. Use for Linear. #####\n #### False (default) = For Random Forests or XGB models, leave it False since it may overfit.####\n #### Boosting Flag: you have 3 possible choices (default is False): #####\n #### None = This will build a Linear Model #####\n #### False = This will build a Random Forest or Extra Trees model (also known as Bagging) #####\n #### True = This will build an XGBoost model #####\n #### Add_Poly: Default is 0. It has 2 additional settings: #####\n #### 1 = Add interaction variables only such as x1*x2, x2*x3,...x9*10 etc. ##### \n #### 2 = Add Interactions and Squared variables such as x1**2, x2**2, etc. #####\n #### Stacking_Flag: Default is False. If set to True, it will add an additional feature which #####\n #### is derived from predictions of another model. This is used in some cases but may result#####\n #### in overfitting. So be careful turning this flag \"on\". #####\n #### Binning_Flag: Default is False. It set to True, it will convert the top numeric variables #####\n #### into binned variables through a technique known as \"Entropy\" binning. This is very #####\n #### helpful for certain datasets (especially hard to build models). #####\n #### Imbalanced_Flag: Default is False. If set to True, it will downsample the \"Majority Class\" #####\n #### in an imbalanced dataset and make the \"Rare\" class at least 5% of the data set. This #####\n #### the ideal threshold in my mind to make a model learn. Do it for Highly Imbalanced data.#####\n #### verbose: This has 3 possible states: #####\n #### 0 = limited output. Great for running this silently and getting fast results. #####\n #### 1 = more charts. Great for knowing how results were and making changes to flags in input. #####\n #### 2 = lots of charts and output. Great for reproducing what Auto_ViML does on your own. #####\n #########################################################################################################\n #### OUTPUTS: #####\n #########################################################################################################\n #### model: It will return your trained model #####\n #### features: the fewest number of features in your model to make it perform well #####\n #### train_modified: this is the modified train dataframe after removing and adding features #####\n #### test_modified: this is the modified test dataframe with the same transformations as train #####\n ################# A D D I T I O N A L N O T E S ###########\n #### Finally, it writes your submission file to disk in the current directory called \"mysubmission.csv\"\n #### This submission file is ready for you to show it clients or submit it to competitions. ##### \n #### If no submission file was given but as long as you give it a test file name, it will create #####\n #### a submission file for you named \"mySubmission.csv\". #####\n #### Auto_ViML works on any Multi-Class, Multi-Label Data Set. So you can have many target labels ##### \n #### You don't have to tell Auto_ViML whether it is a Regression or Classification problem. #####\n #### Suggestions for a Scoring Metric: #####\n #### If you have Binary Class and Multi-Class in a Single Label, Choose Accuracy. It will ######\n #### do very well. If you want something better, try roc_auc even for Multi-Class which works. ######\n #### You can try F1 or Weighted F1 if you want something complex or for Multi-Class. ######\n #### Note that For Imbalanced Classes (<=5% classes), it automatically adds Class Weights. ######\n #### Also, Note that it handles Multi-Label automatically so you can send Train data ######\n #### with multiple Labels (Targets) and it will automatically predict for each Label. ######\n #### Finally this is Meant to Be a Fast Algorithm, so use it for just quick POCs ######\n #### This is Not Meant for Production Problems. It produces great models but it is not Perfect! ######\n ######################### HELP OTHERS! PLEASE CONTRIBUTE! OPEN A PULL REQUEST! ##########################\n #########################################################################################################\n\n_Prerequsites_:\n* [Anaconda](https://docs.anaconda.com/anaconda/install/)\n\nTo clone the Auto_ViML, it is better to create a new environment, and install required dependencies:\n\nTo install from PyPi:\n\n```bash\nconda create -n python=3.7 anaconda\nconda activate # ON WINDOWS: `source activate ` \npip install autoviml\n```\n\nTo install from source:\n\n```bash\ncd \ngit clone git@github.com:AutoViML/Auto_ViML.git \n# or download and unzip https://github.com/AutoViML/Auto_ViML/archive/master.zip\nconda create -n python=3.7 anaconda\nconda activate # ON WINDOWS: `source activate ` \ncd Auto_ViML\npip install -r requirements.txt\n```\n

DOWNLOAD / INSTALLATION

    \n
  1. Copy or download this entire directory of files to any local directory using git clone or any download methods.

RUN AUTO_ViML

  1. In the same directory, open a Jupyter Notebook and use this line to import the .py file:
    from autoviml.Auto_ViML import Auto_ViML

  2. Load a data set (any CSV or text file) into a Pandas dataframe and split it into Train and Test dataframes. If you don't have a test dataframe, you can simple assign the test variable below to '' (empty string):

Finally, call Auto_ViML using the train, test dataframes and the name of the target variable in data frame. That's all.

model, features, trainm, testm = Auto_ViML(train, target, test, sample_submission, hyper_param='GS', feature_reduction=True,\n scoring_parameter='weighted-f1', KMeans_Featurizer=False, Boosting_Flag=False, Binning_Flag=False,\n Add_Poly=False, Stacking_Flag=False,Imbalanced_Flag=False, verbose=0) \n

DISCLAIMER

\u201cThis is not an official Google product\u201d.

LICENSE

Licensed under the Apache License, Version 2.0 (the “License”).

\n \n\n\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/AutoViML/Auto_ViML", "keywords": "", "license": "Apache License 2.0", "maintainer": "", "maintainer_email": "", "name": "autoviml", "package_url": "https://pypi.org/project/autoviml/", "platform": "", "project_url": "https://pypi.org/project/autoviml/", "project_urls": { "Homepage": "https://github.com/AutoViML/Auto_ViML" }, "release_url": "https://pypi.org/project/autoviml/0.0.7/", "requires_dist": [ "ipython", "jupyter", "xgboost", "pandas", "matplotlib", "seaborn", "scikit-learn" ], "requires_python": "", "summary": "Automatically Build Variant Interpretable ML models fast!", "version": "0.0.7" }, "last_serial": 5701115, "releases": { "0.0.1": [ { "comment_text": "", "digests": { "md5": "82f2701669702b487de95ce5c1d467ad", "sha256": "a845bd212ab8883b908fe16d3f8360b671758f21ebd87df6bdd12bde448572dc" }, "downloads": -1, "filename": "autoviml-0.0.1-py3-none-any.whl", "has_sig": false, "md5_digest": "82f2701669702b487de95ce5c1d467ad", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 54674, "upload_time": "2019-08-13T00:10:16", "url": "https://files.pythonhosted.org/packages/2f/47/8329bf40a6a074f72e1d698086ff7d5858a96ed43d98a4f5353e0a54fdee/autoviml-0.0.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "56e322d72042d3e181a5ace8f06150c6", "sha256": "a255ecd5ada24af9760afa2751557a01227e2b2a662082be388db88c57b9ad10" }, "downloads": -1, "filename": "autoviml-0.0.1.tar.gz", "has_sig": false, "md5_digest": "56e322d72042d3e181a5ace8f06150c6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 51625, "upload_time": "2019-08-13T00:10:19", "url": "https://files.pythonhosted.org/packages/30/b7/455db6d3d842d695eb1e1c1e1cc2bbe5d1b65ed77878e5ce70d55c3c5bbd/autoviml-0.0.1.tar.gz" } ], "0.0.2": [ { "comment_text": "", "digests": { "md5": "f3b484861ccfc8533d525ca1258b884d", "sha256": "8269414297e60b0243d758b5bcc80ef9443d6c79436e247c31e6800d00facbf0" }, "downloads": -1, "filename": "autoviml-0.0.2-py3-none-any.whl", "has_sig": false, "md5_digest": "f3b484861ccfc8533d525ca1258b884d", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 55241, "upload_time": "2019-08-13T00:38:38", "url": "https://files.pythonhosted.org/packages/89/08/77c3b1b1a846cd9a302428929009599a432512b0b8053e1fae9736240ba1/autoviml-0.0.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "947de698d3986795aeda6bf9cabb5d3c", "sha256": "4137ea436ed7876a0fa2f78348237a847a1580b27d3fb0f7452155a9cafb89e5" }, "downloads": -1, "filename": "autoviml-0.0.2.tar.gz", "has_sig": false, "md5_digest": "947de698d3986795aeda6bf9cabb5d3c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 52727, "upload_time": "2019-08-13T00:38:40", "url": "https://files.pythonhosted.org/packages/40/f3/417fc3ed09dfabe3cdc6c196db5dfcd3588318a1bcac078719c551bba1d4/autoviml-0.0.2.tar.gz" } ], "0.0.3": [ { "comment_text": "", "digests": { "md5": "b33ef22983f19be17cad5648b8730096", "sha256": "2d4bde45a084a2199d4803c2269ae7cfda7a89774406e4a1f06c91babe81605a" }, "downloads": -1, "filename": "autoviml-0.0.3-py3-none-any.whl", "has_sig": false, "md5_digest": "b33ef22983f19be17cad5648b8730096", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 55203, "upload_time": "2019-08-13T01:01:08", "url": "https://files.pythonhosted.org/packages/c5/af/0f0aa8146a665b1f773a7e2a6025244e3c9a460e624d9901cbc3f0fa27fd/autoviml-0.0.3-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "33950643ad0180601991843fccfe89b0", "sha256": "7885796f758ec46836e07376462ae66b2677558fad1fd78feea9c50ad5dab97c" }, "downloads": -1, "filename": "autoviml-0.0.3.tar.gz", "has_sig": false, "md5_digest": "33950643ad0180601991843fccfe89b0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 52641, "upload_time": "2019-08-13T01:01:11", "url": "https://files.pythonhosted.org/packages/b9/08/3547922e48841304be795ae2bbe617a6979eccad7a077200c89cff3244fc/autoviml-0.0.3.tar.gz" } ], "0.0.4": [ { "comment_text": "", "digests": { "md5": "e276925e8be3f1c84105506a64a888c5", "sha256": "20b98b30f2d3536c43463783cd1a5ae4637034e39bf9862fea0ea006b3940c4e" }, "downloads": -1, "filename": "autoviml-0.0.4-py3-none-any.whl", "has_sig": false, "md5_digest": "e276925e8be3f1c84105506a64a888c5", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 55197, "upload_time": "2019-08-13T01:05:11", "url": "https://files.pythonhosted.org/packages/31/15/483337131f2ed8e644bd7445f37dab7c88bc123f6a1768db5d5430b95458/autoviml-0.0.4-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "742d7eed9c7ac244028160ae001d9935", "sha256": "e5588f07230f7a057527abaeb9e0921d441607f41f474e85013876a4f2e097fe" }, "downloads": -1, "filename": "autoviml-0.0.4.tar.gz", "has_sig": false, "md5_digest": "742d7eed9c7ac244028160ae001d9935", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 52627, "upload_time": "2019-08-13T01:05:13", "url": "https://files.pythonhosted.org/packages/60/6f/45a24b0df0ac6647fff093a25557e5adbca45510ce8c250c1a5ab16a0007/autoviml-0.0.4.tar.gz" } ], "0.0.5": [ { "comment_text": "", "digests": { "md5": "e31dad71c2366631ca10b6454b690b93", "sha256": "8babbf2ef53396b0623a9a50b975fca24a25b432252696a1450e91a94ef62b3d" }, "downloads": -1, "filename": "autoviml-0.0.5-py3-none-any.whl", "has_sig": false, "md5_digest": "e31dad71c2366631ca10b6454b690b93", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 55200, "upload_time": "2019-08-13T01:08:04", "url": "https://files.pythonhosted.org/packages/a6/7c/8b2fd03ecf7061855e14a74af721df3f53054abc49e42279fa59883aeb22/autoviml-0.0.5-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "c1601f39311b08ac6373b53fa7d12005", "sha256": "08188100314369d13496ab778f143c9c0746a2d297925404ea7e200c05c9073e" }, "downloads": -1, "filename": "autoviml-0.0.5.tar.gz", "has_sig": false, "md5_digest": "c1601f39311b08ac6373b53fa7d12005", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 52636, "upload_time": "2019-08-13T01:08:06", "url": "https://files.pythonhosted.org/packages/41/9e/56889548e93e9e33bbaec2efe728ae36d7d5a8d08e721cb4c5420adac0bb/autoviml-0.0.5.tar.gz" } ], "0.0.6": [ { "comment_text": "", "digests": { "md5": "d956655634d03929bb692522747634d1", "sha256": "35027de8622642609b0f4646ab4a94fce2caccde973e15ab43ea4a9ee7f5b6da" }, "downloads": -1, "filename": "autoviml-0.0.6-py3-none-any.whl", "has_sig": false, "md5_digest": "d956655634d03929bb692522747634d1", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 55328, "upload_time": "2019-08-15T20:02:30", "url": "https://files.pythonhosted.org/packages/db/25/0cf4928e47ba170b521f9abab474fc3bf4101f6d741270f59b90cfd109b1/autoviml-0.0.6-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "08605be42cf1a48b42955c6bb773a5a3", "sha256": "ae930028cf19636207d59d13ff0a85366a7ec8009558d245c008086afbd9c570" }, "downloads": -1, "filename": "autoviml-0.0.6.tar.gz", "has_sig": false, "md5_digest": "08605be42cf1a48b42955c6bb773a5a3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 52858, "upload_time": "2019-08-15T20:02:31", "url": "https://files.pythonhosted.org/packages/84/53/f636a48322987822e66bf55ce9db3774f73744861b29c9f201816fe3dfbf/autoviml-0.0.6.tar.gz" } ], "0.0.7": [ { "comment_text": "", "digests": { "md5": "3f1df3c816be7772946d203dca6791ea", "sha256": "5fcff32adfd4606422d00b2bd776cf89d673576998ad8748018cbd4b78d396db" }, "downloads": -1, "filename": "autoviml-0.0.7-py3-none-any.whl", "has_sig": false, "md5_digest": "3f1df3c816be7772946d203dca6791ea", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 54780, "upload_time": "2019-08-20T01:58:58", "url": "https://files.pythonhosted.org/packages/8a/2f/afe28b34f27a3e53ec6db35601c2f33f4decb0e3ee0604b6e08bdf8ebf98/autoviml-0.0.7-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "06bf02f703c0ff61eef36022cb9bd008", "sha256": "e1308a20a5c140333bd502b03a30fb380207bebdd2237bc92058e556e08b84dc" }, "downloads": -1, "filename": "autoviml-0.0.7.tar.gz", "has_sig": false, "md5_digest": "06bf02f703c0ff61eef36022cb9bd008", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 134335, "upload_time": "2019-08-20T01:58:59", "url": "https://files.pythonhosted.org/packages/0f/54/47f9750e3ed2fd854b700eb867254ebc48b7c5c81548f4bf699a6e5147af/autoviml-0.0.7.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "3f1df3c816be7772946d203dca6791ea", "sha256": "5fcff32adfd4606422d00b2bd776cf89d673576998ad8748018cbd4b78d396db" }, "downloads": -1, "filename": "autoviml-0.0.7-py3-none-any.whl", "has_sig": false, "md5_digest": "3f1df3c816be7772946d203dca6791ea", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 54780, "upload_time": "2019-08-20T01:58:58", "url": "https://files.pythonhosted.org/packages/8a/2f/afe28b34f27a3e53ec6db35601c2f33f4decb0e3ee0604b6e08bdf8ebf98/autoviml-0.0.7-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "06bf02f703c0ff61eef36022cb9bd008", "sha256": "e1308a20a5c140333bd502b03a30fb380207bebdd2237bc92058e556e08b84dc" }, "downloads": -1, "filename": "autoviml-0.0.7.tar.gz", "has_sig": false, "md5_digest": "06bf02f703c0ff61eef36022cb9bd008", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 134335, "upload_time": "2019-08-20T01:58:59", "url": "https://files.pythonhosted.org/packages/0f/54/47f9750e3ed2fd854b700eb867254ebc48b7c5c81548f4bf699a6e5147af/autoviml-0.0.7.tar.gz" } ] }