クラスタリング② ~KMeansアルゴリズム~

こんにちは!EMです^^

 

前回の続きになる、クラスタリング関連について
今回も取り上げていきたいと思います!

 

その中でも、KMeansアルゴリズムについて、勉強していきましょう。

 

 

KMeansアルゴリズム(The KMeans algorithm)

教師なしクラスタリングで最初に見るアルゴリズムは
KMeansアルゴリズムです。

アルゴリズム自体は sklearn.clusterの中にあります。

(参考になるドキュメントについては、こちらのURLをご覧ください。
http://scikit-learn.org/stable/modules/generated/sklearn.cluster.KMeans.html)

注目したいパラメーターは、クラスターの数n_clustersです。

デフォルト値は8に設定されています。

KMeansの使い方は、Scikit-Learn内の他のモデルを実行するのと同じです。

モデルを構築し、データに適合させてから、見えないデータを予測します。

データポイントでのモデルの予測はそのポイントが属すると思われるクラスターです。

まずラベルなしの前回の例を使って見てみましょう。

 

points_per_class = 100

#4つのクラスタリングを作っていきます.
mean = [5,5]
cov = [[1,0],[0,1]]
x_one = np.random.multivariate_normal(mean, cov, (points_per_class))
y_one = np.full*1
y_two = np.full*2
y_three = np.full*3
y_three = np.full*4
y_four = np.full((points_per_class),0)

X = np.concatenate((x_one,x_two,x_three,x_four),axis=0)
Y = np.concatenate((y_one,y_two,y_three,y_four),axis=0)

#Plot the data
plt.scatter(X[:, 0], X[:, 1], c=Y, s=20, edgecolor='k')

plt.show()
 
 

f:id:tennisfashionista:20210302020629p:plain

 

次にKMeansモデルを適合させましょう。

この場合、4つのクラスタリングに分けるのが妥当だといえるので4つと指定します。

 
 
from sklearn.cluster import KMeans

#モデルを特定し、数を指定する
k_means_model = KMeans(n_clusters = 4)
#データにモデルを当てはめる
k_means_model.fit(X);
 
 
 
それでは、データポイントの各々のグループの予測を行います。
 
 
Y = k_means_model.predict(X)
#Plot the data:
plt.scatter(X[:, 0], X[:, 1], c=Y, s=20, edgecolor='k')
plt.show()
 
 

f:id:tennisfashionista:20210302021406p:plain

 

 

これはかなり自然に色分けされたクラスタリングでしょう。

ぜひもっと複雑な例でも、実際にクラスタリングが動くがどうか試してみてください。

 

 

 

クラスタリングは、ビジネスの場面でもよく使われます!

もう少しだけクラスタリングについては、次回も取り上げようと思いますが
もっと実践に近い内容を学びたい!という方には、めちゃくちゃこのコースが体系的でおススメです。
 

 ↓↓
 
 
これは、実践のビジネスの場でデータを使えるように指導してくれる、社会人の為の講座です! 
ぜひサイトや無料説明会等で情報を見てみてくださいね^^
 
 
また詳しくは簡単にメリットデメリット等もまとめているので
よかったら下の記事も参考にしてください^^
 
 
最後まで読んで頂きありがとうございました。
 

*1:points_per_class),0)


mean = [-5,-5]
cov = [[1,0],[0,1]]
x_two = np.random.multivariate_normal(mean, cov, (points_per_class

*2:points_per_class),0)


mean = [0,0]
cov = [[0.25,0],[0,0.25]]
x_three = np.random.multivariate_normal(mean, cov, (points_per_class

*3:points_per_class),1)


mean = [4,-2.5]
cov = [[0.25,0],[0,0.25]]
x_three = np.random.multivariate_normal(mean, cov, (points_per_class

*4:points_per_class),0)


mean = [-6,2.5]
cov = [[0.25,0],[0,0.25]]
x_four = np.random.multivariate_normal(mean, cov, (points_per_class

クラスタリング②

こんにちは!EMです^^
 
今回は前回の続きとして、クラスタリングについて学んでいこうと思います。
 
 
この前は、一目でわかる比較的簡単なデータを使ったので
今日は少し複雑なデータを使っていこうと思います。
 
 
 
#いくつかのデータを作っていきます
mean = [3,3]
cov = [[1,0],[0,1]]
x_one = np.random.multivariate_normal(mean, cov, (points_per_class))
y_one = np.full*1
y_two = np.full*2
y_three = np.full*3
y_four = np.full((points_per_class),0)

X = np.concatenate((x_one,x_two,x_three,x_four),axis=0)
Y = np.concatenate((y_one,y_two,y_three,y_four),axis=0)

#Plot
plt.scatter(X[:, 0], X[:, 1], c=Y, s=20, edgecolor='k')
plt.show()
 

f:id:tennisfashionista:20210228232848p:plain

 
この表はどうやって分ける事ができるでしょうか?
前回の表に比べて、はっきりと線引きするのは難しそうですね。
 
 
 
#例1
y_one = np.full((points_per_class),1)
y_two = np.full((points_per_class),2)
y_three = np.full((points_per_class),3)
y_four = np.full((points_per_class),4)
Y = np.concatenate((y_one,y_two,y_three,y_four),axis=0)

plt.scatter(X[:, 0], X[:, 1], c=Y, s=20, edgecolor='k')
plt.show()

#例2.
y_one = np.full((points_per_class),1)
y_two = np.full((points_per_class),1)
y_three = np.full((points_per_class),2)
y_four = np.full((points_per_class),2)
Y = np.concatenate((y_one,y_two,y_three,y_four),axis=0)

plt.scatter(X[:, 0], X[:, 1], c=Y, s=20, edgecolor='k')
plt.show()

#例3
y_one = np.full((points_per_class),1)
y_two = np.full((points_per_class),3)
y_three = np.full((points_per_class),2)
y_four = np.full((points_per_class),2)
Y = np.concatenate((y_one,y_two,y_three,y_four),axis=0)

plt.scatter(X[:, 0], X[:, 1], c=Y, s=20, edgecolor='k')
plt.show()
 
 
 

f:id:tennisfashionista:20210228233519p:plain

 
上記のそれぞれの色分けは、クラスの数とクラスターの場所に対するありえそうな答えです。
ただ、どれが1番正しいかどうやってわかるのでしょうか?
 
このような表は、現実世界で多く見られるかと思います。
 
ビジネスでも、クラスターはよく使われるので、ぜひ使ってみてくださいね。
 
 
 
 
また今後もクラスターについて解説していこうと思いますが
もしもっと深く勉強したい!という方は、ぜひプロの講師にも力を借りてみてください。
 
 
 
これは、実践のビジネスの場でデータを使えるように指導してくれる
社会人の為のおすすめ講座です! 
ぜひサイトや無料説明会等で情報を見てみてくださいね^^
 
また個人的な意見ですが、簡単にメリットデメリット等もまとめているので
よかったらそちらも参考にしてください^^
 
 
最後まで読んで頂きありがとうございました。
 

*1:points_per_class),0)


mean = [1,1]
cov = [[1,0],[0,1]]
x_two = np.random.multivariate_normal(mean, cov, (points_per_class

*2:points_per_class),0)


mean = [-3,-3]
cov = [[1,0],[0,1]]
x_three = np.random.multivariate_normal(mean, cov, (points_per_class

*3:points_per_class),0)


