修改program.cs內容
using microsoft.ml;
using microsoft.ml.data;
using microsoft.ml.legacy;
using microsoft.ml.trainers;
using microsoft.ml.transforms;
using microsoft.ml.runtime.api;
using microsoft.ml.legacy.data;
using microsoft.ml.legacy.trainers;
using microsoft.ml.legacy.transforms;
using system;
using system.threading;
class program
// 步驟 1: 定義資料結構
// irisdata 用於提供訓練資料, 以及用於**操作的輸入。
// -前4屬性是用於**標籤的輸入/特徵
// -標籤是你所**的, 只有在訓練時才設定
public class irisdata
[column("0")]
public float sepallength;
[column("1")]
public float sepalwidth;
[column("2")]
public float petallength;
[column("3")]
public float petalwidth;
[column("4")]
[columnname("label")]
public string label;
// irisprediction 是**操作返回的結果
public class irisprediction
[columnname("predictedlabel")]
public string predictedlabels;
static void main(string args)
// step 2: 建立類並載入資料
var pipeline = new learningpipeline();
// 注意檔案命名
string datapath = "iris.data.txt";
pipeline.add(new textloader(datapath).createfrom(separator: ','));
//步驟 3: 轉換資料
// 將數值分配給 "標籤 " 列中的文字,
// 因為只有在模型訓練過程中才能處理數字
pipeline.add(new dictionarizer("label"));
// 將所有特徵放入向量中
pipeline.add(new columnconcatenator("features", "sepallength", "sepalwidth", "petallength", "petalwidth"));
// 步驟 4: 新增學習者
// 向類中新增學習演算法。這是乙個分類場景 (這是什麼型別?)
pipeline.add(new stochasticdualcoordinateascentclassifier());
// 將標籤轉換回原始文字 (在步驟3中轉換為數字後)
pipeline.add(new predictedlabelcolumnoriginalvalueconverter() );
// 步驟 5: 基於資料集對模型進行訓練
var model = pipeline.train();
// 步驟 6: 使用您的模型進行**
// 您可以更改這些數字來測試不同的**
var prediction = model.predict(new irisdata()
sepallength = 3.3f,
sepalwidth = 1.6f,
petallength = 0.2f,
petalwidth = 5.1f,
console.writeline($"predicted flower type is: ");
thread.sleep(3000);
ok,執行它吧。
列印出超引數和結果
輸出結果了呢。
機器學習之多元分類(機器學習基石)
如上圖所示我們要使用一些線性模型來分割這四種不同的圖案,利用以前學過的二元分類我們可以將某乙個種類分別從整體中分離出來。比如將圖通是方塊和不是方塊的做二元分類,是三角形的和不是三角形的進行分類等等,然後我們得到下圖 如上圖所示我們在單獨的分割中可以分別將我們想要的目標圖案分割出來,但是我們將這些圖示...
機器學習 連續域分類 機器學習 分類和聚類
機器學習 分類和聚類 分類和回歸 邏輯回歸和knn 1 分類 使用已知的資料集 訓練集 得到相應的模型,通過這個模型可以劃分未知資料。分類涉及到的資料集通常是帶有標籤的資料集,分類是有監督學習。一般分為兩步,訓練資料得到模型,通過模型劃分未知資料。2.聚類 直接使用聚類演算法將未知資料分為兩類或者多...
文字分類 機器學習方法
不好意思最近事情有點多下次在完善一下 匯入常用包 import random import jieba import pandas as pd from sklearn.model selection import train test split from sklearn.feature extr...