2023-02-01から1ヶ月間の記事一覧

AtCoder Beginner Contest 291 問題A、Bで調べたこと

プログラムはpythonでやっている。 問題A 「文字」.isupper()で「文字」が大文字ならTrueを返す。これをif文に入れれば問題Aは解ける。問題B ・LをリストとするとL.sort()で値が小さい順にできる。 ・del L[:N]で0からNまで(始めからN文字目という意味)を消…

AtCoder Beginner Contest 291 問題Cの失敗例と正解例

問題はhttps://atcoder.jp/contests/abc291/tasks/abc291_cを参照。まず失敗例から書いていく。私が考えたのは(0,0)を00と2桁の数で表そうとした。つまり10の位がx座標で1の位がy座標である。そしてlというリストに入れていき、if len(l)==len(set(l)):で重…

arc157 Aの勉強

この内容はhttps://atcoder.jp/contests/arc157/editorial/5781を参考にした。 XXの個数をA個、XYをB個、YXをC個、YYをD個とする。まず初めの文字とと終わりの文字を決めて考える。考えるのは次の4つとなる。 例えばX..YのときB-C=1となる(XYXYなど)。逆の…

pythonではじめる機械学習の勉強 2.3.3.6  In[46],In[47],In[48]についてと2.3.4

2.3.6では多クラス分類をする。ここで使うデータはガウス分布に従う2次元データである。 In[46] これはfrom sklearn.datasets import make_blobsでmake_blobsデータを使う。X,y=make_blobs(random_state=42)とする。 Xは [[-7.72642091 -8.39495682] [ 5.453…

pythonではじめる機械学習の勉強 In[41]からIn[45]について

LogisticRegressionをcancerデータに使ってみる。ここでC(大きいと正則化が弱まる)を色々と変えてみる。デフォルトのC=1では適合不足しているのでC=100に増やす。In[44]で様々なCに対しての重みの大きさをプロットする。 In[44]について plt.xticks(range(ca…

atcoder ABC290の勉強 

連続部分列 連続した列の部分。例えばL=[1,2,3]だと(1),(2),(3),(1,2),(2,3),(1,2,3)となる。(1,3)は連続していないので入らない。 木 頂点がN個、頂点を結ぶ線がN-1個のグラフのこと(閉路がない)。 また木の直径とは頂点と頂点の間の最大の距離をいう。 次…

pythonではじめる機械学習の勉強 2.3.3.5クラス分類、線形モデルについて

線形モデルの分類はy=w[0]*x[0]+...+w[p]*x[p]+b>0。これは線形回帰と違いyが0より大きいか判断する。 線形クラス分類はロジスティクス回帰と線形サポートベクタマシーンがある。ロジスティクス回帰は回帰とあるが分類である。 これらのモデルにはパラメー…

pythonではじめる機械学習の勉強 In[33],In[38]について

In[33] plt.plot(ridge.coef_,'s',label='Ridge alpha=1')の's'はマークを四角にする。 plt.hlines(0,0,len(lr.coef_))は水平線を引く。引数は(y,xmin,xmax)でそれぞれ水平線を引くyの値、水平線のはじめ、水平線の終わりである。 またこの図はalpha=10では…

pythonではじめる機械学習の勉強 2.3.3章

通常最小2乗法はデータと直線の点の差の2乗が最小になるように直線が引かれる。またfrom sklearn.linear_model import LinearRegressionで使うことができる。これは特徴が多いとき有効であるが過剰適合してしまう。 よって次に過剰適合を解決するためにリッ…

pythonではじめる機械学習の勉強 p44のIn[23]のline=np.linspace(-3,3,1000).reshape(-1,1)、ax.plot(X_train,y_train.'^',c=mglearn.cm2(0),markersize=8)、 ax.plot(X_test,y_test.'v',c=mglearn.cm2(1),markersize=8)について

line=np.linspace(-3,3,1000).reshape(-1,1)のnp.linspace(-3,3,1000)は-3から3の間で1000個値を作る。具体的にはnp.linspace(-3,3,1000)は [-3. -2.99399399 -2.98798799 -2.98198198 -2.97597598 -2.96996997 -2.96396396 -2.95795796 -2.95195195 -2.9459…

pythonではじめる機械学習の勉強 p39のIn[16]について

fig,axes=plt.subplots(1,3,figsize=(10,3))figが描画の領域全部のことでaxesが1つ1つの図を意味する。また引数は描画の領域が1つ、図が3つ、figsize(10,3)は描画の領域のサイズが横縦、10:3の比率を表す。 for n_neighbors,ax in zip([1,3,9],axes):n_neigh…

「pythonではじめる機械学習」の勉強 p34のIn[5]のfor n,v in zip(cancer.target_names,np.bincount(cancer.target))について

cancer.target_namesの中身は ['malignant' 'benign']。 cancer.target中身は [0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 1 1 1 1 1 0 0 1 0 0 1 1 1 1 0 1 0 0 1 1 1 1 0 1 0 0 1 0 1 0 0 1 1 1 0…