mean = [-1,-1]
cov = [[1,0],[0,1]]
x_four = np.random.multivariate_normal(mean, cov, (points_per_class

【社会人の方必読!】未経験からたった6か月でデータサイエンティストになる方法

こんにちは!EMです^^

 

まもなく2月も終わりますね。

この前までお正月だったのに、もう2か月たった、、、
という方も多いのではないのでしょうか。

 

という事で、今回超絶変化の激しい2021年に、データサイエンティストの
スキルアップを通じて自分に自信を持ちたい!という方に必見な情報をお伝えします。

 

他にもこんな方にもぜひ見てもらいたいです。

 

・今までの社会人経験を活かして、転職や起業へのステップアップへ繋げたい

・データ分析だけでなく、ビジネスの幅広い問題解決をする方法を学びたい

・長い目で見たときに、金銭的な余裕がほしい
(データサイエンティストの平均年収は696万円です!求人ボックス2021年1月6日調べより

 

一つでも当てはまれば、ぜひ強くビックデータ時代の先導をきるスキルを
プロの力を借りて勉強する事を強くおススメします。

 

 ↓↓今回おススメなのはココ↓↓

 

データミックスという会社が提供している
「データサイエンティスト育成スクール」というコースがなかなか激熱です。

 

個人的に私が受講していたbrain stationという似たようなコースを比較すると

・働きながら受講できる
・少人数での指導
・勉強会やイベントへの参加ができる

 

といったところは同じでした。恐らく他のサービスも似ていると思います。

 

ただ、データミックスならではで、めっちゃいい!と思ったところがあります。

 

【メリット】

ケーススタディの量が多く、実践を想定している

・コース後のフォローアップや、OG/OBのネットワークを通じて転職支援がある

・一人ひとりの強みや弱みを活かした指導をしてくれる

 

私の学校は、ケーススタディが1件しかなく、あまり時間をかけてもらえなかったので
なかなか実践を意識して勉強するという事ができませんでした。

でもデータミックスは、逆に実践ありきの指導なので、複数のプロジェクト演習が
経験できる且つ、数週間の時間をかけてじっくり勉強する事が出来るようです。

 

また、現役のデータサイエンティストの講師の指導を受ける事が出来るのは
どの学校も共通かと思いますが、私の場合は1人の先生が指導していたので
絞られた業界の話しか聞くチャンスがありませんでした。

しかし、ここでは複数の講師陣がいるのと、OG/OBのコミュニティがあるというのが
魅力的です。

しかもコース後のフォローアップと転職支援があるというのはめちゃくちゃいいです。
実際お金と時間をかけて、仕事に繋がらなければ、多くの人にとって意味がないと
思いますし、コース卒業後にフォローがなければ、勉強した事を忘れる一方で
自力で学習するにもかなりのモチベーションが必要です。

言い方は悪いですが、周囲の人や成長できる環境に身をおく事ほど大切な事はありません。

 

さて、ここまでいいことばかりお伝えしてきましたが
ここはデメリットかな、、という内容もあったので、そこも隠さずにお伝えします。

 

 

【デメリット】

 

・フルコース(一括申し込み)は特に受講料の費用が高い

・コースを受講前に試験がある

・学習内容が幅広いので、本気で勉強するという覚悟が必要

 

こちらが唯一気になった点ですね。

他の学校は1対1の個別指導も売りにしているところもありますが
データミックスのサイトの「受講者の声」から
個々の質問に対しては手厚くサポートしてくれている印象を受けたので
個人的にはグループ学習でも特に問題はないかなと感じました。

2つ目の試験については、「python」と「統計」の知識が問われるそうです。
ただ、うからなくても次の募集でまた挑戦できるみたいですし
不安であれば入門コースやe-learning等のコースもあるようなので
それも併せると十分クリアできるのかなと思います。

 

 

 


個人的には1番ぎょっとしたのが、費用です。

f:id:tennisfashionista:20210226033614p:plain

 

もし、基礎だけ学びたいとか、ピンポイントで学びたいコースがあれば
一括ではなく各々のコースを受講してもいいかもしれません。

ただ、ぜひウェブサイトも見てほしいのですが、全てのコースを受講する際は
742500円かかります!!

6か月+その後のフォローと考えると他の学校とトントンかもしれませんが
それにしても少し慎重になってしまいますよね。

 

 

 

 

 

 

しかし、お金がネックになっている方には朗報があります!!!

一括申し込みを受講した方のみ、教育給付金として

最大70%返還されるという素敵な制度があるんです!!!

もちろん、出席率や成績などの基準はありますが、最大51万円

キャッシュバックされる可能性があるのです。

これは、データサイエンティストが不足している今だからこそ
厚生労働大臣から用意されているんでしょうね。

 

データサイエンティストを勉強したいと考えていた人にとっては
仮に全額払っても勉強する価値がある分野ですし
さらに給付金がもらえる可能性があれば
スモールゴールとして、努力のモチベーションもあがるのではないでしょうか。

 

一括申し込みをした人には さらに、満足保証という制度があり
万が一サービスに満足できなかった場合には返金できるという保証もあります。

 ※条件があるので、気になる方はサイトから詳細の確認をお願いします。

 

 

さて、どうでしたでしょうか?

詳細が気になる方は、オンライン説明会にぜひご参加くださいね^^

 ↓↓

 

 

 

最後まで読んで頂きありがとうございました!

クラスタリング

こんにちは!EMです^^

 

今回はクラスタリングについて解説していきます!

 

クラスタリング


クラスタリングとは、似たようなデータを同じグループに入れるモデルの適合です。

分類(従属カテゴリ変数を含むモデルの適合)は、クラスタリングの形式と
考えることができます。

ここでは、同じ従属変数ラベルを持つすべての点を同じグループに配置していきます。

カテゴリラベルに加えて、類似性の尺度は色んな方法で分ける事が出来る
可能性があります。

例えば、身長や顧客の消費習慣に基づいて人をグループ化する事もあります。

次の章でも触れていきますが、合理的なクラスターが何であるか
分かりやすい概念についても見ていきましょう。

 

 

 

 

ラベルなしデータのクラスタリング

 

次に、ラベルのないデータをクラスター化する方法を見ていきます。

基本的に、これはラベルのない(答えのない)データを同じグループに分割すること
を意味します。

データに予めラベルが付けられている場合、グループ分けは簡単でしょう。

まず、いくつかのラベルのないデータを作成していきましょう。

今回は視覚化しやすいために、2次元に制限します。

 

points_per_class = 100
#クラスタの個数kを指定しなければならない↑

#Generate four clusters.
mean = [5,5]
cov = [[1,0],[0,1]]
x_one = np.random.multivariate_normal(mean, cov, (points_per_class))
y_one = np.full*1
y_two = np.full*2
y_three = np.full*3
y_three = np.full*4
y_four = np.full((points_per_class),0)

X = np.concatenate((x_one,x_two,x_three,x_four),axis=0)
Y = np.concatenate((y_one,y_two,y_three,y_four),axis=0)

#Plot the data
plt.scatter(X[:, 0], X[:, 1], c=Y, s=20, edgecolor='k')

plt.show()
 
 

f:id:tennisfashionista:20210227025154p:plain

 
 
各データポイントのクラスラベル(色)はありませんが
パッと見てデータが分割していることが分かります。
4つのクラスターがあり、それぞれがデータの異なるクラスだといえるでしょう。
 
 
#ラベルを加える
y_one = np.full((points_per_class),1)
y_two = np.full((points_per_class),2)
y_three = np.full((points_per_class),3)
y_four = np.full((points_per_class),4)

Y = np.concatenate((y_one,y_two,y_three,y_four),axis=0)

#Plot
plt.scatter(X[:, 0], X[:, 1], c=Y, s=20, edgecolor='k')
plt.show()
 
 
 

f:id:tennisfashionista:20210227025939p:plain

 
 
上記の例は簡単に分割でき、データを視覚化できたので、かなり明確な境目がありました。
 
しかし、実際のデータはもっと判別がつきにくいものが多いです。
 
次回は少しまぎらわしい例も併せてみてみましょう。
 
 
 
もっと本格的に勉強したい!という人は、ぜひ現役プロの力を利用して
効率的に勉強する事をオススメしています。
 
 
 
 
ぜひ無料説明会等で話を聞いて、検討してみてくださいね^^
 
 
最後まで読んで頂きありがとうございました。

*1:points_per_class),0)


mean = [-5,-5]
cov = [[1,0],[0,1]]
x_two = np.random.multivariate_normal(mean, cov, (points_per_class

*2:points_per_class),0)


mean = [0,0]
cov = [[0.25,0],[0,0.25]]
x_three = np.random.multivariate_normal(mean, cov, (points_per_class

*3:points_per_class),1)


mean = [4,-2.5]
cov = [[0.25,0],[0,0.25]]
x_three = np.random.multivariate_normal(mean, cov, (points_per_class

*4:points_per_class),0)


mean = [-6,2.5]
cov = [[0.25,0],[0,0.25]]
x_four = np.random.multivariate_normal(mean, cov, (points_per_class

【機械学習】教師なし学習-KMeans・ラベルなしデータ

こんにちは!EMです^^

 

今日からは教師なし学習について解説していきたいと思います!

機械学習に興味がある方なら、一度は聞いたことのある単語ではないでしょうか。

 

さっそく教師なし学習とはなにか、どうやって使うのかを見ていきましょう!

 

 

教師なし学習-KMeans


すべての統計と機械学習モデリングは、独立変数(観測値または特徴のセット)と
従属変数(結果)を持つデータに基づいています。

独立変数が従属変数を生じさせるある程度の出てきた効果を
私たちはゴールとして言い換えることができますが
この効果をどのようにモデル化して理解していくのでしょうか?

これまで、従属変数がどのように見えるか、それが取ることができる値の範囲
モデルを適合させるデータ(トレーニングセット)にどのような値がかかるかを
既に理解できているものだという前提を仮定しています。

また上記の内容は、答えありきのデータを使用して学習するという事で
教師あり学習として広く知られています。

 

そして今回からは、教師なし学習を学びます。

従属変数の値がないモデルを適合させる方法です。

 

 

それではいつも通り、パッケージをインポートしていきましょう。

 

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import sklearn as sk

from sklearn.metrics import accuracy_score
from sklearn import model_selection, metrics, linear_model, datasets, 
           feature_selection
 
 
 

ラベルなしデータ(Unlabeled Data)


ラベルなしデータとは、従属変数の値がわからないデータで
予想よりも頻繁に発生する可能性があります。

データにラベルを付けられない、いくつかの理由があります。

 

1.データが不適切に収集された場合(欠落または不正確なラベル)
2.データにラベルはないが、パターンが見つかる可能性がある場合
3.データには基礎となるパターンがあるが、これまでに遭遇したことがない為
  注釈をつける事が難しい場合


いずれの理由でも、ラベルなしデータを処理および分析する方法を見つける必要があります。

 

 

今回は短いですが、ここで一区切りしようと思います。

次回以降はクラスタリング・PDA等を見ていく予定なので、盛沢山ですよ~!

 

ちなみに、今後データサイエンスを通じて、転職やキャリアップを考えている方に
ぜひ検討してみてほしいのがこちらです!

 

 ↓↓データミックス

 

かなり口コミもよさげで、講師陣も現役バリバリの人ばかりみたいです。

 

気になる方は、このデータミックスが提供しているコースの
メリットデメリット等も解説してみたので、併せてこの記事も参考にしてみてください^^

 ↓↓

machinelearningforbeginner.hatenablog.com

 

 

 

それでは最後まで読んで頂きありがとうございました~^^

機械学習エンジニアってなんだろう?

お久しぶりです!EMです^^

 

2月も半分が過ぎてしまいました。早いですね~。

私が住んでいるトロント市は現在ロックダウンしており

その上今週から非常事態宣言も発表されて、ますますコロナの厳戒態勢が

強まっていました。

ただ、周辺の地域はロックダウンが解除されつつあるのと
ワクチンも少しずつ普及しているみたいなので

どんどん状況が改善されるといいですね。

 

さてさっそくですが本題です!

 

 

今回は他の人がどの様にして、機械学習エンジニアとして

実際どんな事をしているのか、海外の記事を参考にしながら

読み解いていきたいと思います。

国によってはエンジニアの仕事も様々だと思うので、日本やそれぞれの会社によっては

全く同じことがいえるかどうかは分かりませんが、参考程度にぜひ読んでみて下さい!

 

今回はこちらの記事を参考にしているので、英語の勉強がてら

併せて見てみて下さいね。(本記事は下の記事の一部を取り上げています。)

How to become a Machine Learning Engineer in 2020 | by Jeffrey Luppes | Towards Data Science

 

さっそく悲報ですが、私がたまにカナダの求人を眺めていても

あまりMachine learning engineerとして、機械学習エンジニアの超エキスパートを

求めている企業はあまりない、という印象があります。

多いのはdata scientistやsoftware engineerの求人で高ポイントになる1つのスキルとして

ML(機械学習)が使えれば尚好し!みたいな位置づけをされている事が多いです。

 

そんな中で、下の表は一般的なMLエンジニアが行っている一連の流れです。

生のデータから実際に使えるデータとして加工される内容を

ざっくり表しています。

 

真ん中の小さな黒い四角が見えますか?

四角の大きさが、全体の流れの割合も表しているのでしょう。

MLエンジニアは毎日毎時間、MLのコードを書いて、モデルやアルゴリズムを試行錯誤している訳ではなさそうです。実際は仕事の5~10%の割合みたいですね。

 

Image for post

 “Hidden Technical Debt in Machine Learning Systems” by Scully et al. (2015)

 

さらに、MLエンジニアとは一体どんな事をしているのか?という定義がこちらです

…A person called a machine learning engineer asserts that all production tasks are working properly in terms of actual execution and scheduling, abuses machine learning libraries to their extremes, often adding new functionalities. (They) ensure that data science code is maintainable, scalable and debuggable, automating and abstracting away different repeatable routines that are present in most machine learning tasks. They bring the best software development practices to the data science team and help them speed up their work…

— Tomasz Dudek in But what is this “machine learning engineer” actually doing?

 

google先生の直訳は下記です。

…機械学習エンジニアと呼ばれる人は、すべての本番タスクが実際の実行とスケジューリングに関して適切に機能していると主張し、機械学習ライブラリを極限まで悪用し、多くの場合、新しい機能を追加します。 (彼らは)データサイエンスコードが保守可能、スケーラブル、デバッグ可能であることを保証し、ほとんどの機械学習タスクに存在するさまざまな反復可能なルーチンを自動化して抽象化します。 彼らは最高のソフトウェア開発プラクティスをデータサイエンスチームにもたらし、彼らの仕事をスピードアップするのを助けます…

 

 要は、MLエンジニアはデータサイエンティスト達のモデルを改善して

より良い精度かつスピードアップを図っていく事が、一般的な位置づけの様です。

 

先日のThe Social Dilemmaの映画の内容でもありましたが

特にビックデータを扱っている大企業は、ディープラーニングや

リコメンダ―システムを駆使していて、顧客の興味をひいているので

MLエンジニアがデータサイエンティストや企業そのものを根底からサポートしている

と言っても過言ではないような気がします。

 

今後はますますビックデータを扱いたい企業や団体が出てくると思うので
MLエンジニアの需要も増えていきそうですね。

 

 

 

ちなみに、今後MLエンジニアやデータサイエンスを通じて
転職やキャリアップを考えている方にぜひ検討してみてほしいのがこちらです!

 

 ↓↓データミックス

 

かなり口コミもよさげで、講師陣も現役バリバリの人ばかりみたいです。

 

気になる方は、このデータミックスが提供しているコースの
メリットデメリット等も解説してみたので、併せてこの記事も参考にしてみてください^^

 ↓↓

machinelearningforbeginner.hatenablog.com

 

 

 

それでは今回はここまでです。

最後まで読んで頂きありがとうございました!

分類アルゴリズム~決定木~おまけ編

こんにちは!EMです^^

 

今回は分類アルゴリズム関連の知って得する知識を
さらっと学んでいこうと思っています!

 

 

分類アルゴリズムのヒント(Classification Tips)

 

高いカーディナリティ(high cardinality)

機械学習の世界では、「カーディナリティ」とは、特徴(feature)が想定できる
ありうる限りの値の数を指します。

たとえば、変数「US State」は、50通りの可能性を持つ値の変数です。

 

それを踏まえた上で、列のカーディナリティが高い場合
その列にはユニークな値が高い状態にあると言えます。

例えばカーディナリティの高い「列50」のデータを使用すると
情報が多すぎて一般化できない可能性が高く
トレーニングデータを過学習する可能性が高くなります。

 

 

高いカーディナリティへの対応方法

 

高いカーディナリティの一例として、郵便番号があげられます。

今回は郵便番号に焦点を当てた対応法としては

 

・ドメイン知識を使用して、これらの特徴を地域などのカーディナリティが
 低いグループとして分けていきます。
(米国北東部などは、人気がある地域なのか?低いカーディナリみたいです)
*ドメイン知識とは、特定の分野の知識や理解、トレンドなどの情報です

 

・最も頻度の高い値(トップ10など)をピックアップし
 残りを「その他」としてグループ化します

 

アンバランスなクラス(Unbalanced classes)

ターゲット変数の分布がかなり偏っている場合(たとえば、1が異常に少なく、0が多い場合)
モデルのパフォーマンスを検証するために使用される一般的なメトリックが破棄されます。

たとえば、1クラスの発生率が1%しかない場合、全部0だと呼ぶことが出来て
かつ99%の確率で正しいと言えるでしょう。

ただこれは、精度は高いですが、まったく役に立たないモデルです。

 

アンバランスなクラスを対処する方法の1つとして
発生率の低いクラスのオーバーサンプリング(重複の作成など)と
発生率の高いクラスのアンダーサンプリングを行って、発生率をバランスに近づけることです。

*オーバーサンプリング/アンダーサンプリング…
データ分析の中で、データセットのクラス分布を調整する為のテクニックの事

 

 

 今回は分類アルゴリズムのおまけ編という事で
豆知識を盛り込んでみました。

 

 

ちなみに、もしもっと知りたい!という方は、ぜひコメントを残して頂くか
プロのエンジニアの方に効率的に学んでいくのをオススメしています。

 

↓↓データ分析コースなどなど↓↓ 

 
 
それでは最後まで読んでいただき、ありがとうございました^^