From 5506118711b794cd811b3eff77700e02730c657f Mon Sep 17 00:00:00 2001 From: Alex Truong Date: Wed, 9 Dec 2020 19:36:03 +0700 Subject: [PATCH 1/2] Update report.Rmd to address issue #42 and #46 --- reports/reports.Rmd | 20 +- reports/reports.html | 781 -------------------------------- reports/reports.md | 172 ++++--- reports/wine_classification.png | Bin 0 -> 19858 bytes 4 files changed, 120 insertions(+), 853 deletions(-) delete mode 100644 reports/reports.html create mode 100644 reports/wine_classification.png diff --git a/reports/reports.Rmd b/reports/reports.Rmd index 4aae4d7..b6c47bd 100644 --- a/reports/reports.Rmd +++ b/reports/reports.Rmd @@ -38,15 +38,25 @@ The data set used in this project is the results of a chemical analysis of the P There are two datasets for red and white wine samples. For each wine sample observation , the inputs contains measurements of various objective physicochemical tests, and the output is the median wine quality ratings given by experts on the scale from 0 (very bad) and 10 (very excellent).The author notes that data on grape types, wine brand, wind selling price among other are not available due to privacy and logistics issues. There are 1599 observations for red wine and 4898 observations of white wine. +```{r, fig.cap = "Figure 1: Distribution of type of wine", out.width= "50%", fig.align='center'} + +knitr::include_graphics("../eda/wine_EDA_files/distribution_of_type_of_wine.png") +``` + ### Analysis -At the preprocessing stage, we decided to combine the red and white data set as well as group the data in bigger classification, namely "poor", "normal" and "excellent" for scale "1-4", "5-6" and "7-9" so as to have bigger sample size. We acknowledge that the data is imbalanced, hence instead of only using accuracy based to judge the model performance, we also include f1-score and use it as our main assessment metric. f-1 score is metric that combine both the precision and recall metrics, which focus on the false negative and false positive rate of the data and would be appropriate to use with an imbalanced data set. +At the preprocessing stage, we decided to combine the red and white data set as well as group the data in bigger classification, namely "poor", "normal" and "excellent" for scale "1-4", "5-6" and "7-9" so as to have bigger sample size (as per Figure 2). We acknowledge that the data is imbalanced, hence instead of only using accuracy based to judge the model performance, we also include f1-score and use it as our main assessment metric. f-1 score is metric that combine both the precision and recall metrics, which focus on the false negative and false positive rate of the data and would be appropriate to use with an imbalanced data set.{Bruhat: to add more justification for f-1 micro score} + +```{r, fig.cap = "Figure 2: Regrouping of wine quality classification", out.width= "50%", fig.align='center'} + +knitr::include_graphics("wine_classification.png") +``` In this project we are trying to predict the quality of a given wine sample using wine attributes obtained from various physicochemical tests. Based on our literary review, we found that researchers from Karadeniz Technical Univeristy used Random Forest Algorithm had also tried to classify between red wine and white wine for the same dataset [@er2016classification]. They further used 3 different data mining algorithms namely k-nearest-neighbourhood random forests and support vector machine learning to classify the quality of both red wine and white wine. This motivates us to proceed with to use cross-validation to select the best model for our analysis. We eventually decided to pick neutral network Multi-layer Perception (MLP) model as the model that yield the best results after running the various machine learning models through the train data set, comparing their performance based on f1-score and checking consistency across cross-validation runs. We noticed that random forest recorded high f1-validation score at 0.84, however, it also had a large gap between train and validation with a perfect train score of 1. This caused us to think the model has overfitted. Logistic regression also showed promising f1 validation score results in our case, yet this high results were not consistent across cross-validation splits. Hence, with most models struggled to get to the 0.8 f1-score mark without significantly overfitting on the train set, while MLP shows consistent results across all cross-validation splits, our final choice landed on MLP model because we think it would generalize better. -```{r, fig.cap = "Table 1: Score results among different machine learning model we have explore"} +```{r, fig.cap = "Table 1: Score results among different machine learning model we have explore", fig.align='center'} knitr::include_graphics("models_c_revised.png") ``` @@ -58,7 +68,7 @@ The Python and R programming languages [@R; @Python] and the following Python an Looking at the distribution plot of the respective wine quality group interacting with each explanatory features, we can see that higher quality wine seems to be more associated with higher `alcohol` level and lower `density`. Lower `volatile acidity` also seems to be indicative of better wine. Better ranked wine also seem to have `higher free sulfur dioxide` level than poor wine though the relationship is not that clear based on the plot. The rest of the features do not seems be very distinguishable among different quality wine. -```{r distribution plot, fig.cap = "Figure 1: Distribution plot between wine quality and various attributes from physicochemical test"} +```{r distribution plot, fig.cap = "Figure 3: Distribution plot between wine quality and various attributes from physicochemical test", fig.align='center'} knitr::include_graphics("../eda/wine_EDA_files/wine_quality_rank_per_feature.png") @@ -66,14 +76,14 @@ knitr::include_graphics("../eda/wine_EDA_files/wine_quality_rank_per_feature.png Since this is a multi-class classification, our goal was to find a model that was consistent and able to recognize patterns from our data. We choose to use a neutral network Multi-layer Perception (MLP) model as it was consistent and showed promising results. If we take a look at the accuracy scores and f1 scores across cross validation splits, we can see that it is pretty consistent which was not the case with many models. -```{r, echo=FALSE,out.width="50%", out.height="20%",fig.cap="Figure 2: Accuracy scores and f1 scores across cross validation splits for neutral network Multi-layer Perception (MLP) model",fig.show='hold',fig.align='center'} +```{r, echo=FALSE,out.width="50%", out.height="20%",fig.cap="Figure 4: Accuracy scores and f1 scores across cross validation splits for neutral network Multi-layer Perception (MLP) model",fig.show='hold',fig.align='center'} knitr::include_graphics(c("f1_revised.png","accuracy_plot_revised.png")) ``` Our model performed quite well on the test data as well. If we take a look at the confusion matrix below. As we discussed earlier, the prediction at the lower end of wine quality spectrum is acceptable. As we can see from the confusion matrix below, ~13% error rate for the lower end of spectrum and also very acceptable false classifications in the high end of spectrum. -```{r, fig.cap = "Figure 3: Confusion Matrix"} +```{r, fig.cap = "Figure 5: Confusion Matrix", fig.align='center'} knitr::include_graphics("../results/final_model_quality.png") ``` diff --git a/reports/reports.html b/reports/reports.html deleted file mode 100644 index 317432b..0000000 --- a/reports/reports.html +++ /dev/null @@ -1,781 +0,0 @@ - - - - - - - - - - - - - - - - - - -

