Machine Learning Tutorial Python – 8 Logistic Regression (Multiclass Classification)




[ad_1]

Logistic regression is used for classification problems in machine learning. This tutorial will show you how to use sklearn logisticregression class to solve multiclass classification problem to predict hand written digit. We will use sklearn load_digits to load readily available dataset from sklearn library and train our classifier using that information.

#MachineLearning #PythonMachineLearning #MachineLearningTutorial #Python #PythonTutorial #PythonTraining #MachineLearningCource #LogisticRegression

Code: https://github.com/codebasics/py/blob/master/ML/8_logistic_reg_multiclass/8_logistic_regression_multiclass.ipynb

Exercise: Open above notebook from github and go to the end.

Topics that are covered in this Video:
0:01 – Theory (Binary classification vs multiclass classification)
0:26 – How to identify hand written digits?
1:02 – Coding (Solve a problem of hand written digit recognition)
11:24 – Confusion Matrix (sklearn confusion_matrix)
12:42 – Plot confusion matrix using seaborn library
14:00 – Exercise (Use sklearn iris dataset to predict flower type based on different features using logistic regression)

Next Video:
Machine Learning Tutorial Python – 9 Decision Tree: https://www.youtube.com/watch?v=PHxYNGo8NcI&list=PLeo1K3hjS3uvCeTYTeyfe0-rN5r8zn9rw&index=10

Populor Playlist:
Data Science Full Course: https://www.youtube.com/playlist?list=PLeo1K3hjS3us_ELKYSj_Fth2tIEkdKXvV

Data Science Project: https://www.youtube.com/watch?v=rdfbcdP75KI&list=PLeo1K3hjS3uu7clOTtwsp94PcHbzqpAdg

Machine learning tutorials: https://www.youtube.com/watch?v=gmvvaobm7eQ&list=PLeo1K3hjS3uvCeTYTeyfe0-rN5r8zn9rw

Pandas: https://www.youtube.com/watch?v=CmorAWRsCAw&list=PLeo1K3hjS3uuASpe-1LjfG5f14Bnozjwy

matplotlib: https://www.youtube.com/watch?v=qqwf4Vuj8oM&list=PLeo1K3hjS3uu4Lr8_kro2AqaO6CFYgKOl

Python: https://www.youtube.com/watch?v=eykoKxsYtow&list=PLeo1K3hjS3uv5U-Lmlnucd7gqF-3ehIh0&index=1

Jupyter Notebook: https://www.youtube.com/watch?v=q_BzsPxwLOE&list=PLeo1K3hjS3uuZPwzACannnFSn9qHn8to8

To download csv and code for all tutorials: go to https://github.com/codebasics/py, click on a green button to clone or download the entire repository and then go to relevant folder to get access to that specific file.

Website: http://codebasicshub.com/
Facebook: https://www.facebook.com/codebasicshub
Twitter: https://twitter.com/codebasicshub

Source


[ad_2]

