# Differences

This shows you the differences between two versions of the page.

Link to this comparison view

ewis:laboratoare:08 [2021/04/28 17:56]
alexandru.predescu [Machine Learning. Supervised Learning]
ewis:laboratoare:08 [2022/05/04 21:47] (current)
alexandru.predescu [Exercises]
Line 2: Line 2:

The purpose of an **information system** is to extract useful information from raw data. **Data science** is a field of study that aims to understand and analyze data by means of **statistics,​ big data, machine learning** and to provide support for decision makers and autonomous systems. While this sounds complicated,​ the tools are based on mathematical models and specialized software components that are already available (e.g. Python packages). In the following labs we will learn about.. learning. Machine Learning, to be more specific, and the two main classes: **Supervised Learning** and **Unsupervised Learning**. The general idea is to write software programs that can learn from the available data, identify patterns and make decisions with minimal human interventions,​ based on Machine Learning algorithms. The purpose of an **information system** is to extract useful information from raw data. **Data science** is a field of study that aims to understand and analyze data by means of **statistics,​ big data, machine learning** and to provide support for decision makers and autonomous systems. While this sounds complicated,​ the tools are based on mathematical models and specialized software components that are already available (e.g. Python packages). In the following labs we will learn about.. learning. Machine Learning, to be more specific, and the two main classes: **Supervised Learning** and **Unsupervised Learning**. The general idea is to write software programs that can learn from the available data, identify patterns and make decisions with minimal human interventions,​ based on Machine Learning algorithms.
-
-<note tip>
-An introduction into Machine Learning territory can be already found in the previous lab, as linear regression is a form of Supervised Learning, extracting patterns from the data based on a linear model.
-</​note>​

==== Machine Learning. Supervised Learning ==== ==== Machine Learning. Supervised Learning ====
Line 189: Line 185:
Download the {{:​ewis:​laboratoare:​lab8:​lab8.zip|Project Archive}} and install the required packages via //​requirements.txt//​ Download the {{:​ewis:​laboratoare:​lab8:​lab8.zip|Project Archive}} and install the required packages via //​requirements.txt//​

-<note important>​**Run //​gen_ucode.py//​ to generate ​your unique code (//​UCODE//​) ​that you will use in the exercises when required. Write it down and include it in the pdf report.** </​note>​+<note important>​**Get your unique code (//​UCODE//​) ​via moodle.** </​note>​

=== Task 1 (2p) === === Task 1 (2p) ===
Line 198: Line 194:
* The predictions are evaluated to find out the accuracy of the model and the decision tree is then shown as (pseudo)code (if else statements) and graph representation as //​dtree1.png//​.   * The predictions are evaluated to find out the accuracy of the model and the decision tree is then shown as (pseudo)code (if else statements) and graph representation as //​dtree1.png//​.

-<note important>​Use //​n_train_percent//​ to change the amount of data used for training the model and evaluate the results. Set //​n_train_percent// as the generated //code// **(//UCODE//)** and report the results: ​+<note important>​Use //​n_train_percent//​ to change the amount of data used for training the model and evaluate the results. Set //​n_train_percent=UCODE// and report the results: ​
* prediction accuracy and generated output //​dtree1.png//​   * prediction accuracy and generated output //​dtree1.png//​
-  * how large is the decision tree regarding the number of leaf nodes+  * how large is the decision tree regarding the number of leaf nodes?
</​note>​ </​note>​

Line 212: Line 208:
* The results are plotted on a chart, showing the effect of the amount (percent) of training data on the prediction accuracy   * The results are plotted on a chart, showing the effect of the amount (percent) of training data on the prediction accuracy

-<note important>​Write down your observations regarding the observed ​results ​in this case and include them into your report. ​How much training data (percent) is required in this case to obtain most accurate predictions?</​note>​+<note important>​Write down your observations regarding the results
+  * How much training data (percent) is required in this case to obtain most accurate predictions?​
+</​note>​

=== Task 3 (3p) === === Task 3 (3p) ===
Line 239: Line 237:
</​code>​ </​code>​

-<note important>​Use //​n_train_percent//​ to change the amount of data used for training the model and evaluate the results. Set //​n_train_percent// as the generated //code// **(//UCODE//)** and report the results: ​+<note important>​Use //​n_train_percent//​ to change the amount of data used for training the model and evaluate the results. Set //​n_train_percent=UCODE// and report the results: ​
* prediction accuracy and generated output //​dtree31.png//​   * prediction accuracy and generated output //​dtree31.png//​
-  * how large is the decision tree regarding the number of leaf nodes+  * how large is the decision tree regarding the number of leaf nodes?
</​note>​ </​note>​

Line 251: Line 249:
* Run //​task31_sol.py//​ for both red (//​winequality-red.csv//​) and white (//​winequality-white.csv//​) wine datasets   * Run //​task31_sol.py//​ for both red (//​winequality-red.csv//​) and white (//​winequality-white.csv//​) wine datasets

-<note important>​Write down your observations regarding the observed ​results ​in this case and include them into your report+<note important>​Write down your observations regarding the results:
-  * How much training data (percent) is required in this case to obtain most accurate predictions+  * How much training data (percent) is required in this case to obtain most accurate predictions?
* What is the average accuracy for each model (decision tree, random forest) **(+1p)**   * What is the average accuracy for each model (decision tree, random forest) **(+1p)**
* Which type of wine (red/white) is easier to predict (more accurate) based on the results **(+1p)**   * Which type of wine (red/white) is easier to predict (more accurate) based on the results **(+1p)**
</​note>​ </​note>​

+/*
=== Bonus (4p + 2p) === === Bonus (4p + 2p) ===

Line 281: Line 279:
Use //​n_train_percent//​ to change the amount of data used for training the model and evaluate the results. Set //​n_train_percent//​ as the generated //code// **(//​UCODE//​)** and report the results: ​ Use //​n_train_percent//​ to change the amount of data used for training the model and evaluate the results. Set //​n_train_percent//​ as the generated //code// **(//​UCODE//​)** and report the results: ​
* prediction accuracy and generated output //​dtree32.png//​   * prediction accuracy and generated output //​dtree32.png//​
-  * how large is the decision tree regarding the number of leaf nodes+  * how large is the decision tree regarding the number of leaf nodes?

Create a new script similar to //​task31_sol.py//​ to compare the decision trees with random forest models using variable amounts (percent) of training data: Create a new script similar to //​task31_sol.py//​ to compare the decision trees with random forest models using variable amounts (percent) of training data:
-  * How much training data (percent) is required in this case to obtain most accurate predictions+  * How much training data (percent) is required in this case to obtain most accurate predictions?
* What is the average accuracy for each model (decision tree, random forest)   * What is the average accuracy for each model (decision tree, random forest)
* Explain the low accuracy obtained for this case study. What would be required to improve the results? **(+2p)**   * Explain the low accuracy obtained for this case study. What would be required to improve the results? **(+2p)**
</​note>​ </​note>​
+*/

==== Resources ==== ==== Resources ====
Line 297: Line 296:
[[https://​archive.ics.uci.edu/​ml/​datasets/​wine+quality]] [[https://​archive.ics.uci.edu/​ml/​datasets/​wine+quality]]

-[[http://​wiki.stat.ucla.edu/​socr/​index.php/​SOCR_Data_MLB_HeightsWeights]]+/*[[http://​wiki.stat.ucla.edu/​socr/​index.php/​SOCR_Data_MLB_HeightsWeights]]*/

ewis/laboratoare/08.1619621775.txt.gz · Last modified: 2021/04/28 17:56 by alexandru.predescu 