読者です 読者をやめる 読者になる 読者になる

紙媒体で管理するとなくなりがちなのでブログで進捗などを管理することにしました
※殆どの記事は自分自身のためだけにかいています.他人に見せられるレベルには至っていません...

【ネットワーク】お勉強19

フロー制御はTCPのプロトコルで, 相手のバッファが溢れないようにするもの. 相手のバッファに溜まっている量を見て満杯そうだったらあまり送らないようにする. 逆に空いているときは一気に送りつける. 一気に送りつけれる量のことをウィンドウサイズという.T…

【Ubuntu】ショートカット

Alt+Tabでアプリケーションウィンドウの切り替えが便利 ubuntu.hatenablog.jp

【Python】【OpenCV】n*m のランダムな色の画像を作成

# vim: set fileencoding=utf-8 : import numpy as np import cv2 from random import randint import numpy as np cols = 320 rows = 320 #イメージ生成 image = np.zeros((rows, cols, 3), np.uint8) div = 16 # 縦横の分割数 w = cols / div # 分割された…

【並行処理】【Python】

プロセス間の同期 multiprocessing.Lock()を用いると標準出力に書き込んだ場合は一度に一つのプロセスしか書き込まない. from multiprocessing import Process, Lock def f(l, i): l.acquire() try: print('hello world', i) finally: l.release() if __name…

【並行処理】【Python】プロセスについて

Processクラス multiprocessingクラスでのプロセスの手順 Processのオブジェクトを作成 start()メソッドの呼び出し join()で処理が完全に終わるまで待つ Process()クラスの呼び出しで引数はtargetに実行したい関数名,argsにtargetに入れる引数を入れる.一つ…

【Python】コマンドライン引数

コマンドライン引数はsys.argvで操作することができる. 先頭は自身のプログラムの名前となることに注意. #sample.py import sys print("コマンドライン引数:",sys.argv) $python sample.py a b cコマンドライン引数:['sample.py','a','b','c']

【ネットワーク】お勉強18

【第40回】TCP シーケンス番号 MSS TCP/IPではデータが長い場合は分割して送信する. その分割するサイズがMSS. 送信は元のデータと同じ順序で送る. この時に使うのがシーケンス番号. データを転送する際にはシーケンス番号に送るデータの先頭番号を入れる. …

【Linux】ハードリンクを作る

/mnt/nasというディレクトリをカレントディレクトリでNASという名前でハードリンクを作る場合 $ln -s /mnt/nas NAS

【ネットワーク】お勉強17

【第31回】Layer3 Routing ルーティング ルータは最適なルートを見つけるために他のネットワークへのルートを知る必要がある. 更に知ったルートの中から最適なものを選んでルーティングテーブルを作成する. ルートの知り方は2種類あり静的ルーティングと動的…

【ネットワーク】お勉強16

【第27回】 プロトコルと帯域幅 通信には4つのアドレスが必要でそのアドレスの確認方法は以下である. アドレス 取得方法 送信元のMACアドレス 既に決まっている 送信元のIPアドレス DHCP 宛先IPアドレス DNS 宛先MACアドレス ARP 【第28回】Layer3 Router ル…

【ネットワーク】お勉強15

【第25回】Layer7 DHCP 自分のIPアドレスを動的に取得する場合に必要 DHCP概論 DHCPは割り当てるIPアドレスを管理し,実際に割り当て作業を行うサーバーと割り当ててもらうクライアントから成り立つ. DHCPを行うサーバーをDHCPサーバーという.DHCPサーバーソ…

【Linux】 自分の端末のMACアドレスを知る

MACアドレスはNICについている世界でユニークなアドレスである. 上位24bits=3bytesがベンダー番号 下位24bits=3bytesが製造番号 Linuxで調べるには $ifconfigUbuntuの場合は「ハードウェアアドレス」として見ることができる.

【ネットワーク】お勉強14

【第23回】Layer3 サブネットマスク プライベートアドレス インターネットでのIPアドレスはICANNとNICがネットワーク番号を割り振っている. 裏を返せば,インターネットへの接続を考えないネットワークならばICANNのクラスフルアドレッシングに従う必要はない…

【ネットワーク】お勉強13

【第20回】レイヤ3 Internet Protocol TCP/IP TCP/IPという現在標準で使われているプロトコルではレイヤ3はIPが受け持つ.Layer3 Protocol TCP/IP以外でよく用いられているプロトコルはIPX/SPXやAppleTalk. レイヤ3プロトコルがパケットの転送を受け持つ. ま…

【ネットワーク】お勉強12

【第19回】レイヤ3 Network層 Network層での「ネットワーク」という意味は計算機やデバイスが相互に接続した論理的なグループ, つまり所属している場所という意味. レイヤ2Datalink層での通信は「そのネットワーク内での相互通信」,レイヤ3Network層では「ネ…

【ネットワーク】お勉強11

【第18回】Datalink層 スイッチ スイッチ レイヤ2に属するスイッチを一般的にスイッチングハブという. ※ブリッジの機能はMACアドレスでフィルタリングする. ブリッジを通過するフレームか通過させないフレームかを判断する. スイッチもブリッジと同様にMACア…

【ネットワーク】お勉強10

【第16回】IEEE802.5とFDDI ethernetの意味 ethernetのetherとは「エーテル」と言う意味 エーテルとは古い物理学でひかり熱などの媒体とされた伝説上の物質 信号が全体に伝わっていく様がエーテルのようなのでEthernetというらしい.トークンパッシング IEEE8…

【環境設定】【Anaconda】Anacondaのアンインストール

$sudo rm -rf /home/username/anaconda2

【環境構築】【Linux】Python2.x にOpenCVを入れる

avinton.com

【TeX】jlisting, listingsを入れる

ラボのPCにTeX環境を引き継ぐにあたってしたこと 1.texmakerのインストール $sudo apt-get install texmakerこれでlatexの環境はほぼ構築できる.2.listings, jlistingsを入れる コードをのせるときに役立つやつ $sudo cp /usr/share/texlive/texmf-dist/tex/…

【Python】関数の返り値について

PythonではNone,False,0,"",[]などがFalseに評価されるので関数の返り値としてNoneを返すのはバグを起こしやすい. Noneを返すよりは例外処理するほうが良い,さらに呼び出しの部分で例外処理の結果を明らかにしておくことが望ましい. def divide(a,b): try: r…

【Windows】【Python】Anaconda2にOpenCVを入れる

opencv.org ここからWinPackを選択してダウンロード,インストール Anaconda2\Lib\site-packages\にダウンロードしたファイルのopencv\build\python\2.7\x64\cv2.pydをコピーする.

【ネットワーク】お勉強9

【第15回】Datalink層 イーサネットの拡張 イーサネットのおさらい つながっているすべてのノードへフレームを送りつけるブロードキャスト型 CSMA/CDでアクセス制御をしている. イーサネットでは衝突が起こる.半二重,全二重 イーサネットでは誰かが送信中は…

【ネットワーク】お勉強8

【第14回】イーサネット/IEEE802.3 イーサネットのフレーム構造 イーサネットはLANの規格として同軸ケーブル(10Mbps),CSMA/CDアクセス制御方式,バス,スター型物理トポロジを使用する.レイヤ2でレイヤ3から来たパケットに加える情報は 8バイト 6バイト 6バイ…

【ネットワーク】お勉強7

【第13回】Datalink層 レイヤ2アドレッシング アドレスには論理アドレスと物理アドレスがある. 論理アドレスはレイヤ3の物理アドレスはレイヤ2の役割を持つ.物理アドレスはメディアに直接接続されている誰に届けるのかを識別するために使う. 論理アドレスは…

【ネットワーク】お勉強6

【第12回】Datalink層 概要 Datalink層の機能:データの伝送制御 IEEEのLAN仕様ではレイヤ2を更に2つに分けている. 論理リンク制御副層(LLC)とメディアアクセス制御副層(MAC)LLC副層では実際の危機に依存しない部分を取り決めている. エラー制御(レイヤ4でも…

【ネットワーク】お勉強5

【第10回】Physical層リピータ・ハブ 大まかな説明:信号を増幅したり分配する役割リピータは弱まったりノイズが入った信号を増幅や整形をして元の信号と同じ強さ,同じ形に直す役割をする. 信号を増幅するだけで制御はしない.ハブは別名マルチポートリピータ…

【ネットワーク】お勉強4

【第8回】Physical層,信号と回線について 信号には2種類ありデジタルとアナログである. 電話はアナログ信号でやり取りを行う. 信号は回線の種類に依存する. 一般電話回線を使用して通信する場合はMODEMを要する. デジタル回線ではISDNが有名.電気信号には障…

【ネットワーク】お勉強3

【第7回】LANの機器 プリンタやPCのことをホストという. ケーブルのことをネットワーキングメディアという.ケーブルとPCをつなぐ機器をNICという. これはニックと言い, PCのM/BのPCIスロットに差し込むLANボードのことである.ネットワーキングデバイスの役割…

【ネットワーク】お勉強2

【第6回】OSI参照モデルのデータの流れ 送信元から宛先へ送るとき,運びたいものをデータ,それを入れたダンボール全体をデータユニットという. 送信処理(宛先を書いたり,ダンボールに入れたりする)の理由はデータを守ったり,運びたい場所を指定するため.つま…

【ネットワーク】お勉強1

【第3回】 プロトコル ネットワークの約束事 TCP/IP プロトコルの一種で最も有名 帯域幅 毛0ブルの性能規格を説明するときに使う言葉で本来の意味は使用できる周波数,最近はデータ転送速度を指す bps 一秒間に何ビット送れるかの単位 【第4回】 OSI参照モデ…

【環境設定】Ctrl + Spaceで日本語入力

「定義済みのキーマップからインポートで好きなものをインポート(任意)」と書いてあったがMS-IMEでないとうまくいかなかった. また設定後新しいアプリケーションから設定が有効になるので注意. d.hatena.ne.jp

【GIMP】画像サイズ変更

拡大縮小ツールを使う 画像をクリックして,したい画像のサイズを入力 synclogue-navi.com

【GIMP】トリミング

切り抜きツールを用いて画像から切り取りたい範囲を選択 Enterでトリミングされる www.gimp2.net

【GIMP】背景透過

1.ファジー選択ツールで選びたい範囲を選択 2.Ctrl+Delで選択範囲を切り取る synclogue-navi.com

【Python】ループ中の要素の削除

for element in LIST: if ---: LIST.remove(element) for i,enumerate in LIST: if ---: del LIST[i] 上でValueErrorが出たが下で書きなおしたら出なくなった. 全体の処理的には同じ位置を削除するようにしたつもりだけど何故だろう.

k-means法 準備

k-means法で理想的な結果が出せるようにデータを予めプロットしておく方法 # -*- coding: utf-8 -*- impo from sklearn.datasets import make_blobs import matplotlib.pyplot as plt X,y = make_blobs(n_samples=150, #サンプル点の総数 n_features=2, #特…

Irisのデータプロット

# -*- coding: utf-8 -*- impo import pandas as pd import matplotlib.pyplot as plt import numpy as np #データの取得 df = pd.read_csv("https://archive.ics.uci.edu/ml/machine-learning-databases/iris/iris.data",header=None) df.tail() #1-100行目…

Tweepy

#!/usr/bin/env python # -*- coding:utf-8 -*- import tweepy CONSUMER_KEY = '-----------------------' # Consumer Key CONSUMER_SECRET = '-----------------------' # Consumer Secret auth = tweepy.OAuthHandler(CONSUMER_KEY, CONSUMER_SECRET) ACCE…

k-means法問題点

【k-means法の問題点】 空になるクラスタが存在する可能性があること.(Fuzzy C-means法(k-medoids)ではこの問題は生じない.) scikit-learnのk-means実装ではこの問題には対処できている. クラスタが空の場合,空のクラスタのセントロイドから最も離れているサ…

k-means法

k-means法はプロトタイプベース(prototype-based)クラスタリングというカテゴリに属している. アルゴリズムは以下の通りである.1.クラスタの中心の初期値として,サンプル点からk個のセントロイドをランダムに選びだす. 2.各サンプルを最も近いセントロイドに…

パターン識別

LBG+splitting εはセントロイドから最も遠い特徴ベクトルの1/100倍したベクトルの場合

【Calc】セル内改行

LibreOfficeCalcのセル内改行をするショートカット Ctrl + Enter

ABC022_C

頂点1を含まないグラフを考えてその最短経路を作れば良いと思ったが 頂点1を含まないグラフの作り方 == 頂点1に隣接している頂点の選び方O(N^2) dijkstra法O(N^2) よって全体でO(N^4)掛かってしまい案の定TLEだった. #include <bits/stdc++.h> using namespace std; static </bits/stdc++.h>…

ABC007_C

幅優先探索の問題 queueにいれて順番に計算していく. 座標を扱う際にtypedefが便利 typedef pair<int,int> P; que.push(P(x,y)); #include <bits/stdc++.h> using namespace std; int r,c,sx,sy,gx,gy; int dx[4] = {1,0,-1,0},dy[4] = {0,1,0,-1}; static const int MAX_R =50; stat</bits/stdc++.h></int,int>…

【c++】vectorの重複要素の削除

C++

unique()は配列の長さは変わらないため重複で削除された空きの場所にゴミが入る #include <bits/stdc++.h> using namespace std; void printVector(vector<int> &v){ for(int i=0;i<v.size();i++){ cout<<v[i]<<endl; } } int main() { vector<int> vec; vec.push_back(1); vec.push_back(2); vec.push_back(2); vec.push_back(3); vec.push_back</v.size();i++){></int></bits/stdc++.h>…

ABC019_C

2で割り切れたら割り続けて集合に入れる. 2で割り切るのは右ビットシフトと同義 a[i] /= 2; a[i] = a[i]>>1; a[i] =>>1;//これはダメ a[i]>>1;//これもダメ 解答 #include <bits/stdc++.h> using namespace std; #define ll long long int static const int MAX_N = 100000;</bits/stdc++.h>…

ABC030_C

飛行機で何往復できるかという問題 普通にやると大変なのでlower_bound()による二分探索を使った. lower_bound(a,a+n,value)はvalue以上の値の位置を返す. #include <bits/stdc++.h> using namespace std; int main(){ int a[5] = {1,3,5,7,9}; int* pos = lower_bound(a,a+</bits/stdc++.h>…

アニメop顔検出器+分類器

うまく分類できないなもっと精度あげたい pic.twitter.com/nEsDQc7Vio— 雨宿まち (@vocky_Zn) 2017年3月31日今後すること トレーニング画像の種類を増やす. 出力層の出力を増やして分類の数を増やす.

【python】ファイルの書き込み

追記でテキストファイルに書き込み f = open("test.txt","a") f.write("hoge\n") f.close() qiita.com