Skip to content

Instantly share code, notes, and snippets.

@djfitzpa
Last active April 7, 2018 03:28
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save djfitzpa/70945147a3543ccbafce473f9a5aa9be to your computer and use it in GitHub Desktop.
Save djfitzpa/70945147a3543ccbafce473f9a5aa9be to your computer and use it in GitHub Desktop.
Display the source blob
Display the rendered blob
Raw
{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# 94-775 Recitation 3: HW2 tips, quiz review"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Homework 2 tips"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Problem 1\n",
"- Problem 1 involves processing a very large data set, which can cause memory issues on your computer if you are not careful.\n",
"- You can disable some components of the spaCy processing pipeline when you load the language model to save memory. For this problem, it is fine to disable the sentence parser, part-of-speech tagger, and entity recognition.\n",
"- Test your code on a much smaller data set (2-3 books), then process the full data set when you can let it run for a while.\n",
"\n",
"Problem 2\n",
"- Read Professor Chen's announcement on TF-IDF features.\n",
"- Leave default parameters for `GaussianMixture`. Specifically, keep n_init low if your code is taking a long time to run.\n",
"- Think carefully about what you are using for spam words and ham words. Try a lot of options.\n",
"- Clustering algorithm is not deterministic. Try running 2-3 times if your initial clusters aren't giving meaningful results.\n",
"\n",
"In general\n",
"- Start early\n",
"- Post questions on Piazza!"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"# Code to disable spacy processing components\n",
"import spacy\n",
"nlp = spacy.load('en', disable=['parser', 'tagger', 'ner'])"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Quiz reminders\n",
"- Bring a laptop that has Anaconda Python 3.6 and jupyter properly installed\n",
"- Make sure battery is charged or you sit near an outlet\n",
"- Open book, open internet\n",
"- Cite external sources\n",
"- Combination of short conceptual questions and a longer coding question"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Constructing feature vectors from word frequencies\n",
"- Perform text processing (tokenization, lemmatization, stop word removal) using spaCy\n",
"- Create a dictionary for each document representing a histogram/frequency table by looping over tokens/lemmas\n",
"- How do we construct a feature vector from a frequency table? What is the length of the vector?"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Co-occurrence analysis\n",
"How can we determine whether two entities are related (e.g., Elon Musk and Tesla)? \n",
"\n",
"Pointwise Mutual Information (PMI): Key idea is to compare actual co-occurrence to the case where occurrence is independent."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Co-occurrence table between sports and academic fields, taken from a (hypothetical) set of papers published in top journals from these fields:\n",
"\n",
"| | Machine learning | Psychology | Biology |\n",
"| --------------- |:----------------:|:----------:|:-------:|\n",
"| Cricket | 20 | 300 | 30 |\n",
"| Football | 600 | 10000 | 800 |\n",
"| Basketball | 15 | 200 | 20 |"
]
},
{
"cell_type": "code",
"execution_count": 1,
"metadata": {
"collapsed": false
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"[[ 20 300 30]\n",
" [ 600 10000 800]\n",
" [ 15 200 20]]\n"
]
}
],
"source": [
"import numpy as np\n",
"co_occurrence_table = np.array([[20, 300, 30], [600, 10000, 800], [15, 200, 20]])\n",
"print(co_occurrence_table)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"How can we produce the PMI table from the co-occurrence table we already have? What do we need to compute?"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {
"collapsed": false
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"[[ 0.00166875 0.02503129 0.00250313]\n",
" [ 0.05006258 0.8343763 0.0667501 ]\n",
" [ 0.00125156 0.01668753 0.00166875]]\n"
]
}
],
"source": [
"joint_prob = co_occurrence_table / co_occurrence_table.sum()\n",
"print(joint_prob)"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {
"collapsed": false
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"[ 0.02920317 0.95118899 0.01960784]\n"
]
}
],
"source": [
"sports_marginal = joint_prob.sum(axis=1)\n",
"print(sports_marginal)"
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {
"collapsed": false
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"[ 0.0529829 0.87609512 0.07092199]\n"
]
}
],
"source": [
"fields_marginal = joint_prob.sum(axis=0)\n",
"print(fields_marginal)"
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"joint_prob_if_indep = np.zeros((3,3))\n",
"for i in range(len(sports_marginal)):\n",
" for j in range(len(fields_marginal)):\n",
" joint_prob_if_indep[i, j] = sports_marginal[i]*fields_marginal[j]"
]
},
{
"cell_type": "code",
"execution_count": 6,
"metadata": {
"collapsed": false
},
"outputs": [],
"source": [
"# Shortcut:\n",
"joint_prob_if_indep = np.outer(sports_marginal, fields_marginal)"
]
},
{
"cell_type": "code",
"execution_count": 7,
"metadata": {
"collapsed": false
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"[[ 0.00154727 0.02558476 0.00207115]\n",
" [ 0.05039675 0.83333203 0.06746021]\n",
" [ 0.00103888 0.01717834 0.00139063]]\n"
]
}
],
"source": [
"print(joint_prob_if_indep)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"The formula for PMI is $$PMI(A,B)=\\log\\frac{P(A,B)}{P(A)P(B)},$$where the base of the logarithm is not actually important (we will use log base 2)."
]
},
{
"cell_type": "code",
"execution_count": 8,
"metadata": {
"collapsed": false
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"[[ 0.10904649 -0.03155184 0.27330274]\n",
" [-0.00959801 0.00180676 -0.01526676]\n",
" [ 0.26870316 -0.04182018 0.26303441]]\n"
]
}
],
"source": [
"PMI = np.log2(joint_prob/joint_prob_if_indep)\n",
"print(PMI)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Computing phi-square and chi-square metrics tell us how far our entities are from being independent\n",
"\n",
"PMI compares $P(A,B)$ and $P(A)P(B)$ by looking at the log of their ratio. Phi-square instead looks at\n",
"$$\\sum_{A,B} \\frac{(P(A,B)-P(A)P(B))^2}{P(A)P(B)}.$$\n",
"\n",
"If $N$ is the total number of co-occurrences in the original co-occurrence table, then chi-square is $N$ multiplied by the phi-square value."
]
},
{
"cell_type": "code",
"execution_count": 9,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"phi = (((joint_prob - joint_prob_if_indep)**2)/joint_prob_if_indep).sum()"
]
},
{
"cell_type": "code",
"execution_count": 10,
"metadata": {
"collapsed": false
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"0.000235799474787\n"
]
}
],
"source": [
"print(phi)"
]
},
{
"cell_type": "code",
"execution_count": 11,
"metadata": {
"collapsed": false
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"2.82605670532\n"
]
}
],
"source": [
"chi = phi*co_occurrence_table.sum()\n",
"print(chi)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Clustering"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Non-obvious questions to answer when designing a clustering analysis:\n",
"- What feature space do we want to use for clustering (original features, or low-dimensional representations)?\n",
"- What algorithm should we apply?\n",
"- What similarity function is appropriate?\n",
"- if K is a parameter: how do we choose the number of clusters?"
]
},
{
"cell_type": "code",
"execution_count": 12,
"metadata": {
"collapsed": false
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"(150, 2)\n"
]
}
],
"source": [
"import csv\n",
"import numpy as np\n",
"\n",
"f = open('iris.csv', 'r')\n",
"reader = csv.reader(f)\n",
"\n",
"sepal_lengths = []\n",
"sepal_widths = []\n",
"\n",
"for i, line in enumerate(reader):\n",
" if i > 0:\n",
" sepal_lengths.append(float(line[0]))\n",
" sepal_widths.append(float(line[1]))\n",
" \n",
"data = np.vstack((sepal_lengths, sepal_widths)).T\n",
"print(data.shape)"
]
},
{
"cell_type": "code",
"execution_count": 13,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"import matplotlib.pyplot as plt\n",
"plt.plot(data[:,0], data[:,1], 'k.')\n",
"plt.xlabel('Sepal length')\n",
"plt.ylabel('Sepal width')\n",
"plt.show()"
]
},
{
"cell_type": "code",
"execution_count": 14,
"metadata": {
"collapsed": false
},
"outputs": [],
"source": [
"from sklearn.preprocessing import StandardScaler\n",
"\n",
"scaler = StandardScaler() # this creates an instance of StandardScaler that we call `scaler`\n",
"data_normalized = scaler.fit_transform(data) # for each feature, subtract off mean and divide by std dev.\n",
"\n",
"# note that `fit_transform` in scikit-learn refers to first fitting a model, and then\n",
"# transforming some input data using the fitted model; in this case, fitting the model\n",
"# would refer to figuring out the means and standard deviations for every column, and\n",
"# transforming the input data (after fitting) would then actually subtract off the\n",
"# mean per column and divide by the standard deviation of the column to obtain normalized\n",
"# data points (scikit-learn will usually have both a `fit` and a `transform` function,\n",
"# and `fit_transform` will do the `fit` first followed by the `transform`)"
]
},
{
"cell_type": "code",
"execution_count": 25,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"image/png": "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\nAAAAAElFTkSuQmCC\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"from sklearn.cluster import KMeans\n",
"\n",
"kmeans = KMeans(n_clusters=3, n_init=100)\n",
"# - `n_clusters` is the number of clusters\n",
"# - `n_init` is how many random initializations of k-means to try (the \"best\" clustering\n",
"# among these 1000 re-runs will be used; for now don't worry about what \"best\" means)\n",
"\n",
"kmeans.fit(data_normalized)\n",
"\n",
"kmeans_cluster_assignments = kmeans.predict(data_normalized)\n",
"\n",
"plt.scatter(data_normalized[:, 0], data_normalized[:, 1], c=kmeans_cluster_assignments)\n",
"# - `c` specifies how the different points should be colored (here, I set it to the\n",
"# cluster assignments so different clusters get different colors)\n",
"\n",
"plt.xlabel('Sepal length')\n",
"plt.ylabel('Sepal width')\n",
"\n",
"plt.show()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### KMeans algorithm\n",
"- Randomly select K centroids\n",
"- Assign each point to nearest centroid\n",
"- Re-compute centroids for each cluster\n",
"- Rinse and repeat\n",
"\n",
"### Gaussian Mixture Models\n",
"- Covered in class on Tuesday"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Choosing a similarity/distance function"
]
},
{
"cell_type": "code",
"execution_count": 16,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"image/png": "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\nCoD/AhsPdMN5OSgHAAAAAElFTkSuQmCC\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"outlier = np.argmax(data[:,0])\n",
"outlier_label = np.zeros(data.shape[0])\n",
"outlier_label[outlier] = 1\n",
"plt.scatter(data_normalized[:, 0], data_normalized[:, 1], c=outlier_label)\n",
"plt.xlabel('Sepal length')\n",
"plt.ylabel('Sepal width')\n",
"plt.show()"
]
},
{
"cell_type": "code",
"execution_count": 17,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"image/png": "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\nQmCC\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"from scipy.spatial.distance import pdist, squareform\n",
"\n",
"# Calculate distance matrix using Euclidian distance\n",
"dist_func = 'euclidean'\n",
"distance_matrix = squareform(pdist(data, dist_func))\n",
"nearest_5 = np.argsort(distance_matrix[outlier,:])[1:11]\n",
"outlier_label = np.zeros(data.shape[0])\n",
"outlier_label[outlier] = 1\n",
"outlier_label[nearest_5] = 2\n",
"plt.scatter(data_normalized[:, 0], data_normalized[:, 1], c=outlier_label)\n",
"plt.xlabel('Sepal length')\n",
"plt.ylabel('Sepal width')\n",
"plt.show()"
]
},
{
"cell_type": "code",
"execution_count": 18,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"# Calculate distance matrix using cosine distance\n",
"dist_func = 'cosine'\n",
"distance_matrix = squareform(pdist(data, dist_func))\n",
"nearest_5 = np.argsort(distance_matrix[outlier,:])[1:11]\n",
"outlier_label = np.zeros(data.shape[0])\n",
"outlier_label[outlier] = 1\n",
"outlier_label[nearest_5] = 2\n",
"plt.scatter(data_normalized[:, 0], data_normalized[:, 1], c=outlier_label)\n",
"plt.xlabel('Sepal length')\n",
"plt.ylabel('Sepal width')\n",
"plt.show()"
]
},
{
"cell_type": "code",
"execution_count": 23,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"# Weird distance function\n",
"def dfun(x, y):\n",
" return (abs(x.sum()-round(x.sum()))-abs(y.sum()-round(y.sum())))**2"
]
},
{
"cell_type": "code",
"execution_count": 24,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"image/png": "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\nAAAASUVORK5CYII=\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"distance_matrix = squareform(pdist(data, dfun))\n",
"nearest_5 = np.argsort(distance_matrix[outlier,:])[1:11]\n",
"outlier_label = np.zeros(data.shape[0])\n",
"outlier_label[outlier] = 1\n",
"outlier_label[nearest_5] = 2\n",
"plt.scatter(data_normalized[:, 0], data_normalized[:, 1], c=outlier_label)\n",
"plt.xlabel('Sepal length')\n",
"plt.ylabel('Sepal width')\n",
"plt.show()"
]
}
],
"metadata": {
"anaconda-cloud": {},
"kernelspec": {
"display_name": "Python [conda env:snakes]",
"language": "python",
"name": "conda-env-snakes-py"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.6.4"
}
},
"nbformat": 4,
"nbformat_minor": 1
}
sepal_length sepal_width petal_length petal_width genus-species
5.1 3.5 1.4 0.2 Iris-setosa
4.9 3 1.4 0.2 Iris-setosa
4.7 3.2 1.3 0.2 Iris-setosa
4.6 3.1 1.5 0.2 Iris-setosa
5 3.6 1.4 0.2 Iris-setosa
5.4 3.9 1.7 0.4 Iris-setosa
4.6 3.4 1.4 0.3 Iris-setosa
5 3.4 1.5 0.2 Iris-setosa
4.4 2.9 1.4 0.2 Iris-setosa
4.9 3.1 1.5 0.1 Iris-setosa
5.4 3.7 1.5 0.2 Iris-setosa
4.8 3.4 1.6 0.2 Iris-setosa
4.8 3 1.4 0.1 Iris-setosa
4.3 3 1.1 0.1 Iris-setosa
5.8 4 1.2 0.2 Iris-setosa
5.7 4.4 1.5 0.4 Iris-setosa
5.4 3.9 1.3 0.4 Iris-setosa
5.1 3.5 1.4 0.3 Iris-setosa
5.7 3.8 1.7 0.3 Iris-setosa
5.1 3.8 1.5 0.3 Iris-setosa
5.4 3.4 1.7 0.2 Iris-setosa
5.1 3.7 1.5 0.4 Iris-setosa
4.6 3.6 1 0.2 Iris-setosa
5.1 3.3 1.7 0.5 Iris-setosa
4.8 3.4 1.9 0.2 Iris-setosa
5 3 1.6 0.2 Iris-setosa
5 3.4 1.6 0.4 Iris-setosa
5.2 3.5 1.5 0.2 Iris-setosa
5.2 3.4 1.4 0.2 Iris-setosa
4.7 3.2 1.6 0.2 Iris-setosa
4.8 3.1 1.6 0.2 Iris-setosa
5.4 3.4 1.5 0.4 Iris-setosa
5.2 4.1 1.5 0.1 Iris-setosa
5.5 4.2 1.4 0.2 Iris-setosa
4.9 3.1 1.5 0.1 Iris-setosa
5 3.2 1.2 0.2 Iris-setosa
5.5 3.5 1.3 0.2 Iris-setosa
4.9 3.1 1.5 0.1 Iris-setosa
4.4 3 1.3 0.2 Iris-setosa
5.1 3.4 1.5 0.2 Iris-setosa
5 3.5 1.3 0.3 Iris-setosa
4.5 2.3 1.3 0.3 Iris-setosa
4.4 3.2 1.3 0.2 Iris-setosa
5 3.5 1.6 0.6 Iris-setosa
5.1 3.8 1.9 0.4 Iris-setosa
4.8 3 1.4 0.3 Iris-setosa
5.1 3.8 1.6 0.2 Iris-setosa
4.6 3.2 1.4 0.2 Iris-setosa
5.3 3.7 1.5 0.2 Iris-setosa
5 3.3 1.4 0.2 Iris-setosa
7 3.2 4.7 1.4 Iris-versicolor
6.4 3.2 4.5 1.5 Iris-versicolor
6.9 3.1 4.9 1.5 Iris-versicolor
5.5 2.3 4 1.3 Iris-versicolor
6.5 2.8 4.6 1.5 Iris-versicolor
5.7 2.8 4.5 1.3 Iris-versicolor
6.3 3.3 4.7 1.6 Iris-versicolor
4.9 2.4 3.3 1 Iris-versicolor
6.6 2.9 4.6 1.3 Iris-versicolor
5.2 2.7 3.9 1.4 Iris-versicolor
5 2 3.5 1 Iris-versicolor
5.9 3 4.2 1.5 Iris-versicolor
6 2.2 4 1 Iris-versicolor
6.1 2.9 4.7 1.4 Iris-versicolor
5.6 2.9 3.6 1.3 Iris-versicolor
6.7 3.1 4.4 1.4 Iris-versicolor
5.6 3 4.5 1.5 Iris-versicolor
5.8 2.7 4.1 1 Iris-versicolor
6.2 2.2 4.5 1.5 Iris-versicolor
5.6 2.5 3.9 1.1 Iris-versicolor
5.9 3.2 4.8 1.8 Iris-versicolor
6.1 2.8 4 1.3 Iris-versicolor
6.3 2.5 4.9 1.5 Iris-versicolor
6.1 2.8 4.7 1.2 Iris-versicolor
6.4 2.9 4.3 1.3 Iris-versicolor
6.6 3 4.4 1.4 Iris-versicolor
6.8 2.8 4.8 1.4 Iris-versicolor
6.7 3 5 1.7 Iris-versicolor
6 2.9 4.5 1.5 Iris-versicolor
5.7 2.6 3.5 1 Iris-versicolor
5.5 2.4 3.8 1.1 Iris-versicolor
5.5 2.4 3.7 1 Iris-versicolor
5.8 2.7 3.9 1.2 Iris-versicolor
6 2.7 5.1 1.6 Iris-versicolor
5.4 3 4.5 1.5 Iris-versicolor
6 3.4 4.5 1.6 Iris-versicolor
6.7 3.1 4.7 1.5 Iris-versicolor
6.3 2.3 4.4 1.3 Iris-versicolor
5.6 3 4.1 1.3 Iris-versicolor
5.5 2.5 4 1.3 Iris-versicolor
5.5 2.6 4.4 1.2 Iris-versicolor
6.1 3 4.6 1.4 Iris-versicolor
5.8 2.6 4 1.2 Iris-versicolor
5 2.3 3.3 1 Iris-versicolor
5.6 2.7 4.2 1.3 Iris-versicolor
5.7 3 4.2 1.2 Iris-versicolor
5.7 2.9 4.2 1.3 Iris-versicolor
6.2 2.9 4.3 1.3 Iris-versicolor
5.1 2.5 3 1.1 Iris-versicolor
5.7 2.8 4.1 1.3 Iris-versicolor
6.3 3.3 6 2.5 Iris-virginica
5.8 2.7 5.1 1.9 Iris-virginica
7.1 3 5.9 2.1 Iris-virginica
6.3 2.9 5.6 1.8 Iris-virginica
6.5 3 5.8 2.2 Iris-virginica
7.6 3 6.6 2.1 Iris-virginica
4.9 2.5 4.5 1.7 Iris-virginica
7.3 2.9 6.3 1.8 Iris-virginica
6.7 2.5 5.8 1.8 Iris-virginica
7.2 3.6 6.1 2.5 Iris-virginica
6.5 3.2 5.1 2 Iris-virginica
6.4 2.7 5.3 1.9 Iris-virginica
6.8 3 5.5 2.1 Iris-virginica
5.7 2.5 5 2 Iris-virginica
5.8 2.8 5.1 2.4 Iris-virginica
6.4 3.2 5.3 2.3 Iris-virginica
6.5 3 5.5 1.8 Iris-virginica
7.7 3.8 6.7 2.2 Iris-virginica
7.7 2.6 6.9 2.3 Iris-virginica
6 2.2 5 1.5 Iris-virginica
6.9 3.2 5.7 2.3 Iris-virginica
5.6 2.8 4.9 2 Iris-virginica
7.7 2.8 6.7 2 Iris-virginica
6.3 2.7 4.9 1.8 Iris-virginica
6.7 3.3 5.7 2.1 Iris-virginica
7.2 3.2 6 1.8 Iris-virginica
6.2 2.8 4.8 1.8 Iris-virginica
6.1 3 4.9 1.8 Iris-virginica
6.4 2.8 5.6 2.1 Iris-virginica
7.2 3 5.8 1.6 Iris-virginica
7.4 2.8 6.1 1.9 Iris-virginica
7.9 3.8 6.4 2 Iris-virginica
6.4 2.8 5.6 2.2 Iris-virginica
6.3 2.8 5.1 1.5 Iris-virginica
6.1 2.6 5.6 1.4 Iris-virginica
7.7 3 6.1 2.3 Iris-virginica
6.3 3.4 5.6 2.4 Iris-virginica
6.4 3.1 5.5 1.8 Iris-virginica
6 3 4.8 1.8 Iris-virginica
6.9 3.1 5.4 2.1 Iris-virginica
6.7 3.1 5.6 2.4 Iris-virginica
6.9 3.1 5.1 2.3 Iris-virginica
5.8 2.7 5.1 1.9 Iris-virginica
6.8 3.2 5.9 2.3 Iris-virginica
6.7 3.3 5.7 2.5 Iris-virginica
6.7 3 5.2 2.3 Iris-virginica
6.3 2.5 5 1.9 Iris-virginica
6.5 3 5.2 2 Iris-virginica
6.2 3.4 5.4 2.3 Iris-virginica
5.9 3 5.1 1.8 Iris-virginica
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment