Natural Language Processing with spaCy & Python - Course for Beginners

Поделиться
HTML-код
  • Опубликовано: 3 фев 2025

Комментарии • 364

  • @rublev88
    @rublev88 3 года назад +131

    Yes! Please, definitely make a second part. I teach in the Humanities (college literature and creative writing classes), and I'm actively searching for tools I can use for creative experiments with texts.

    • @NickWindham
      @NickWindham 2 года назад +1

      Check out Microsft Power Automate AI Builder

    • @engw7090
      @engw7090 2 года назад +8

      @@NickWindham hey is the second part out yet?

    • @krishnapatel8852
      @krishnapatel8852 Год назад

      hey, I`m not getting the expected output at 1:57:26. It`s showing KeyError: 0. Can you help me with that?

    • @amberstiefel9748
      @amberstiefel9748 Год назад +1

      Where do you teach?

  • @TechTessellator
    @TechTessellator 3 года назад +61

    Bangers one after another. This channel is a treasure.

  • @thesupermachak
    @thesupermachak 3 года назад +4

    Clicked this video by accident but got hypnotised by the shirt and now I'm learning Python.

    • @cuteorpyarahamza
      @cuteorpyarahamza 2 месяца назад

      doc = nlp(u'A severe storm hit the beach. It started to rain.')
      for sent in doc.sents:
      print([sent[i] for i in range(len(sent))])
      for sent in doc.sents:
      print([word for word in sent])
      print([doc[i] for i in range(len(doc))])
      # Check if the first word in the second sentence of the text is a pronoun
      for i, sent in enumerate(doc.sents):
      if i == 1 and sent[0].pos_ == 'PRON':
      print('The second sentence begins with a pronoun.')
      # Check how many sentences in the text end with a verb
      counter = 0
      for sent in doc.sents:
      if sent[-2].pos_ == 'VERB':
      counter += 1
      print(f'{counter} sentence(s) in the document end with a verb.')

  • @firdovsihasanzada
    @firdovsihasanzada Год назад +6

    50 minutes in and it is already the best practical explanation of how spaCy works.

  • @sarasharick5209
    @sarasharick5209 3 года назад +2

    I’ve been watching Dr. Mattingly’s other videos and they’re great.

  • @yugioh8307
    @yugioh8307 3 года назад +12

    Best Helpline for those who really want to learn NLP with ease and for free , can't wait for part 2

    • @cuteorpyarahamza
      @cuteorpyarahamza 2 месяца назад

      **Named Entity Recognition**:
      A named entity is a real object that you can refer to by a proper name. It can be a person, organization, location, or other entity. Named entities are important in NLP because they reveal the place or organization the user is talking about.
      doc = nlp(u'I have flown to Islamabad. Now I am flying to Lahore.')
      for token in doc:
      if token.ent_type != 0: # If the ent_type attribute of a token is not set to 0
      print(token.text, token.ent_type_) # then the token is a named entity

  • @mohammadyusuf1636
    @mohammadyusuf1636 3 года назад +16

    I was searching for Spacy tutorials yesterday, and FCC uploaded it, thank you 💝. Interested in part 2.

    • @muhammadsanwal4384
      @muhammadsanwal4384 3 года назад +3

      Hi, can you tell where can i find the repository for the data?

    • @cuteorpyarahamza
      @cuteorpyarahamza 2 месяца назад

      doc = nlp(u'A severe storm hit the beach. It started to rain.')
      for sent in doc.sents:
      print([sent[i] for i in range(len(sent))])
      for sent in doc.sents:
      print([word for word in sent])
      print([doc[i] for i in range(len(doc))])
      # Check if the first word in the second sentence of the text is a pronoun
      for i, sent in enumerate(doc.sents):
      if i == 1 and sent[0].pos_ == 'PRON':
      print('The second sentence begins with a pronoun.')
      # Check how many sentences in the text end with a verb
      counter = 0
      for sent in doc.sents:
      if sent[-2].pos_ == 'VERB':
      counter += 1
      print(f'{counter} sentence(s) in the document end with a verb.')

  • @wdonno
    @wdonno 3 года назад +5

    I’ve come back to this video several times. The ONLY tutorial I’ve seen which walks through the whole process . The Python Tutorials for the digital humanities videos are also great. I am focused on biomedical text, but text is text when you are trying to get started.

  • @anassalhi8191
    @anassalhi8191 2 года назад +1

    I can't believe such good content is for free, thank you.

  • @cuteorpyarahamza
    @cuteorpyarahamza 2 месяца назад +3

    45:04
    *Named Entity Recognition:*
    A named entity is a real object that you can refer to by a proper name. It can be a person, organization, location, or other entity. Named entities are important in NLP because they reveal the place or organization the user is talking about.
    doc = nlp(u'I have flown to Islamabad. Now I am flying to Lahore.')
    for token in doc:
    if token.ent_type != 0: # If the ent_type attribute of a token is not set to 0
    print(token.text, token.ent_type_) # then the token is a named entity

  • @ATWORKZ
    @ATWORKZ 2 месяца назад

    Super interessant de meer de diepte in te gaan. Met andere woorden stukje geschiedenis les.💪💪👍

  • @chenalbert2996
    @chenalbert2996 2 года назад +1

    just finished 1/3 and I have to say very good introduction. thanks a lot on the sharing

  • @soumensarkar8967
    @soumensarkar8967 Год назад +11

    Thank you Dr William for taking me through such wonderful journey on NLP - it was my first learning on this area of python application and i found it quite useful and excited to do some more. Looking forward to having your part 2 soon!

  • @qutluq7794
    @qutluq7794 3 года назад +7

    This video lesson was great. Looking forward to see the second part.

  • @pabloneirotti7945
    @pabloneirotti7945 2 года назад +6

    Thank you so much. The best course on SpaCy I have founded. Please make Part Two! We are waiting for it!

  • @roman445
    @roman445 3 года назад +5

    I'm definitely interested in the ML aspects of spaCy) Thank you very much for the video!

  • @sourmans
    @sourmans 2 месяца назад

    so much value! thanks for making this material available for free. Incredible value

  • @rakshittherakki99
    @rakshittherakki99 3 года назад +22

    Definitely interested in part2 of this course

  • @tundescope
    @tundescope 2 года назад +2

    Great video. Please make the second part ASAP. Keep up the good work.

  • @joaopauloborges3866
    @joaopauloborges3866 Год назад +2

    Thanks for this incredible class and textbook, it was very helpful. Greetings from Brazil

  • @JayGhiyaGoogle
    @JayGhiyaGoogle 3 года назад

    Thanks!

  • @cuteorpyarahamza
    @cuteorpyarahamza 2 месяца назад +2

    We can extract noun chunks by iterating over the nouns in the sentence and finding the syntactic children for each noun to form a chunk.
    doc = nlp(u'The quick brown fox jumps over the lazy dog.')
    '''for chunk in doc.noun_chunks: # Regular method
    print(chunk)'''
    for token in doc: # Manual method
    if token.pos_ == 'NOUN':
    chunk = ''
    for w in token.children:
    if w.pos_ == 'DET' or w.pos_ == 'ADJ':
    chunk += w.text + ' '
    chunk += token.text
    print(chunk)

  • @omari6108
    @omari6108 25 дней назад

    I must say, in my hoping around of learning Vulkan, graphics pipeline, and the endless nights of random coding do's and don'ts, understanding this here has become surprisingly easy. But then again it is beginner level lol, you just do a good job explaining here.

  • @giorgiacecchinato9449
    @giorgiacecchinato9449 3 года назад +4

    Also an historian looking for ways to extract info from old documents. very looking forward to the second part.

    • @python-programming
      @python-programming 3 года назад +2

      I am trying to have it out in early January.

    • @wdonno
      @wdonno 3 года назад

      @@python-programming really looking forward to the next video. One topic I have not seen you address is the question of tools for Annotation. When working in specialized language domains, extra training of models is a key step. As a newcomer, I have not yet found a process compatible with Spacy which is reasonably efficient. Prodigy?

  • @michaelmatthaei7759
    @michaelmatthaei7759 2 года назад

    Best Helpline for those who really want to learn

  • @rodlu811
    @rodlu811 11 месяцев назад +1

    Excelent!!! The best of the best!!!! Please do the second showing how to train the model.

  • @thomaspalka1919
    @thomaspalka1919 3 года назад +2

    This video is fantastic! I would really appreciate part 2

  • @abdelkaderbensaid432
    @abdelkaderbensaid432 3 года назад +5

    Thank you! interested in part 2.

  • @sheshankjoshi
    @sheshankjoshi 3 года назад

    Thanks

  • @TT-cf7xl
    @TT-cf7xl 3 года назад +2

    You're a wizard, W.J.B. Mattingly! Sincerely yours, a stan

  • @varunnayyar3138
    @varunnayyar3138 3 года назад +111

    this is absurd, opened yt for NLP videos and it was uploaded 1 sec ago.

    • @avnishpanwar9502
      @avnishpanwar9502 3 года назад +6

      Happened to me for a deep learning course.

    • @varunnayyar3138
      @varunnayyar3138 3 года назад +4

      @@avnishpanwar9502 this channel is a boon

    • @b_28_vaidande_ayush93
      @b_28_vaidande_ayush93 Год назад +3

      Destiny

    • @kainoa_written
      @kainoa_written 2 месяца назад +1

      I started building a personal NLP agent and this was immediately recommended
      Wild

    • @cuteorpyarahamza
      @cuteorpyarahamza 2 месяца назад +1

      doc = nlp(u'A severe storm hit the beach. It started to rain.')
      for sent in doc.sents:
      print([sent[i] for i in range(len(sent))])
      for sent in doc.sents:
      print([word for word in sent])
      print([doc[i] for i in range(len(doc))])
      # Check if the first word in the second sentence of the text is a pronoun
      for i, sent in enumerate(doc.sents):
      if i == 1 and sent[0].pos_ == 'PRON':
      print('The second sentence begins with a pronoun.')
      # Check how many sentences in the text end with a verb
      counter = 0
      for sent in doc.sents:
      if sent[-2].pos_ == 'VERB':
      counter += 1
      print(f'{counter} sentence(s) in the document end with a verb.')

  • @paulmathew1214
    @paulmathew1214 2 года назад

    This is a great NLP tutorial. I have checked out a few others but this one here takes the cake. Thanks for the excellent resource!

  • @TheDouglasDale
    @TheDouglasDale 3 года назад +2

    Thank you for the explanations. They are very clear and relevant. Excellent video.

  • @lixx1278
    @lixx1278 2 года назад +5

    Thank you very much for making this video. I want to create my own corpus to analyze data. But as a newbie to Python, I found it really hard to start without a clear direction. Looking forward to Part 2!

  • @jasonchesney9750
    @jasonchesney9750 Год назад

    Very much interested in the machine learning aspect of SpaCy. Thank you, this course was informative and handy.

  • @asmitadhikari1472
    @asmitadhikari1472 3 года назад +4

    Awesome content there Dr. William. I was really hyped during the series and every aspects of spaCy you've described perfectly. Now I'm interested on ML aspect of spaCY and It'd be great if you come with ML aspect of spaCy.

  • @fatimzhraannassiri
    @fatimzhraannassiri 3 года назад +4

    Thank you 🙏 , Interested in part 2

  • @MrShlomke24
    @MrShlomke24 2 года назад

    Awesome Video! Can't wait for part 2
    crossing my fingers 🤞🤞🤞

  • @mansouriwhafidoumansouri4706
    @mansouriwhafidoumansouri4706 Год назад +1

    Thanks Great course and I love how easy and smooth the explanation is. Moreover I like how explaining each step before diving into it is really making the understanding easier for us to follow thanks a lot. BTW I've spent some time looking for the github account and repo related to this video here is it if anyone needs it to begin following the video, ENJOY...

  • @tthtlc
    @tthtlc 2 года назад +4

    Everyone seemed to be asking for part 2, but this coverage is good enough - so good that I don't think it deserved a part 2, otherwise a large part is going to be lots of repetition. I will keep exploring deeper based on this video itself.

    • @tthtlc
      @tthtlc 2 года назад +3

      There are also a lot of other resources available (and free), if u have time to go through: course.spacy.io/en/

    • @meherunnesaneela783
      @meherunnesaneela783 Год назад

      @@tthtlc thank you so much! do you have other resources like that?

  • @kevinliu1142
    @kevinliu1142 2 года назад +2

    Please make the second video about machine learning! this was so helpful

  • @konstantinpluzhnikov4862
    @konstantinpluzhnikov4862 3 года назад

    Thank you Dr. William. Looking forward for a part two.

  • @stephenbradley445
    @stephenbradley445 2 года назад +3

    Definitely important to dig into the .similarity() output before using it in one's own work. One of its flaws is that it cares too much about the number of words in the spans being compared. For example:
    print(nlp2("fries").similarity(nlp2("burgers"))) = .65
    print(nlp2("fries").similarity(nlp2("hamburgers"))) = .58
    print(nlp2("fries").similarity(nlp2("ham burgers"))) = .70
    print(nlp2("french fries").similarity(nlp2("hamburgers"))) = .46
    print(nlp2("french fries").similarity(nlp2("ham burgers"))) = .64
    Also, I find that the small model correctly identifies West Chestertenfieldville as a GPE without modification, and I find that nlp.add_pipe("entity_ruler") does not add of the pipeline-description we see via nlp.analyze_pipes(). Rather, it seems that element of this description is in alphabetical order, and every nested sub-element is also in alphabetical order. I suspect this does not say anything about the true order of the pipeline.

  • @micahjesse6580
    @micahjesse6580 2 года назад

    Please create Part 2!!!!! Part one was 🔥🔥🔥🔥🔥🔥🔥

  • @lilacostaqueiroz8639
    @lilacostaqueiroz8639 3 года назад +1

    Waiting for the second part ! This tutorial is perfect , thank you so much !

  • @hokapokas
    @hokapokas 2 года назад

    Love the work you are doing. Many thanks from India

  • @cuteorpyarahamza
    @cuteorpyarahamza 2 месяца назад +4

    46:00
    # Print tokens and their part of speech
    print("Tokens and their POS tags:")
    for token in doc:
    print(f"{token.text}: {token.pos_}")
    print('
    Sentences:')
    for sent in doc.sents:
    print(sent)
    # Print named entities
    print("
    Named Entities:")
    for ent in doc.ents:
    print(f"{ent.text} ({ent.label_})")

  • @RajaRamani.R
    @RajaRamani.R 3 года назад +2

    Superb, Waiting for part 2 with thanks🙏👍

  • @mattfichtner7100
    @mattfichtner7100 2 года назад

    Outstanding overview of Spacy, can't wait for part 2! Thank you so much.

  • @bilalmahmood9423
    @bilalmahmood9423 2 года назад

    Thanks for your awesome introduction :). Would love to have your next course on using spaCy for ML.

  • @tatendamuzenda8442
    @tatendamuzenda8442 Год назад

    very simple and easy to understand thank you for this

  • @150yashwanth
    @150yashwanth 9 месяцев назад

    Great Tutorial. Learnt a lot about SpaCy fundamentals.

  • @VincentFulco
    @VincentFulco 3 года назад +2

    Really fascinating and accessible. Thank you.

  • @footballistaedit25
    @footballistaedit25 2 года назад

    This video is very useful for me. Thanks for always bringing the great video. Mad respect from me

  • @____kklw7148
    @____kklw7148 3 года назад +1

    This is ready awesome teaching video. I feel highly interesting in the part two video.

  • @janabasogizon5214
    @janabasogizon5214 2 года назад +2

    Very very helpful stuff! 31 minutes in the video and I'm already using spacy for my own analyses! Thank you so much!

  • @10milesfromnowhere
    @10milesfromnowhere 3 года назад

    Yes please for a part 2 on Machine Learning with Spacy!

  • @FedorablePenguin
    @FedorablePenguin 3 года назад +4

    Where’s part 2!!! If there’s time in part 2, I would definitely be interested to know how to train ML to help with research and literature reviews as an example

  • @markkertzner
    @markkertzner 2 года назад

    i found this to be an excellent tutorial - very clear, great examples and thorough. thank you for sharing this and i look forward to seeing you continue with another covering machine learning in spacy.

  • @cuteorpyarahamza
    @cuteorpyarahamza 2 месяца назад +1

    The Doc object’s **doc.sents** property lets us separate a text into its individual sentences:
    doc = nlp(u'A severe sand storm hit the Gobi desert. It started to rain.')
    for sent in doc.sents:
    print([sent[i] for i in range(len(sent))])

  • @anandachetanelikapati8387
    @anandachetanelikapati8387 3 года назад

    Excellent tutorial. Straight into the subject. Hats off to you !!

  • @juanete69
    @juanete69 28 дней назад

    Great course.
    It would be nice you upload the video with higher resolution.

  • @vasanthakumarg4538
    @vasanthakumarg4538 2 года назад

    Great work! Really a good video to learn using spaCy.

  • @javohirxusanov1229
    @javohirxusanov1229 3 года назад +8

    Let's do the second part of it 🙂

  • @martynsnwaokocha6982
    @martynsnwaokocha6982 2 года назад

    Hi and thank you very much for your tutorial. I really enjoyed it and looking forward to the second part of the tutorial

  • @brandonruiz1746
    @brandonruiz1746 3 года назад

    Thanks for the depth with this library sir

  • @yifenghou986
    @yifenghou986 3 года назад

    This is super awesome tutorial. Just what I need. Thanks!

  • @rexxwei8184
    @rexxwei8184 2 года назад

    Such a nice video, 2nd part please!!

  • @AdityaSingh-wr7ow
    @AdityaSingh-wr7ow 11 месяцев назад +4

    Where can I access the textbook? Can someone let me know! Would really appreciate it!

  • @prasadcaher
    @prasadcaher 3 года назад

    Eagerly waiting for the second part.

  • @anumulakarthikreddy1195
    @anumulakarthikreddy1195 3 года назад

    Enjoyed This video waiting for part2.

  • @oarimen
    @oarimen 2 года назад

    Thank you so much! Such a wonderful video.

  • @angelantartico
    @angelantartico Год назад +1

    (1:35:44) Matcher
    03/22/2023 2:21:22

  • @absolutelyrightwinger
    @absolutelyrightwinger 3 года назад

    eagerly waiting for the second part..please upload it soon...

  • @praise135
    @praise135 3 года назад

    That was a very nice explanation and an awesome tutorial. Waiting for the machine learning part.

  • @db44l
    @db44l 3 года назад

    Greate tutorial, please make a second part!

  • @amandaahringer7466
    @amandaahringer7466 2 года назад

    This is very helpful, thank you!

  • @venugudavalli
    @venugudavalli 3 года назад +1

    Looking forward for Machine Learning aspects of Spacy.

  • @ctRonIsaac
    @ctRonIsaac Год назад

    I would like the ML version too. So looking forward to seeing that

  • @Superdooperhero
    @Superdooperhero 3 года назад +1

    Can't wait for Part 2

  • @nsnilesh604
    @nsnilesh604 3 года назад +1

    Waiting for 2nd part sir 👌🙏

  • @Cinematic.crafter
    @Cinematic.crafter 2 месяца назад +2

    i woke up and im here

  • @arenter-balyan6746
    @arenter-balyan6746 3 года назад

    Thanks a lot, and please make the second part.

  • @andrijor
    @andrijor 3 года назад +1

    This tutorial is so freaking inspiring to me. NLP is so exciting and I'd love to integrate it with machine learning!!!!

    • @andrijor
      @andrijor 3 года назад +2

      I'd be 100% down to watch a tutorial with part 2!!!!!

    • @python-programming
      @python-programming 3 года назад +2

      Thanks! Good to know. I think I will start planning it this week.

    • @andrijor
      @andrijor 3 года назад +1

      @@python-programming Hi hi, any updates on part 2? I hope everything's ok :)

    • @python-programming
      @python-programming 3 года назад +2

      @@andrijor indeed! I am still working on it. Between the textbook and the video it takes a while to make. I am hoping to have it ready in early January.

    • @andrijor
      @andrijor 3 года назад

      @@python-programming Looking forward to it! 😊

  • @saziedhassan3976
    @saziedhassan3976 2 года назад

    Thank you such amazing content. This was so easy to follow and understand. Please do a 2nd part to the tutorial!! 🙏

  • @jeyasuriyam5185
    @jeyasuriyam5185 2 года назад

    Thank you so Much. It is very helpful

  • @NickWindham
    @NickWindham 2 года назад +1

    Your tutorials and your RUclips channel are great. Thanks so much for sharing your knoledge online. So helpful and well made.

  • @nelsondelarosa5490
    @nelsondelarosa5490 Месяц назад

    Thanks so much Dr. Mattingly. Where can we find the machine learning related video?

  • @kiranchowdary8100
    @kiranchowdary8100 3 года назад +2

    Please do part2 I badly need this tutorial

    • @python-programming
      @python-programming 3 года назад +3

      Thanks for letting me know. I'll try it get it ready within the next few weeks.

    • @kiranchowdary8100
      @kiranchowdary8100 3 года назад +1

      @@python-programming thanks man .you are a life saver

  • @ammarabuzainah3918
    @ammarabuzainah3918 3 года назад

    great video we are looking for the second part please

  • @LuisMorales-bc7ro
    @LuisMorales-bc7ro Год назад

    this content is amazing

  • @fanzfanzilla
    @fanzfanzilla 2 года назад +2

    This is very helpful. I am very new to Machine Learning and NLP. I am in a situation where I have thousands of documents which don't always have correct spellings. I have to analyze these documents to look for trends related to parts failure especially if the failure has resulted in death or injury. Ideally like to learn from the data that can inform the future failures before there is a death or injury. Can SpaCy help with this?

  • @gurjeet333
    @gurjeet333 2 года назад

    Thanks for the wonderful videos

  • @huoi-d4t
    @huoi-d4t 28 дней назад

    Thank you for such wonderful tutorial! Trying to follow the coding at 1:57:20 but where can we get the json data file?

  • @miguelnuno928
    @miguelnuno928 3 года назад

    this video is so engaging...

  • @DePhpBug
    @DePhpBug Год назад

    super interesting , already quickly subscribe both of the channels (y)

  • @hellocyberpolice
    @hellocyberpolice 3 года назад +2

    Thank you ❤️

  • @lilacostaqueiroz8639
    @lilacostaqueiroz8639 3 года назад

    just perfect! Thank you very much :)

  • @machinimaaquinix3178
    @machinimaaquinix3178 3 года назад +3

    Lol. spaCy's most recent build as of Feb 2, 2022 does properly identify West Chestertenfieldville as a GPE. ruclips.net/video/dIUTsFT2MeQ/видео.html
    EDIT: Just finished the course - A phenomenal piece of work. Thanks so much for doing this. I can tell you put in an incredible amount of time and effort to do this and you provide it so graciously for free. It is so much clearer than spacy's documentation. They have a new spacy 101 so I'll give that a go now to cement this all in the nogin. And yes, eagerly awaiting part 2.

  • @FF4546
    @FF4546 2 года назад +8

    Thank you for the great video!
    When I run the most_similar method, copying the code on your notebook, I end up receiving a complete set of differemt words, some unrelated to the word and some in other languages. Example: country gave me ['country-0,467', 'nationâ\x80\x99s', 'countries-', 'continente', 'Carnations', 'pastille', 'бесплатно', 'Argents', 'Tywysogion', 'Teeters']
    Can somebody help me understand why this is happening?

    • @matthewhernandez9152
      @matthewhernandez9152 2 года назад +1

      Same here. Curious but...maybe the transformers/models (not sure which) are retrained thus giving us a different set of words? Hopefully someone can answer this!