Predicting wine quality using measurements of physiochemical tests

-

Alex Truong, Bruhat Musinuru, Rui Wang and Sang Yoon Lee
2020-11-26 (updated: 2020-12-04)

- -

Summary

-

For this analysis, we used the neutral network Multi-layer Perception (MLP) model in order to try to predict wine quality based on the different wine attributes obtained from physicochemical tests such as alcohol, sulfur dioxide, fixed acidity, residual sugar. When we test it with the different validation data sets, the model yield robust results with 80% accuracy and 80% f1- score (a weighted average metric between precision and recall rate). We also have comparably high score at 80% accuracy and f1-score when we run the model on our test set. Based on these results, we opine that that the model seems to generalize well based on the test set predictions.

-

However, it incorrectly classifies 13.7% of the data in the lower end of spectrum (between normal and poor). This could be due to class imbalance present in the data set where normal samples outnumber poor by roughly twenty times. Improving the data collection methods to reduce the data class imbalance and using an appropriate assessment metric for imbalanced data can help to improve our analysis. On the other hand, given the rate of miss-classification is not so high and the impact can be corrected in further assessment, we believe this model could decently serve its purpose as a wine predictor to conduct first-cut assessment, which could help speed up the wine ratings process.

-

Introduction

-

Traditional methods of categorizing wine are prone to human error and can vary drastically from expert to expert. We propose a data mining approach to predict wine quality using machine learning techniques for classification problems. The resulting model, we hope, could serve as as one of scientific and systematic ways to classify wine, which is a springboard for further research in personalized wine recommendation, quality assessment and comparison unit.

