python复制代码
from sklearn.linear_model import LinearRegression from sklearn.datasets import make_regression # 生成模拟数据集 X, y = make_regression(n_samples=100, n_features=1, noise=0.1) # 创建线性回归模型对象 lr = LinearRegression() # 训练模型 lr.fit(X, y) # 进行预测 predictions = lr.predict(X)
python复制代码
from sklearn.linear_model import LogisticRegression from sklearn.datasets import make_classification # 生成模拟数据集 X, y = make_classification(n_samples=100, n_features=2, n_informative=2, n_redundant=0, random_state=42) # 创建逻辑回归模型对象 lr = LogisticRegression() # 训练模型 lr.fit(X, y) # 进行预测 predictions = lr.predict(X)
python复制代码
from sklearn.tree import DecisionTreeClassifier from sklearn.datasets import load_iris from sklearn.model_selection import train_test_split # 加载数据集 iris = load_iris() X = iris.data y = iris.target # 划分训练集和测试集 X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42) # 创建决策树模型对象 dt = DecisionTreeClassifier() # 训练模型 dt.fit(X_train, y_train) # 进行预测 predictions = dt.predict(X_test)
python
from sklearn.naive_bayes import GaussianNB from sklearn.datasets import load_iris # 加载数据集 iris = load_iris() X = iris.data y = iris.target # 创建朴素贝叶斯分类器对象 gnb = GaussianNB() # 训练模型 gnb.fit(X, y) # 进行预测 predictions = gnb.predict(X)
python复制代码
from sklearn import svm from sklearn.datasets import load_iris from sklearn.model_selection import train_test_split # 加载数据集 iris = load_iris() X = iris.data y = iris.target # 划分训练集和测试集 X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42) # 创建SVM分类器对象,使用径向基核函数(RBF) clf = svm.SVC(kernel='rbf') # 训练模型 clf.fit(X_train, y_train) # 进行预测 predictions = clf.predict(X_test)
python复制代码
from sklearn.ensemble import VotingClassifier from sklearn.linear_model import LogisticRegression from sklearn.tree import DecisionTreeClassifier from sklearn.datasets import load_iris from sklearn.model_selection import train_test_split # 加载数据集 iris = load_iris() X = iris.data y = iris.target # 划分训练集和测试集 X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42) # 创建基本模型对象和集成分类器对象 lr = LogisticRegression() dt = DecisionTreeClassifier() vc = VotingClassifier(estimators=[('lr', lr), ('dt', dt)], voting='hard') # 训练集成分类器 vc.fit(X_train, y_train) # 进行预测 predictions = vc.predict(X_test)
python复制代码
from sklearn.neighbors import KNeighborsClassifier from sklearn.datasets import load_iris from sklearn.model_selection import train_test_split # 加载数据集 iris = load_iris() X = iris.data y = iris.target # 划分训练集和测试集 X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42) # 创建K近邻分类器对象,K=3 knn = KNeighborsClassifier(n_neighbors=3) # 训练模型 knn.fit(X_train, y_train) # 进行预测 predictions = knn.predict(X_test)
python复制代码
from sklearn.cluster import KMeans from sklearn.datasets import make_blobs import matplotlib.pyplot as plt # 生成模拟数据集 X, y = make_blobs(n_samples=300, centers=4, cluster_std=0.60, random_state=0) # 创建K-means聚类器对象,K=4 kmeans = KMeans(n_clusters=4) # 训练模型 kmeans.fit(X) # 进行预测并获取聚类标签 labels = kmeans.predict(X) # 可视化结果 plt.scatter(X[:, 0], X[:, 1], c=labels, cmap='viridis') plt.show()
python复制代码
import tensorflow as tf from tensorflow.keras import layers, models from tensorflow.keras.datasets import mnist # 加载MNIST数据集 (x_train, y_train), (x_test, y_test) = mnist.load_data() # 归一化处理输入数据 x_train = x_train / 255.0 x_test = x_test / 255.0 # 构建神经网络模型 model = models.Sequential() model.add(layers.Flatten(input_shape=(28, 28))) model.add(layers.Dense(128, activation='relu')) model.add(layers.Dense(10, activation='softmax')) # 编译模型并设置损失函数和优化器等参数 model.compile(optimizer='adam', loss='sparse_categorical_crossentropy', metrics=['accuracy']) # 训练模型 model.fit(x_train, y_train, epochs=5) # 进行预测 predictions = model.predict(x_test)
python复制代码
import tensorflow as tf from tensorflow.keras.models import Sequential from tensorflow.keras.layers import Dense, Dropout, Flatten from tensorflow.keras.optimizers import Adam from tensorflow.keras import backend as K class DQN: def __init__(self, state_size, action_size): self.state_size = state_size self.action_size = action_size self.memory = deque(maxlen=2000) self.gamma = 0.85 self.epsilon = 1.0 self.epsilon_min = 0.01 self.epsilon_decay = 0.995 self.learning_rate = 0.005 self.model = self.create_model() self.target_model = self.create_model() self.target_model.set_weights(self.model.get_weights()) def create_model(self): model = Sequential() model.add(Flatten(input_shape=(self.state_size,))) model.add(Dense(24, activation='relu')) model.add(Dense(24, activation='relu')) model.add(Dense(self.action_size, activation='linear')) return model def remember(self, state, action, reward, next_state, done): self.memory.append((state, action, reward, next_state, done)) def act(self, state): if len(self.memory) > 1000: self.epsilon *= self.epsilon_decay if self.epsilon < self.epsilon_min: self.epsilon = self.epsilon_min if np.random.rand() <= self.epsilon: return random.randrange(self.action_size) return np.argmax(self.model.predict(state)[0])