{"id":19584782,"url":"https://github.com/oracle-samples/heatwave-ml","last_synced_at":"2025-04-27T11:32:39.771Z","repository":{"id":41182331,"uuid":"457053224","full_name":"oracle-samples/heatwave-ml","owner":"oracle-samples","description":null,"archived":false,"fork":false,"pushed_at":"2023-07-19T23:14:27.000Z","size":59,"stargazers_count":21,"open_issues_count":0,"forks_count":3,"subscribers_count":6,"default_branch":"main","last_synced_at":"2023-07-20T00:25:55.641Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"upl-1.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/oracle-samples.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null}},"created_at":"2022-02-08T18:22:56.000Z","updated_at":"2023-07-19T00:59:22.000Z","dependencies_parsed_at":"2023-01-18T01:25:11.791Z","dependency_job_id":null,"html_url":"https://github.com/oracle-samples/heatwave-ml","commit_stats":null,"previous_names":[],"tags_count":0,"template":null,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/oracle-samples%2Fheatwave-ml","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/oracle-samples%2Fheatwave-ml/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/oracle-samples%2Fheatwave-ml/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/oracle-samples%2Fheatwave-ml/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/oracle-samples","download_url":"https://codeload.github.com/oracle-samples/heatwave-ml/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":224069554,"owners_count":17250454,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-11T07:49:43.292Z","updated_at":"2025-04-27T11:32:39.744Z","avatar_url":"https://github.com/oracle-samples.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# HeatWave AutoML examples and performance benchmarks\n\n[HeatWave](https://www.oracle.com/heatwave/) is an integrated, massively parallel, high-performance, in-memory query accelerator for MySQL Database Service that accelerates performance of MySQL by orders of magnitude for analytics and mixed workloads. It is the only service that enables you to run OLTP and OLAP workloads simultaneously and directly from your MySQL database, without any changes to your applications. This eliminates the need for complex, time-consuming, and expensive data movement and integration with a separate analytics database. Your applications connect to the HeatWave cluster through standard MySQL protocols.\n\nHeatWave users currently do not have an easy way of creating machine-learning models for their data in the database, or generating predictions and explanations for it. Such users, while being database experts, frequently are relatively new to Machine Learning and can benefit from products that streamline the creation and usage of machine learning models. HeatWave AutoML is the product that addresses this need.\n\n## Required Services:\n1. [Oracle Cloud Infrastructure][3]\n2. [MySQL Database Service][4] and [HeatWave][5]\n\n## Getting started\n1. Provision MySQL Database Service instance and add a HeatWave cluster.\n2. Clone this repository and change directories\n```\ngit clone https://github.com/oracle-samples/heatwave-ml.git\n```\n3. Create a Python virtual environment and activate it as follows\n```\npython3.8 -m venv py_heatwaveml\nsource py_heatwaveml/bin/activate\n```\n3. Install the necessary Python packages\n```\npip install pandas numpy unlzw3 scikit-learn pyreadr --user\n```\n\n## Python Notebooks\nTo help customers get started with Heatwave ML and showcase its capabilities, we have prepared a set of Jupyter notebooks. Each notebook focuses on a simple application of Heatwave ML components in practice and walks you through a solution. Here is the list of existing notebooks and a screenshot of the rendered HTML.\n\n\u003ctable\u003e\n    \u003ctr\u003e\n        \u003cth\u003e Description\u003c/td\u003e\n        \u003cth\u003e Link\u003c/td\u003e\n    \u003c/tr\u003e\n    \u003ctr\u003e\n        \u003ctd\u003eTraining a model to predict whether a bank customer will subscribe to a term deposit\u003c/td\u003e\n        \u003ctd\u003e\u003ca href=\"./python/automl/table_classification_bank_marketing.ipynb\"\u003eBank marketing\u003c/a\u003e\u003c/td\u003e\n   \u003c/tr\u003e\n   \u003ctr\u003e\n        \u003ctd\u003eTraining a model to predict the price of a diamond\u003c/td\u003e\n        \u003ctd\u003e\u003ca href=\"./python/automl/table_regression_diamonds.ipynb\"\u003eDiamonds\u003c/a\u003e\u003c/td\u003e\n   \u003c/tr\u003e\n\u003c/table\u003e\n\n## SQL examples\nSQL Code to run training, predictions and scoring on a variety of common Machine Learning classification and regression datasets.\n\n\u003ctable\u003e\n    \u003ctr\u003e\n        \u003cth\u003e Example\u003c/td\u003e\n        \u003cth\u003e Description\u003c/td\u003e\n        \u003cth\u003e #Rows (Training Set)\u003c/td\u003e\n        \u003cth\u003e #Features\u003c/td\u003e\n    \u003c/tr\u003e\n    \u003ctr\u003e\n        \u003ctd\u003e\u003ca href=\"./sql/table_classification_airlines.sql\"\u003eairlines\u003c/a\u003e\u003c/td\u003e\n        \u003ctd\u003ePredict Flight Delays\u003c/td\u003e\n        \u003ctd\u003e377568\u003c/td\u003e\n        \u003ctd\u003e8\u003c/td\u003e\n   \u003c/tr\u003e\n   \u003ctr\u003e\n        \u003ctd\u003e\u003ca href=\"./sql/table_classification_bank_marketing.sql\"\u003ebank_marketing\u003c/a\u003e\u003c/td\u003e\n        \u003ctd\u003eDirect marketing – Banking Products\u003c/td\u003e\n        \u003ctd\u003e31648\u003c/td\u003e\n        \u003ctd\u003e17\u003c/td\u003e\n   \u003c/tr\u003e\n   \u003ctr\u003e\n        \u003ctd\u003e\u003ca href=\"./sql/table_classification_cnae-9.sql\"\u003ecnae-9\u003c/a\u003e\u003c/td\u003e\n        \u003ctd\u003eDocuments with free text business descriptions of Brazilian companies\u003c/td\u003e\n        \u003ctd\u003e757\u003c/td\u003e\n        \u003ctd\u003e857\u003c/td\u003e\n   \u003c/tr\u003e\n   \u003ctr\u003e\n        \u003ctd\u003e\u003ca href=\"./sql/table_classification_connect-4.sql\"\u003econnect-4\u003c/a\u003e\u003c/td\u003e\n        \u003ctd\u003e8-ply positions in the game of connect-4 in which neither player has won yet – predict win/loss\u003c/td\u003e\n        \u003ctd\u003e47290\u003c/td\u003e\n        \u003ctd\u003e161\u003c/td\u003e\n   \u003c/tr\u003e\n   \u003ctr\u003e\n        \u003ctd\u003e\u003ca href=\"./sql/table_classification_fashion_mnist.sql\"\u003efashion_mnist\u003c/a\u003e\u003c/td\u003e\n        \u003ctd\u003eClothing classification problem\u003c/td\u003e\n        \u003ctd\u003e60000\u003c/td\u003e\n        \u003ctd\u003e785\u003c/td\u003e\n   \u003c/tr\u003e\n   \u003ctr\u003e\n        \u003ctd\u003e\u003ca href=\"./sql/table_classification_nomao.sql\"\u003enomao\u003c/a\u003e\u003c/td\u003e\n        \u003ctd\u003eActive learning is used to efficiently detect data that refer to a same place based on Nomao browser\u003c/td\u003e\n        \u003ctd\u003e24126\u003c/td\u003e\n        \u003ctd\u003e119\u003c/td\u003e\n   \u003c/tr\u003e\n   \u003ctr\u003e\n        \u003ctd\u003e\u003ca href=\"./sql/table_classification_numerai.sql\"\u003enumerai\u003c/a\u003e\u003c/td\u003e\n        \u003ctd\u003eData is cleaned, regularized and encrypted global equity data\u003c/td\u003e\n        \u003ctd\u003e67425\u003c/td\u003e\n        \u003ctd\u003e22\u003c/td\u003e\n   \u003c/tr\u003e\n   \u003ctr\u003e\n        \u003ctd\u003e\u003ca href=\"./sql/table_classification_higgs.sql\"\u003ehiggs\u003c/a\u003e\u003c/td\u003e\n        \u003ctd\u003eMonte Carlo Simulations\u003c/td\u003e\n        \u003ctd\u003e10500000\u003c/td\u003e\n        \u003ctd\u003e29\u003c/td\u003e\n   \u003c/tr\u003e\n   \u003ctr\u003e\n        \u003ctd\u003e\u003ca href=\"./sql/table_classification_census.sql\"\u003ecensus\u003c/a\u003e\u003c/td\u003e\n        \u003ctd\u003eDetermine if a person makes \u003e $50k\u003c/td\u003e\n        \u003ctd\u003e32561\u003c/td\u003e\n        \u003ctd\u003e15\u003c/td\u003e\n   \u003c/tr\u003e\n   \u003ctr\u003e\n        \u003ctd\u003e\u003ca href=\"./sql/table_classification_titanic.sql\"\u003etitanic\u003c/a\u003e\u003c/td\u003e\n        \u003ctd\u003eSurvival Status of individuals\u003c/td\u003e\n        \u003ctd\u003e917\u003c/td\u003e\n        \u003ctd\u003e14\u003c/td\u003e\n   \u003c/tr\u003e\n   \u003ctr\u003e\n        \u003ctd\u003e\u003ca href=\"./sql/table_classification_creditcard.sql\"\u003ecreditcard\u003c/a\u003e\u003c/td\u003e\n        \u003ctd\u003eIdentify fraudulent  transactions\u003c/td\u003e\n        \u003ctd\u003e199364\u003c/td\u003e\n        \u003ctd\u003e30\u003c/td\u003e\n   \u003c/tr\u003e\n   \u003ctr\u003e\n        \u003ctd\u003e\u003ca href=\"./sql/table_classification_appetency.sql\"\u003eappetency\u003c/a\u003e\u003c/td\u003e\n        \u003ctd\u003ePredict the propensity of customers to buy new products\u003c/td\u003e\n        \u003ctd\u003e35000\u003c/td\u003e\n        \u003ctd\u003e230\u003c/td\u003e\n   \u003c/tr\u003e\n   \u003ctr\u003e\n        \u003ctd\u003e\u003ca href=\"./sql/table_regression_black_friday.sql\"\u003eblack_friday\u003c/a\u003e\u003c/td\u003e\n        \u003ctd\u003eCustomer purchases on Black Friday\u003c/td\u003e\n        \u003ctd\u003e116774\u003c/td\u003e\n        \u003ctd\u003e10\u003c/td\u003e\n   \u003c/tr\u003e\n   \u003ctr\u003e\n        \u003ctd\u003e\u003ca href=\"./sql/table_regression_diamonds.sql\"\u003ediamonds\u003c/a\u003e\u003c/td\u003e\n        \u003ctd\u003ePredict price of a diamond\u003c/td\u003e\n        \u003ctd\u003e37758\u003c/td\u003e\n        \u003ctd\u003e10\u003c/td\u003e\n   \u003c/tr\u003e\n   \u003ctr\u003e\n        \u003ctd\u003e\u003ca href=\"./sql/table_regression_mercedes.sql\"\u003emercedes\u003c/a\u003e\u003c/td\u003e\n        \u003ctd\u003eTime the car took to pass testing\u003c/td\u003e\n        \u003ctd\u003e2946\u003c/td\u003e\n        \u003ctd\u003e377\u003c/td\u003e\n   \u003c/tr\u003e\n   \u003ctr\u003e\n        \u003ctd\u003e\u003ca href=\"./sql/table_regression_news_popularity.sql\"\u003enews_popularity\u003c/a\u003e\u003c/td\u003e\n        \u003ctd\u003ePredict the number of shares of article in social networks (popularity)\u003c/td\u003e\n        \u003ctd\u003e27750\u003c/td\u003e\n        \u003ctd\u003e60\u003c/td\u003e\n   \u003c/tr\u003e\n   \u003ctr\u003e\n        \u003ctd\u003e\u003ca href=\"./sql/table_regression_nyc_taxi.sql\"\u003enyc_taxi\u003c/a\u003e\u003c/td\u003e\n        \u003ctd\u003ePredict tip amount for NYC taxi cab\u003c/td\u003e\n        \u003ctd\u003e407284\u003c/td\u003e\n        \u003ctd\u003e15\u003c/td\u003e\n   \u003c/tr\u003e\n   \u003ctr\u003e\n        \u003ctd\u003e\u003ca href=\"./sql/table_regression_twitter.sql\"\u003etwitter\u003c/a\u003e\u003c/td\u003e\n        \u003ctd\u003eThe popularity of a topic on social media\u003c/td\u003e\n        \u003ctd\u003e408275\u003c/td\u003e\n        \u003ctd\u003e78\u003c/td\u003e\n   \u003c/tr\u003e\n\u003c/table\u003e\n\n## Contributing\n\nThis project welcomes contributions from the community. Before submitting a pull request, please [review our contribution guide](./CONTRIBUTING.md)\n\n## Security\n\nPlease consult the [security guide](./SECURITY.md) for our responsible security vulnerability disclosure process\n\n## License\n\nCopyright (c) 2025 Oracle and/or its affiliates.\n\nReleased under the Universal Permissive License v1.0 as shown at\n\u003chttps://oss.oracle.com/licenses/upl/\u003e.\n\n\n [1]: https://www.python.org/downloads/release/python-3813/\n [2]: https://dev.mysql.com/doc/mysql-shell/8.0/en/\n [3]: https://docs.cloud.oracle.com/en-us/iaas/Content/home.htm\n [4]: https://docs.oracle.com/en-us/iaas/mysql-database/\n [5]: https://dev.mysql.com/doc/heatwave/en/\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Foracle-samples%2Fheatwave-ml","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Foracle-samples%2Fheatwave-ml","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Foracle-samples%2Fheatwave-ml/lists"}