-

Moreover, we believe wineries or wine rating institutes could find the model as a useful and reliable first-cut wine quality test before further expert’s assessment. This could lead to a more cost and time-effective wine screening process, and subsequently facilitate more effective and efficient business decisions and strategies.

-

Methods

-

Data

-

The data set used in this project is the results of a chemical analysis of the Portuguese “Vinho Verde” wine, conducted by Paulo Cortez, A. Cerdeira, F. Almeida, T. Matos and J. Reis (Cortez et al. 2009). It was sourced from the UCI Machine Learning Repository (Dua and Graff 2017) which can be found here.

-

There are two datasets for red and white wine samples. For each wine sample observation , the inputs contains measurements of various objective physicochemical tests, and the output is the median wine quality ratings given by experts on the scale from 0 (very bad) and 10 (very excellent).The author notes that data on grape types, wine brand, wind selling price among other are not available due to privacy and logistics issues. There are 1599 observations for red wine and 4898 observations of white wine.

-

Analysis

-

At the preprocessing stage, we decided to combine the red and white data set as well as group the data in bigger classification, namely “poor,” “normal” and “excellent” for scale “1-4,” “5-6” and “7-9” so as to have bigger sample size. We acknowledge that the data is imbalanced, hence instead of only using accuracy based to judge the model performance, we also include f1-score and use it as our main assessment metric. f-1 score is metric that combine both the precision and recall metrics, which focus on the false negative and false positive rate of the data and would be appropriate to use with an imbalanced data set.

-

In this project we are trying to predict the quality of a given wine sample using wine attributes obtained from various physicochemical tests. Based on our literary review, we found that researchers from Karadeniz Technical Univeristy used Random Forest Algorithm had also tried to classify between red wine and white wine for the same dataset (Er and Atasoy 2016). They further used 3 different data mining algorithms namely k-nearest-neighbourhood random forests and support vector machine learning to classify the quality of both red wine and white wine. This motivates us to proceed with to use cross-validation to select the best model for our analysis.

-

We eventually decided to pick neutral network Multi-layer Perception (MLP) model as the model that yield the best results after running the various machine learning models through the train data set, comparing their performance based on f1-score and checking consistency across cross-validation runs. We noticed that random forest recorded high f1-validation score at 0.84, however, it also had a large gap between train and validation with a perfect train score of 1. This caused us to think the model has overfitted. Logistic regression also showed promising f1 validation score results in our case, yet this high results were not consistent across cross-validation splits. Hence, with most models struggled to get to the 0.8 f1-score mark without significantly overfitting on the train set, while MLP shows consistent results across all cross-validation splits, our final choice landed on MLP model because we think it would generalize better.

-
- -Table 1: Score results among different machine learning model we have explore -

-Table 1: Score results among different machine learning model we have -explore -

- -
- -

The Python and R programming languages (R Core Team 2019; Van Rossum and Drake 2009) and the following Python and R packages were used to perform the analysis: scikit-learn (Pedregosa et al. 2011), docoptpython (Keleshev 2014), docopt (de Jonge 2018), altair (VanderPlas et al. 2018), vega-lite (Satyanarayan et al. 2017), IPython-ipykernel (Pérez and Granger 2007), matplotlib (Hunter 2007), scipy (Virtanen et al. 2020), numpy (Harris et al. 2020), pandas (McKinney and others 2010), graphviz (Ellson et al. 2001), pandas-profiling (Brugman 2019), knitr (Xie 2014), tidyverse (Wickham 2017), kableExtra (Zhu 2020). The code used to perform the analysis and re-create this report can be found here

-

Results & Discussion

-

Looking at the distribution plot of the respective wine quality group interacting with each explanatory features, we can see that higher quality wine seems to be more associated with higher alcohol level and lower density. Lower volatile acidity also seems to be indicative of better wine. Better ranked wine also seem to have higher free sulfur dioxide level than poor wine though the relationship is not that clear based on the plot. The rest of the features do not seems be very distinguishable among different quality wine.

-
- -Figure 1: Distribution plot between wine quality and various attributes from physicochemical test -

-Figure 1: Distribution plot between wine quality and various attributes -from physicochemical test -

