day 23 - natural language
processing (NLP)
day 23 - natural language
processing
(NLP)
السلام عليكم ورحمة الله... معاكم Kaito :)
مرحبا بيكم فالنهار 23 ديال سلسلة 30 يوم من التعلم الآلي..
بقات سيمانة ويسالي التحدي ديالنا
راه حنا غاديين الحمد لله
اليوما غندويو على واحد الحاجة مهمة بزاف فحياتنا مع التكنولوجيا دبا
و اللي بلا بيها مكانش غيكون لا غوغل
لا شات جي بي تي
لا ترجمة لغات
لا حتا حاجة من هدشي اللي كتشوف دبا ف AI
اليوما غنشوفو natural language processing
او باختصار: NLP

عمرك سولتي راسك كيفاش ملي كنكتب ف غوغل شي حاجة كيقدر يفهمني كيفما كيفهمني الانسان
و كيفاش ChatGPT كيعطيني اجوبة للاسئلة اللي عندي بطريقة تقول شي حد كالس مورا ديك الواجهة وهو اللي كيجاوبني..
حيتاش اللي عارفين هو انه الحاسوب اللغة الوحيدة اللي كيفهم هي لغة الارقام
وبالضبط 2 ارقام هوما 0 و 1
مع تطور التكنولوجيا والذكاء الاصطناعي بدينا كنحلمو بالروبوتات وبغينا ان الالة تبقا تفهمني بلغتي بلا منكتب انا شي كود معقد وتجاوبني بلغتي بحال بنادم
وهنا جات تقنية معالجة اللغة الطبيعية (natural language processing)،
اللي كتساعد الآلة باش تفهم اللغة اللي كيتكلم بيها الإنسان،
سواء كانت عربية، إنجليزية، اسبانية, يابانية…
أو أي لغة فهاد الدنيا،
وكتساعد الآلة باش تتواصل معانا بطريقة سهلة ومفهومة.
"معالجة اللغة الطبيعية natural language processing"
هي فرع من فروع الذكاء الاصطناعي اللي كتتعامل مع اللغة اللي كيدوي بيها الإنسان،
وكيحاولو يخليو الحاسوب يفهمها باش نقدرو نتواصلو مع الآلة
بحال ايلا كندوي مع صاحبي او شي حد انسان بحالي.
يعني كيحاولو يتعاملوا مع الكلام اللي كيقولوه الناس
بحال الكلمات والعبارات والجمل والنصوص.
ف CNN قلنا كنتعاملو مع البيانات المرئية بحال التصاور والفيديوات
هنايا كنتعاملو مع هدرتنا ولغتنا ككلمات وجمل Texts..
غتقوليا علاش غنحتاجو deep learning فهادشي؟
التقنيات المستخدمة في deep learning
كتخلينا نتعمقو ف فهم اللغة الطبيعية،
ماشي غير نديرو تحليل الكلمات الرئيسية بالطريقة التقليدية القديمة،
ولكن هاد التقنيات كتحاول تفهم المعنى اللي بغينا نوصلو من السياق..
بنفس طريقة إدراك العقل البشري للهدرة من سياق الموضوع أولا المحادثة.
كيما كتشوفو فهاد الشيما هادو مستويات اللغة..

هاد المستويات كاملين داخلين ف Natural Language Understanding
فهم اللغة الطبيعية هو فهم اللغة العادية اللي كنستخدموها ف التواصل بيناتنا كبشر.
حيتاش اللغة الطبيعية مامقتصراش غير على الكلمات الرئيسية ،
الآلة خصها تفهم اللغة كيفما كنفهموها حنايا،
يعني خصها حتا هي تفهم المعاني والكلمات والتراكيب اللغوية و مضمون الكلام من السياق الخ...
حتا دكشي ديال الاعراب اللي قرينا فالسادس
(يااه شحال كليت فيه ديال العصا)
شناهوما الخطوات اللي كيدوز منهم NLP ؟