Comment List

  • codebasics
    January 7, 2021

    Can we all just appreciate the fact that this is free!!! Thank you so much and please continue making these Machine Learning Tutorials!!!

  • codebasics
    January 7, 2021

    got accuracy of 93.34%. Thanku very much really addicted to your videos.

  • codebasics
    January 7, 2021

    On my way to watch your whole playlist. You are a great techer! I got accuracy 95.6%

  • codebasics
    January 7, 2021

    I got 96.66% accuracy for Iris dataset exercise. Great work! Thoroughly enjoying and learning a lot from your courses.

  • codebasics
    January 7, 2021

    I got an accuracy of 100%

    #importing the library

    import numpy as np

    import pandas as pd

    import matplotlib.pyplot as plt

    #loading the iris dataset

    from sklearn.datasets import load_iris

    df = load_iris()

    #knowing all the dataset

    a = dir(df)

    df.data[0]

    df.target[0]

    df.target_names[0]

    #splitting the dataset

    from sklearn.model_selection import train_test_split

    x_train , x_test , y_train , y_test = train_test_split(df.data , df.target , test_size = 0.2)

    #importing logistic regreesion

    from sklearn.linear_model import LogisticRegression

    model = LogisticRegression()

    model.fit(x_train , y_train)

    #measuring accuracy

    model.score(x_test , y_test)

    #confusion_matrix

    y_predicted = model.predict(x_test)

    from sklearn.metrics import confusion_matrix

    cm = confusion_matrix(y_test , y_predicted)

  • codebasics
    January 7, 2021

    with test size 20% my score was 93 or 96 % . I ma using shuffle in train split test

  • codebasics
    January 7, 2021

    With all respect, you read confusion matrix vertically, whereas it should have been read horizonal! Y axis show y_test(actual) and X axis show y_predicted!
    I am sorry I am writing negative in last 3 tutorials. not intentionally

  • codebasics
    January 7, 2021

    What does mean text(69,0.5,'truth') in last line?

  • codebasics
    January 7, 2021

    How can use this model used to recognize a new target image out of digits library?how to view the classification graph?

  • codebasics
    January 7, 2021

    The same notebook i used and the accuracy is coming 0.5469196994336385 also the cm is giving an error as " confusion_matrix() missing 1 required positional argument: 'y_pred' " … Any solution plz

  • codebasics
    January 7, 2021

    It is predicting no.s like 0, 1, or 2, which is 'target' of data. What should i do if i want 'target_names' to get predicted(flower names), plsss help me

  • codebasics
    January 7, 2021

    Very clear, thank you!

  • codebasics
    January 7, 2021

    at 7:50 , use this >> model = LogisticRegression(solver='lbfgs',class_weight='balanced', max_iter=10000) to avoid this warning >>> 'ConvergenceWarning: lbfgs failed to converge (status=1): STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.'

  • codebasics
    January 7, 2021

    At 15:33 I thought you are going to say 'plz plz subscribe the channel, like, comment, share… 🙂 Thank you sir for making such a great videos…

  • codebasics
    January 7, 2021

    7:50 while using model.fit() i was getting error : 'ConvergenceWarning: lbfgs failed to converge (status=1): STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.'
    To overcome from this i initially used 'model = LogisticRegression(max_iter=len(x_train))', but that doesn't works, then i simply used a high number like :'model = LogisticRegression(max_iter=100000)'

  • codebasics
    January 7, 2021

    got 88% score

  • codebasics
    January 7, 2021

    Sir please upload the iris exercise . Anybody please help me if possible

  • codebasics
    January 7, 2021

    In the exercise i got accuracy 1 (random_state=40 and test_size=.3) is it good ?@codebasics

  • codebasics
    January 7, 2021

    93.33% Accuracy in Iris Dataset… Anyone else with the same accuracy?

  • codebasics
    January 7, 2021

    test size =0.2 accuracy 0.93
    array([[13, 0, 0],

    [ 0, 10, 1],

    [ 0, 0, 6]], dtype=int64)

  • codebasics
    January 7, 2021

    Excellent explanation

  • codebasics
    January 7, 2021

    There are very few teachers who actually make us fall in love with learning. You have an incredibly fascinating way of teaching Sir!!

  • codebasics
    January 7, 2021

    sir I have done the Iris flower exercise according to what I have learnt from you. I got an accuracy of 1.0 (I thing it is 100%) !
    I just done everything according to what I have learnt from you!

  • codebasics
    January 7, 2021

    First my test size =0.2 accuracy .9694
    Then I changed to 0.3 accuracy .9592
    Then once again I changed to 0.2 then I got .9555
    Why I'm getting different accuracy rate???

  • codebasics
    January 7, 2021

    Sir, you forgot to upload the iris flower Solution for ML exercise 8 in you github, there is only exercise description at the end of github file, no exercise folder, no solution.
    Your tutorial is awesome, everybody is following you to practice. Thank you for teaching us and can you please upload the solution, appreciated.

  • codebasics
    January 7, 2021

    Sir, I am facing one problem while working on load_digits.
    When I am transferring digits. Target in train_test_split method, it is giving x_train of len 1797, while y_train is 180. How can i use these two data of different length in logistic regression.
    I tried to reshape target data in (1797, 1) but it didn't work too.

  • codebasics
    January 7, 2021

    Sir Can i Ask You One Doubt ?
    Is this Logistic Regression Model Works Based on BackPropogation Algorithm ?

  • codebasics
    January 7, 2021

    How are you getting auto suggestions and its description any extension. By default jupyter gives jedi which is not much helpful and kite takes more than 500MB of RAM
    Could you suggest any other for auto suggestions.

  • codebasics
    January 7, 2021

    my prediction contains 0,1,2 how can i change it to the real flower names?

  • codebasics
    January 7, 2021

    Is my code correct??

    from sklearn.datasets import load_iris

    iris=load_iris()

    dir(iris)

    from sklearn.model_selection import train_test_split as tts

    Xtrain,Xtest,ytrain,ytest=tts(iris.data,iris.target,train_size=0.8)

    from sklearn.linear_model import LogisticRegression

    reg=LogisticRegression()

    reg.fit(Xtrain,ytrain)

    reg.score(Xtest,ytest)

    Answer: 0.9333333333333333

  • codebasics
    January 7, 2021

    i got 100%

  • codebasics
    January 7, 2021

    accuracy = 93.33%

  • codebasics
    January 7, 2021

    SIR please explain SEABORN module sir @codebasics

  • codebasics
    January 7, 2021

    I got an accuracy of 100% in excercise!!!!

  • codebasics
    January 7, 2021

    I did the exercise in two ways,
    (I) I copied some guy ans from this comment box, he used iris dataset directly from sklearn library and got 93% accuracy.
    (II) The second way i did, used iris dataset which is available in kaggle, when i check iris.target i got an array of species having numeric value as 1 2 3(from the first ans), so what i did is used map function and specified each species with a numeric value of 1 ,2 and 3, and got 91% accuracy so my question is my answer correct i mean can we actually map values to the species?.

  • codebasics
    January 7, 2021

    Using irisdataset in logistic multi variable regression scores 0.9333333333333333 accurcy, but I did not understand how to read heatmap between actual and prediction shows me 3*3 matrix
    of
    9 0 0
    0 14 1
    0 1 5
    x=predicted and y=actual

    one more query, we are giving (y_test,y_predicted) in confusion matrix, isin't this mean x axis=actual and y axis=predicted

Write a comment