- -
- -

Since this is a multi-class classification, our goal was to find a model that was consistent and able to recognize patterns from our data. We choose to use a neutral network Multi-layer Perception (MLP) model as it was consistent and showed promising results. If we take a look at the accuracy scores and f1 scores across cross validation splits, we can see that it is pretty consistent which was not the case with many models.

-
- -

Figure 2: Accuracy scores and f1 scores across cross validation splits for neutral network Multi-layer Perception (MLP) modelFigure 2: Accuracy scores and f1 scores across cross validation splits for neutral network Multi-layer Perception (MLP) model

-

-Figure 2: Accuracy scores and f1 scores across cross validation splits -for neutral network Multi-layer Perception (MLP) model -

- -
- -

Our model performed quite well on the test data as well. If we take a look at the confusion matrix below. As we discussed earlier, the prediction at the lower end of wine quality spectrum is acceptable. As we can see from the confusion matrix below, ~13% error rate for the lower end of spectrum and also very acceptable false classifications in the high end of spectrum.

-
- -Figure 3: Confusion Matrix -

-Figure 3: Confusion Matrix -

- -
- -

Having said that the research also need further improvement in terms of obtaining a more balanced data set for training and cross-validation. More feature engineer and selection could be conducted to minimize the affect of correlation among the explanatory variable. Furthermore, in order to assess the robustness of the predicting model, we need to test the model with deployment data in real world besides testing with our test data.

-

References

-
- -
- -

Brugman, Simon. 2019. “pandas-profiling: Exploratory Data Analysis for Python.” https://github.com/pandas-profiling/pandas-profiling.

-
- -
- -

Cortez, Paulo, António Cerdeira, Fernando Almeida, Telmo Matos, and José Reis. 2009. “Modeling Wine Preferences by Data Mining from Physicochemical Properties.” Decision Support Systems 47 (4): 547–53.

-
- -
- -

de Jonge, Edwin. 2018. Docopt: Command-Line Interface Specification Language. https://CRAN.R-project.org/package=docopt.

-
- -
- -

Dua, Dheeru, and Casey Graff. 2017. “UCI Machine Learning Repository.” University of California, Irvine, School of Information; Computer Sciences. http://archive.ics.uci.edu/ml.

-
- -
- -

Ellson, John, Emden Gansner, Lefteris Koutsofios, Stephen North, Gordon Woodhull, Short Description, and Lucent Technologies. 2001. “Graphviz - Open Source Graph Drawing Tools.” In Lecture Notes in Computer Science, 483–84. Springer-Verlag.

-
- -
- -

Er, Yeşim, and Ayten Atasoy. 2016. “The Classification of White Wine and Red Wine According to Their Physicochemical Qualities.” International Journal of Intelligent Systems and Applications in Engineering, 23–26.

-
- -
- -

Harris, Charles R., K. Jarrod Millman, St’efan J. van der Walt, Ralf Gommers, Pauli Virtanen, David Cournapeau, Eric Wieser, et al. 2020. “Array Programming with NumPy.” Nature 585 (7825): 357–62. https://doi.org/10.1038/s41586-020-2649-2.

-
- -
- -

Hunter, J. D. 2007. “Matplotlib: A 2d Graphics Environment.” Computing in Science & Engineering 9 (3): 90–95. https://doi.org/10.1109/MCSE.2007.55.

-
- -
- -

Keleshev, Vladimir. 2014. Docopt: Command-Line Interface Description Language. https://github.com/docopt/docopt.

-
- -
- -

McKinney, Wes, and others. 2010. “Data Structures for Statistical Computing in Python.” In Proceedings of the 9th Python in Science Conference, 445:51–56. Austin, TX.

-
- -
- -

Pedregosa, F., G. Varoquaux, A. Gramfort, V. Michel, B. Thirion, O. Grisel, M. Blondel, et al. 2011. “Scikit-Learn: Machine Learning in Python.” Journal of Machine Learning Research 12: 2825–30.

-
- -
- -

Pérez, Fernando, and Brian E. Granger. 2007. “IPython: A System for Interactive Scientific Computing.” Computing in Science and Engineering 9 (3): 21–29. https://doi.org/10.1109/MCSE.2007.53.