اول حاجة باش نبداو عملية معالجة اللغات الطبيعية
كيخصنا نص.. هاداك هو الداتا ديالنا
غادي نقادو داك النص بواحد الطريقة اللي تسهل المعالجة ديالو
مثلا ناخدو جملة "janna went back to university"
هاد الجملة غندوزوها من بزاف ديال المراحل..

من بعد مكنرد الحروف اللي majuscule يوليو miniscule
كنبداو اول خطوة فى المعالجة الأولية و هي Tokenization
اللي هي عملية تقطيع الجمل الكبيرة الى كلمات او Token
عملية التحويل الى Token مهمة بزاف حيتاش كتسهل عملية تحليل الجمل و سهولة معالجتها بواسطة الآلة
غالبية خوارزميات معالجة اللغة الطبيعية
كيتشرطو يكون المدخلات ديالهم input عبارة عن توكينات
وماشي نص كبير او مجموعة من الجمل.
كيف كنقولو ديما.. البيسي مكلخ لواحد الدرجة لا توصف
اذن كنعطيوه الجملة كاملة ولكن على شكل كلمات tokens
باش منهم يقدر algorithm ديالك يدير ديك المعالجة بطريقة ادق
ومن بعد غيعرف كل كلمة و يحدد المقصود منها ومن الجملة ككل
بناء على السياق context
من بعد كنديرو POS tagging
الـ Part-of-speech (POS) tagging
هي عملية تحديد و تقسيم جزء الكلام لكل كلمة في الجملة،
مثلا اسم، فعل، صفة، حال، الخ...

الـ POS tagging كيكون مفيد في العديد من مهام معالجة اللغة الطبيعية
بحال تحليل المشاعر،
تصنيف النصوص،
استخراج المعلومات،
وحتا الترجمة الآلية.
ملي كنساليوها وكنعرفو كل كلمة شناهيا
كنديرو Stopwords Removal
(أو عملية ازالة Stopwords)

وهاد Stopwords هوما الكلمات الشائعة المستخدمة في اللغة
بحال "the" و "and" و "a" وغيرها،
هادو معندهومش تأثير كبير على الجملة
ومكيزيدوش شي معنى إلى النص.
ملي كنمسحو هاد الكلمات كنقللو من noise في بيانات النص..
وكيبقا عندنا غير دكشي اللي محتاجين
إزالة stopwords ضرورية لمعالجة النصوص
ماشي غير حيتاش معندهاش معنى فالنص
ولكن حيتاش هاد الكلمات كيتعاودو بزاف فالجملة
وبالتالي غياخدو مساحة مهمة في الذاكرة memory
وهدشي غادي يبطئ التحليل.
دكشي علاش كنمسحوها من النص باش تكون كفاءة ودقة التحليل.
مثلا شوف معايا هاد الجملة "The man sat on the chair"
الstopwords اللي عندنا هنا هوما "the" و "on".
ملي كنحيدوهوم كنبقاو مركزين على الكلمات الاهم فى عملية المعالجة و التحليل
واللي هوما "chair" و "sat" و "man".
هادو امثلة اخرين..

العملية التالية هي Stemming
واللي كتعني عملية الرجوع الى الأصل ،
كترجع الكلمة للاصل ديالها
الـ Stemming هي عملية تقليل الكلمة إلى شكلها الأساسي أو الجذر ديالها.
مثلا، الكلمات "playing"، "plays"، و "played"
كنرجعوهوم للأصل "play"
وهدشي باستعمال الخوارزميات اللي كايدارو ف الـ Stemming.
الهدف الرئيسي من الـ Stemming هو تقليل الأشكال المختلفة للكلمة إلى شكل أساسي مشترك، واللي بيساعد في المهام زي تصنيف النصوص، وتحليل المشاعر، واسترجاع المعلومات.
بلاصة منعاملو كل كلمة بوحدها واللي هما فالاصل راه بحال بحال
كنديرو Stemming
ملي كنردو الكلمات لشكلها الأساسي،
كنقدرو نجمعو بين الأشكال المختلفة لنفس الكلمة
ونعاملوهم كمصطلح واحد،
وهدشي كيحسن دقة وكفاءة مهام معالجة اللغة الطبيعية.
كاينين بزاف ديال الخوارزميات اللي كيديرو لينا هاد Stemming
منهم خوارزمية Porter Stemming وخوارزمية Lancaster Stemming...
هاد الخوارزميات كيطبقو شي تقنيات وقواعد باش يحيدو الإضافات من الكلمات ويردوهم لشكلهم الأساسي أو الجذر.
غنخلي ليكم فين تقراو عليهم اكثر لتحت فالمصادر
من بعد Stemming كتجي واحد الحاجة اللي كتكمل على خدمتها
واللي هي Lemmatization

