save tree file t json format for future parsing

This commit is contained in:
alu committed 2025-05-28 20:35:08 +00:00
1 parent 78250f83fa
commit 39fd9a1862
1 file changed
+39 -59
+39 -59
View File
@@ -2,7 +2,7 @@
"cells": [
{
"cell_type": "code",
"execution_count": 1,
"execution_count": 8,
"id": "d5618056",
"metadata": {},
"outputs": [],
@@ -15,12 +15,13 @@
"from sklearn.tree import export_graphviz\n",
"import pydotplus\n",
"from matplotlib import pyplot as plt\n",
"from labels import mac_to_label"
"from labels import mac_to_label\n",
"import json"
]
},
{
"cell_type": "code",
"execution_count": null,
"execution_count": 24,
"id": "d336971a",
"metadata": {},
"outputs": [],
@@ -32,9 +33,29 @@
"\n",
"# output the tree\n",
"def get_lineage(tree, feature_names, file):\n",
"\n",
" threshold = dt.tree_.threshold\n",
" features = [feature_names[i] for i in dt.tree_.feature]\n",
" proto = []\n",
" src = []\n",
" dst = []\n",
" for i, fe in enumerate(features):\n",
" if fe == 'proto':\n",
" proto.append(threshold[i])\n",
" elif fe == 'src':\n",
" if threshold[i] != -2.0:\n",
" src.append(threshold[i])\n",
" else:\n",
" dst.append(threshold[i])\n",
" proto = [int(i) for i in proto]\n",
" src = [int(i) for i in src]\n",
" dst = [int(i) for i in dst]\n",
" proto.sort()\n",
" src.sort()\n",
" dst.sort()\n",
"\n",
" data = {\"proto\": proto, \"src\":src, \"dst\": dst, \"paths\": []}\n",
"\n",
" left = tree.tree_.children_left\n",
" right = tree.tree_.children_right\n",
" threshold = tree.tree_.threshold\n",
@@ -64,29 +85,25 @@
" return recurse(left, right, parent, lineage)\n",
"\n",
" for j, child in enumerate(idx):\n",
" clause = ' when '\n",
" clause = []\n",
" for node in recurse(left, right, child):\n",
" if len(str(node)) < 3:\n",
" continue\n",
" i = node\n",
" \n",
" if i[1] == 'l':\n",
" sign = le\n",
" else:\n",
" sign = g\n",
" clause = clause + i[3] + sign + str(i[2]) + ' and '\n",
" \n",
" # wirte the node information into text file\n",
" if i[1] == \"l\":\n",
" clause.append({\"feature\": i[3], \"operation\": \"<=\", \"value\": i[2]})\n",
" \n",
" a = list(value[node][0])\n",
" ind = a.index(max(a))\n",
" clause = clause[:-4] + ' then ' + str(ind)\n",
" file.write(clause)\n",
" file.write(\";\\n\")\n"
" clause = {\"conditions\": clause, \"classification\": ind}\n",
" data[\"paths\"].append(clause)\n",
"\n",
" return data"
]
},
{
"cell_type": "code",
"execution_count": 7,
"execution_count": 16,
"id": "b96f3403",
"metadata": {},
"outputs": [
@@ -130,7 +147,7 @@
},
{
"cell_type": "code",
"execution_count": 12,
"execution_count": 25,
"id": "7f36344d",
"metadata": {},
"outputs": [],
@@ -138,39 +155,10 @@
"class_names=list(mac_to_label.values())\n",
"feature_names=['proto','src','dst']\n",
"\n",
"# output the tree in a text file, write it\n",
"threshold = dt.tree_.threshold\n",
"features = [feature_names[i] for i in dt.tree_.feature]\n",
"proto = []\n",
"src = []\n",
"dst = []\n",
"for i, fe in enumerate(features):\n",
" \n",
" if fe == 'proto':\n",
" proto.append(threshold[i])\n",
" elif fe == 'src':\n",
" if threshold[i] != -2.0:\n",
" src.append(threshold[i])\n",
" else:\n",
" dst.append(threshold[i])\n",
"proto = [int(i) for i in proto]\n",
"src = [int(i) for i in src]\n",
"dst = [int(i) for i in dst]\n",
"proto.sort()\n",
"src.sort()\n",
"dst.sort()\n",
"tree = open(outputfile,\"w+\")\n",
"tree.write(\"proto = \")\n",
"tree.write(str(proto))\n",
"tree.write(\";\\n\")\n",
"tree.write(\"src = \")\n",
"tree.write(str(src))\n",
"tree.write(\";\\n\")\n",
"tree.write(\"dst = \")\n",
"tree.write(str(dst))\n",
"tree.write(\";\\n\")\n",
"get_lineage(dt,feature_names,tree)\n",
"tree.close()"
"file = open(outputfile, \"w+\")\n",
"lineage = get_lineage(dt,feature_names,file)\n",
"file.write(json.dumps(lineage))\n",
"file.close()"
]
},
{
@@ -181,7 +169,7 @@
"outputs": [
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAB6UAAAYYCAYAAADRlB3IAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjMsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvZiW1igAAAAlwSFlzAAAPYQAAD2EBqD+naQABAABJREFUeJzs3XdAlvXi///XDcgSN46c6c1WJPfIkebIlaZxNCnLtCzNVaa5cu9tauU29yi1stwY7hEoKCJwO8CBCjlAARn374/zPf7O+ZxO09uL8Xz8RRy9ryf6j/d5Xe/rNlmtVqsAAAAAAAAAAAAAALABO6MDAAAAAAAAAAAAAAB5F6M0AAAAAAAAAAAAAMBmGKUBAAAAAAAAAAAAADbDKA0AAAAAAAAAAAAAsBlGaQAAAAAAAAAAAACAzTBKAwAAAAAAAAAAAABshlEaAAAAAAAAAAAAAGAzjNIAAAAAAAAAAAAAAJthlAYAAAAAAAAAAAAA2AyjNAAAAAAAAAAAAADAZhilAQAAAAAAAAAAAAA2wygNAAAAAAAAAAAAALAZRmkAAAAAAAAAAAAAgM0wSgMAAAAAAAAAAAAAbIZRGgAAAAAAAAAAAABgM4zSAAAAAAAAAAAAAACbYZQGAAAAAAAAAAAAANgMozQAAAAAAAAAAAAAwGYYpQEAAAAAAAAAAAAANsMoDQAAAAAAAAAAAACwGUZpAAAAAAAAAAAAAIDNMEoDAAAAAAAAAAAAAGyGURoAAAAAAAAAAAAAYDOM0gAAAAAAAAAAAAAAm2GUBgAAAAAAAAAAAADYDKM0AAAAAAAAAAAAAMBmGKUBAAAAAAAAAAAAADbDKA0AAAAAAAAAAAAAsBlGaQAAAAAAAAAAAACAzTBKAwAAAAAAAAAAAABshlEaAAAAAAAAAAAAAGAzjNIAAAAAAAAAAAAAAJthlAYAAAAAAAAAAAAA2AyjNAAAAAAAAAAAAADAZhilAQAAAAAAAAAAAAA2wygNAAAAAAAAAAAAALAZRmkAAAAAAAAAAAAAgM0wSgMAAAAAAAAAAAAAbIZRGgAAAAAAAAAAAABgM4zSAAAAAAAAAAAAAACbYZQGAAAAAAAAAAAAANgMozQAAAAAAAAAAAAAwGYYpQEAAAAAAAAAAAAANsMoDQAAAAAAAAAAAACwGUZpAAAAAAAAAAAAAIDNMEoDAAAAAAAAAAAAAGyGURoAAAAAAAAAAAAAYDOM0gAAAAAAAAAAAAAAm2GUBgAAAAAAAAAAAADYDKM0AAAAAAAAAAAAAMBmGKUBAAAAAAAAAAAAADbDKA0AAAAAAAAAAAAAsBlGaQAAAAAAAAAAAACAzTBKAwAAAAAAAAAAAABshlEaAAAAAAAAAAAAAGAzjNIAAAAAAAAAAAAAAJthlAYAAAAAAAAAAAAA2AyjNAAAAAAAAAAAAADAZhilAQAAAAAAAAAAAAA2wygNAAAAAAAAAAAAALAZRmkAAAAAAAAAAAAAgM0wSgMAAAAAAAAAAAAAbIZRGgAAAAAAAAAAAABgM4zSAAAAAAAAAAAAAACbYZQGAAAAAAAAAAAAANgMozQAAAAAAAAAAAAAwGYYpQEAAAAAAAAAAAAANsMoDQAAAAAAAAAAAACwGUZpAAAAAAAAAAAAAIDNMEoDAAAAAAAAAAAAAGyGURoAAAAAAAAAAAAAYDOM0gAAAAAAAAAAAAAAm2GUBgAAAAAAAAAAAADYDKM0AAAAAAAAAAAAAMBmGKUBAAAAAAAAAAAAADbDKA0AAAAAAAAAAAAAsBlGaQAAAAAAAAAAAACAzTBKAwAAAAAAAAAAAABshlEaAAAAAAAAAAAAAGAzjNIAAAAAAAAAAAAAAJthlAYAAAAAAAAAAAAA2AyjNAAAAAAAAAAAAADAZhilAQAAAAAAAAAAAAA2wygNAAAAAAAAAAAAALAZRmkAAAAAAAAAAAAAgM0wSgMAAAAAAAAAAAAAbIZRGgAAAAAAAAAAAABgM4zSAAAAAAAAAAAAAACbYZQGAAAAAAAAAAAAANgMozQAAAAAAAAAAAAAwGYYpQEAAAAAAAAAAAAANsMoDQAAAAAAAAAAAACwGUZpAAAAAAAAAAAAAIDNMEoDAAAAAAAAAAAAAGyGURoAAAAAAAAAAAAAYDOM0gAAAAAAAAAAAAAAm2GUBgAAAAAAAAAAAADYDKM0AAAAAAAAAAAAAMBmGKUBAAAAAAAAAAAAADbDKA0AAAAAAAAAAAAAsBlGaQAAAAAAAAAAAACAzTBKAwAAAAAAAAAAAABshlEaAAAAAAAAAAAAAGAzjNIAAAAAAAAAAAAAAJthlAYAAAAAAAAAAAAA2AyjNAAAAAAAAAAAAADAZhilAQAAAAAAAAAAAAA2wygNAAAAAAAAAAAAALAZRmkA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 truncated
"image/png": "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 truncated
"text/plain": [
"<Figure size 2500x2000 with 1 Axes>"
]
@@ -194,14 +182,6 @@
"fig = plt.figure(figsize=(25,20))\n",
"_ = plot_tree(dt, feature_names=feature_names, class_names=class_names, filled=True)"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "03ef1012",
"metadata": {},
"outputs": [],
"source": []
}
],
"metadata": {