You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
154 lines
23 KiB
154 lines
23 KiB
<!--
|
|
CO_OP_TRANSLATOR_METADATA:
|
|
{
|
|
"original_hash": "be03c8182982b87ced155e4e9d1438e8",
|
|
"translation_date": "2025-09-06T07:21:25+00:00",
|
|
"source_file": "6-NLP/3-Translation-Sentiment/README.md",
|
|
"language_code": "pa"
|
|
}
|
|
-->
|
|
# ਮਸ਼ੀਨ ਲਰਨਿੰਗ ਨਾਲ ਅਨੁਵਾਦ ਅਤੇ ਭਾਵਨਾ ਵਿਸ਼ਲੇਸ਼ਣ
|
|
|
|
ਪਿਛਲੇ ਪਾਠਾਂ ਵਿੱਚ ਤੁਸੀਂ ਸਿੱਖਿਆ ਕਿ ਕਿਵੇਂ `TextBlob` ਵਰਤ ਕੇ ਇੱਕ ਬੁਨਿਆਦੀ ਬੋਟ ਬਣਾਈ ਜਾ ਸਕਦੀ ਹੈ। ਇਹ ਲਾਇਬ੍ਰੇਰੀ ਮਸ਼ੀਨ ਲਰਨਿੰਗ ਨੂੰ ਪਿੱਛੇ-ਪਿੱਛੇ ਵਰਤਦੀ ਹੈ ਤਾਂ ਜੋ ਨਾਉਨ ਫਰੇਜ਼ ਨਿਕਾਲਣ ਵਰਗੇ ਬੁਨਿਆਦੀ NLP ਕੰਮ ਕੀਤੇ ਜਾ ਸਕਣ। ਗਣਨਾਤਮਕ ਭਾਸ਼ਾਵਿਜ਼ਾਨ ਵਿੱਚ ਇੱਕ ਹੋਰ ਮਹੱਤਵਪੂਰਨ ਚੁਣੌਤੀ ਹੈ ਇੱਕ ਭਾਸ਼ਾ ਤੋਂ ਦੂਜੀ ਭਾਸ਼ਾ ਵਿੱਚ ਵਾਕਾਂਸ਼ ਦਾ ਸਹੀ _ਅਨੁਵਾਦ_।
|
|
|
|
## [ਪਾਠ-ਪਹਿਲਾਂ ਕਵਿਜ਼](https://ff-quizzes.netlify.app/en/ml/)
|
|
|
|
ਅਨੁਵਾਦ ਇੱਕ ਬਹੁਤ ਮੁਸ਼ਕਲ ਸਮੱਸਿਆ ਹੈ ਕਿਉਂਕਿ ਹਜ਼ਾਰਾਂ ਭਾਸ਼ਾਵਾਂ ਹਨ ਅਤੇ ਹਰ ਇੱਕ ਦੀ ਆਪਣੀ ਵੱਖਰੀ ਵਿਆਕਰਣ ਦੀ ਬਣਤਰ ਹੋ ਸਕਦੀ ਹੈ। ਇੱਕ ਪਹੁੰਚ ਇਹ ਹੈ ਕਿ ਇੱਕ ਭਾਸ਼ਾ, ਜਿਵੇਂ ਕਿ ਅੰਗਰੇਜ਼ੀ, ਦੀ ਵਿਆਕਰਣ ਦੇ ਨਿਯਮਾਂ ਨੂੰ ਇੱਕ ਗੈਰ-ਭਾਸ਼ਾ ਨਿਰਭਰ ਬਣਤਰ ਵਿੱਚ ਬਦਲਿਆ ਜਾਵੇ, ਅਤੇ ਫਿਰ ਇਸਨੂੰ ਦੂਜੀ ਭਾਸ਼ਾ ਵਿੱਚ ਬਦਲਿਆ ਜਾਵੇ। ਇਸ ਪਹੁੰਚ ਵਿੱਚ ਹੇਠਾਂ ਦਿੱਤੇ ਕਦਮ ਸ਼ਾਮਲ ਹਨ:
|
|
|
|
1. **ਪਛਾਣ**। ਇਨਪੁਟ ਭਾਸ਼ਾ ਦੇ ਸ਼ਬਦਾਂ ਨੂੰ ਨਾਉਨ, ਕਿਰਿਆ ਆਦਿ ਵਿੱਚ ਪਛਾਣੋ ਜਾਂ ਟੈਗ ਕਰੋ।
|
|
2. **ਅਨੁਵਾਦ ਬਣਾਓ**। ਹਰ ਸ਼ਬਦ ਦਾ ਟੀਕਾ ਲਗਾ ਕੇ ਟੀਕਾ ਭਾਸ਼ਾ ਦੇ ਫਾਰਮੈਟ ਵਿੱਚ ਸਿੱਧਾ ਅਨੁਵਾਦ ਬਣਾਓ।
|
|
|
|
### ਉਦਾਹਰਣ ਵਾਕ, ਅੰਗਰੇਜ਼ੀ ਤੋਂ ਆਇਰਿਸ਼
|
|
|
|
'ਅੰਗਰੇਜ਼ੀ' ਵਿੱਚ, ਵਾਕ _I feel happy_ ਤਿੰਨ ਸ਼ਬਦਾਂ ਵਿੱਚ ਹੈ:
|
|
|
|
- **ਵਿਸ਼ਾ** (I)
|
|
- **ਕਿਰਿਆ** (feel)
|
|
- **ਵਿਸ਼ੇਸ਼ਣ** (happy)
|
|
|
|
ਪਰ 'ਆਇਰਿਸ਼' ਭਾਸ਼ਾ ਵਿੱਚ, ਇਹੀ ਵਾਕ ਬਹੁਤ ਵੱਖਰੀ ਵਿਆਕਰਣ ਬਣਤਰ ਰੱਖਦਾ ਹੈ - ਜਿਵੇਂ "*happy*" ਜਾਂ "*sad*" ਜਜ਼ਬਾਤਾਂ ਨੂੰ *ਤੁਹਾਡੇ ਉੱਤੇ* ਹੋਣ ਦੇ ਤੌਰ ਤੇ ਪ੍ਰਗਟ ਕੀਤਾ ਜਾਂਦਾ ਹੈ।
|
|
|
|
ਅੰਗਰੇਜ਼ੀ ਵਾਕ `I feel happy` ਦਾ ਆਇਰਿਸ਼ ਵਿੱਚ ਅਨੁਵਾਦ `Tá athas orm` ਹੁੰਦਾ ਹੈ। ਇੱਕ *literal* ਅਨੁਵਾਦ `Happy is upon me` ਹੁੰਦਾ ਹੈ।
|
|
|
|
ਆਇਰਿਸ਼ ਬੋਲਣ ਵਾਲਾ ਅੰਗਰੇਜ਼ੀ ਵਿੱਚ ਅਨੁਵਾਦ ਕਰਦਾ `I feel happy`, ਨਾ ਕਿ `Happy is upon me`, ਕਿਉਂਕਿ ਉਹ ਵਾਕ ਦਾ ਅਰਥ ਸਮਝਦਾ ਹੈ, ਭਾਵੇਂ ਸ਼ਬਦ ਅਤੇ ਵਾਕ ਬਣਤਰ ਵੱਖਰੇ ਹਨ।
|
|
|
|
ਆਇਰਿਸ਼ ਵਿੱਚ ਵਾਕ ਦੀ ਸਧਾਰਨ ਬਣਤਰ ਹੈ:
|
|
|
|
- **ਕਿਰਿਆ** (Tá ਜਾਂ is)
|
|
- **ਵਿਸ਼ੇਸ਼ਣ** (athas, ਜਾਂ happy)
|
|
- **ਵਿਸ਼ਾ** (orm, ਜਾਂ upon me)
|
|
|
|
## ਅਨੁਵਾਦ
|
|
|
|
ਇੱਕ ਸਧਾਰਨ ਅਨੁਵਾਦ ਪ੍ਰੋਗਰਾਮ ਸਿਰਫ਼ ਸ਼ਬਦਾਂ ਦਾ ਅਨੁਵਾਦ ਕਰ ਸਕਦਾ ਹੈ, ਵਾਕ ਬਣਤਰ ਨੂੰ ਨਜ਼ਰਅੰਦਾਜ਼ ਕਰਦੇ ਹੋਏ।
|
|
|
|
✅ ਜੇ ਤੁਸੀਂ ਵੱਡੇ ਹੋ ਕੇ ਦੂਜੀ (ਜਾਂ ਤੀਜੀ ਜਾਂ ਹੋਰ) ਭਾਸ਼ਾ ਸਿੱਖੀ ਹੈ, ਤਾਂ ਤੁਸੀਂ ਸ਼ਾਇਦ ਆਪਣੇ ਮੂਲ ਭਾਸ਼ਾ ਵਿੱਚ ਸੋਚਦੇ ਹੋਏ ਸ਼ੁਰੂ ਕੀਤਾ ਹੋਵੇਗਾ, ਇੱਕ ਸ਼ਬਦ-ਦਰ-ਸ਼ਬਦ ਅਨੁਵਾਦ ਆਪਣੇ ਦਿਮਾਗ ਵਿੱਚ ਕੀਤਾ ਹੋਵੇਗਾ, ਅਤੇ ਫਿਰ ਆਪਣਾ ਅਨੁਵਾਦ ਬੋਲਿਆ ਹੋਵੇਗਾ। ਇਹ ਕੁਝ ਉਹੀ ਹੈ ਜੋ ਸਧਾਰਨ ਅਨੁਵਾਦ ਕੰਪਿਊਟਰ ਪ੍ਰੋਗਰਾਮ ਕਰਦੇ ਹਨ। ਫਲੂਐਂਸੀ ਪ੍ਰਾਪਤ ਕਰਨ ਲਈ ਇਸ ਪੜਾਅ ਤੋਂ ਪਾਰ ਹੋਣਾ ਮਹੱਤਵਪੂਰਨ ਹੈ!
|
|
|
|
ਸਧਾਰਨ ਅਨੁਵਾਦ ਖਰਾਬ (ਅਤੇ ਕਈ ਵਾਰ ਮਜ਼ੇਦਾਰ) ਗਲਤ ਅਨੁਵਾਦਾਂ ਦੀ ਵਜ੍ਹਾ ਬਣਦਾ ਹੈ: `I feel happy` ਦਾ literal ਅਨੁਵਾਦ `Mise bhraitheann athas` ਆਇਰਿਸ਼ ਵਿੱਚ ਹੁੰਦਾ ਹੈ। ਇਸਦਾ literal ਅਰਥ `me feel happy` ਹੁੰਦਾ ਹੈ ਅਤੇ ਇਹ ਇੱਕ ਸਹੀ ਆਇਰਿਸ਼ ਵਾਕ ਨਹੀਂ ਹੈ। ਭਾਵੇਂ ਅੰਗਰੇਜ਼ੀ ਅਤੇ ਆਇਰਿਸ਼ ਦੋ ਭਾਸ਼ਾਵਾਂ ਦੋ ਨੇੜੇ ਟਾਪੂਆਂ 'ਤੇ ਬੋਲੀਆਂ ਜਾਂਦੀਆਂ ਹਨ, ਇਹ ਬਹੁਤ ਵੱਖਰੀਆਂ ਭਾਸ਼ਾਵਾਂ ਹਨ ਜਿਨ੍ਹਾਂ ਦੀ ਵਿਆਕਰਣ ਬਣਤਰ ਵੱਖਰੀ ਹੈ।
|
|
|
|
> ਤੁਸੀਂ ਆਇਰਿਸ਼ ਭਾਸ਼ਾਵਿਜ਼ਾਨ ਦੀਆਂ ਰਵਾਇਤਾਂ ਬਾਰੇ ਕੁਝ ਵੀਡੀਓਜ਼ ਦੇਖ ਸਕਦੇ ਹੋ ਜਿਵੇਂ [ਇਹ](https://www.youtube.com/watch?v=mRIaLSdRMMs)
|
|
|
|
### ਮਸ਼ੀਨ ਲਰਨਿੰਗ ਪਹੁੰਚ
|
|
|
|
ਹੁਣ ਤੱਕ, ਤੁਸੀਂ ਕੁਦਰਤੀ ਭਾਸ਼ਾ ਪ੍ਰਕਿਰਿਆ ਲਈ ਸਧਾਰਨ ਨਿਯਮ ਪਹੁੰਚ ਬਾਰੇ ਸਿੱਖਿਆ ਹੈ। ਇੱਕ ਹੋਰ ਪਹੁੰਚ ਇਹ ਹੈ ਕਿ ਸ਼ਬਦਾਂ ਦੇ ਅਰਥ ਨੂੰ ਨਜ਼ਰਅੰਦਾਜ਼ ਕਰਦੇ ਹੋਏ, _ਮਸ਼ੀਨ ਲਰਨਿੰਗ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਪੈਟਰਨ ਪਛਾਣੋ_। ਜੇ ਤੁਹਾਡੇ ਕੋਲ ਬਹੁਤ ਸਾਰਾ ਟੈਕਸਟ (ਇੱਕ *corpus*) ਜਾਂ ਟੈਕਸਟ (*corpora*) ਮੂਲ ਅਤੇ ਟੀਕਾ ਭਾਸ਼ਾਵਾਂ ਵਿੱਚ ਹੋਵੇ, ਤਾਂ ਇਹ ਅਨੁਵਾਦ ਵਿੱਚ ਕੰਮ ਕਰ ਸਕਦਾ ਹੈ।
|
|
|
|
ਉਦਾਹਰਣ ਲਈ, *Pride and Prejudice*, ਜੇਨ ਆਸਟਿਨ ਦੁਆਰਾ 1813 ਵਿੱਚ ਲਿਖੀ ਇੱਕ ਪ੍ਰਸਿੱਧ ਅੰਗਰੇਜ਼ੀ ਨਾਵਲ ਦੇ ਕੇਸ ਨੂੰ ਵੇਖੋ। ਜੇ ਤੁਸੀਂ ਇਸ ਕਿਤਾਬ ਨੂੰ ਅੰਗਰੇਜ਼ੀ ਵਿੱਚ ਅਤੇ *French* ਵਿੱਚ ਇੱਕ ਮਨੁੱਖੀ ਅਨੁਵਾਦ ਦੇਖੋ, ਤਾਂ ਤੁਸੀਂ ਇੱਕ ਵਿੱਚ ਉਹ ਫਰੇਜ਼ ਪਛਾਣ ਸਕਦੇ ਹੋ ਜੋ ਦੂਜੇ ਵਿੱਚ _idiomatically_ ਅਨੁਵਾਦ ਕੀਤੇ ਗਏ ਹਨ। ਤੁਸੀਂ ਇਹ ਕੁਝ ਹੀ ਸਮੇਂ ਵਿੱਚ ਕਰੋਗੇ।
|
|
|
|
ਉਦਾਹਰਣ ਲਈ, ਜਦੋਂ ਅੰਗਰੇਜ਼ੀ ਫਰੇਜ਼ `I have no money` ਨੂੰ literal ਤੌਰ 'ਤੇ French ਵਿੱਚ ਅਨੁਵਾਦ ਕੀਤਾ ਜਾਂਦਾ ਹੈ, ਤਾਂ ਇਹ `Je n'ai pas de monnaie` ਬਣ ਸਕਦਾ ਹੈ। "Monnaie" ਇੱਕ ਚੁਣੌਤੀਪੂਰਨ French 'false cognate' ਹੈ, ਕਿਉਂਕਿ 'money' ਅਤੇ 'monnaie' ਇੱਕੋ ਜਿਹੇ ਨਹੀਂ ਹਨ। ਇੱਕ ਬਿਹਤਰ ਅਨੁਵਾਦ ਜੋ ਇੱਕ ਮਨੁੱਖ ਕਰ ਸਕਦਾ ਹੈ ਉਹ `Je n'ai pas d'argent` ਹੋਵੇਗਾ, ਕਿਉਂਕਿ ਇਹ ਬਿਹਤਰ ਤਰੀਕੇ ਨਾਲ ਇਹ ਦਰਸਾਉਂਦਾ ਹੈ ਕਿ ਤੁਹਾਡੇ ਕੋਲ ਪੈਸਾ ਨਹੀਂ ਹੈ (ਬਜਾਏ 'loose change' ਜੋ 'monnaie' ਦਾ ਅਰਥ ਹੈ)।
|
|
|
|

|
|
|
|
> ਚਿੱਤਰ [Jen Looper](https://twitter.com/jenlooper) ਦੁਆਰਾ
|
|
|
|
ਜੇ ਇੱਕ ML ਮਾਡਲ ਕੋਲ ਕਾਫ਼ੀ ਮਨੁੱਖੀ ਅਨੁਵਾਦ ਹਨ ਜਿਨ੍ਹਾਂ 'ਤੇ ਮਾਡਲ ਬਣਾਇਆ ਜਾ ਸਕੇ, ਤਾਂ ਇਹ ਪਿਛਲੇ ਅਨੁਵਾਦ ਕੀਤੇ ਗਏ ਟੈਕਸਟਾਂ ਵਿੱਚ ਆਮ ਪੈਟਰਨ ਪਛਾਣ ਕੇ ਅਨੁਵਾਦ ਦੀ ਸਹੀਤਾ ਵਿੱਚ ਸੁਧਾਰ ਕਰ ਸਕਦਾ ਹੈ।
|
|
|
|
### ਅਭਿਆਸ - ਅਨੁਵਾਦ
|
|
|
|
ਤੁਸੀਂ `TextBlob` ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਵਾਕਾਂਸ਼ਾਂ ਦਾ ਅਨੁਵਾਦ ਕਰ ਸਕਦੇ ਹੋ। **Pride and Prejudice** ਦੀ ਮਸ਼ਹੂਰ ਪਹਿਲੀ ਲਾਈਨ ਦੀ ਕੋਸ਼ਿਸ਼ ਕਰੋ:
|
|
|
|
```python
|
|
from textblob import TextBlob
|
|
|
|
blob = TextBlob(
|
|
"It is a truth universally acknowledged, that a single man in possession of a good fortune, must be in want of a wife!"
|
|
)
|
|
print(blob.translate(to="fr"))
|
|
|
|
```
|
|
|
|
`TextBlob` ਅਨੁਵਾਦ ਵਿੱਚ ਕਾਫ਼ੀ ਵਧੀਆ ਕੰਮ ਕਰਦਾ ਹੈ: "C'est une vérité universellement reconnue, qu'un homme célibataire en possession d'une bonne fortune doit avoir besoin d'une femme!".
|
|
|
|
ਇਹ ਕਿਹਾ ਜਾ ਸਕਦਾ ਹੈ ਕਿ TextBlob ਦਾ ਅਨੁਵਾਦ 1932 ਵਿੱਚ V. Leconte ਅਤੇ Ch. Pressoir ਦੁਆਰਾ ਕੀਤੇ French ਅਨੁਵਾਦ ਨਾਲੋਂ ਕਾਫ਼ੀ ਜ਼ਿਆਦਾ ਸਹੀ ਹੈ:
|
|
|
|
"C'est une vérité universelle qu'un célibataire pourvu d'une belle fortune doit avoir envie de se marier, et, si peu que l'on sache de son sentiment à cet egard, lorsqu'il arrive dans une nouvelle résidence, cette idée est si bien fixée dans l'esprit de ses voisins qu'ils le considèrent sur-le-champ comme la propriété légitime de l'une ou l'autre de leurs filles."
|
|
|
|
ਇਸ ਕੇਸ ਵਿੱਚ, ML ਦੁਆਰਾ ਜਾਣਕਾਰੀ ਪ੍ਰਾਪਤ ਅਨੁਵਾਦ ਮਨੁੱਖੀ ਅਨੁਵਾਦਕ ਨਾਲੋਂ ਬਿਹਤਰ ਕੰਮ ਕਰਦਾ ਹੈ ਜੋ ਲਾਜ਼ਮੀ ਤੌਰ 'ਤੇ ਮੂਲ ਲੇਖਕ ਦੇ ਸ਼ਬਦਾਂ ਵਿੱਚ ਬਿਨਾਂ ਜ਼ਰੂਰਤ ਸ਼ਬਦ ਸ਼ਾਮਲ ਕਰ ਰਿਹਾ ਹੈ।
|
|
|
|
> ਇਹ ਕੀ ਹੋ ਰਿਹਾ ਹੈ? ਅਤੇ TextBlob ਅਨੁਵਾਦ ਵਿੱਚ ਕਿਉਂ ਇੰਨਾ ਵਧੀਆ ਹੈ? ਖੈਰ, ਪਿੱਛੇ-ਪਿੱਛੇ, ਇਹ Google translate ਦੀ ਵਰਤੋਂ ਕਰ ਰਿਹਾ ਹੈ, ਇੱਕ ਸੁਧਾਰਸ਼ੀਲ AI ਜੋ ਲੱਖਾਂ ਫਰੇਜ਼ਾਂ ਨੂੰ ਪਾਰਸ ਕਰ ਸਕਦਾ ਹੈ ਤਾਂ ਜੋ ਕੰਮ ਲਈ ਸਭ ਤੋਂ ਵਧੀਆ ਸਤਰਾਂ ਦੀ ਪੇਸ਼ਕਸ਼ ਕੀਤੀ ਜਾ ਸਕੇ। ਇੱਥੇ ਕੁਝ ਵੀ ਮੈਨੂਅਲ ਨਹੀਂ ਹੋ ਰਿਹਾ ਹੈ ਅਤੇ ਤੁਹਾਨੂੰ `blob.translate` ਦੀ ਵਰਤੋਂ ਕਰਨ ਲਈ ਇੰਟਰਨੈਟ ਕਨੈਕਸ਼ਨ ਦੀ ਲੋੜ ਹੈ।
|
|
|
|
✅ ਕੁਝ ਹੋਰ ਵਾਕਾਂਸ਼ਾਂ ਦੀ ਕੋਸ਼ਿਸ਼ ਕਰੋ। ਕਿਹੜਾ ਬਿਹਤਰ ਹੈ, ML ਜਾਂ ਮਨੁੱਖੀ ਅਨੁਵਾਦ? ਕਿਹੜੇ ਕੇਸਾਂ ਵਿੱਚ?
|
|
|
|
## ਭਾਵਨਾ ਵਿਸ਼ਲੇਸ਼ਣ
|
|
|
|
ਮਸ਼ੀਨ ਲਰਨਿੰਗ ਇੱਕ ਹੋਰ ਖੇਤਰ ਵਿੱਚ ਬਹੁਤ ਵਧੀਆ ਕੰਮ ਕਰ ਸਕਦੀ ਹੈ, ਜੋ ਕਿ ਭਾਵਨਾ ਵਿਸ਼ਲੇਸ਼ਣ ਹੈ। ਇੱਕ ਗੈਰ-ML ਪਹੁੰਚ ਭਾਵਨਾ ਪਛਾਣਨ ਲਈ 'ਸਕਾਰਾਤਮਕ' ਅਤੇ 'ਨਕਾਰਾਤਮਕ' ਸ਼ਬਦਾਂ ਅਤੇ ਫਰੇਜ਼ਾਂ ਦੀ ਪਛਾਣ ਕਰਦੀ ਹੈ। ਫਿਰ, ਇੱਕ ਨਵੀਂ ਟੈਕਸਟ ਦੇਣ 'ਤੇ, ਸਕਾਰਾਤਮਕ, ਨਕਾਰਾਤਮਕ ਅਤੇ ਤਟਸਥ ਸ਼ਬਦਾਂ ਦੀ ਕੁੱਲ ਕੀਮਤ ਦੀ ਗਿਣਤੀ ਕਰਕੇ ਸਮੁੱਚੀ ਭਾਵਨਾ ਪਛਾਣੀ ਜਾਂਦੀ ਹੈ।
|
|
|
|
ਇਹ ਪਹੁੰਚ ਆਸਾਨੀ ਨਾਲ ਧੋਖਾ ਖਾਂਦੀ ਹੈ ਜਿਵੇਂ ਤੁਸੀਂ Marvin ਟਾਸਕ ਵਿੱਚ ਦੇਖਿਆ ਹੋਵੇਗਾ - ਵਾਕ `Great, that was a wonderful waste of time, I'm glad we are lost on this dark road` ਇੱਕ ਤਨਖੇਦਕ, ਨਕਾਰਾਤਮਕ ਭਾਵਨਾ ਵਾਲਾ ਵਾਕ ਹੈ, ਪਰ ਸਧਾਰਨ ਐਲਗੋਰਿਥਮ 'great', 'wonderful', 'glad' ਨੂੰ ਸਕਾਰਾਤਮਕ ਅਤੇ 'waste', 'lost' ਅਤੇ 'dark' ਨੂੰ ਨਕਾਰਾਤਮਕ ਪਛਾਣਦਾ ਹੈ। ਸਮੁੱਚੀ ਭਾਵਨਾ ਇਹ ਵਿਰੋਧੀ ਸ਼ਬਦਾਂ ਦੁਆਰਾ ਪ੍ਰਭਾਵਿਤ ਹੁੰਦੀ ਹੈ।
|
|
|
|
✅ ਇੱਕ ਮਿੰਟ ਰੁਕੋ ਅਤੇ ਸੋਚੋ ਕਿ ਅਸੀਂ ਮਨੁੱਖੀ ਬੋਲਣ ਵਾਲੇ ਦੇ ਤੌਰ 'ਤੇ ਕਿਵੇਂ ਤਨਖੇਦ ਨੂੰ ਪ੍ਰਗਟ ਕਰਦੇ ਹਾਂ। ਸੁਰ ਦਾ ਉਚਾਰਨ ਇੱਕ ਵੱਡਾ ਭੂਮਿਕਾ ਨਿਭਾਉਂਦਾ ਹੈ। ਵਾਕ "Well, that film was awesome" ਨੂੰ ਵੱਖ-ਵੱਖ ਤਰੀਕਿਆਂ ਨਾਲ ਕਹਿਣ ਦੀ ਕੋਸ਼ਿਸ਼ ਕਰੋ ਤਾਂ ਜੋ ਪਤਾ ਲੱਗੇ ਕਿ ਤੁਹਾਡੀ ਆਵਾਜ਼ ਅਰਥ ਨੂੰ ਕਿਵੇਂ ਪ੍ਰਗਟ ਕਰਦੀ ਹੈ।
|
|
|
|
### ML ਪਹੁੰਚ
|
|
|
|
ML ਪਹੁੰਚ ਇਹ ਹੋਵੇਗੀ ਕਿ ਨਕਾਰਾਤਮਕ ਅਤੇ ਸਕਾਰਾਤਮਕ ਟੈਕਸਟਾਂ - ਟਵੀਟਾਂ, ਜਾਂ ਫਿਲਮ ਰਿਵਿਊਜ਼, ਜਾਂ ਕੁਝ ਵੀ ਜਿੱਥੇ ਮਨੁੱਖ ਨੇ ਸਕੋਰ *ਅਤੇ* ਲਿਖਤੀ ਰਾਏ ਦਿੱਤੀ ਹੋਵੇ - ਨੂੰ ਹੱਥੋਂ ਇਕੱਠਾ ਕੀਤਾ ਜਾਵੇ। ਫਿਰ NLP ਤਕਨੀਕਾਂ ਨੂੰ ਰਾਏ ਅਤੇ ਸਕੋਰਾਂ 'ਤੇ ਲਾਗੂ ਕੀਤਾ ਜਾਵੇ, ਤਾਂ ਜੋ ਪੈਟਰਨ ਉਭਰਣ (ਉਦਾਹਰਣ ਲਈ, ਸਕਾਰਾਤਮਕ ਫਿਲਮ ਰਿਵਿਊਜ਼ ਵਿੱਚ 'Oscar worthy' ਫਰੇਜ਼ ਨਕਾਰਾਤਮਕ ਫਿਲਮ ਰਿਵਿਊਜ਼ ਨਾਲੋਂ ਜ਼ਿਆਦਾ ਹੁੰਦਾ ਹੈ, ਜਾਂ ਸਕਾਰਾਤਮਕ ਰੈਸਟੋਰੈਂਟ ਰਿਵਿਊਜ਼ 'gourmet' ਸ਼ਬਦ ਨੂੰ 'disgusting' ਨਾਲੋਂ ਜ਼ਿਆਦਾ ਵਰਤਦੇ ਹਨ)।
|
|
|
|
> ⚖️ **ਉਦਾਹਰਣ**: ਜੇ ਤੁਸੀਂ ਕਿਸੇ ਰਾਜਨੀਤਿਕ ਦਫ਼ਤਰ ਵਿੱਚ ਕੰਮ ਕਰਦੇ ਹੋ ਅਤੇ ਕੋਈ ਨਵਾਂ ਕਾਨੂੰਨ ਚਰਚਾ ਵਿੱਚ ਹੈ, ਤਾਂ ਲੋਕ ਇਸ ਨਵੇਂ ਕਾਨੂੰਨ ਦੇ ਹੱਕ ਵਿੱਚ ਜਾਂ ਵਿਰੋਧ ਵਿੱਚ ਦਫ਼ਤਰ ਨੂੰ ਈਮੇਲ ਭੇਜ ਸਕਦੇ ਹਨ। ਮੰਨ ਲਓ ਕਿ ਤੁਹਾਨੂੰ ਇਹ ਈਮੇਲਾਂ ਪੜ੍ਹਨ ਅਤੇ ਦੋ ਢੇਰਾਂ ਵਿੱਚ ਵੰਡਣ ਦਾ ਕੰਮ ਦਿੱਤਾ ਗਿਆ ਹੈ, *ਹੱਕ ਵਿੱਚ* ਅਤੇ *ਵਿਰੋਧ ਵਿੱਚ*। ਜੇ ਈਮੇਲਾਂ ਬਹੁਤ ਸਾਰੀਆਂ ਹੋਣ, ਤਾਂ ਤੁਸੀਂ ਸਾਰੀਆਂ ਪੜ੍ਹਨ ਦੀ ਕੋਸ਼ਿਸ਼ ਕਰਦੇ ਹੋਏ ਥੱਕ ਸਕਦੇ ਹੋ। ਕੀ ਇਹ ਵਧੀਆ ਨਹੀਂ ਹੋਵੇਗਾ ਜੇਕਰ ਇੱਕ ਬੋਟ ਇਹ ਸਾਰੀਆਂ ਪੜ੍ਹ ਸਕੇ, ਸਮਝ ਸਕੇ ਅਤੇ ਤੁਹਾਨੂੰ ਦੱਸ ਸਕੇ ਕਿ ਹਰ ਈਮੇਲ ਕਿਹੜੇ ਢੇਰ ਵਿੱਚ ਜਾ ਰਹੀ ਹੈ?
|
|
>
|
|
> ਇਸਨੂੰ ਹਾਸਲ ਕਰਨ ਦਾ ਇੱਕ ਤਰੀਕਾ ਮਸ਼ੀਨ ਲਰਨਿੰਗ ਦੀ ਵਰਤੋਂ ਕਰਨਾ ਹੈ। ਤੁਸੀਂ ਮਾਡਲ ਨੂੰ *ਵਿਰੋਧ* ਈਮੇਲਾਂ ਅਤੇ *ਹੱਕ ਵਿੱਚ* ਈਮੇਲਾਂ ਦੇ ਕੁਝ ਹਿੱਸੇ ਨਾਲ ਟ੍ਰੇਨ ਕਰਦੇ। ਮਾਡਲ ਸ਼ਬਦਾਂ ਅਤੇ ਪੈਟਰਨਾਂ ਨੂੰ ਵਿਰੋਧ ਜਾਂ ਹੱਕ ਵਿੱਚ ਈਮੇਲਾਂ ਨਾਲ ਜ਼ਿਆਦਾ ਜੋੜਦਾ, *ਪਰ ਇਹ ਕਿਸੇ ਵੀ ਸਮੱਗਰੀ ਨੂੰ ਸਮਝਦਾ ਨਹੀਂ*, ਸਿਰਫ਼ ਇਹ ਕਿ ਕੁਝ ਸ਼ਬਦ ਅਤੇ ਪੈਟਰਨ ਵਿਰੋਧ ਜਾਂ ਹੱਕ ਵਿੱਚ ਈਮੇਲਾਂ ਵਿੱਚ ਜ਼ਿਆਦਾ ਆਉਂਦੇ ਹਨ। ਤੁਸੀਂ ਇਸਨੂੰ ਕੁਝ ਈਮੇਲਾਂ ਨਾਲ ਟੈਸਟ ਕਰ ਸਕਦੇ ਹੋ ਜੋ ਤੁਸੀਂ ਮਾਡਲ ਨੂੰ ਟ੍ਰੇਨ ਕਰਨ ਲਈ ਵਰਤੀਆਂ ਨਹੀਂ। ਜੇਕਰ ਇਹ ਤੁਹਾਡੇ ਨਾਲੋਂ ਸਹੀ ਨਤੀਜੇ 'ਤੇ ਪਹੁੰਚਦਾ ਹੈ, ਤਾਂ ਤੁਸੀਂ ਮਾਡਲ ਦੀ ਸਹੀਤਾ 'ਤੇ ਖੁਸ਼ ਹੋ ਸਕਦੇ ਹੋ ਅਤੇ ਭਵਿੱਖ ਦੀਆਂ ਈਮੇਲਾਂ ਨੂੰ ਪੜ੍ਹਨ ਦੀ ਲੋੜ ਬਿਨਾਂ ਪ੍ਰਕਿਰਿਆ ਕਰ ਸਕਦੇ ਹੋ।
|
|
|
|
✅ ਕੀ ਇਹ ਪ੍ਰਕਿਰਿਆ ਤੁਹਾਡੇ ਪਿਛਲੇ ਪਾਠਾਂ ਵਿੱਚ ਵਰਤੀਆਂ ਗਈਆਂ ਪ੍ਰਕਿਰਿਆਵਾਂ ਵਰਗੀ ਲੱਗਦੀ ਹੈ?
|
|
|
|
## ਅਭਿਆਸ - ਭਾਵਨਾਤਮਕ ਵਾਕਾਂਸ਼
|
|
|
|
ਭਾਵਨਾ -1 ਤੋਂ 1 ਦੇ *polarity* ਵਿੱਚ ਮਾਪੀ ਜਾਂਦੀ ਹੈ, ਜਿਸਦਾ ਅਰਥ -1 ਸਭ ਤੋਂ ਨਕਾਰਾਤਮਕ ਭਾਵਨਾ ਹੈ, ਅਤੇ 1 ਸਭ ਤੋਂ ਸਕਾਰਾਤਮਕ। ਭਾਵਨਾ 0 - 1 ਸਕੋਰ ਨਾਲ objectivity (0) ਅਤੇ subjectivity (1) ਵਿੱਚ ਵੀ ਮਾਪੀ ਜਾਂਦੀ ਹੈ।
|
|
|
|
ਜੇਨ ਆਸਟਿਨ ਦੀ *Pride and Prejudice* ਨੂੰ ਦੁਬਾਰਾ ਦੇਖੋ। ਇਹ ਟੈਕਸਟ [Project Gutenberg](https://www.gutenberg.org/files/1342/1342-h/1342-h.htm) 'ਤੇ ਉਪਲਬਧ ਹੈ। ਹੇਠਾਂ ਦਿੱਤੇ ਨਮੂਨੇ ਵਿੱਚ ਇੱਕ ਛੋਟਾ ਪ੍ਰੋਗਰਾਮ ਦਿਖਾਇਆ ਗਿਆ ਹੈ ਜੋ ਕਿਤਾਬ ਦੇ ਪਹਿਲੇ ਅਤੇ ਆਖਰੀ ਵਾਕਾਂਸ਼ਾਂ ਦੀ ਭਾਵਨਾ ਦਾ ਵਿਸ਼ਲੇਸ਼ਣ ਕਰਦਾ ਹੈ ਅਤੇ ਇਸਦੀ polarity ਅਤੇ subjectivity/objectivity ਸਕੋਰ ਦਿਖਾਉਂਦਾ ਹੈ।
|
|
|
|
ਤੁਹਾਨੂੰ `TextBlob` ਲਾਇਬ੍ਰੇਰੀ ਦੀ ਵਰਤੋਂ ਕਰਨੀ ਚਾਹੀਦੀ ਹੈ (ਜਿਵੇਂ ਉਪਰ ਦਿੱਤਾ ਗਿਆ ਹੈ) `sentiment` ਪਤਾ ਕਰਨ ਲਈ (ਤੁਹਾਨੂੰ ਆਪਣਾ ਭਾਵਨਾ ਕੈਲਕੁਲੇਟਰ ਲਿਖਣ ਦੀ ਲੋੜ ਨਹੀਂ ਹੈ) ਹੇਠਾਂ ਦਿੱਤੇ ਕੰਮ ਵਿੱਚ।
|
|
|
|
```python
|
|
from textblob import TextBlob
|
|
|
|
quote1 = """It is a truth universally acknowledged, that a single man in possession of a good fortune, must be in want of a wife."""
|
|
|
|
quote2 = """Darcy, as well as Elizabeth, really loved them; and they were both ever sensible of the warmest gratitude towards the persons who, by bringing her into Derbyshire, had been the means of uniting them."""
|
|
|
|
sentiment1 = TextBlob(quote1).sentiment
|
|
sentiment2 = TextBlob(quote2).sentiment
|
|
|
|
print(quote1 + " has a sentiment of " + str(sentiment1))
|
|
print(quote2 + " has a sentiment of " + str(sentiment2))
|
|
```
|
|
|
|
ਤੁਹਾਨੂੰ ਹੇਠਾਂ ਦਿੱਤਾ ਨਤੀਜਾ ਦਿਖਾਈ ਦਿੰਦਾ ਹੈ:
|
|
|
|
```output
|
|
It is a truth universally acknowledged, that a single man in possession of a good fortune, must be in want # of a wife. has a sentiment of Sentiment(polarity=0.20952380952380953, subjectivity=0.27142857142857146)
|
|
|
|
Darcy, as well as Elizabeth, really loved them; and they were
|
|
both ever sensible of the warmest gratitude towards the persons
|
|
who, by bringing her into Derbyshire, had been the means of
|
|
uniting them. has a sentiment of Sentiment(polarity=0.7, subjectivity=0.8)
|
|
```
|
|
|
|
## ਚੁਣੌਤੀ - polarity ਦੀ ਜਾਂਚ ਕਰੋ
|
|
|
|
ਤੁਹਾਡਾ ਕੰਮ ਹੈ, sentiment polarity ਦੀ ਵਰਤੋਂ ਕਰਕੇ, ਇਹ ਪਤਾ ਕਰਨਾ ਕਿ *Pride and Prejudice* ਵਿੱਚ absolutely positive ਵਾਕ absolutely negative ਵਾਕਾਂ ਨਾਲੋਂ ਜ਼ਿਆਦਾ ਹਨ। ਇਸ ਕੰਮ ਲਈ, ਤੁਸੀਂ ਮੰਨ ਸਕਦੇ
|
|
ਟੈਕਸਟ ਤੋਂ ਭਾਵਨਾਵਾਂ ਨਿਕਾਲਣ ਦੇ ਕਈ ਤਰੀਕੇ ਹਨ। ਉਹ ਕਾਰੋਬਾਰੀ ਐਪਲੀਕੇਸ਼ਨਾਂ ਬਾਰੇ ਸੋਚੋ ਜੋ ਇਸ ਤਕਨੀਕ ਦਾ ਇਸਤੇਮਾਲ ਕਰ ਸਕਦੀਆਂ ਹਨ। ਇਹ ਵੀ ਸੋਚੋ ਕਿ ਇਹ ਕਿਵੇਂ ਗਲਤ ਹੋ ਸਕਦਾ ਹੈ। ਭਾਵਨਾਵਾਂ ਦਾ ਵਿਸ਼ਲੇਸ਼ਣ ਕਰਨ ਵਾਲੇ ਉੱਚ-ਪੱਧਰੀ ਅਤੇ ਕਾਰੋਬਾਰ-ਤਿਆਰ ਸਿਸਟਮਾਂ ਬਾਰੇ ਹੋਰ ਪੜ੍ਹੋ ਜਿਵੇਂ ਕਿ [Azure Text Analysis](https://docs.microsoft.com/azure/cognitive-services/Text-Analytics/how-tos/text-analytics-how-to-sentiment-analysis?tabs=version-3-1?WT.mc_id=academic-77952-leestott)। ਉਪਰ ਦਿੱਤੇ Pride and Prejudice ਦੇ ਕੁਝ ਵਾਕਾਂ ਨੂੰ ਟੈਸਟ ਕਰੋ ਅਤੇ ਵੇਖੋ ਕਿ ਕੀ ਇਹ ਸੁਖਮਤਾ ਨੂੰ ਪਛਾਣ ਸਕਦਾ ਹੈ।
|
|
|
|
## ਅਸਾਈਨਮੈਂਟ
|
|
|
|
[Poetic license](assignment.md)
|
|
|
|
---
|
|
|
|
**ਅਸਵੀਕਾਰਨਾ**:
|
|
ਇਹ ਦਸਤਾਵੇਜ਼ AI ਅਨੁਵਾਦ ਸੇਵਾ [Co-op Translator](https://github.com/Azure/co-op-translator) ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਅਨੁਵਾਦ ਕੀਤਾ ਗਿਆ ਹੈ। ਜਦੋਂ ਕਿ ਅਸੀਂ ਸਹੀ ਹੋਣ ਦੀ ਕੋਸ਼ਿਸ਼ ਕਰਦੇ ਹਾਂ, ਕਿਰਪਾ ਕਰਕੇ ਧਿਆਨ ਦਿਓ ਕਿ ਸਵੈਚਾਲਿਤ ਅਨੁਵਾਦਾਂ ਵਿੱਚ ਗਲਤੀਆਂ ਜਾਂ ਅਸੁਚੱਜੇਪਣ ਹੋ ਸਕਦੇ ਹਨ। ਮੂਲ ਦਸਤਾਵੇਜ਼, ਜੋ ਇਸਦੀ ਮੂਲ ਭਾਸ਼ਾ ਵਿੱਚ ਹੈ, ਨੂੰ ਅਧਿਕਾਰਤ ਸਰੋਤ ਮੰਨਿਆ ਜਾਣਾ ਚਾਹੀਦਾ ਹੈ। ਮਹੱਤਵਪੂਰਨ ਜਾਣਕਾਰੀ ਲਈ, ਪੇਸ਼ੇਵਰ ਮਨੁੱਖੀ ਅਨੁਵਾਦ ਦੀ ਸਿਫਾਰਸ਼ ਕੀਤੀ ਜਾਂਦੀ ਹੈ। ਇਸ ਅਨੁਵਾਦ ਦੀ ਵਰਤੋਂ ਤੋਂ ਪੈਦਾ ਹੋਣ ਵਾਲੇ ਕਿਸੇ ਵੀ ਗਲਤਫਹਿਮੀ ਜਾਂ ਗਲਤ ਵਿਆਖਿਆ ਲਈ ਅਸੀਂ ਜ਼ਿੰਮੇਵਾਰ ਨਹੀਂ ਹਾਂ। |