الـ Lemmatization هي عملية تقليل الكلمات للشكل الأساسي ديالها في القاموس (اللي كيتسمى lemma)
هو نفس الخدمة ديال Stemming ولكن هادا شوية شاطر عليه
الStemming كيحيد غير شي جزء باش يرد الكلمة للاصل ديالها
دكشي ديال les terminaisons les prefixes le suffixes etc…
مثلا ملي عطيناه "playing" عطانا "play" حيتاش حيد ing-
ولكن تقدر تعطيه "better" ويتصحاب ليه راه "bet" ويحيد ليك ter-
وهادا خطأ حيت "bet" و "better" لا علاقة..
هنايا كيجي الدور ديال Lemmatization
هادا عندو باكاج معرفي لغوي عندو قاموس كيشوف فيه الكلمات وكيحاول يلقا الاصل ديالهم ف Lemma ديالو
ملي غنطبقو Lemmatization ف "better"
غادي يستاعن بالقاموس ديالو..
وغادي يلقا بلي راه الاصل ديالها هي "good"
Named entity recognition من بعد كتجي
اللي كتكلاصي كل كلمة على حسب الانتماء ديالها او الكلاس ديالها
مثلا عندنا جملة "The CEO of Tesla Elon Musk lives in New York"
غادي يعرف بلي elon musk كينتامي لفئة الشخصيات
و New York من فئة الاماكن او المدن
و Google من فئة المؤسسات

وهنايا صافي كنكونو سالينا المعالجة الاولية ديال اللغة ف النص ديالك
وبيها الداتا ديالك كتكون نقية ومزيانة
وواجدة باش نطبقو عليها التعلم العميق ديالنا
غير هو كيما قلنا.. البيسي كيفهم غير 0 و 1
وحنا مزال عندنا كلمات بغينا نحولوهوم لارقام باش يدخلو لينا فاي خوارزمية بغينا نستعملو
دكشي علاش بقات لينا خطوة اخيرة ف NLP
وهاد العملية كتسمى Vectorization
و هي تحويل tokens إلى أرقام أو متجهات تقدر تفهمهوم الالة.
باش من بعد نقدرو ندخلوهوم لشي شبكة عصبية
ونطبقو عليهم التعلم العميق

كاينين بزاف ديال الطرق باش نديرو هاد العملية،
كاينة Bag of Words
TF-IDF
…Word2Vec
(dedicace l Word2Vec)

وغيرهم الكثير..
ايلا بغيتو تعرفو عليهم اكثر
تفرجو فهاد الفيديو راه كيشرح دكشي مزياان..
هادي كانت فكرة عامة على الموضوع
مزال غنشوفو اشياء اخرى متعلقين ب NLP فالايام الجايين
هادي خلاصة اليوم:

