Spaces:
Running
Running
Upload folder using huggingface_hub
Browse files
run.ipynb
CHANGED
@@ -1 +1 @@
|
|
1 |
-
{"cells": [{"cell_type": "markdown", "id": "302934307671667531413257853548643485645", "metadata": {}, "source": ["# Gradio Demo: titanic_survival"]}, {"cell_type": "code", "execution_count": null, "id": "272996653310673477252411125948039410165", "metadata": {}, "outputs": [], "source": ["!pip install -q gradio scikit-learn numpy pandas"]}, {"cell_type": "code", "execution_count": null, "id": "288918539441861185822528903084949547379", "metadata": {}, "outputs": [], "source": ["# Downloading files from the demo repo\n", "import os\n", "os.mkdir('files')\n", "!wget -q -O files/titanic.csv https://github.com/gradio-app/gradio/raw/main/demo/titanic_survival/files/titanic.csv"]}, {"cell_type": "code", "execution_count": null, "id": "44380577570523278879349135829904343037", "metadata": {}, "outputs": [], "source": ["import os\n", "\n", "import pandas as pd\n", "from sklearn.ensemble import RandomForestClassifier\n", "from sklearn.model_selection import train_test_split\n", "\n", "import gradio as gr\n", "\n", "current_dir = os.path.dirname(os.path.realpath(__file__))\n", "data = pd.read_csv(os.path.join(current_dir, \"files/titanic.csv\"))\n", "\n", "
|
|
|
1 |
+
{"cells": [{"cell_type": "markdown", "id": "302934307671667531413257853548643485645", "metadata": {}, "source": ["# Gradio Demo: titanic_survival"]}, {"cell_type": "code", "execution_count": null, "id": "272996653310673477252411125948039410165", "metadata": {}, "outputs": [], "source": ["!pip install -q gradio scikit-learn numpy pandas"]}, {"cell_type": "code", "execution_count": null, "id": "288918539441861185822528903084949547379", "metadata": {}, "outputs": [], "source": ["# Downloading files from the demo repo\n", "import os\n", "os.mkdir('files')\n", "!wget -q -O files/titanic.csv https://github.com/gradio-app/gradio/raw/main/demo/titanic_survival/files/titanic.csv"]}, {"cell_type": "code", "execution_count": null, "id": "44380577570523278879349135829904343037", "metadata": {}, "outputs": [], "source": ["import os\n", "\n", "import pandas as pd\n", "from sklearn.ensemble import RandomForestClassifier\n", "from sklearn.model_selection import train_test_split\n", "\n", "import gradio as gr\n", "\n", "current_dir = os.path.dirname(os.path.realpath(__file__))\n", "data = pd.read_csv(os.path.join(current_dir, \"files/titanic.csv\"))\n", "\n", "def encode_age(df):\n", " df.Age = df.Age.fillna(-0.5)\n", " bins = (-1, 0, 5, 12, 18, 25, 35, 60, 120)\n", " categories = pd.cut(df.Age, bins, labels=False)\n", " df.Age = categories\n", " return df\n", "\n", "def encode_fare(df):\n", " df.Fare = df.Fare.fillna(-0.5)\n", " bins = (-1, 0, 8, 15, 31, 1000)\n", " categories = pd.cut(df.Fare, bins, labels=False)\n", " df.Fare = categories\n", " return df\n", "\n", "def encode_df(df):\n", " df = encode_age(df)\n", " df = encode_fare(df)\n", " sex_mapping = {\"male\": 0, \"female\": 1}\n", " df = df.replace({\"Sex\": sex_mapping})\n", " embark_mapping = {\"S\": 1, \"C\": 2, \"Q\": 3}\n", " df = df.replace({\"Embarked\": embark_mapping})\n", " df.Embarked = df.Embarked.fillna(0)\n", " df[\"Company\"] = 0\n", " df.loc[(df[\"SibSp\"] > 0), \"Company\"] = 1\n", " df.loc[(df[\"Parch\"] > 0), \"Company\"] = 2\n", " df.loc[(df[\"SibSp\"] > 0) & (df[\"Parch\"] > 0), \"Company\"] = 3\n", " df = df[\n", " [\n", " \"PassengerId\",\n", " \"Pclass\",\n", " \"Sex\",\n", " \"Age\",\n", " \"Fare\",\n", " \"Embarked\",\n", " \"Company\",\n", " \"Survived\",\n", " ]\n", " ]\n", " return df\n", "\n", "train = encode_df(data)\n", "\n", "X_all = train.drop([\"Survived\", \"PassengerId\"], axis=1)\n", "y_all = train[\"Survived\"]\n", "\n", "num_test = 0.20\n", "X_train, X_test, y_train, y_test = train_test_split(\n", " X_all, y_all, test_size=num_test, random_state=23\n", ")\n", "\n", "clf = RandomForestClassifier()\n", "clf.fit(X_train, y_train)\n", "predictions = clf.predict(X_test)\n", "\n", "def predict_survival(passenger_class, is_male, age, company, fare, embark_point):\n", " if passenger_class is None or embark_point is None:\n", " return None\n", " df = pd.DataFrame.from_dict(\n", " {\n", " \"Pclass\": [passenger_class + 1],\n", " \"Sex\": [0 if is_male else 1],\n", " \"Age\": [age],\n", " \"Fare\": [fare],\n", " \"Embarked\": [embark_point + 1],\n", " \"Company\": [\n", " (1 if \"Sibling\" in company else 0) + (2 if \"Child\" in company else 0)\n", " ]\n", " }\n", " )\n", " df = encode_age(df)\n", " df = encode_fare(df)\n", " pred = clf.predict_proba(df)[0]\n", " return {\"Perishes\": float(pred[0]), \"Survives\": float(pred[1])}\n", "\n", "demo = gr.Interface(\n", " predict_survival,\n", " [\n", " gr.Dropdown([\"first\", \"second\", \"third\"], type=\"index\"),\n", " \"checkbox\",\n", " gr.Slider(0, 80, value=25),\n", " gr.CheckboxGroup([\"Sibling\", \"Child\"], label=\"Travelling with (select all)\"),\n", " gr.Number(value=20),\n", " gr.Radio([\"S\", \"C\", \"Q\"], type=\"index\"),\n", " ],\n", " \"label\",\n", " examples=[\n", " [\"first\", True, 30, [], 50, \"S\"],\n", " [\"second\", False, 40, [\"Sibling\", \"Child\"], 10, \"Q\"],\n", " [\"third\", True, 30, [\"Child\"], 20, \"S\"],\n", " ],\n", " live=True,\n", ")\n", "\n", "if __name__ == \"__main__\":\n", " demo.launch()\n"]}], "metadata": {}, "nbformat": 4, "nbformat_minor": 5}
|
run.py
CHANGED
@@ -9,7 +9,6 @@ import gradio as gr
|
|
9 |
current_dir = os.path.dirname(os.path.realpath(__file__))
|
10 |
data = pd.read_csv(os.path.join(current_dir, "files/titanic.csv"))
|
11 |
|
12 |
-
|
13 |
def encode_age(df):
|
14 |
df.Age = df.Age.fillna(-0.5)
|
15 |
bins = (-1, 0, 5, 12, 18, 25, 35, 60, 120)
|
@@ -17,7 +16,6 @@ def encode_age(df):
|
|
17 |
df.Age = categories
|
18 |
return df
|
19 |
|
20 |
-
|
21 |
def encode_fare(df):
|
22 |
df.Fare = df.Fare.fillna(-0.5)
|
23 |
bins = (-1, 0, 8, 15, 31, 1000)
|
@@ -25,7 +23,6 @@ def encode_fare(df):
|
|
25 |
df.Fare = categories
|
26 |
return df
|
27 |
|
28 |
-
|
29 |
def encode_df(df):
|
30 |
df = encode_age(df)
|
31 |
df = encode_fare(df)
|
@@ -52,7 +49,6 @@ def encode_df(df):
|
|
52 |
]
|
53 |
return df
|
54 |
|
55 |
-
|
56 |
train = encode_df(data)
|
57 |
|
58 |
X_all = train.drop(["Survived", "PassengerId"], axis=1)
|
@@ -67,7 +63,6 @@ clf = RandomForestClassifier()
|
|
67 |
clf.fit(X_train, y_train)
|
68 |
predictions = clf.predict(X_test)
|
69 |
|
70 |
-
|
71 |
def predict_survival(passenger_class, is_male, age, company, fare, embark_point):
|
72 |
if passenger_class is None or embark_point is None:
|
73 |
return None
|
@@ -88,7 +83,6 @@ def predict_survival(passenger_class, is_male, age, company, fare, embark_point)
|
|
88 |
pred = clf.predict_proba(df)[0]
|
89 |
return {"Perishes": float(pred[0]), "Survives": float(pred[1])}
|
90 |
|
91 |
-
|
92 |
demo = gr.Interface(
|
93 |
predict_survival,
|
94 |
[
|
|
|
9 |
current_dir = os.path.dirname(os.path.realpath(__file__))
|
10 |
data = pd.read_csv(os.path.join(current_dir, "files/titanic.csv"))
|
11 |
|
|
|
12 |
def encode_age(df):
|
13 |
df.Age = df.Age.fillna(-0.5)
|
14 |
bins = (-1, 0, 5, 12, 18, 25, 35, 60, 120)
|
|
|
16 |
df.Age = categories
|
17 |
return df
|
18 |
|
|
|
19 |
def encode_fare(df):
|
20 |
df.Fare = df.Fare.fillna(-0.5)
|
21 |
bins = (-1, 0, 8, 15, 31, 1000)
|
|
|
23 |
df.Fare = categories
|
24 |
return df
|
25 |
|
|
|
26 |
def encode_df(df):
|
27 |
df = encode_age(df)
|
28 |
df = encode_fare(df)
|
|
|
49 |
]
|
50 |
return df
|
51 |
|
|
|
52 |
train = encode_df(data)
|
53 |
|
54 |
X_all = train.drop(["Survived", "PassengerId"], axis=1)
|
|
|
63 |
clf.fit(X_train, y_train)
|
64 |
predictions = clf.predict(X_test)
|
65 |
|
|
|
66 |
def predict_survival(passenger_class, is_male, age, company, fare, embark_point):
|
67 |
if passenger_class is None or embark_point is None:
|
68 |
return None
|
|
|
83 |
pred = clf.predict_proba(df)[0]
|
84 |
return {"Perishes": float(pred[0]), "Survives": float(pred[1])}
|
85 |
|
|
|
86 |
demo = gr.Interface(
|
87 |
predict_survival,
|
88 |
[
|