5.7 KiB
ਭਾਸ਼ਾ ਮਾਡਲਿੰਗ
ਸੈਮੈਂਟਿਕ ਐਮਬੈਡਿੰਗਜ਼, ਜਿਵੇਂ ਕਿ Word2Vec ਅਤੇ GloVe, ਅਸਲ ਵਿੱਚ ਭਾਸ਼ਾ ਮਾਡਲਿੰਗ ਵੱਲ ਪਹਿਲਾ ਕਦਮ ਹਨ - ਅਜਿਹੇ ਮਾਡਲ ਬਣਾਉਣਾ ਜੋ ਕਿਸੇ ਤਰੀਕੇ ਨਾਲ ਭਾਸ਼ਾ ਦੀ ਕੁਦਰਤ ਨੂੰ ਸਮਝਦੇ (ਜਾਂ ਪ੍ਰਸਤੁਤ ਕਰਦੇ) ਹਨ।
ਪ੍ਰੀ-ਲੈਕਚਰ ਕਵਿਜ਼
ਭਾਸ਼ਾ ਮਾਡਲਿੰਗ ਦੇ ਪਿੱਛੇ ਮੁੱਖ ਵਿਚਾਰ ਇਹ ਹੈ ਕਿ ਉਨ੍ਹਾਂ ਨੂੰ ਅਨਸੁਪਰਵਾਈਜ਼ਡ ਢੰਗ ਨਾਲ ਅਨਲੇਬਲਡ ਡਾਟਾਸੈਟਸ 'ਤੇ ਟ੍ਰੇਨ ਕੀਤਾ ਜਾਵੇ। ਇਹ ਮਹੱਤਵਪੂਰਨ ਹੈ ਕਿਉਂਕਿ ਸਾਡੇ ਕੋਲ ਬਹੁਤ ਵੱਡੀ ਮਾਤਰਾ ਵਿੱਚ ਅਨਲੇਬਲਡ ਟੈਕਸਟ ਉਪਲਬਧ ਹੈ, ਜਦਕਿ ਲੇਬਲਡ ਟੈਕਸਟ ਦੀ ਮਾਤਰਾ ਹਮੇਸ਼ਾ ਉਸ ਯਤਨ ਨਾਲ ਸੀਮਿਤ ਰਹੇਗੀ ਜੋ ਅਸੀਂ ਲੇਬਲਿੰਗ 'ਤੇ ਖਰਚ ਸਕਦੇ ਹਾਂ। ਅਕਸਰ, ਅਸੀਂ ਅਜਿਹੇ ਭਾਸ਼ਾ ਮਾਡਲ ਬਣਾਉਣ ਦੇ ਯੋਗ ਹੁੰਦੇ ਹਾਂ ਜੋ ਗੁੰਮ ਸ਼ਬਦਾਂ ਦੀ ਪੇਸ਼ਗੂਈ ਕਰ ਸਕਦੇ ਹਨ, ਕਿਉਂਕਿ ਟੈਕਸਟ ਵਿੱਚ ਕਿਸੇ ਰੈਂਡਮ ਸ਼ਬਦ ਨੂੰ ਮਾਸਕ ਕਰਨਾ ਅਤੇ ਇਸਨੂੰ ਟ੍ਰੇਨਿੰਗ ਸੈਂਪਲ ਵਜੋਂ ਵਰਤਣਾ ਆਸਾਨ ਹੈ।
ਐਮਬੈਡਿੰਗਜ਼ ਦੀ ਟ੍ਰੇਨਿੰਗ
ਸਾਡੇ ਪਿਛਲੇ ਉਦਾਹਰਣਾਂ ਵਿੱਚ, ਅਸੀਂ ਪ੍ਰੀ-ਟ੍ਰੇਨਡ ਸੈਮੈਂਟਿਕ ਐਮਬੈਡਿੰਗਜ਼ ਵਰਤੀਆਂ, ਪਰ ਇਹ ਦੇਖਣਾ ਦਿਲਚਸਪ ਹੈ ਕਿ ਇਹ ਐਮਬੈਡਿੰਗਜ਼ ਕਿਵੇਂ ਟ੍ਰੇਨ ਕੀਤੀਆਂ ਜਾ ਸਕਦੀਆਂ ਹਨ। ਕੁਝ ਸੰਭਾਵਿਤ ਵਿਚਾਰ ਹਨ ਜੋ ਵਰਤੇ ਜਾ ਸਕਦੇ ਹਨ:
- N-Gram ਭਾਸ਼ਾ ਮਾਡਲਿੰਗ, ਜਦੋਂ ਅਸੀਂ N ਪਿਛਲੇ ਟੋਕਨਜ਼ (N-gram) ਦੇਖ ਕੇ ਇੱਕ ਟੋਕਨ ਦੀ ਪੇਸ਼ਗੂਈ ਕਰਦੇ ਹਾਂ।
- ਕੰਟਿਨਿਊਅਸ ਬੈਗ-ਆਫ-ਵਰਡਸ (CBoW), ਜਦੋਂ ਅਸੀਂ ਟੋਕਨ ਸੀਕਵੈਂਸ
W_{-N}, ...,W_Nਵਿੱਚ ਮੱਧਲੇ ਟੋਕਨW_0ਦੀ ਪੇਸ਼ਗੂਈ ਕਰਦੇ ਹਾਂ। - ਸਕਿਪ-ਗ੍ਰਾਮ, ਜਿੱਥੇ ਅਸੀਂ ਮੱਧਲੇ ਟੋਕਨ
W_0ਤੋਂ ਨੇੜਲੇ ਟੋਕਨਜ਼ {W_{-N},\dots, W_{-1}, W_1,\dots, W_N} ਦੀ ਪੇਸ਼ਗੂਈ ਕਰਦੇ ਹਾਂ।
ਚਿੱਤਰ ਇਸ ਪੇਪਰ ਤੋਂ
✍️ ਉਦਾਹਰਣ ਨੋਟਬੁੱਕਸ: CBoW ਮਾਡਲ ਦੀ ਟ੍ਰੇਨਿੰਗ
ਹੇਠਾਂ ਦਿੱਤੇ ਨੋਟਬੁੱਕਸ ਵਿੱਚ ਆਪਣੀ ਸਿੱਖਿਆ ਜਾਰੀ ਰੱਖੋ:
ਨਿਸਕਰਸ਼
ਪਿਛਲੇ ਪਾਠ ਵਿੱਚ ਅਸੀਂ ਦੇਖਿਆ ਕਿ ਸ਼ਬਦ ਐਮਬੈਡਿੰਗਜ਼ ਜਾਦੂ ਵਾਂਗ ਕੰਮ ਕਰਦੇ ਹਨ! ਹੁਣ ਅਸੀਂ ਜਾਣਦੇ ਹਾਂ ਕਿ ਸ਼ਬਦ ਐਮਬੈਡਿੰਗਜ਼ ਦੀ ਟ੍ਰੇਨਿੰਗ ਕੋਈ ਬਹੁਤ ਜਟਿਲ ਕੰਮ ਨਹੀਂ ਹੈ, ਅਤੇ ਜੇ ਲੋੜ ਹੋਵੇ ਤਾਂ ਅਸੀਂ ਖਾਸ ਡੋਮੇਨ ਟੈਕਸਟ ਲਈ ਆਪਣੇ ਸ਼ਬਦ ਐਮਬੈਡਿੰਗਜ਼ ਟ੍ਰੇਨ ਕਰ ਸਕਦੇ ਹਾਂ।
ਪੋਸਟ-ਲੈਕਚਰ ਕਵਿਜ਼
ਸਮੀਖਿਆ ਅਤੇ ਸਵੈ-ਅਧਿਐਨ
- ਭਾਸ਼ਾ ਮਾਡਲਿੰਗ 'ਤੇ PyTorch ਦਾ ਅਧਿਕਾਰਕ ਟਿਊਟੋਰਿਅਲ।
- Word2Vec ਮਾਡਲ ਦੀ ਟ੍ਰੇਨਿੰਗ 'ਤੇ TensorFlow ਦਾ ਅਧਿਕਾਰਕ ਟਿਊਟੋਰਿਅਲ।
- gensim ਫਰੇਮਵਰਕ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਕੁਝ ਲਾਈਨਾਂ ਦੇ ਕੋਡ ਵਿੱਚ ਸਭ ਤੋਂ ਆਮ ਵਰਤੇ ਜਾਣ ਵਾਲੇ ਐਮਬੈਡਿੰਗਜ਼ ਦੀ ਟ੍ਰੇਨਿੰਗ ਇਸ ਦਸਤਾਵੇਜ਼ ਵਿੱਚ ਵਰਣਨ ਕੀਤਾ ਗਿਆ ਹੈ।
🚀 ਅਸਾਈਨਮੈਂਟ: ਸਕਿਪ-ਗ੍ਰਾਮ ਮਾਡਲ ਟ੍ਰੇਨ ਕਰੋ
ਲੈਬ ਵਿੱਚ, ਅਸੀਂ ਤੁਹਾਨੂੰ ਇਸ ਪਾਠ ਦੇ ਕੋਡ ਨੂੰ ਸੋਧ ਕੇ CBoW ਦੀ ਬਜਾਏ ਸਕਿਪ-ਗ੍ਰਾਮ ਮਾਡਲ ਟ੍ਰੇਨ ਕਰਨ ਦੀ ਚੁਣੌਤੀ ਦਿੰਦੇ ਹਾਂ। ਵੇਰਵੇ ਪੜ੍ਹੋ
