2020年11月5日木曜日

word2vec (pythonライブラリ編)

 pythonのライブラリを使って、word2vecを行う方法。

pip3 install gensim

pip3 install word2vec

でインストールする。

・機械学習のためのスクリプト

from gensim.models import word2vec
import logging
import sys

logging.basicConfig(format='%(asctime)s : %(levelname)s : %(message)s', level=logging.INFO)

sentences = word2vec.LineSentence(sys.argv[1])
model = word2vec.Word2Vec(sentences,
                          sg=1,
                          size=100,
                          min_count=1,
                          window=10,
                          hs=1,
                          negative=0)
model.save(sys.argv[2])

これをtrain.pyと名付けて実行する。 (実行できなければ、chmod 755 train.pyで実行許可を与える。)

python3 train.py TEXT.txt TEXT.model

(python3でtrain.pyを実行し、TEXT.txtを機械学習する。その後、TEXT.modelとしてアウトプットする。)

計算が終わったら、以下のスクリプト(similars.py)で類似の高い語を抜き出してみる。

from gensim.models import word2vec
import sys

model   = word2vec.Word2Vec.load(sys.argv[1])
results = model.most_similar(positive=sys.argv[2], topn=10)

for result in results:
    print(result[0], '\t', result[1])


使い方

python3 similars.py TEXT.model AAA

(AAAは調べたい単語)


参考リンク:Pythonで「老人と海」をword2vecする



 

 

 

 

2020年11月4日水曜日

Windows Powershell

 Windows Powershell とPowershell ISEの違い

ISEは「Integrated Sripting Environment」の略。

スクリプト開発にはPowershell ISEを使い、対話モードなどでは、通常のPowershellを使うと良いらしい。

参考リンク

2020年11月3日火曜日

Python:ファイルへの書き込み

パターン1 
fout = open('sample.txt','w')
fout.write('123456')
fout.close()
ポイント
・最後に必ずclose()する。 
 
パターン2
with open ('sample2.txt', 'w') as f:
print('123456', file = f) 
ポイント
・printの行はインデント下げを行う。 
・最後のcloseは要らない。(f.close()をつけてもよい) 
 

 

indioのグリスアップ

ロックダジュールindioの前後輪グリスアップを行った。

2020年10月27日火曜日

t-sneの練習

 リンクから、ソースコードをそのまま、google colaboratoryにコピペしてみた。

 

from sklearn import random_projection
from sklearn.manifold import TSNE
import numpy as np
import matplotlib.pyplot as plt
from sklearn import datasets

digits = datasets.load_digits()

X_TSNEprojected = TSNE(n_components=2, random_state=0).fit_transform(digits.data)
X_Gprojected    = random_projection.GaussianRandomProjection(n_components=2).fit_transform(digits.data)
X_Sprojected    = random_projection.SparseRandomProjection(n_components=2).fit_transform(digits.data)

plt.scatter(X_TSNEprojected[:,0], X_TSNEprojected[:,1], c=digits.target,alpha=0.5, cmap='rainbow')
plt.colorbar()
plt.show()
plt.scatter(X_Gprojected[:, 0], X_Gprojected[:, 1], c=digits.target, cmap='rainbow')
plt.colorbar()
plt.show()
plt.scatter(X_Sprojected[:, 0], X_Sprojected[:, 1], c=digits.target, cmap='rainbow')
plt.colorbar()
plt.show()
 
得られたマッピング結果
 


高次元のデータを可視化するt-SNEの効果的な使い方

 

2020年10月16日金曜日

Pythonによるファイルの呼び出し

 #! /usr/bin/python3

f = open("sum10b.txt", "r", encoding="utf_8")
lines = f.read()
print(lines)
f.close()

ポイント

・ファイルをひらくopen()のオプションについて、"r", encoding="utf_8"は標準オプションなので、省略可能。

・最後にf.close()でファイルを閉じる

2020年10月15日木曜日

windows上でPythonスクリプトを走らせた後にすぐに閉じないようにする方法

 Windowsのidleでpythonスクリプトを走らせると、プログラム終了後windowが閉じてしまい、実行を確認できない。

対策として最後にinput()を書いておくと、キーボードを押すまでwindowが閉じなくなる。

 

#! python3

print('hello')

input()

2020年10月13日火曜日

Ubuntuでデフォルトで起動するOSを変更する

1.起動メニューで自分がデフォルトにしたいOSは何番目かを見る

2.sudo grub-set-default X

      (X: 0~ 最初は1ではなく、0から始まります。)

3.  sudo update-grub (これをしないと設定ファイルの変更が反映されない)

 

おまけ:次回のみ起動を変更する場合

  sudo grub-reboot X



2020年10月12日月曜日

windowsでのpythonコマンド

 windows上のpythonコマンドをcmdから実行するときは、pathが通っていないので、py -mを冒頭につける。

参考

pythonライブラリのインストール



2020年9月11日金曜日

給油(アウトバック)

 レギュラーガソリン50.08L給油。122円/L。ODO:66210km, Trip:436.6km。8.72km/L