(예측하고자 하는 항목 =+= 정답지)
: clarifying what ML is & why we may want to use it.
automatically learn → much shorter / easier to maintain / most likely more accurate
ML can help humans learn
: supervised / unsupervised / semisupervised / Reinforcement Learning
: online / batch learning
vs detect patterns in the training data and build a predictive model
: instance-based / model-based Learning
: classified according to the amount and type of supervision they get during training.
⇒ classification(분류)
⇒ regression(회귀) : predict a target numeric value given a set of features(=attribute)(predictors)
-Most important SL Algorithm
: k-Nearest Neighbors / Linear Regression / Logistic Regression / Support Vector Machines/Decision Trees and Random Forests / Neural networks
-Most important SL Algorithm
: detect groups of similar features. / find connections without help
-hierarchical clustering Algorithm : subdivide each group into smaller groups
: : detecting unusual transactions to prevent fraud, catching manufactoring defects, automatically removing outliers from db.
+=+Novelty detection : see only normal data
(Principal Component Analysis(PCA)/Kernel PCA/Locally-Linear Embedding(LLE),t-distributed Stochastic Neighbor Embedding(t-SNE))
: -Visualization Algorithm : output a 2D or 3D representation of data that can easily be plotted.
+=+Dimensionality reduction : simplify the data without losing too much information.
⇒ run much faster, less disk&memory space, perfom better
+=+Feature extraction : merge several correlated features into one.
: dig into large amounts of data and discover interesting relations between attributes.
: must learn by itself what is the best strategy = policy
cf) Alphago
: whether or not the system can learn incrementally(점진적으로) from a stream of incoming data
Offline Learning : First the system is trained, and hen it is launched into production and runs without learning anymore
⇒ if, ++ new data ⇒ train a new version of the system from scratch on the full dataset, then stop the old system and replace it with the new one
😓DIsadvantages😓
⇒ take a lot of time/computing resources/money ⇒ done offline
⇒ if amount of data is huge, may be IMPOSSIBLE
😀Advantages😀
⇒ simple and often works fine
: mini-batches (mini batches 뭉탱이 sequentially)
-out-of-learning
😀Advantages😀
⇒ fast and cheap
⇒ change rapidly & autonomously
⇒ save a huge amount of space.
😓DIsadvantages😓
⇒ High Learning rate → rapidly adapt to new data, BUT quickly forget the old data
⇒ Low Learning rate → learn more slowly, BUT less sensitive to noise
⇒ if bad data is fed → clients will notice that performance will gradually decline.
: How they generalize
: certainly not the best.
KNN
model selection → utility function=fitness function(measure how good my model is) / define cost function
→ study the data
→ select a model
→ trained it (the learning algorithm searched for the model parameter values that minimize a cost function)
→apply the model to make predictions on new cases(=inference), hoping that this model will generalize well.
: Bad Algorithm / Bad data
: Even for very simple problems, typically need thousands of examples.
: training data be representative of the new cases you want to generalize to
⇒ if not , unlikey to make accurate predictions
sample is small → sampling noise
sample is large → sampling bias /ex) Roosvelt_Literary Digest
: will make it harder for the system to detect the underlying patterns → less likely to perform well.
→ 多 spend time cleaning up your training data.
: “Garbage in, Garbage out”
-feature engineering : coming up with a good set of features to train on(enough relevant features & not too many irrelevant)
-feature selection : selection the most useful features to train on among existing features.
-Feature extraction : combing existing features to produce a more useful one
-creating new features by gathering new data
: the model performs well on the training data, but it does not generalize well.
: it happens when the model is too complex relative to the amount and noises of the training data.
: find the right balance : fitting the training data perfectly & keeping the model simple enough to ensure that it will generalize well.
-To simplify the model by selecting one with fewer parameters
-To gather more training data
-To reduce the noise
cf) Training error(LOW) & Generalization error(HIGH) ⇒ OVERFITTING
: occurs when the model is too simple to learn the underlying structure of the data.
-Selecting a more powerful model, with more parameters
-Feeding better features to the learning algorithm( feature engineering)
-Reducing the constraints on the model.