نتلاقاو فايمايل اخر غدا!
كنتمنى تكونو استافدتو.. ايلا عندكم شي تساؤل اولا مشرحتش شي حاجة مزيان، غير صيفط ليا رد فهاد المايل نيت..
— Kaito
ملاحظات:
ايلا عاجبك هدشي وقادر باش تساند هاد newsletter بدعم مادي
دخل لهنا: https://ko-fi.com/callmekaito
شكرا (:

السلام عليكم ورحمة الله... معاكم Kaito :)
مرحبا بيكم فالنهار 23 ديال سلسلة 30 يوم من التعلم الآلي..
بقات سيمانة ويسالي التحدي ديالنا
راه حنا غاديين الحمد لله
اليوما غندويو على واحد الحاجة مهمة بزاف فحياتنا مع التكنولوجيا دبا
و اللي بلا بيها مكانش غيكون لا غوغل
لا شات جي بي تي
لا ترجمة لغات
لا حتا حاجة من هدشي اللي كتشوف دبا ف AI
اليوما غنشوفو natural language processing
او باختصار: NLP

عمرك سولتي راسك كيفاش ملي كنكتب ف غوغل شي حاجة كيقدر يفهمني كيفما كيفهمني الانسان
و كيفاش ChatGPT كيعطيني اجوبة للاسئلة اللي عندي بطريقة تقول شي حد كالس مورا ديك الواجهة وهو اللي كيجاوبني..
حيتاش اللي عارفين هو انه الحاسوب اللغة الوحيدة اللي كيفهم هي لغة الارقام
وبالضبط 2 ارقام هوما 0 و 1
مع تطور التكنولوجيا والذكاء الاصطناعي بدينا كنحلمو بالروبوتات وبغينا ان الالة تبقا تفهمني بلغتي بلا منكتب انا شي كود معقد وتجاوبني بلغتي بحال بنادم
وهنا جات تقنية معالجة اللغة الطبيعية (natural language processing)،
اللي كتساعد الآلة باش تفهم اللغة اللي كيتكلم بيها الإنسان،
سواء كانت عربية، إنجليزية، اسبانية, يابانية…
أو أي لغة فهاد الدنيا،
وكتساعد الآلة باش تتواصل معانا بطريقة سهلة ومفهومة.
"معالجة اللغة الطبيعية natural language processing"
هي فرع من فروع الذكاء الاصطناعي اللي كتتعامل مع اللغة اللي كيدوي بيها الإنسان،
وكيحاولو يخليو الحاسوب يفهمها باش نقدرو نتواصلو مع الآلة
بحال ايلا كندوي مع صاحبي او شي حد انسان بحالي.
يعني كيحاولو يتعاملوا مع الكلام اللي كيقولوه الناس
بحال الكلمات والعبارات والجمل والنصوص.
ف CNN قلنا كنتعاملو مع البيانات المرئية بحال التصاور والفيديوات
هنايا كنتعاملو مع هدرتنا ولغتنا ككلمات وجمل Texts..
غتقوليا علاش غنحتاجو deep learning فهادشي؟
التقنيات المستخدمة في deep learning
كتخلينا نتعمقو ف فهم اللغة الطبيعية،
ماشي غير نديرو تحليل الكلمات الرئيسية بالطريقة التقليدية القديمة،
ولكن هاد التقنيات كتحاول تفهم المعنى اللي بغينا نوصلو من السياق..
بنفس طريقة إدراك العقل البشري للهدرة من سياق الموضوع أولا المحادثة.
كيما كتشوفو فهاد الشيما هادو مستويات اللغة..

هاد المستويات كاملين داخلين ف Natural Language Understanding
فهم اللغة الطبيعية هو فهم اللغة العادية اللي كنستخدموها ف التواصل بيناتنا كبشر.
حيتاش اللغة الطبيعية مامقتصراش غير على الكلمات الرئيسية ،
الآلة خصها تفهم اللغة كيفما كنفهموها حنايا،
يعني خصها حتا هي تفهم المعاني والكلمات والتراكيب اللغوية و مضمون الكلام من السياق الخ...
حتا دكشي ديال الاعراب اللي قرينا فالسادس
(يااه شحال كليت فيه ديال العصا)
شناهوما الخطوات اللي كيدوز منهم NLP ؟

