文章生成にいきなり試してみたけどエラーばっかり出てうまくいかないので、簡単な例題を試してみることにした。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
from sklearn.datasets import load_iris from sklearn.model_selection import train_test_split import torch ls = [[1,2,3], [4], ['a','b','c'], ['d', 'e'], [5,6,7]] print('ls: ', type(ls), '\n',ls) iris = load_iris() print('iris.data: ', type(iris.data), '\n', iris.data[0:5]) print('iris.target: ', type(iris.target), '\n',iris.target[0:5]) X_train, X_test, y_train, y_test = train_test_split(iris.data, iris.target) X_train = torch.from_numpy(X_train).float() y_train = torch.tensor([[float(x)] for x in y_train]) X_test = torch.from_numpy(X_test).float() y_test = torch.tensor(([[float(x)] for x in y_test])) print('X_train: ', type(X_train), '\n', X_train[0:5]) print('y_train: ', type(y_train), '\n', y_train[0:5]) |
ニューラルネットワークを使って、あやめの種類を判定する。 scikit-learnというパッケージに機械学習用のデータが用意されているのでインストール。
lord_irisで取り込んだデータやPyTorchで扱っている配列が普通の配列じゃないみたいなので、型名と内容を確認してみた。
lsは、Pythonの普通のリスト。 iris.data、iris.taragetは、numpy.ndarray。X_train、y_trainは、torch.Tensorとなっている。
サイトの解説によると、numpy.ndarrayは高速に演算できるようにした配列らしい。 また、tensorはtorchで使う多次元配列で変換用の関数が用意されている。
今日は、変数の型の確認だけ。