-
- -
- -

R Core Team. 2019. R: A Language and Environment for Statistical Computing. Vienna, Austria: R Foundation for Statistical Computing. https://www.R-project.org/.

-
- -
- -

Satyanarayan, Arvind, Dominik Moritz, Kanit Wongsuphasawat, and Jeffrey Heer. 2017. “Vega-Lite: A Grammar of Interactive Graphics.” IEEE Transactions on Visualization and Computer Graphics 23 (1): 341–50.

-
- -
- -

Van Rossum, Guido, and Fred L. Drake. 2009. Python 3 Reference Manual. Scotts Valley, CA: CreateSpace.

-
- -
- -

VanderPlas, Jacob, Brian Granger, Jeffrey Heer, Dominik Moritz, Kanit Wongsuphasawat, Arvind Satyanarayan, Eitan Lees, Ilia Timofeev, Ben Welsh, and Scott Sievert. 2018. “Altair: Interactive Statistical Visualizations for Python.” Journal of Open Source Software 3 (32): 1057. https://doi.org/10.21105/joss.01057.

-
- -
- -

Virtanen, Pauli, Ralf Gommers, Travis E. Oliphant, Matt Haberland, Tyler Reddy, David Cournapeau, Evgeni Burovski, et al. 2020. “SciPy 1.0: Fundamental Algorithms for Scientific Computing in Python.” Nature Methods 17: 261–72. https://doi.org/10.1038/s41592-019-0686-2.

-
- -
- -

Wickham, Hadley. 2017. Tidyverse: Easily Install and Load the ’tidyverse’. https://CRAN.R-project.org/package=tidyverse.

-
- -
- -

Xie, Yihui. 2014. “Knitr: A Comprehensive Tool for Reproducible Research in R.” In Implementing Reproducible Computational Research, edited by Victoria Stodden, Friedrich Leisch, and Roger D. Peng. Chapman; Hall/CRC. http://www.crcpress.com/product/isbn/9781466561595.

-
- -
- -

Zhu, Hao. 2020. kableExtra: Construct Complex Table with ’kable’ and Pipe Syntax. https://CRAN.R-project.org/package=kableExtra.

