Example #1
0
def main():
    print("Tesing the performance of RandomForest...")
    # Load data
    X, y = decision_tree.load_data()
    # Split data randomly, train set rate 70%
    X_train, X_test, y_train, y_test = decision_tree.train_test_split(
        X, y, random_state=40)

    # Train model
    rf = RandomForest()
    rf.fit(X_train, y_train, n_samples=300, max_depth=3, n_estimators=20)
    # Model evaluation
    y_hat = rf.predict(X_test)
    acc = decision_tree.get_acc(y_test, y_hat)
    print("Accuracy is %.3f" % acc)
def pushTrainTreeButton(ui):
    # 按下创建决策树按钮
    # 提示加载数据
    ui.tipBrowser.append("start loading train data...")

    load_tree_file = str(ui.trainTreeLine.text())
    dt_gui.columns, data = dt.load_data(load_tree_file)
    train_columns = dt_gui.columns[:]
    dt_gui.tree = dt.build_tree(data, train_columns)
    print(dt_gui.tree)

    # 显示决策树
    tree_content_list = []
    dt.tree_content(dt_gui.tree, dt_gui.columns, tree_content_list)
    ui.treeShow.setText("")  # 先清空
    tree_str = ""
    for l in tree_content_list:
        tree_str += (l + "\n")
    ui.treeShow.setText(tree_str)

    # 提示创建成功
    ui.tipBrowser.append("train tree success")
    print("完成决策树训练")
Example #3
0
from sklearn.linear_model import LogisticRegression as lr
from sklearn.metrics import accuracy_score

import numpy as np

from decision_tree import load_data

if __name__ == '__main__':
    print(
        "Tutorial: Training a logistic regression to detect phishing websites")

    # Load the training data
    train_inputs, train_outputs, test_inputs, test_outputs = load_data()
    print("Training data loaded.")

    # Create a logistic regression classifier model using scikit-learn
    classifier = lr()
    print("Logistic regression classifier created.")

    print("Beginning model training.")
    # Train the logistic regression classifier
    classifier.fit(train_inputs, train_outputs)
    print("Model training completed.")

    # Use the trained classifier to make predictions on the test data
    predictions = classifier.predict(test_inputs)
    print("Predictions on testing data computed.")

    # Print the accuracy (percentage of phishing websites correctly predicted)
    accuracy = 100.0 * accuracy_score(test_outputs, predictions)
    print("The accuracy of your logistic regression on testing data is: " +