ბუნებრივი ენის დამუშავება 3 წთ კითხვა

დასახელებული ერთეულის ამოცნობა

აქამდე ჩვენ ძირითადად კონცენტრირებული ვიყავით ერთ NLP ამოცანაზე - კლასიფიკაციაზე. ამასთან, არსებობს სხვა NLP ამოცანები, რომლებიც შეიძლება შესრულდეს ნერვული ქსელებით. ერთ-ერთი ასეთი ამოცანაა სახელწოდებით Entity Recognition (NER), რომელიც ეხება ტექსტში კონკრეტული ერთეულების ამოცნობას, როგორიცაა ადგილები, პიროვნების სახელები, თარიღის დროის ინტერვალები, ქიმიური ფორმულები და ა.შ.

სალექციო ვიქტორინა

NER-ის გამოყენების მაგალითი

დავუშვათ, რომ გსურთ შექმნათ ბუნებრივ ენაზე ჩატის ბოტი, Amazon Alexa-ს ან Google Assistant-ის მსგავსი. ინტელექტუალური ჩატის ბოტების მუშაობის გზა არის გაგება რა სურს მომხმარებელს შეყვანილ წინადადებაზე ტექსტის კლასიფიკაციის შესრულებით. ამ კლასიფიკაციის შედეგია ეგრეთ წოდებული განზრახვა, რომელიც განსაზღვრავს რა უნდა გააკეთოს ჩატ ბოტმა.

Bot NER

ავტორის სურათი

თუმცა, მომხმარებელმა შეიძლება მიუთითოს რამდენიმე პარამეტრი, როგორც ფრაზის ნაწილი. მაგალითად, ამინდის მოთხოვნისას მან შეიძლება მიუთითოს ადგილმდებარეობა ან თარიღი. ბოტს უნდა შეეძლოს ამ ერთეულების გაგება და მოქმედების შესრულებამდე შესაბამისად შეავსოს პარამეტრების სლოტები. სწორედ აქ შემოდის NER.

კიდევ ერთი მაგალითი იქნება სამეცნიერო სამედიცინო ნაშრომების ანალიზს. ერთ-ერთი მთავარი, რაც ჩვენ უნდა ვეძებოთ, არის კონკრეტული სამედიცინო ტერმინები, როგორიცაა დაავადებები და სამედიცინო ნივთიერებები. მიუხედავად იმისა, რომ დაავადების მცირე რაოდენობის ამოღება შესაძლებელია ქვესტრიქონების ძიების გამოყენებით, უფრო რთული ერთეულები, როგორიცაა ქიმიური ნაერთები და მედიკამენტების სახელები, უფრო კომპლექსურ მიდგომას საჭიროებს.

NER, როგორც ტოკენის კლასიფიკაცია

NER მოდელები არსებითად ტოკენის კლასიფიკაციის მოდელებია, რადგან თითოეული შეყვანის ტოკენისთვის უნდა გადავწყვიტოთ, ეკუთვნის თუ არა ერთეულს და თუ ეკუთვნის - რომელ ერთეულ კლასს.

განვიხილოთ შემდეგი ნაშრომის სათაური:

ტრიკუსპიდური სარქვლის რეგურგიტაცია და ლითიუმის კარბონატი ტოქსიკურობა ახალშობილში.

სუბიექტები აქ არის:

  • ტრიკუსპიდური სარქვლის რეგურგიტაცია არის დაავადება (DIS)
  • ლითიუმის კარბონატი არის ქიმიური ნივთიერება (CHEM)
  • ტოქსიკურობა ასევე დაავადებაა (DIS)

გაითვალისწინეთ, რომ ერთ ობიექტს შეუძლია რამდენიმე ჟეტონზე დაფარვა. და, როგორც ამ შემთხვევაში, ჩვენ უნდა განვასხვავოთ ორი თანმიმდევრული ერთეული. ამრიგად, ჩვეულებრივია თითოეული ერთეულისთვის ორი კლასის გამოყენება - ერთი, რომელიც აზუსტებს ერთეულის პირველ ჟეტონს (ხშირად გამოიყენება B- პრეფიქსი, bდასაწყისისთვის), ხოლო მეორე - ერთეულის გაგრძელება (I-, inner ნიშნისთვის). ჩვენ ასევე ვიყენებთ O-ს, როგორც კლასს ყველა oსხვა ტოკენის წარმოსადგენად. ტოკენის ასეთ მონიშვნას ეწოდება ბიო მონიშვნა (ან IOB). მონიშვნისას ჩვენი სათაური ასე გამოიყურება:

ტოკენიმონიშნეთ
ტრიკუსპიდიB-DIS
სარქველიI-DIS
რეგურგიტაციაI-DIS
და
ლითიუმიB-CHEM
კარბონატიI-CHEM
ტოქსიკურობაB-DIS
in
a
ახალშობილი
ჩვილი
.

ვინაიდან ჩვენ გვჭირდება ერთი-ერთზე კორესპონდენცია ავაშენოთ ტოკენებსა და კლასებს შორის, ამ სურათიდან შეგვიძლია მოვამზადოთ ყველაზე სწორი ბევრი-ბევრამდე ნერვული ქსელის მოდელი:

Image showing common recurrent neural network patterns.

სურათი ეს ბლოგის პოსტი-დან ანდრეი კარპათი-დან. NER ტოკენის კლასიფიკაციის მოდელები შეესაბამება ამ სურათზე ყველაზე მარჯვენა ქსელის არქიტექტურას.

ტრენინგი NER მოდელები

ვინაიდან NER მოდელი არსებითად არის ნიშნული კლასიფიკაციის მოდელი, ჩვენ შეგვიძლია გამოვიყენოთ RNN-ები, რომლებსაც უკვე ვიცნობთ ამ ამოცანისთვის. ამ შემთხვევაში, განმეორებადი ქსელის თითოეული ბლოკი დააბრუნებს ტოკენის ID-ს. შემდეგი მაგალითის ნოუთბუქი გვიჩვენებს, თუ როგორ უნდა მოვამზადოთ LSTM ნიშნის კლასიფიკაციისთვის.

სამაგალითო ნოუთბუქები: NER

განაგრძეთ სწავლა შემდეგ რვეულში:

  • NER TensorFlow-ით

დასკვნა

NER მოდელი არის ტოკენის კლასიფიკაციის მოდელი, რაც ნიშნავს, რომ მისი გამოყენება შესაძლებელია ტოკენის კლასიფიკაციის შესასრულებლად. ეს არის ძალიან გავრცელებული დავალება NLP-ში, რომელიც ეხმარება ამოიცნოს კონკრეტული ერთეულები ტექსტში, მათ შორის ადგილები, სახელები, თარიღები და სხვა.

გამოწვევა

დაასრულეთ ქვემოთ მიბმული დავალება, რომ მოამზადოთ დასახელებული ერთეულის ამოცნობის მოდელი სამედიცინო ტერმინებისთვის, შემდეგ სცადეთ იგი სხვა მონაცემთა ბაზაში.

ლექციის შემდგომი ვიქტორინა

მიმოხილვა და თვითშესწავლა

წაიკითხეთ ბლოგი განმეორებადი ნერვული ქსელების არაგონივრული ეფექტურობა და მიჰყევით ამ სტატიის შემდგომი კითხვის განყოფილებას თქვენი ცოდნის გასაღრმავებლად.

ეს გაკვეთილი არის Microsoft “AI for Beginners” კურსის ქართული თარგმანი, გავრცელებული MIT ლიცენზიით.