-
- -
- - - diff --git a/reports/reports.md b/reports/reports.md index 906e071..970b281 100644 --- a/reports/reports.md +++ b/reports/reports.md @@ -1,15 +1,15 @@ Predicting wine quality using measurements of physiochemical tests ================ Alex Truong, Bruhat Musinuru, Rui Wang and Sang Yoon Lee
-2020-11-26 (updated: 2020-12-04) +2020-11-26 (updated: 2020-12-09) -- [Summary](#summary) -- [Introduction](#introduction) -- [Methods](#methods) - - [Data](#data) - - [Analysis](#analysis) -- [Results & Discussion](#results-discussion) -- [References](#references) + - [Summary](#summary) + - [Introduction](#introduction) + - [Methods](#methods) + - [Data](#data) + - [Analysis](#analysis) + - [Results & Discussion](#results-discussion) + - [References](#references) ## Summary @@ -71,17 +71,42 @@ wind selling price among other are not available due to privacy and logistics issues. There are 1599 observations for red wine and 4898 observations of white wine. +
+ +Figure 1: Distribution of type of wine + +

+ +Figure 1: Distribution of type of wine + +

+ +
+ ### Analysis At the preprocessing stage, we decided to combine the red and white data -set as well as group the data in bigger classification, namely “poor,” -“normal” and “excellent” for scale “1-4,” “5-6” and “7-9” so as to have -bigger sample size. We acknowledge that the data is imbalanced, hence -instead of only using accuracy based to judge the model performance, we -also include f1-score and use it as our main assessment metric. f-1 -score is metric that combine both the precision and recall metrics, -which focus on the false negative and false positive rate of the data -and would be appropriate to use with an imbalanced data set. +set as well as group the data in bigger classification, namely “poor”, +“normal” and “excellent” for scale “1-4”, “5-6” and “7-9” so as to +have bigger sample size (as per Figure 2). We acknowledge that the data +is imbalanced, hence instead of only using accuracy based to judge the +model performance, we also include f1-score and use it as our main +assessment metric. f-1 score is metric that combine both the precision +and recall metrics, which focus on the false negative and false positive +rate of the data and would be appropriate to use with an imbalanced data +set.{Bruhat: to add more justification for f-1 micro score} + +
+ +Figure 2: Regrouping of wine quality classification + +

+ +Figure 2: Regrouping of wine quality classification + +

+ +
In this project we are trying to predict the quality of a given wine sample using wine attributes obtained from various physicochemical @@ -109,12 +134,15 @@ overfitting on the train set, while MLP shows consistent results across all cross-validation splits, our final choice landed on MLP model because we think it would generalize better. -
+
Table 1: Score results among different machine learning model we have explore +

+ Table 1: Score results among different machine learning model we have explore +

@@ -137,18 +165,20 @@ Looking at the distribution plot of the respective wine quality group interacting with each explanatory features, we can see that higher quality wine seems to be more associated with higher `alcohol` level and lower `density`. Lower `volatile acidity` also seems to be indicative of -better wine. Better ranked wine also seem to have -`higher free sulfur dioxide` level than poor wine though the -relationship is not that clear based on the plot. The rest of the -features do not seems be very distinguishable among different quality -wine. +better wine. Better ranked wine also seem to have `higher free sulfur +dioxide` level than poor wine though the relationship is not that clear +based on the plot. The rest of the features do not seems be very +distinguishable among different quality wine. -
+
+ +Figure 3: Distribution plot between wine quality and various attributes from physicochemical test -Figure 1: Distribution plot between wine quality and various attributes from physicochemical test

-Figure 1: Distribution plot between wine quality and various attributes + +Figure 3: Distribution plot between wine quality and various attributes from physicochemical test +

@@ -162,10 +192,13 @@ that it is pretty consistent which was not the case with many models.
-Figure 2: Accuracy scores and f1 scores across cross validation splits for neutral network Multi-layer Perception (MLP) modelFigure 2: Accuracy scores and f1 scores across cross validation splits for neutral network Multi-layer Perception (MLP) model +Figure 4: Accuracy scores and f1 scores across cross validation splits for neutral network Multi-layer Perception (MLP) modelFigure 4: Accuracy scores and f1 scores across cross validation splits for neutral network Multi-layer Perception (MLP) model +

-Figure 2: Accuracy scores and f1 scores across cross validation splits + +Figure 4: Accuracy scores and f1 scores across cross validation splits for neutral network Multi-layer Perception (MLP) model +

@@ -177,11 +210,14 @@ we can see from the confusion matrix below, \~13% error rate for the lower end of spectrum and also very acceptable false classifications in the high end of spectrum. -
+
+ +Figure 5: Confusion Matrix -Figure 3: Confusion Matrix

-Figure 3: Confusion Matrix + +Figure 5: Confusion Matrix +

@@ -194,19 +230,22 @@ order to assess the robustness of the predicting model, we need to test the model with deployment data in real world besides testing with our test data. +In conclusion, we think that with a decent error rate, our predicting +model based on neutral network Multi-layer Perception (MLP) model would +serve well as an effective first-cut assessment on wine quality. + # References -
+
-
+
-Brugman, Simon. 2019. “pandas-profiling: -Exploratory Data Analysis for Python.” -. +Brugman, Simon. 2019. “pandas-profiling: Exploratory Data Analysis for +Python.” .
-
+
Cortez, Paulo, António Cerdeira, Fernando Almeida, Telmo Matos, and José Reis. 2009. “Modeling Wine Preferences by Data Mining from @@ -214,14 +253,14 @@ Physicochemical Properties.” *Decision Support Systems* 47 (4): 547–53.
-
+
de Jonge, Edwin. 2018. *Docopt: Command-Line Interface Specification Language*. .
-
+
Dua, Dheeru, and Casey Graff. 2017. “UCI Machine Learning Repository.” University of California, Irvine, School of Information; Computer @@ -229,7 +268,7 @@ Sciences. .
-
+
Ellson, John, Emden Gansner, Lefteris Koutsofios, Stephen North, Gordon Woodhull, Short Description, and Lucent Technologies. 2001. “Graphviz - @@ -238,7 +277,7 @@ Science*, 483–84. Springer-Verlag.
-
+
Er, Yeşim, and Ayten Atasoy. 2016. “The Classification of White Wine and Red Wine According to Their Physicochemical Qualities.” *International @@ -246,7 +285,7 @@ Journal of Intelligent Systems and Applications in Engineering*, 23–26.
-
+
Harris, Charles R., K. Jarrod Millman, St’efan J. van der Walt, Ralf Gommers, Pauli Virtanen, David Cournapeau, Eric Wieser, et al. 2020. @@ -255,22 +294,22 @@ Gommers, Pauli Virtanen, David Cournapeau, Eric Wieser, et al. 2020.
-
+
-Hunter, J. D. 2007. “Matplotlib: A 2d Graphics Environment.” *Computing +Hunter, J. D. 2007. “Matplotlib: A 2D Graphics Environment.” *Computing in Science & Engineering* 9 (3): 90–95. .
-
+
Keleshev, Vladimir. 2014. *Docopt: Command-Line Interface Description Language*. .
-
+
McKinney, Wes, and others. 2010. “Data Structures for Statistical Computing in Python.” In *Proceedings of the 9th Python in Science @@ -278,7 +317,7 @@ Conference*, 445:51–56. Austin, TX.
-
+
Pedregosa, F., G. Varoquaux, A. Gramfort, V. Michel, B. Thirion, O. Grisel, M. Blondel, et al. 2011. “Scikit-Learn: Machine Learning in @@ -286,7 +325,7 @@ Python.” *Journal of Machine Learning Research* 12: 2825–30.
-
+
Pérez, Fernando, and Brian E. Granger. 2007. “IPython: A System for Interactive Scientific Computing.” *Computing in Science and @@ -294,7 +333,7 @@ Engineering* 9 (3): 21–29. .
-
+
R Core Team. 2019. *R: A Language and Environment for Statistical Computing*. Vienna, Austria: R Foundation for Statistical Computing. @@ -302,7 +341,7 @@ Computing*. Vienna, Austria: R Foundation for Statistical Computing.
-
+
Satyanarayan, Arvind, Dominik Moritz, Kanit Wongsuphasawat, and Jeffrey Heer. 2017. “Vega-Lite: A Grammar of Interactive Graphics.” *IEEE @@ -310,14 +349,7 @@ Transactions on Visualization and Computer Graphics* 23 (1): 341–50.
-
- -Van Rossum, Guido, and Fred L. Drake. 2009. *Python 3 Reference Manual*. -Scotts Valley, CA: CreateSpace. - -
- -
+
VanderPlas, Jacob, Brian Granger, Jeffrey Heer, Dominik Moritz, Kanit Wongsuphasawat, Arvind Satyanarayan, Eitan Lees, Ilia Timofeev, Ben @@ -327,24 +359,30 @@ Visualizations for Python.” *Journal of Open Source Software* 3 (32):
-
+
+ +Van Rossum, Guido, and Fred L. Drake. 2009. *Python 3 Reference Manual*. +Scotts Valley, CA: CreateSpace. + +
+ +
Virtanen, Pauli, Ralf Gommers, Travis E. Oliphant, Matt Haberland, Tyler -Reddy, David Cournapeau, Evgeni Burovski, et al. 2020. “SciPy 1.0: Fundamental Algorithms for Scientific -Computing in Python.” *Nature Methods* 17: 261–72. -. +Reddy, David Cournapeau, Evgeni Burovski, et al. 2020. “SciPy 1.0: +Fundamental Algorithms for Scientific Computing in Python.” *Nature +Methods* 17: 261–72. .
-
+
Wickham, Hadley. 2017. *Tidyverse: Easily Install and Load the -’tidyverse’*. . +’Tidyverse’*. .
-
+
Xie, Yihui. 2014. “Knitr: A Comprehensive Tool for Reproducible Research in R.” In *Implementing Reproducible Computational Research*, edited by @@ -353,9 +391,9 @@ Hall/CRC. .
-
+
-Zhu, Hao. 2020. *kableExtra: Construct Complex Table with ’kable’ and +Zhu, Hao. 2020. *KableExtra: Construct Complex Table with ’Kable’ and Pipe Syntax*. .
diff --git a/reports/wine_classification.png b/reports/wine_classification.png new file mode 100644 index 0000000000000000000000000000000000000000..da1b7b3f9e851f12320683085bcbf700259b7a9a GIT binary patch literal 19858 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 W&+99df7Jxq!QkoY=d#Wzp$PzVX%%h& literal 0 HcmV?d00001 From 0dbcf5a45cad911bd50020be9fcea7d94e30e2dc Mon Sep 17 00:00:00 2001 From: Alex Truong Date: Wed, 9 Dec 2020 20:14:09 +0700 Subject: [PATCH 2/2] Add dependency diagram to README, edit gitignore to ignore .Rhistory --- .gitignore | 1 + Makefile.dot | 43 +++++++++++++++++++++++++++++++++++++++++++ Makefile.png | Bin 0 -> 122684 bytes README.md | 8 ++++++++ reports/.Rhistory | 0 5 files changed, 52 insertions(+) create mode 100644 Makefile.dot create mode 100644 Makefile.png delete mode 100644 reports/.Rhistory diff --git a/.gitignore b/.gitignore index 1c0c74b..09f8019 100644 --- a/.gitignore +++ b/.gitignore @@ -3,3 +3,4 @@ **.Rproj **.Rproj.user/ .Rproj.user +.Rhistory \ No newline at end of file diff --git a/Makefile.dot b/Makefile.dot new file mode 100644 index 0000000..67347d4 --- /dev/null +++ b/Makefile.dot @@ -0,0 +1,43 @@ +digraph G { +n2[label="all", color="red"]; +n5[label="data/processed/processed.csv", color="red"]; +n13[label="data/processed/processed_test.csv", color="red"]; +n12[label="data/processed/processed_train.csv", color="red"]; +n7[label="data/raw/winequality-red.csv", color="green"]; +n9[label="data/raw/winequality-white.csv", color="green"]; +n4[label="eda/wine_eda.py", color="green"]; +n17[label="reports/reports.Rmd", color="green"]; +n16[label="reports/reports.md", color="green"]; +n18[label="reports/wine_refs.bib", color="green"]; +n14[label="results/best_Model.pkl", color="red"]; +n10[label="results/final_model_quality.png", color="red"]; +n3[label="results/wine_quality_rank_per_feature.png", color="red"]; +n8[label="src/download_data.py", color="green"]; +n15[label="src/fit_wine_quality_predict_model.py", color="green"]; +n6[label="src/pre_processing_wine.py", color="green"]; +n11[label="src/wine_quality_test_results.py", color="green"]; +n16 -> n2 ; +n10 -> n2 ; +n3 -> n2 ; +n7 -> n5 ; +n9 -> n5 ; +n6 -> n5 ; +n7 -> n13 ; +n9 -> n13 ; +n6 -> n13 ; +n7 -> n12 ; +n9 -> n12 ; +n6 -> n12 ; +n8 -> n7 ; +n8 -> n9 ; +n17 -> n16 ; +n18 -> n16 ; +n12 -> n14 ; +n15 -> n14 ; +n13 -> n10 ; +n12 -> n10 ; +n14 -> n10 ; +n11 -> n10 ; +n5 -> n3 ; +n4 -> n3 ; +} diff --git a/Makefile.png b/Makefile.png new file mode 100644 index 0000000000000000000000000000000000000000..fc13d0f0d9d6967cb0d21c3cc78b9b408914bd03 GIT binary patch literal 122684 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

H@`!YZfomv{ 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 Y!xC#=23`7*jr>{JJBpH7;`-129}1e$+yDRo literal 0 HcmV?d00001 diff --git a/README.md b/README.md index 91f0ae1..72b48d8 100644 --- a/README.md +++ b/README.md @@ -60,6 +60,14 @@ conda activate wine_env - tidyverse==1.3.0 +## Dependency Diagram + +The diagram below shows the structure of how the project and this repo is structured to produce the final results. + +![](Makefile.png) + + + ## License The Wine Quality Predictor materials here are licensed under the diff --git a/reports/.Rhistory b/reports/.Rhistory deleted file mode 100644 index e69de29..0000000