اول حاجة باش نبداو عملية معالجة اللغات الطبيعية
كيخصنا نص.. هاداك هو الداتا ديالنا
غادي نقادو داك النص بواحد الطريقة اللي تسهل المعالجة ديالو
مثلا ناخدو جملة "janna went back to university"
هاد الجملة غندوزوها من بزاف ديال المراحل..

من بعد مكنرد الحروف اللي majuscule يوليو miniscule
كنبداو اول خطوة فى المعالجة الأولية و هي Tokenization
اللي هي عملية تقطيع الجمل الكبيرة الى كلمات او Token
عملية التحويل الى Token مهمة بزاف حيتاش كتسهل عملية تحليل الجمل و سهولة معالجتها بواسطة الآلة
غالبية خوارزميات معالجة اللغة الطبيعية
كيتشرطو يكون المدخلات ديالهم input عبارة عن توكينات
وماشي نص كبير او مجموعة من الجمل.
كيف كنقولو ديما.. البيسي مكلخ لواحد الدرجة لا توصف
اذن كنعطيوه الجملة كاملة ولكن على شكل كلمات tokens
باش منهم يقدر algorithm ديالك يدير ديك المعالجة بطريقة ادق
ومن بعد غيعرف كل كلمة و يحدد المقصود منها ومن الجملة ككل
بناء على السياق context
من بعد كنديرو POS tagging
الـ Part-of-speech (POS) tagging
هي عملية تحديد و تقسيم جزء الكلام لكل كلمة في الجملة،
مثلا اسم، فعل، صفة، حال، الخ...

الـ POS tagging كيكون مفيد في العديد من مهام معالجة اللغة الطبيعية
بحال تحليل المشاعر،
تصنيف النصوص،
استخراج المعلومات،
وحتا الترجمة الآلية.
ملي كنساليوها وكنعرفو كل كلمة شناهيا
كنديرو Stopwords Removal
(أو عملية ازالة Stopwords)

وهاد Stopwords هوما الكلمات الشائعة المستخدمة في اللغة
بحال "the" و "and" و "a" وغيرها،
هادو معندهومش تأثير كبير على الجملة
ومكيزيدوش شي معنى إلى النص.
ملي كنمسحو هاد الكلمات كنقللو من noise في بيانات النص..
وكيبقا عندنا غير دكشي اللي محتاجين
إزالة stopwords ضرورية لمعالجة النصوص
ماشي غير حيتاش معندهاش معنى فالنص
ولكن حيتاش هاد الكلمات كيتعاودو بزاف فالجملة
وبالتالي غياخدو مساحة مهمة في الذاكرة memory
وهدشي غادي يبطئ التحليل.
دكشي علاش كنمسحوها من النص باش تكون كفاءة ودقة التحليل.
مثلا شوف معايا هاد الجملة "The man sat on the chair"
الstopwords اللي عندنا هنا هوما "the" و "on".
ملي كنحيدوهوم كنبقاو مركزين على الكلمات الاهم فى عملية المعالجة و التحليل
واللي هوما "chair" و "sat" و "man".
هادو امثلة اخرين..

العملية التالية هي Stemming
واللي كتعني عملية الرجوع الى الأصل ،
كترجع الكلمة للاصل ديالها
الـ Stemming هي عملية تقليل الكلمة إلى شكلها الأساسي أو الجذر ديالها.
مثلا، الكلمات "playing"، "plays"، و "played"
كنرجعوهوم للأصل "play"
وهدشي باستعمال الخوارزميات اللي كايدارو ف الـ Stemming.
الهدف الرئيسي من الـ Stemming هو تقليل الأشكال المختلفة للكلمة إلى شكل أساسي مشترك، واللي بيساعد في المهام زي تصنيف النصوص، وتحليل المشاعر، واسترجاع المعلومات.
بلاصة منعاملو كل كلمة بوحدها واللي هما فالاصل راه بحال بحال
كنديرو Stemming
ملي كنردو الكلمات لشكلها الأساسي،
كنقدرو نجمعو بين الأشكال المختلفة لنفس الكلمة
ونعاملوهم كمصطلح واحد،
وهدشي كيحسن دقة وكفاءة مهام معالجة اللغة الطبيعية.
كاينين بزاف ديال الخوارزميات اللي كيديرو لينا هاد Stemming
منهم خوارزمية Porter Stemming وخوارزمية Lancaster Stemming...
هاد الخوارزميات كيطبقو شي تقنيات وقواعد باش يحيدو الإضافات من الكلمات ويردوهم لشكلهم الأساسي أو الجذر.
غنخلي ليكم فين تقراو عليهم اكثر لتحت فالمصادر
من بعد Stemming كتجي واحد الحاجة اللي كتكمل على خدمتها
واللي هي Lemmatization

الـ Lemmatization هي عملية تقليل الكلمات للشكل الأساسي ديالها في القاموس (اللي كيتسمى lemma)
هو نفس الخدمة ديال Stemming ولكن هادا شوية شاطر عليه
الStemming كيحيد غير شي جزء باش يرد الكلمة للاصل ديالها
دكشي ديال les terminaisons les prefixes le suffixes etc…
مثلا ملي عطيناه "playing" عطانا "play" حيتاش حيد ing-
ولكن تقدر تعطيه "better" ويتصحاب ليه راه "bet" ويحيد ليك ter-
وهادا خطأ حيت "bet" و "better" لا علاقة..
هنايا كيجي الدور ديال Lemmatization
هادا عندو باكاج معرفي لغوي عندو قاموس كيشوف فيه الكلمات وكيحاول يلقا الاصل ديالهم ف Lemma ديالو
ملي غنطبقو Lemmatization ف "better"
غادي يستاعن بالقاموس ديالو..
وغادي يلقا بلي راه الاصل ديالها هي "good"
Named entity recognition من بعد كتجي
اللي كتكلاصي كل كلمة على حسب الانتماء ديالها او الكلاس ديالها
مثلا عندنا جملة "The CEO of Tesla Elon Musk lives in New York"
غادي يعرف بلي elon musk كينتامي لفئة الشخصيات
و New York من فئة الاماكن او المدن
و Google من فئة المؤسسات

وهنايا صافي كنكونو سالينا المعالجة الاولية ديال اللغة ف النص ديالك
وبيها الداتا ديالك كتكون نقية ومزيانة
وواجدة باش نطبقو عليها التعلم العميق ديالنا
غير هو كيما قلنا.. البيسي كيفهم غير 0 و 1
وحنا مزال عندنا كلمات بغينا نحولوهوم لارقام باش يدخلو لينا فاي خوارزمية بغينا نستعملو
دكشي علاش بقات لينا خطوة اخيرة ف NLP
وهاد العملية كتسمى Vectorization
و هي تحويل tokens إلى أرقام أو متجهات تقدر تفهمهوم الالة.
باش من بعد نقدرو ندخلوهوم لشي شبكة عصبية
ونطبقو عليهم التعلم العميق

كاينين بزاف ديال الطرق باش نديرو هاد العملية،
كاينة Bag of Words
TF-IDF
…Word2Vec
(dedicace l Word2Vec)

وغيرهم الكثير..
ايلا بغيتو تعرفو عليهم اكثر
تفرجو فهاد الفيديو راه كيشرح دكشي مزياان..
هادي كانت فكرة عامة على الموضوع
مزال غنشوفو اشياء اخرى متعلقين ب NLP فالايام الجايين
هادي خلاصة اليوم:

نتلاقاو فايمايل اخر غدا!
كنتمنى تكونو استافدتو.. ايلا عندكم شي تساؤل اولا مشرحتش شي حاجة مزيان، غير صيفط ليا رد فهاد المايل نيت..
— Kaito
ملاحظات:
ايلا عاجبك هدشي وقادر باش تساند هاد newsletter بدعم مادي
دخل لهنا: https://ko-fi.com/callmekaito
شكرا (:

التالي