Learn Machine Learning in Tamil A4-4
Learn Machine Learning in Tamil A4-4
கணிக்கப்படு தற்கான சாத்தியம் 30%, Machine Learning – ஊதா ாக கணிக்கப்படு தற்கான சாத்தியம்
40%, Machine Learning – பச்ளைசயாக கணிக்கப்படு தற்கான சாத்தியம் 60% Machine Learning – ;ஞ்ச(ாக
கணிக்கப்படு தற்கான சாத்தியம் 50% Machine Learning – என ருகிறதவேதனில் வெத , Machine Learning – எதன் சாத்தியம்
அதிக;ாக இருக்கிறவேதா, Machine Learning – அந்தப் பிரிவின் கீழ் அளை;யும். Machine Learning – இதுவே multi-class Machine Learning –
classification Machine Learning – ஆகும். Machine Learning –
Decision Machine Learning – tree, Machine Learning – gaussian Machine Learning – NB, Machine Learning – KNN, Machine Learning – SVC Machine Learning – ஆகியளை இதுவேபான்ற multi Machine Learning –
class Machine Learning – -க்கு துளைaபுரியும் algorithmns Machine Learning – ஆகும். Machine Learning – ஒரு ;லர் ;ல்லியா, Machine Learning – வேராஜா ா, Machine Learning –
தா;ளைரயா என்று தீர்;ானிப்பதற்கான multi-class Machine Learning – classification Machine Learning –
பின் ரு;ாறு. Machine Learning – இளை பல்வே று algorithms மூலம் நிகழ்த்தப்படுகின்றன. Machine Learning –
இளை களில் அதிக;ான score Machine Learning – Machine Learning – ;ற்றும் precision&recall Machine Learning – வெகாண்டளைத நாம்
வேதர்வு வெசய்யலாம்.. Machine Learning – Machine Learning – Machine Learning – Machine Learning – Machine Learning – Machine Learning – Machine Learning – Machine Learning – Machine Learning – Machine Learning – Machine Learning – Machine Learning – Machine Learning – Machine Learning – Machine Learning – Machine Learning – Machine Learning – Machine Learning – Machine Learning – Machine Learning – Machine Learning – Machine Learning – Machine Learning – Machine Learning – Machine Learning – Machine Learning – Machine Learning – Machine Learning – Machine Learning – Machine Learning – Machine Learning – Machine Learning – Machine Learning – Machine Learning – Machine Learning – Machine Learning – Machine Learning – Machine Learning – Machine Learning – Machine Learning – Machine Learning – Machine Learning – Machine Learning – Machine Learning – Machine Learning – Machine Learning – Machine Learning – Machine Learning – Machine Learning – Machine Learning – Machine Learning – Machine Learning – Machine Learning – Machine Learning – Machine Learning – Machine Learning – Machine Learning – Machine Learning – Machine Learning – Machine Learning – Machine Learning – Machine Learning – Machine Learning – Machine Learning – Machine Learning – Machine Learning – Machine Learning – Machine Learning – Machine Learning – Machine Learning – Machine Learning – Machine Learning – Machine Learning – Machine Learning – Machine Learning – Machine Learning – Machine Learning – Machine Learning – Machine Learning – Machine Learning –
https://gist.github.com/nithyadurai87/
aaded978eb7e545006ed6117c97b86b3
151
from sklearn.naive_bayes import GaussianNB
df = pd.read_csv('./flowers.csv')
X = df[list(df.columns)[:-1]]
y = df['Flower']
X_train, X_test, y_train, y_test = train_test_split(X, y, random_state = 0)
வெ ளியீடு:
0.8947368421052632
[[15 Machine Learning – 1 Machine Learning – 0]
[ Machine Learning – 3 Machine Learning – 6 Machine Learning – 0]
[ Machine Learning – 0 Machine Learning – 0 Machine Learning – 13]]
(SQL) array(SQL) [0.83333333, Machine Learning – 0.85714286, Machine Learning – 1. Machine Learning – ]), Machine Learning – array(SQL) [0.9375, Machine Learning –
0.66666667, Machine Learning – 1. Machine Learning – ]), Machine Learning – array(SQL) [0.88235294, Machine Learning – 0.75, Machine Learning – 1. Machine Learning – ]), Machine Learning – array(SQL) [16, Machine Learning – 9, Machine Learning –
13], Machine Learning – dtype=int64))
152
0.9736842105263158
[[15 Machine Learning – 1 Machine Learning – 0]
[ Machine Learning – 0 Machine Learning – 9 Machine Learning – 0]
[ Machine Learning – 0 Machine Learning – 0 Machine Learning – 13]]
(SQL) array(SQL) [1. Machine Learning – , Machine Learning – 0.9, Machine Learning – 1. Machine Learning – ]), Machine Learning – array(SQL) [0.9375, Machine Learning – 1. Machine Learning – , Machine Learning – 1. Machine Learning – ]), Machine Learning – array(SQL) [0.96774194, Machine Learning –
0.94736842, Machine Learning – 1. Machine Learning – ]), Machine Learning – array(SQL) [16, Machine Learning – 9, Machine Learning – 13], Machine Learning – dtype=int64))
0.9736842105263158
[[15 Machine Learning – 1 Machine Learning – 0]
[ Machine Learning – 0 Machine Learning – 9 Machine Learning – 0]
[ Machine Learning – 0 Machine Learning – 0 Machine Learning – 13]]
(SQL) array(SQL) [1. Machine Learning – , Machine Learning – 0.9, Machine Learning – 1. Machine Learning – ]), Machine Learning – array(SQL) [0.9375, Machine Learning – 1. Machine Learning – , Machine Learning – 1. Machine Learning – ]), Machine Learning – array(SQL) [0.96774194, Machine Learning –
0.94736842, Machine Learning – 1. Machine Learning – ]), Machine Learning – array(SQL) [16, Machine Learning – 9, Machine Learning – 13], Machine Learning – dtype=int64))
1.0
[[16 Machine Learning – 0 Machine Learning – 0]
[ Machine Learning – 0 Machine Learning – 9 Machine Learning – 0]
[ Machine Learning – 0 Machine Learning – 0 Machine Learning – 13]]
(SQL) array(SQL) [1., Machine Learning – 1., Machine Learning – 1.]), Machine Learning – array(SQL) [1., Machine Learning – 1., Machine Learning – 1.]), Machine Learning – array(SQL) [1., Machine Learning – 1., Machine Learning – 1.]), Machine Learning – array(SQL) [16, Machine Learning –
9, Machine Learning – 13], Machine Learning – dtype=int64))
அடுத்ததாக ாடிக்ளைகயா(ர் புகாரில் உள்( ார்த்ளைதகளை(க் வெகாண்டு, Machine Learning – அந்தப் புகார்
எந்த ளைகயின் கீழ் அளை;யும் என கணிக்கும் MultinomialNB Machine Learning – algorithm Machine Learning –
பின் ரு;ாறு.
https://gist.github.com/
nithyadurai87/3ce9dab55025fe1fd41b4da48d3fcbd8
153
import pandas as pd
from io import StringIO
import matplotlib.pyplot as plt
from sklearn.feature_extraction.text import TfidfVectorizer
from sklearn.feature_selection import chi2
import numpy as np
from sklearn.model_selection import train_test_split
from sklearn.feature_extraction.text import CountVectorizer
from sklearn.feature_extraction.text import TfidfTransformer
from sklearn.naive_bayes import MultinomialNB
fig = plt.figure(figsize=(8,6))
df.groupby('Product').Issue.count().plot.bar(ylim=0)
plt.show()
154
print(">",i)
print("unigrams:",','.join(unigrams[:5]))
print("bigrams:",','.join(bigrams[:5]))
இதற்கு முதலில் ஒவ்வெ ாரு product Machine Learning – -ன் கீழும் எத்தளைன புகார்கள் பயிற்சிக்குக்
வெகாடுக்கப்பட்டுள்(ன என ஒரு ளைரபடம் மூலம் ளைரந்து பார்க்கப்படுகிறது.
பின்னர் அளை 70-30 Machine Learning – எனும் விகிதத்தின் படி பயிற்சி வெகாடுக்கப்பட்டு
வேசாதிக்கப்படுகிறது.
இதில் TfidfVectorizer Machine Learning – மூலம் புகாரில் உள்( தனித்தனி ார்த்ளைதகள் அளைனத்தும்
features Machine Learning – -ஆக வேசமிக்கப்படுகின்றன. Machine Learning – பின்னர் chi2 Machine Learning – மூலம் ஒவ்வெ ாரு தனித்தனி
category Machine Learning – -வேயாடும் வெதாடர்பு வெகாண்டுள்( ார்த்ளைதகளின் பட்டியல்
வேசமிக்கப்படுகிறது. Machine Learning – பின்னர் அளை தனித்தனி ார்த்ளைதயாக அளை;ந்தால் எந்த
155
category Machine Learning – -ன் கீழ் அளை;யும், Machine Learning – இரண்டிரண்டாக அளை;ந்தால் எந்த category Machine Learning – -ன்
கீழ் அளை;யும் என்பது unigrams, Machine Learning – bigrams Machine Learning – எனும் வெபயரில்
வேசமிக்கப்படுகின்றன..
17.1 Vectors
classification Machine Learning – problem Machine Learning – என்பது 'Software Testing' ஆம்'Software Testing' Machine Learning – அல்லது 'Software Testing' இல்ளைல'Software Testing' Machine Learning – எனும் ;திப்பின் கீழ்
கணிப்பிளைன நிகழ்த்தும் என ஏற்கனவே கண்வேடாம். Machine Learning – இளை முளைறவேய 1 Machine Learning – அல்லது 0-
ஆல் குறிக்கப்படும். Machine Learning – நாம் சிலச;யம் ாக்கியங்களை(வேயா, Machine Learning – நிiற்படங்களை(வேயா, Machine Learning –
ஓவியங்களை(வேயா உள்ளீடாகக் வெகாடுத்து பயிற்சி அளிக்க வே ண்டியிருக்கும். Machine Learning –
இதுவேபான்ற இடங்களில் இ ற்ளைறவெயல்லாம் 1'Software Testing' s Machine Learning – & Machine Learning – 0'Software Testing' s Machine Learning – -ஆக ;ாற்று தற்கு
sklearn Machine Learning – iங்குகின்ற பல்வே று ளைகயான வெ க்டர்கள் பற்றியும் அ ற்றின்
பயன்பாடுகள் பற்றியும் பின் ரு;ாறு காaலாம்.
பல்வே று ாக்கியங்களை(ப் வெபற்றிருக்கும் ஒரு வெதாகுப்பு corpus Machine Learning – எனப்படுகிறது. Machine Learning –
இந்த corpus-ல் உள்( அளைனத்ளைதயும் 0'Software Testing' s Machine Learning – & Machine Learning – 1'Software Testing' s Machine Learning – ஆக ;ாற்று தற்கு
dictvectorizer(SQL) ) Machine Learning – , Machine Learning – countvectorizer(SQL) ) Machine Learning – ஆகியளை பயன்படுகின்றன.
கீழ்க்கண்ட உதாரaத்தில் corpus1 Machine Learning – ;ற்றும் corpus2 Machine Learning – எனும் இரண்டு corpus Machine Learning –
வெகாடுக்கப்பட்டுள்(ன. Machine Learning – முதலில் உள்(து dictvectorizer(SQL) ) Machine Learning – -க்கு உதாரa;ாகவும்,
இரண்டா தாக உள்(து countvectorizer(SQL) ) Machine Learning – -க்கு உதாரa;ாகவும்
அளை;ந்துள்(து. Machine Learning – அடுத்ததாக vector Machine Learning – எனும் variable-ல், Machine Learning – corpus2-ல் உள்(
ாக்கியங்களுக்கான encode Machine Learning – வெசய்யப்பட்ட வெ க்டர்கள் அளை;ந்துள்(ன. Machine Learning – இ ற்ளைற
ளை த்து நாம் இரண்டு வெ க்டர்களுக்கிளைடவேயயான euclidean Machine Learning – distance-ஐ
எவ் ாறு கண்டுபிடிப்பது என்று பார்க்கலாம்.
https://gist.github.com/nithyadurai87/
f3fff58ab7272279ef069689fc391dec Machine Learning – Machine Learning – Machine Learning – Machine Learning –
156
from sklearn.feature_extraction import DictVectorizer
from sklearn.feature_extraction.text import CountVectorizer
from sklearn.feature_extraction.text import TfidfVectorizer
from sklearn.feature_extraction.text import HashingVectorizer
from sklearn.metrics.pairwise import euclidean_distances
# one-hot encoding
v1 = DictVectorizer()
print (v1.fit_transform(corpus1).toarray())
print (v1.vocabulary_)
print (TfidfVectorizer().fit_transform(corpus2).todense())
print (HashingVectorizer(n_features=6).transform(corpus2).todense())
print (euclidean_distances([vectors[0]],[vectors[1]]))
print (euclidean_distances([vectors[0]],[vectors[2]]))
print (euclidean_distances([vectors[0]],[vectors[3]]))
1. Machine Learning – dictvectorizer(SQL) ) Machine Learning – -ஒரு categorical Machine Learning – variable-ஐ 1'Software Testing' s Machine Learning – & Machine Learning – 0'Software Testing' s Machine Learning – -ஆக ;ாற்ற
உதவும். Machine Learning – இங்கு 'Software Testing' Gender'Software Testing' Machine Learning – எனும் categorical Machine Learning – variable-ன் ;திப்பாக 'Software Testing' Male'Software Testing' , Machine Learning –
'Software Testing' Female'Software Testing' , Machine Learning – ‘Transgender'Software Testing' Machine Learning – ஆகியளை அளை;ந்துள்(ன. Machine Learning – முதலில் இத்தளைகய
unique Machine Learning – ;திப்புகளை( ளை த்து ஒரு dictionary-ஐ உரு ாக்கும். Machine Learning – பின்னர் இந்த 3 Machine Learning –
157
தனித்தனி ார்த்ளைதகளும், Machine Learning – அ ற்ளைறப் வெபற்று வி(ங்கும் 5 Machine Learning – ரிகளும் 5*3 Machine Learning –
dimension Machine Learning – வெகாண்ட ஒரு matrix-ஆக உரு ாக்கப்படும். Machine Learning – அதா து ஒவ்வெ ாரு
ரியும் அந்த matrix-ன் ஒரு row Machine Learning – ஆகவும், Machine Learning – அந்த ரியில் dictionary-ல் உள்(
ார்த்ளைத இடம்வெபற்றிருப்பின் 1 Machine Learning – எனவும், Machine Learning – இல்ளைலவெயனில் 0 Machine Learning – எனவும் வேபாட்டு
ளை த்துக்வெகாள்ளும். Machine Learning – இவ் ாவேற ஒரு வெ க்டர் உரு ாக்கப்படுகிறது. Machine Learning – இதுவே one-
hot Machine Learning – encoding Machine Learning – எனப்படுகிறது.
print (v1.fit_transform(corpus1).toarray())
[[0. 1. 0.]
[1. 0. 0.]
[0. 0. 1.]
[0. 1. 0.]
[1. 0. 0.]]
print (v1.vocabulary_)
{'Gender=Male': 1, 'Gender=Female': 0, 'Gender=Transgender': 2}
2. Machine Learning – countvectorizer(SQL) ) Machine Learning – - Machine Learning – வெகாடுக்கப்பட்ட ாக்கியங்கள் அளைனத்ளைதயும் 1'Software Testing' s Machine Learning – & Machine Learning –
0'Software Testing' s Machine Learning – -ஆக ;ாற்றும். Machine Learning – ந;து உதாரaத்தில் 4 Machine Learning – ரிகளும், Machine Learning – 17 Machine Learning – தனித்து ார்த்ளைதகளும்
உள்(ன. Machine Learning – எனவே 4*17 Machine Learning – dimension Machine Learning – வெகாண்ட matrix Machine Learning – உரு ாக்கப்பட்டுள்(து. Machine Learning – ன்
ஒவ்வெ ாரு ரியிலும் எந்வெதந்த ார்த்ளைத இடம்வெபற்றுள்(வேதா அது 1 Machine Learning – எனவும், Machine Learning –
இடம்வெபறாத ார்த்ளைத 0 Machine Learning – எனவும் அளை;ந்திருப்பளைதக் காaலாம். Machine Learning – இதுவே bag Machine Learning – of Machine Learning –
words Machine Learning – எனப்படுகிறது.
158
ார்த்ளைதகள் அளை;ந்திருக்கும் அவேத ரிளைசயில்தான் encode Machine Learning – வெசய்யப்பட்டளை
இடம் வெபற்றிருக்கும் எனக் கூற முடியாது. Machine Learning – ார்த்ளைதகளில் உள்( எல்லா
எழுத்துக்களை(யும், Machine Learning – சிறிய எழுத்துக்க(ாக ;ாற்றிவிட்டு அதளைன tokens-ஆக
;ாற்றும். Machine Learning – Tokenization Machine Learning – என்பது இரண்டுக்கும் வே;ற்பட்ட எழுத்துக்களை(ப்
வெபற்றிருக்கும் ார்த்ளைதகளை( இளைடவெ ளி ளை த்துப் பிரித்து tokens-ஆக
;ாற்று வேத ஆகும். Machine Learning – Tokens Machine Learning – என்பது வேகாப்பினுள் இடம் வெபற்றுள்( ார்த்ளைதகள்
ஆகும்.
Bird Machine Learning – is Machine Learning – a Machine Learning – Peacock Machine Learning – Bird'Software Testing' ,'Software Testing' Peacock Machine Learning – dances Machine Learning – very Machine Learning – well'Software Testing' ,'Software Testing' It Machine Learning – eats Machine Learning – variety Machine Learning –
of Machine Learning – seeds'Software Testing' ,'Software Testing' Cumin Machine Learning – seed Machine Learning – was Machine Learning – eaten Machine Learning – by Machine Learning – it Machine Learning – once'Software Testing'
print (v2.fit_transform(corpus2).todense())
[[2 0 0 0 0 0 1 0 0 0 1 0 0 0 0 0 0]
[0 0 0 1 0 0 0 0 0 0 1 0 0 0 1 0 1]
[0 0 0 0 0 1 0 1 1 0 0 0 1 1 0 0 0]
[0 1 1 0 1 0 0 1 0 1 0 1 0 0 0 1 0]]
இதளைன binary Machine Learning – frequency Machine Learning – ;ற்றும் term Machine Learning – frequency Machine Learning – என்னும் இரண்டு
விதங்களில் குறிப்பிடலாம். Machine Learning – binary Machine Learning – என்பது வெ றும் 1'Software Testing' s Machine Learning – & Machine Learning – 0'Software Testing' s Machine Learning – -ஐ ;ட்டும்
வெ ளிப்படுத்தும். Machine Learning – term Machine Learning – என்பது ஒவ்வெ ாரு ார்த்ளைதயும் எத்தளைன முளைற
இடம்வெபற்றுள்(து என்பளைத வெ ளிப்படுத்தும். Machine Learning – இங்கு Bird Machine Learning – என்பது முதல்
ாக்கியத்தில் இரண்டு முளைற உள்(தால் அந்த இடத்தில் 2 Machine Learning – என
வெ ளிப்படுத்தப்பட்டுள்(ளைதக் காaவும்.
159
print (v2.vocabulary_)
{'bird': 0, 'is': 6, 'peacock': 10, 'dances': 3, 'very': 14, 'well': 16, 'it':
7
, 'eats': 5, 'variety': 13, 'of': 8, 'seeds': 12, 'cumin': 2, 'seed': 11,
'was':
15, 'eaten': 4, 'by': 1, 'once': 9}
3. Machine Learning – TfidfVectorizer(SQL) ) Machine Learning – Machine Learning – - Machine Learning – Term Machine Learning – frequency Machine Learning – மூலம் உரு ாக்கப்படும் வெ க்டளைர
normalize Machine Learning – வெசய்து அந்த frequency Machine Learning – -க்கான weight-ஐ வெ ளிப்படுத்தும். Machine Learning –
வெ றும் raw Machine Learning – count-ஆக 2 Machine Learning – என வெ ளிப்படுத்தா;ல், Machine Learning – அதளைன normalize Machine Learning – வெசய்து
வெ ளிப்படுத்து வேத L2 Machine Learning – Normalization Machine Learning – (SQL) level2) Machine Learning – எனப்படும்.
print (TfidfVectorizer().fit_transform(corpus2).todense())
[[0.84352956 0. 0. 0. 0. 0.
0.42176478 0. 0. 0. 0.3325242 0.
0. 0. 0. 0. 0. ]
[0. 0. 0. 0.52547275 0. 0.
0. 0. 0. 0. 0.41428875 0.
0. 0. 0.52547275 0. 0.52547275]
[0. 0. 0. 0. 0. 0.46516193
0. 0.36673901 0.46516193 0. 0. 0.
0.46516193 0.46516193 0. 0. 0. ]
[0. 0.38861429 0.38861429 0. 0.38861429 0.
0. 0.30638797 0. 0.38861429 0. 0.38861429
0. 0. 0. 0.38861429 0. ]]
4. Machine Learning – HashingVectorizer(SQL) ) Machine Learning – - Machine Learning – அகராதியின் துளைa இல்லா;வேலவேய வேநரடியாக
வெ க்டளைர உரு ாக்கும்.. Machine Learning – வே;ற்கண்ட dict Machine Learning – & Machine Learning – count Machine Learning – ஆகிய இரண்டும் 2 Machine Learning – படிகளில்
வே ளைல வெசய்யும். Machine Learning – முதலில் வெ க்டர் உரு ாக்கத்திற்குத் வேதளை யான dictionary-
ளைய உரு ாக்கும். Machine Learning – அடுத்தபடியாகத்தான் வெ க்டளைர உரு ாக்கும். Machine Learning – இதில் முதல்
படிளையத் தவிர்த்து வேநரடியாக வெ க்டளைர உரு ாக்கு ளைதத்தான் Hashing Machine Learning – Trick Machine Learning –
என்வேபாம். Machine Learning – ஏவெனனில் dictionary-ன் அ(வு வெபருகப் வெபருக அந்த(வுக்குப் வெபரிய
அகராதிளைய வேசமிக்கத் வேதளை யான memory-ன் அ(வும் அதிகரிக்கும். Machine Learning – இளைதத்
160
தவிர்ப்பதற்காக ந்தவேத இவ் ளைகயான வெ க்டர் ஆகும்.
print (HashingVectorizer(n_features=6).transform(corpus2).todense())
[[ 0. -0.70710678 -0.70710678 0. 0. 0. ]
[ 0. 0. -0.81649658 -0.40824829 0.40824829 0. ]
[ 0.75592895 0. -0.37796447 0. -0.37796447 -0.37796447]
[ 0.25819889 0.77459667 0. -0.51639778 0. 0.25819889]]
5. Machine Learning – euclidean_distances Machine Learning – - Machine Learning – encode Machine Learning – வெசய்யப்பட்ட இரண்டு
ாக்கியங்களுக்கிளைடவேயயான வே றுபாடு எந்த அ(வுக்கு உள்(து என்பளைதக்
கaக்கிட உதவும். Machine Learning – வே;ற்கண்ட உதாரaத்தில் முதல் இரண்டு ாக்கியங்களுக்கு
இளைடவேயயான வே றுபாடு சற்று குளைற ாகவும், Machine Learning – முதலுக்கும் 3- து
ாக்கியத்துக்கு;ான வே றுபாடு சற்று அதிக;ாகவும், Machine Learning – முதலுக்கும் 4- து
ாக்கியத்துக்கு;ான வே றுபாடு இன்னும் சற்று அதிக;ாகவும் இருப்பளைதக்
காaலாம்.
print (euclidean_distances([vectors[0]],[vectors[1]]))
[[2.82842712]]
print (euclidean_distances([vectors[0]],[vectors[2]]))
[[3.31662479]]
print (euclidean_distances([vectors[0]],[vectors[3]]))
[[3.60555128]]
161
17.2 Natural Language Toolkit
இது ளைர நாம் கண்ட வெ க்டர் உரு ாக்கம் அளைனத்திலும் ஏவேதனும் ஓரிரண்டு
ார்த்ளைதகள் ;ட்டுவே; இடம்வெபற்றிருந்தாலும் கூட, Machine Learning – இடம் வெபறாத
ார்த்ளைதகளுக்கான 0'Software Testing' s Machine Learning – ஐ அது வெகாண்டிருக்கும். Machine Learning – இதனால் அந்த வெ க்டருளைடய
அ(வு அதிகரிக்கிறது. Machine Learning – இதுவேபான்ற அதிக அ(விலான 0'Software Testing' s Machine Learning – -ஐப் வெபற்று வி(ங்கும்
வெ க்டர்தான் sparse Machine Learning – vector Machine Learning – என்று அளைiக்கப்படுகிறது. Machine Learning – உதாரaத்துக்கு ஒரு
வேகாப்பினுள் அரசியல், Machine Learning – சினி;ா, Machine Learning – விளை(யாட்டு வேபான்ற பல்வே று துளைறகளுக்கான
ாக்கியங்கள் உள்(வெதனில், Machine Learning – அ ற்ளைறவெயல்லாம் ஒரு வெ க்டராக ;ாற்றும் வேபாது
அரசியலுக்கான ரியில் சினி;ாவுக்கான ார்த்ளைத இடம்வெபற்றிருக்காது, Machine Learning – அவேதவேபால்
சினி;ாவுக்கான ரியில் விளை(யாட்டுக்கான ார்த்ளைத இடம்வெபற்றிருக்காது. Machine Learning –
இவேதவேபால் பார்த்தால் ஒவ்வெ ாரு ரியிலும் வேதளை யில்லாத பல 0’s s Machine Learning –
நிளைறந்திருக்கும். Machine Learning – இதனால் 2 Machine Learning – முக்கியப் பிரச்சளைனகள் எழுகின்றன.
முதலா தாக அதிக அ(வு memory Machine Learning – & Machine Learning – space Machine Learning – வீaாகிறது. Machine Learning – Numpy Machine Learning – என்பது 0’s s Machine Learning –
அல்லாத ற்ளைற ;ட்டும் குறிப்பிடு தற்காக ஒருசில சிறப்பு ளைக தரவு ளைககளை(
iங்குகின்றன. Machine Learning – அடுத்ததாக dimensionality-ன் அ(வு அதிகரிக்க அதிகரிக்க அந்த
அ(வுக்குப் பயிற்சி அளிக்கத் வேதளை யான தரவுகளின் எண்ணிக்ளைகயும்
அதிகரிக்கிறது. Machine Learning – இல்ளைலவெயனில் overfit Machine Learning – ஆ தற்கான அபாயம் உள்(து. Machine Learning – இதுவே
'Software Testing' curse Machine Learning – of Machine Learning – dimensionality'Software Testing' Machine Learning – அல்லது 'Software Testing' Hughes Machine Learning – effect'Software Testing' Machine Learning – என்றளைiக்கப்படுகிறது.
இளைத எவ் ாறு குளைறப்பது எனப் வேபசு வேத dimensionality Machine Learning – reduction Machine Learning – ஆகும்.
ந;து வெ க்டர் உரு ாக்கத்தின்வேபாது stop_words='Software Testing' english'Software Testing' Machine Learning – எனக்
வெகாடுத்வேதா;ானால் is,was,are Machine Learning – வேபான்ற ஆங்கிலத்தில் ருகின்ற துளைaச்
வெசாற்களை( எல்லாம் தவிர்த்து மீதமுள்( வெசாற்களுக்கு ;ட்டும் dictionary Machine Learning –
உரு ாக்கப்படும். Machine Learning – இதனால் அதன் dimensionality Machine Learning – குளைறகிறது.
அவ் ாவேற NLTK Machine Learning – எனும் கருவி ஒன்று உள்(து. Machine Learning – அதிலுள்( stemmer, Machine Learning –
lemmatizer Machine Learning – ஆகிய ற்ளைறப் பயன்படுத்து தன் மூலம் வெ க்டரின்
dimensionality Machine Learning – இன்னும் குளைறக்கப்படு ளைதக் காaலாம்.
162
https://gist.github.com/
nithyadurai87/491e5e6f9c009ebd88912e71ef9363a4
"""
import nltk
nltk.download()
"""
print (CountVectorizer().fit_transform(corpus).todense())
print (CountVectorizer(stop_words='english').fit_transform(corpus).todense())
print (PorterStemmer().stem('seeds'))
s_lines=[]
for document in corpus:
s_words=[]
for token in word_tokenize(document):
s_words.append(PorterStemmer().stem(token))
s_lines.append(s_words)
print ('Stemmed:',s_lines)
tagged_corpus=[]
for document in corpus:
tagged_corpus.append(pos_tag(word_tokenize(document)))
163
l_lines=[]
for document in tagged_corpus:
l_words=[]
for token, tag in document:
l_words.append(lemmatize(token, tag))
l_lines.append(l_words)
print ('Lemmatized:',l_lines)
import nltk
nltk.download()
164
Machine Learning – Machine Learning – Machine Learning – Machine Learning – Machine Learning – Machine Learning – Machine Learning – Machine Learning –
'Software Testing' Bird Machine Learning – is Machine Learning – a Machine Learning – Peacock Machine Learning – Bird'Software Testing' ,'Software Testing' Peacock Machine Learning – dances Machine Learning – very Machine Learning – well'Software Testing' ,'Software Testing' It Machine Learning – eats Machine Learning – variety Machine Learning –
of Machine Learning – seeds'Software Testing' ,
'Software Testing' Cumin Machine Learning – seed Machine Learning – was Machine Learning – eaten Machine Learning – by Machine Learning – it Machine Learning – once'Software Testing'
1. Machine Learning – வே;ற்கண்ட ாக்கியங்களுக்கான CountVectorizer(SQL) ) Machine Learning – என்பது பின் ரு;ாறு
ஒரு வெ க்டளைர உரு ாக்கும் (SQL) 4*17). Machine Learning –
print (CountVectorizer().fit_transform(corpus).todense())
[[2 0 0 0 0 0 1 0 0 0 1 0 0 0 0 0 0]
165
[0 0 0 1 0 0 0 0 0 0 1 0 0 0 1 0 1]
[0 0 0 0 0 1 0 1 1 0 0 0 1 1 0 0 0]
[0 1 1 0 1 0 0 1 0 1 0 1 0 0 0 1 0]]
வே;ற்கண்ட அவேத ாக்கியங்களுக்கு stop_words='Software Testing' english'Software Testing' Machine Learning – எனக் வெகாடுத்து
வெ க்டர் உரு ாக்கும்வேபாது,
is, Machine Learning – very, Machine Learning – well, Machine Learning – it, Machine Learning – of, Machine Learning – was, Machine Learning – by, Machine Learning – once Machine Learning – ஆகிய ார்த்ளைதகள் நீக்கப்படு தால்
dimensionality
குளைறந்து இருப்பளைதக் காaலாம் (SQL) 4*9).
print (CountVectorizer(stop_words='english').fit_transform(corpus).todense())
[[2 0 0 0 0 1 0 0 0]
[0 0 1 0 0 1 0 0 0]
[0 0 0 0 1 0 0 1 1]
[0 1 0 1 0 0 1 0 0]]
2. Machine Learning – stop_words='Software Testing' english'Software Testing' Machine Learning – பயன்படுத்தினாலும் கூட, Machine Learning – seeds, Machine Learning – seed Machine Learning – ஆகிய
இரண்டும் இரண்டு தனித்தனி ார்த்ளைதக(ாக வேசமிக்கப்படுகின்றன. Machine Learning – இளைதத்
தவிர்ப்பதற்காக ந்தவேத PorterStemmer(SQL) ) Machine Learning – ஆகும். Machine Learning – இது ஒரு ஆங்கிலச் வெசால்லின்
வே ர்வெசால்ளைல கண்டறிந்து அளைத ;ட்டும் வேசமிக்கும். Machine Learning – அளைதத் தழுவி ருகின்ற
இன்ன பிற வெசாற்களை(வெயல்லாம் வேசமிக்காது.
print (PorterStemmer().stem('seeds'))
seed
166
3. Machine Learning – WordNetLemmatizer(SQL) ) Machine Learning – என்பது ஒரு ஆங்கிலச் வெசால்ளைல அதன்
வெபாரு(றிந்து பிரித்து வேசமிக்கும். Machine Learning – அதா து ஒவேர ஒரு வெசால் ஓரிடத்தில்
வெபயர்ச்வெசால்லாகவும் ;ற்வெறாரு இடத்தில் விளைனவெசால்லாகவும்
பயன்படுத்தப்பட்டிருப்பின் அளை இரண்ளைடயும் இரண்டு தனித்தனி வெசாற்க(ாகச்
வேசமிக்கும். Machine Learning – உதாரaத்துக்கு 'Software Testing' I Machine Learning – am Machine Learning – gathering Machine Learning – foods Machine Learning – for Machine Learning – birds'Software Testing' , Machine Learning – 'Software Testing' seeds Machine Learning – are Machine Learning –
stored Machine Learning – in Machine Learning – the Machine Learning – gathering Machine Learning – place'Software Testing' Machine Learning – என்பதில் gathering, Machine Learning – gather Machine Learning – என்பது
இரண்டு தனித்தனி ார்த்ளைதக(ாக வேசமிக்கப்படும்.
4. Machine Learning – நம்முளைடய corpus-ஐ NLTK Machine Learning – வெகாண்டு அணுகும்வேபாது, Machine Learning – அது பின் ரு;ாறு
வெ ளிப்படுத்தும்.
print ('Stemmed:',s_lines)
Stemmed: [['bird', 'is', 'a', 'peacock', 'bird'], ['peacock', 'danc', 'veri',
'w
ell'], ['It', 'eat', 'varieti', 'of', 'seed'], ['cumin', 'seed', 'wa',
'eaten',
'by', 'it', 'onc']]
print ('Lemmatized:',l_lines)
Lemmatized: [['Bird', 'be', 'a', 'Peacock', 'Bird'], ['Peacock', 'dance',
'very', 'well'],
['It', 'eat', 'variety', 'of', 'seed'], ['Cumin', 'seed', 'be', 'eat', 'by',
'it', 'once']]
167
18. Decision Trees & Random Forest
Regression Machine Learning – ;ற்றும் Classification Machine Learning – இரண்டிற்கும் உத க்கூடிய வேநர்வேகாடு
முளைறயில் பிரிக்க இயலாத non-linear Machine Learning – தரவுகளுக்கான model-ஆக decision Machine Learning –
trees Machine Learning – ;ற்றும் random Machine Learning – forest Machine Learning – வி(ங்குகிறது. Machine Learning – Decision Machine Learning – trees Machine Learning – என்பது
வெபாது ாக ;ாதிரித் தரவுகளில் உள்( ;திப்புகளை(க் வெகாண்டு அ ற்ளைற சிறுசிறு
பகுதிக(ாகப் பிரித்துக் கற்கிறது. Machine Learning – கீழ்க்கண்ட எடுத்துக்காட்டில் ஒரு ;லர் ;ல்லியா, Machine Learning –
வேராஜா ா, Machine Learning – தா;ளைரயா என்று தீர்;ானிக்க DecisionTreeClassifier(SQL) ) Machine Learning – ;ற்றும்
RandomForestClassifier(SQL) ) Machine Learning – பயன்படுத்தப்பட்டுள்(ன. Machine Learning – ஒவ்வெ ாரு ;லரின்
இதழ்களுளைடய(SQL) sepal) Machine Learning – நீ( அகலமும், Machine Learning – அ ற்றின் வே;ற்புற இதழ்களுளைடய(SQL) petal) Machine Learning –
நீ( அகலமு;ான 4 Machine Learning – அம்சங்கவே( ஒரு ;லர் எந்த ;லராக இருக்கும் என்பளைதத்
தீர்;ானிக்கிறது. Machine Learning – இந்த அம்சங்களிலுள்( தரவுகளை( பல்வே று பகுதிக(ாகப் பிரித்துக்
கற்கும் வே ளைலளைய DecisionTreeClassifier(SQL) ) Machine Learning – வெசய்கிறது. Machine Learning –
https://gist.github.com/nithyadurai87/
d21ffb25b7f5a38d90a437e9f169d58e Machine Learning –
168
from sklearn.datasets import load_iris
import pandas as pd
import os
from sklearn.tree import DecisionTreeClassifier,export_graphviz
from sklearn.metrics import
confusion_matrix,accuracy_score,classification_report
from io import StringIO
import pydotplus
from sklearn.model_selection import train_test_split
from sklearn.ensemble import RandomForestClassifier
from IPython.display import Image
import matplotlib.pyplot as plt
import seaborn as sns
df = pd.read_csv('./flowers.csv')
X = df[list(df.columns)[:-1]]
y = df['Flower']
X_train, X_test, y_train, y_test = train_test_split(X, y, random_state = 0)
dot_data = StringIO()
export_graphviz(a, out_file=dot_data,filled=True,
rounded=True,special_characters=True)
graph = pydotplus.graph_from_dot_data(dot_data.getvalue())
Image(graph.create_png())
graph.write_png("decisiontree.png")
169
class_names = ['Lotus', 'Jasmin', 'Rose'],
rounded = True, proportion = False, precision = 2, filled =
True)
நிரலுக்கான வி(க்கம்:
flowers.csv Machine Learning – எனும் வேகாப்பில் வெ;ாத்தம் 150 Machine Learning – தரவுகள் பயிற்சிக்கு உள்(ன. Machine Learning – அளை
train_test_split(SQL) ) Machine Learning – எனும் முளைறப்படி 112 Machine Learning – தரவுகள் பயிற்சிக்கும், Machine Learning – மீதி 38 Machine Learning –
தரவுகள் பயிற்சி வெசய்யப்பட்ட model-ஐ வேசாதிப்பதற்கும்
பயன்படுத்தப்பட்டுள்(ன. Machine Learning – கீழ்க்கண்ட decision Machine Learning – tree-ன் முதல் node-க்குள் உள்(
samples=112 Machine Learning – என்பது வெ;ாத்தம் பயிற்சிக்கு அளிக்கப்பட்டுள்( தரவுகளை(க்
குறிக்கிறது. Machine Learning – value Machine Learning – = Machine Learning – [34,41,37] Machine Learning – என்பது 34 Machine Learning – தரவுகள் ;ல்லிளைகக்கும் 41 Machine Learning –
தரவுகள் தா;ளைரக்கும், Machine Learning – 37 Machine Learning – தரவுகள் வேராஜாவுக்கும் அளை;ந்துள்(ன எனும்
வி ரத்ளைதக் வெகாடுக்கிறது. Machine Learning – entropy Machine Learning – = Machine Learning – 1.581 Machine Learning – ;ாதிரிகளில் உள்( uncertainty Machine Learning – /
disorder Machine Learning – / Machine Learning – impurity-ஐக் குறிக்கிறது. Machine Learning – அதா து நாம் ளைகப்படுத்த வே ண்டிய
பல்வே று பிரிவுகளில் உள்( தரவுகளும் எந்த அ(வு விகிதத்தில் கலந்துள்(ன
என்பளைதக் கூறும். Machine Learning – இதற்கான கaக்கீடு பின் ரும் முளைறயில் நிகழும். Machine Learning – முதலில்
வெ;ாத்த தரவுகளில் ஒவ்வெ ாரு பிரிளை ச் வேசர்ந்த தரவுகளும் எவ் (வு
எண்ணிக்ளைகயில் உள்(ன எனும் பின்னம் கaக்கிடப்படும். Machine Learning – பின்னர் அம்;திப்புக்கு
log Machine Learning – base Machine Learning – 2 Machine Learning – கண்டுபிடிக்க வே ண்டும். Machine Learning – இதற்கான கருவி
https://www.miniwebtool.com/log-base-2-calculator/ Machine Learning – Machine Learning – எனும்
ளைலத்த(த்தில் உள்(து. Machine Learning – இவ் ாவேற ;ல்லி, Machine Learning – வேராஜா, Machine Learning – தா;ளைர என்னும் ஒவ்வெ ாரு
170
பிரிவுக்கும் தனித்தனியாகக் கண்டுபிடிக்க வே ண்டும். Machine Learning – களைடசியாக இளை களின்
கூட்டுத்வெதாளைகளைய - Machine Learning – எனும் எதிர்;ளைற குறியால் வெபருக்கினால் கிளைடப்பவேத
entropy Machine Learning – ஆகும்.
Entropy Machine Learning – = Machine Learning – - Machine Learning – {Summation Machine Learning – of Machine Learning – (SQL) fraction Machine Learning – of Machine Learning – each Machine Learning – class.log Machine Learning – base Machine Learning – 2 Machine Learning – of Machine Learning –
that Machine Learning – fraction)}
= Machine Learning – -{ Machine Learning – (SQL) 34/112).log2(SQL) 34/112) Machine Learning – + Machine Learning – (SQL) 41/112).log2(SQL) 41/112) Machine Learning – + Machine Learning –
(SQL) 37/112).log2(SQL) 37/112) Machine Learning – }
= Machine Learning – -{ Machine Learning – (SQL) 0.3035).log2(SQL) 0.3035) Machine Learning – + Machine Learning – (SQL) 0.3661).log2(SQL) 0.3661) Machine Learning – + Machine Learning –
(SQL) 0.3303).log2(SQL) 0.3303) Machine Learning – }
= Machine Learning – -{ Machine Learning – (SQL) 0.3035).(SQL) -1.7202) Machine Learning – + Machine Learning – (SQL) 0.3661).(SQL) -1.4496) Machine Learning – + Machine Learning – (SQL) 0.3303).(SQL) -
1.5981) Machine Learning – }
= Machine Learning – -{ Machine Learning – -0.5220 Machine Learning – + Machine Learning – -0.5307 Machine Learning – + Machine Learning – -0.5278 Machine Learning – }
= Machine Learning – -{ Machine Learning – -1.5805}
= Machine Learning – 1.581
171
கaக்கிடப்பட்ட entropy Machine Learning – ;திப்ளைபவேய ளைரப்படத்தின் முதல் node-ல்
காaலாம். Machine Learning – இம்;திப்பு 0-க்கு அதிக;ாக இருப்பதால், Machine Learning – 112 Machine Learning – தரவுகளும் ஒரு
condition Machine Learning – மூலம் 37, Machine Learning – 75 Machine Learning – எனும் எண்ணிக்ளைகயில் அளை;யும் இரு பிரிவுக(ாகப்
பிரிக்கப்படுகின்றன. Machine Learning – அதா து X2 Machine Learning – எனப்படும் Petal_length Machine Learning – அம்சத்தின்
;திப்புகளில் 2.35 Machine Learning – -க்கு கீழ் இருந்தால் அத்தளைகய தரவுகள் இடப்புற node-லும், Machine Learning –
அதிக;ாக உள்(ளை லப்புற node-லும் பிரிக்கப்படுகின்றன. Machine Learning – பின்னர் மீண்டும்
பிரிக்கப்பட்ட இரு பிரிவுகளுக்கும் entropy Machine Learning – கaக்கிடப்படுகிறது. Machine Learning – இடப்புறம் உள்(
node-ல் entropy Machine Learning – 0.0 Machine Learning – என ந்துள்(து. Machine Learning – இதுவே decision Machine Learning – node Machine Learning – எனப்படும். Machine Learning –
அதா து 0-ஆக இருக்கும் பட்சத்தில் அதில் உள்( தரவுகள் அளைனத்தும் ஏவேதா ஒரு
ளைகயின் கீழ் பிரிக்கப்பட்டுவிட்டது என்று அர்த்தம். Machine Learning – அதன் value Machine Learning – ;திப்பும்
172
[0,0,37] Machine Learning – என்று உள்(து. Machine Learning – அதா து ;ல்லிளைகக்கும், Machine Learning – தா;ளைரக்கு;ான தரவுகளின்
எண்ணிக்ளைக 0. Machine Learning – வேராஜாவுக்கான எண்ணிக்ளைக 37. Machine Learning – இதுவே ஒரு பூளை வேராஜா என
முடிவு வெசய் தற்கான decision Machine Learning – node Machine Learning – ஆகும். Machine Learning – இவேத முளைறயில்
ளைரப்படத்திலுள்( ;ற்ற nodes Machine Learning – உரு ாக்கப்படுகின்றன. Machine Learning – ;ற்ற features-ம்
வேசாதிக்கப்படுகின்றன. Machine Learning – ளைரப்படத்தின் களைடசி கிளை(யில் ஒரு பூளை ;ல்லி அல்லது
தா;ளைர என முடிவு வெசய் தற்கான decision Machine Learning – nodes Machine Learning – அளை;ந்துள்(ன. Machine Learning – அதா து
களைடசி கிளை(யில் இடமிருந்து ல;ாக உள்( 3 Machine Learning – nodes-ல், Machine Learning – அதன் value Machine Learning –
;திப்புகளை( க னிக்கவும். Machine Learning – ;ல்லி என முடிவு வெசய் தற்கான இடத்தில் 34 Machine Learning – என
வெ;ாத்த;ாக இல்லா;ல், Machine Learning – 30, Machine Learning – 3, Machine Learning – 1 Machine Learning – என தனித்தனியாகப் பிரித்து இத்தளைகய
decision Machine Learning – nodes-ஐ உரு ாக்கியுள்(து. Machine Learning – அவ் ாவேற லமிருந்து இட;ாக உள்( 3 Machine Learning –
nodes-ல், Machine Learning – தா;ளைர என முடிவு வெசய் தற்கான இடத்தில் 41 Machine Learning – என வெ;ாத்த;ாக
இல்லா;ல், Machine Learning – 30, Machine Learning – 8, Machine Learning – 3 Machine Learning – எனத் தனித்தனியாகப் பிரித்து உரு ாக்கியுள்(து. Machine Learning – எனவே தான்
இளை களின் entropy Machine Learning – 0 Machine Learning – ;ற்றும் அதற்கு வெநருங்கிய ;திப்பாக உள்(து.
Information Gain:
Information Machine Learning – Gain Machine Learning – = Machine Learning – Parent'Software Testing' s Machine Learning – entropy Machine Learning – - Machine Learning – child'Software Testing' s Machine Learning – entropy Machine Learning – with Machine Learning –
weighted Machine Learning – average
child'Software Testing' s Machine Learning – entropy Machine Learning – with Machine Learning – weighted Machine Learning – average Machine Learning – = Machine Learning – [(SQL) no. Machine Learning – of Machine Learning – examples Machine Learning – in Machine Learning – left Machine Learning –
child Machine Learning – node) Machine Learning – / Machine Learning – (SQL) total Machine Learning – no. Machine Learning – of Machine Learning – examples Machine Learning – in Machine Learning – parent Machine Learning – node) Machine Learning – * Machine Learning – (SQL) entropy Machine Learning – of Machine Learning –
left Machine Learning – node)] Machine Learning – +
[(SQL) no. Machine Learning – of Machine Learning – examples Machine Learning – in Machine Learning – right Machine Learning – child Machine Learning – node)/ Machine Learning – (SQL) total Machine Learning – no. Machine Learning – of Machine Learning – examples Machine Learning – in Machine Learning –
173
parent Machine Learning – node) Machine Learning – * Machine Learning – (SQL) entropy Machine Learning – of Machine Learning – right Machine Learning – node)]
= Machine Learning – (SQL) 37/112)*0.0 Machine Learning – + Machine Learning – (SQL) 75/112)*0.994
= Machine Learning – 0 Machine Learning – + Machine Learning – 0.665625
= Machine Learning – 0.665
வே;ற்கண்ட நிரலில் DecisionTreeClassifier(SQL) )-க்குள் criterion Machine Learning – = Machine Learning – "entropy"
என்பதற்கு பதிலாக "gini"எனக் வெகாடுத்து பயிற்சி அளித்தால், Machine Learning – அது gini-ஐக்
கaக்கிட்டு பின் ரு;ாறு கிளை(களை( உரு ாக்கிக் கற்கிறது. Machine Learning – Machine Learning – Machine Learning – Machine Learning – Machine Learning – Machine Learning – Machine Learning – Machine Learning – Machine Learning – Machine Learning – Machine Learning – Machine Learning – Machine Learning – Machine Learning – Machine Learning –
Random Machine Learning – Forest Machine Learning – முளைறயில் கற்கும் model-ன் ளைரபடம் பின் ரு;ாறு.
174
175
Random Machine Learning – forest-ல் ;ாதிரித் தரவுகளில் உள்( ஒவ்வெ ாரு feature-ம்
ளைகப்படுத்தலுக்கு எந்த அ(வுக்கு பங்களித்துள்(து என்பளைத பின் ரும்
ளைரப்படத்தில் காaலாம்..
176
19. Clustering with K-Means
Unsupervised Machine Learning – learning-ல் நாம் கற்க இருக்கும் முதல் algorithm Machine Learning – இதுவே . Machine Learning –
இது ளைர நாம் கண்ட அளைனத்தும் supervised-ன் கீழ் அளை;யும். Machine Learning – logistic Machine Learning –
regression, Machine Learning – multi-class Machine Learning – classification Machine Learning – வேபான்ற அளைனத்திலும், Machine Learning – உள்ளீடு(SQL) X) Machine Learning –
;ற்றும் வெ ளியீடு(SQL) Y) Machine Learning – இரண்ளைடயும் வெகாடுத்து பயிற்சி அளிப்வேபாம். Machine Learning – பல்வே று
வெ ளியீட்டு ளைககளின் கீழ் தரவுகளை(ப் பிரிப்பதற்கு அத்தளைன ளைகயான
எல்ளைலகளை(யும் நாவே; ளைரயளைற வெசய்வே ாம். Machine Learning – ஆனால் இந்த unsupervised-ல்
வெ றும் உள்ளீடுகள் ;ட்டுவே; வெகாடுக்கப்படும். Machine Learning – எத்தளைன ளைகயில் பிரிக்க
வே ண்டும் என்பவேதா, Machine Learning – அ ற்றின் எல்ளைலகள் என்ன என்பவேதா வெகாடுக்கப்படாது. Machine Learning –
இது வேபான்ற clustering-ல் எல்ளைலகள் K-means Machine Learning – மூல;ாக
கaக்கிடப்படுகின்றன. Machine Learning – எவ் (வு ளைககளில் பிரிக்க வே ண்டும் என்பளைத elbow Machine Learning –
method-மூலம் கaக்கிடலாம். Machine Learning – அதா து ஒரு ளைரயளைறளையக் வெகாடுத்து கற்கச்
வெசால்லு து supervised Machine Learning – என்றால், Machine Learning – எவ்வித ளைரயளைறயும் இல்லா;ல் கற்கச்
வெசால்லு து unsupervised Machine Learning – ஆகும்.
கீழ்க்கண்ட உதாரaத்தில் X1, Machine Learning – X2 Machine Learning – எனும் இரண்டு அம்சங்கள்(SQL) features) Machine Learning –
வெகாடுக்கப்பட்டுள்(ன. Machine Learning – Y Machine Learning – என்று எதுவும் இல்ளைல. Machine Learning – அதா து வெ றும்
உள்ளீட்டுக்கான தரவுகளை(க் வெகாண்டு ;ட்டுவே; நா;ாகவே பல்வே று குழுக்களில்
அ ற்ளைற ளைகப்படுத்திக் வெகாடுக்க வே ண்டும்.
x1 Machine Learning – = Machine Learning – [15, Machine Learning – 19, Machine Learning – 15, Machine Learning – 5, Machine Learning – 13, Machine Learning – 17, Machine Learning – 15, Machine Learning – 12, Machine Learning – 8, Machine Learning – 6, Machine Learning – 9, Machine Learning – 13]
x2 Machine Learning – = Machine Learning – [13, Machine Learning – 16, Machine Learning – 17, Machine Learning – 6, Machine Learning – 17, Machine Learning – 14, Machine Learning – 15, Machine Learning – 13, Machine Learning – 7, Machine Learning – 6, Machine Learning – 10, Machine Learning – 12]
https://gist.github.com/
nithyadurai87/185e332ebce7028af265adbe86db40d5
177
import matplotlib.pyplot as plt
import math
def plots(cluster1_x1,cluster1_x2,cluster2_x1,cluster2_x2):
plt.figure()
plt.plot(cluster1_x1,cluster1_x2,'.')
plt.plot(cluster2_x1,cluster2_x2,'*')
plt.grid(True)
plt.show()
def round1(c1_x1,c1_x2,c2_x1,c2_x2):
cluster1_x1 = []
cluster1_x2 = []
cluster2_x1 = []
cluster2_x2 = []
plots(cluster1_x1,cluster1_x2,cluster2_x1,cluster2_x2)
c1_x1 = sum(cluster1_x1)/len(cluster1_x1)
c1_x2 = sum(cluster1_x2)/len(cluster1_x2)
c2_x1 = sum(cluster2_x1)/len(cluster2_x1)
c2_x2 = sum(cluster2_x2)/len(cluster2_x2)
round2 (c1_x1,c1_x2,c2_x1,c2_x2)
def round2(c1_x1,c1_x2,c2_x1,c2_x2):
cluster1_x1 = []
cluster1_x2 = []
cluster2_x1 = []
cluster2_x2 = []
178
d = math.sqrt(((i-c2_x1)**2 + (j-c2_x2)**2))
if c < d:
cluster1_x1.append(i)
cluster1_x2.append(j)
else:
cluster2_x1.append(i)
cluster2_x2.append(j)
plots(cluster1_x1,cluster1_x2,cluster2_x1,cluster2_x2)
plots(x1,x2,[],[])
round1(x1[4],x2[4],x1[10],x2[10])
முதலில் X1, Machine Learning – X2 Machine Learning – எனும் இரண்டு அம்சங்களும் எவ் ாறு அளை;ந்துள்(ன என்பளைத
scatter Machine Learning – plot Machine Learning – மூலம் காaலாம். Machine Learning – இன்னும் இரண்டா து வெகாத்தில் என்வெனன்ன
அம்சங்களை( அளை;க்க வே ண்டும் என்பது கண்டறியப்படவில்ளைல. Machine Learning – எனவே அளை
காலிப் பட்டியலாக அனுப்பப்படுகின்றன.
plots(SQL) x1,x2,[],[])
179
19.1 Centroids (திணிவுக்கான புள்ளி)
180
தூரம்1 Machine Learning – = Machine Learning – (SQL) x1_data Machine Learning – - Machine Learning – 13)**2 Machine Learning – + Machine Learning – (SQL) x2_data Machine Learning – - Machine Learning – 17)**2
தூரம்2 Machine Learning – = Machine Learning – (SQL) x1_data Machine Learning – - Machine Learning – 9)**2 Machine Learning – + Machine Learning – (SQL) x2_data Machine Learning – - Machine Learning – 10)**2
181
காட்டப்படுகின்றன.
cluster1_x1 Machine Learning – = Machine Learning – [15, Machine Learning – 19, Machine Learning – 15, Machine Learning – 13, Machine Learning – 17, Machine Learning – 15, Machine Learning – 12]
cluster1_x2 Machine Learning – = Machine Learning – [13, Machine Learning – 16, Machine Learning – 17, Machine Learning – 17, Machine Learning – 14, Machine Learning – 15, Machine Learning – 13]
cluster2_x1 Machine Learning – = Machine Learning – [5, Machine Learning – 8, Machine Learning – 6, Machine Learning – 9, Machine Learning – 13]
cluster2_x2 Machine Learning – = Machine Learning – [6, Machine Learning – 7, Machine Learning – 6, Machine Learning – 10, Machine Learning – 12]
plots(SQL) cluster1_x1,cluster1_x2,cluster2_x1,cluster2_x2)
இவ் ாறாக முதலில் இரண்டு வெகாத்துக்கள் உரு ாக்கப்பட்ட பின்னர், Machine Learning –
அ ற்றிலிருந்து மீண்டும் இரண்டு திணிப்புப் புள்ளிகள் வேதர்ந்வெதடுக்கப்படுகின்றன. Machine Learning –
ஆனால் இம்முளைற இளை random-ஆக வேதர்வு வெசய்யப்படு தில்ளைல. Machine Learning – இரண்டு
வெகாத்துக்களிலும் அளை;ந்துள்( x1, Machine Learning – x2-க்கான mean Machine Learning – கaக்கிடப்பட்டு அளை வேய
திணிப்புப் புள்ளிக(ாக அளை;கின்றன. Machine Learning – எனவே இன்னும் சற்று துல்லிய;ான இரண்டு
வெகாத்துக்களை( நாம் உரு ாக்க முடியும்.
182
c1_x1 Machine Learning – = Machine Learning – (SQL) 15 Machine Learning – + Machine Learning – 19 Machine Learning – + Machine Learning – 15 Machine Learning – + Machine Learning – 13 Machine Learning – + Machine Learning – 17 Machine Learning – + Machine Learning – 15 Machine Learning – + Machine Learning – 12) Machine Learning – / Machine Learning – 7
= Machine Learning – 106 Machine Learning – / Machine Learning – 7
= Machine Learning – 15.14
c1_x2 Machine Learning – = Machine Learning – [13 Machine Learning – + Machine Learning – 16 Machine Learning – + Machine Learning – 17 Machine Learning – + Machine Learning – 17 Machine Learning – + Machine Learning – 14 Machine Learning – + Machine Learning – 15 Machine Learning – + Machine Learning – 13] Machine Learning – / Machine Learning – 7
= Machine Learning – 105 Machine Learning – / Machine Learning – 7
= Machine Learning – 15
c2_x1 Machine Learning – = Machine Learning – [5 Machine Learning – + Machine Learning – 8 Machine Learning – + Machine Learning – 6 Machine Learning – + Machine Learning – 9 Machine Learning – + Machine Learning – 13] Machine Learning – / Machine Learning – 5
= Machine Learning – 41 Machine Learning – / Machine Learning – 5
= Machine Learning – 8.2
c2_x2 Machine Learning – = Machine Learning – [6 Machine Learning – + Machine Learning – 7 Machine Learning – + Machine Learning – 6 Machine Learning – + Machine Learning – 10+ Machine Learning – 12] Machine Learning – / Machine Learning – 5
= Machine Learning – 41 Machine Learning – / Machine Learning – 5
= Machine Learning – 8.2
பின்னர் மீண்டும் ஒவ்வெ ாரு data-க்கும், Machine Learning – கண்டறிந்த திணிப்புப் புள்ளிகளுக்கு;ான
தூரம் கaக்கிடப்படுகிறது.அதில் குளைற ான அ(வு தூரம் வெகாண்ட தரவுகள்
அ ற்றுக்கான வெகாத்தில் இளைaகின்றன. Machine Learning – இவ் ாறாக இங்கு மீண்டும் இரண்டு
வெகாத்துகள் உரு ாக்கப்படுகிறது. Machine Learning – இளை தரவுகளை( இன்னும் சற்று துல்லிய;ாகப்
பிரிப்பளைதக் காaலாம்.
183
இவ் ாறாகத் தரவுகள் தனக்குரிய வெகாத்தில் சரி ரப் வெபாருந்தும் ளைரயிலும், Machine Learning –
இதளைனவேய நாம் வெதாடர்ச்சியாகச் வெசய்து வெகாண்வேட வெசல்லலாம். Machine Learning – இதுவே
clustering Machine Learning – with Machine Learning – k-means Machine Learning – எனப்படுகிறது. Machine Learning – இதில் k Machine Learning – என்பது எத்தளைன
வெகாத்துகள்/குழுக்கள் உரு ாக்கப்பட வே ண்டும் என்பளைதயும், Machine Learning – means Machine Learning – என்பது
ஒவ்வெ ாரு features-வுளைடய சராசரிளையயும் கண்டுபிடித்து அதனடிப்பளைடயில்
குழுக்களை( உரு ாக்கு ளைதயும் குறிப்பிடுகிறது. Machine Learning – அடுத்ததாக இந்த k-ன் ;திப்பிளைன
எவ் ாறு கaக்கிடு து என்று பார்க்கலாம்.
184
ந;க்கு சரியாகக் காட்டுகிறதா எனப் பார்க்கலாம். Machine Learning – இதற்கான நிரல் ;ற்றும் வி(க்கம்
பின் ரு;ாறு.
https://gist.github.com/
nithyadurai87/10b5b273151c80be97579d684279cd84
X = np.array(list(zip(x1, x2)))
distortions = []
K = range(1,8)
for i in K:
model = KMeans(n_clusters=i)
model.fit(X)
distortions.append(sum(np.min(cdist(X, model.cluster_centers_,
'euclidean'), axis=1)) / X.shape[0])
plt.plot()
plt.plot(K, distortions, 'bx-')
plt.show()
இதில் x1, Machine Learning – x2 Machine Learning – எனும் இரண்டு அம்சங்களும் numpy Machine Learning – மூலம் x Machine Learning – எனும் ஒவேர அணியாக
;ாற்றப்படுகிறது. Machine Learning – பின்னர் இத்தரவுகளை(க் வெகாண்டு kmeans-க்குப் பயிற்சி
அளிக்கப்படுகிறது. Machine Learning – இப்பயிற்சியானது 1 Machine Learning – முதல் 7 Machine Learning – ளைர பல்வே று எண்ணிக்ளைகயில்
குழுக்களை( அளை;த்து பயிற்சி அளிக்கிறது. Machine Learning – ஒவ்வெ ாரு முளைறயும் அதன்
தரவுகளுக்கும், Machine Learning – திணிவுப் புள்ளிக்கு;ான விலகல் எவ் (வு தூரம் இருக்கிறது
185
என்பளைதக் கaக்கிடுகிறது. Machine Learning – இவ் ாறாக எந்த எண்ணிக்ளைகயில் குழுக்களை(
அளை;க்கும் வேபாது அ ற்றிலுள்( தரவுகளின் விலகல் குளைறகிறது என்பது
கண்டுபிடிக்கப்படுகிறது. Machine Learning – இந்த விலகல் ;திப்வேப cost Machine Learning – / Machine Learning – distortion Machine Learning – என்று
அளைiக்கப்படுகிறது.
பின்னர் இளை ஒரு ளைரபட;ாக ளைரயப்படுகின்றன. Machine Learning – இதன் x Machine Learning – அச்சில் குழுக்களின்
எண்ணிக்ளைகயும், Machine Learning – y Machine Learning – அச்சில் அதன் விலகல் ;திப்புகளும் அளை;கின்றன. Machine Learning – எனவே தான்
ஒவேர ஒரு வெகாத்தில் அளைனத்துத் தரவுகளை(யும் அளை;க்கும்வேபாது அதனுளைடய
centroid-லிருந்து ;ற்ற தரவுகளின் விலகல் ;திப்பு 5-க்கு வே;ல் காட்டு ளைதயும், Machine Learning –
அதுவே 7 Machine Learning – தனித்தனி வெகாத்துக்க(ாகப் பிரிக்கும்வேபாது, Machine Learning – அதனுளைடய விலகல் ;திப்பு
1-க்குக் கீழ் காட்டு ளைதயும் காaலாம். Machine Learning – இந்த ளைரபடம் பார்ப்பதற்கு ஒரு முiங்ளைக
டிவில் இருப்பதால், Machine Learning – இது Elbow Machine Learning – method Machine Learning – என்று அளைiக்கப்படுகிறது. Machine Learning – இந்த
ளைரபடத்தின் x-அச்சில் 2 Machine Learning – என்ற புள்ளியில் அந்த முiங்ளைக வேபான்ற டி ம் ;டங்கி
விரி தால், Machine Learning – அந்த எண்ணிக்ளைகயில் தரவுகளை(ப் பிரித்தால் வேபாதும் என்பளைத நாம்
வெதரிந்து வெகாள்(லாம். Machine Learning – ஏவெனனில் இதற்கு வே;ல் வெசல்லச் வெசல்ல விலகல் ;திப்புகள்
ஓர(வுக்வேக குளைறகின்றன. Machine Learning – இந்த புள்ளியில் தான் அந்த முiங்ளைக ;டங்கும் நிளைல
ஏற்படுகிறது. Machine Learning – எனவே தரவுகளை( 2 Machine Learning – குழுக்களில் பிரித்தால் சரியாக இருக்கும் என்பது
கண்டுபிடிக்கப்படுகிறது..
186
Machine Learning –
19.3 silhouette_coefficient
187
அதா து k-means Machine Learning – முளைறயில் ளைகப்படுத்தப்படும் தரவுகள், Machine Learning – சரியான
முளைறயில்தான் ளைகப்படுத்தப்பட்டுள்(தா எனக் கண்டறிய ஏற்கனவே distortion Machine Learning –
என்ற ஒன்ளைற அ(விட்வேடாம். Machine Learning – இது ஒவ்வெ ாரு தரவும் அதன் திணிவுப்
புள்ளியிலிருந்து எவ் (வு தூரம் விலகியிருக்கிறது என்பளைத ளை த்து, Machine Learning – kmeans-ன்
வெசயல்திறளைனக் கaக்கிடுகிறது. Machine Learning – அதுவேபாலவே இந்த silhouette_coefficient Machine Learning –
என்பது பின் ரும் ாய்ப்பாடு மூலம் தரவுகள் அளை;ந்துள்( ஒவ்வெ ாரு குழுவும்
எவ் (வு கச்சித;ாகப் பிரிக்கப்பட்டுள்(து என்பளைதக் கaக்கிடுகிறது.
இதில் a Machine Learning – என்பது ஒவேர குழுவில் உள்( தரவுகளுக்கிளைடவேயயான சராசரி தூரம். Machine Learning – b Machine Learning –
என்பது ஒரு குழுவிற்கும் அதற்கடுத்த குழுவிற்கும் இளைடவேய உள்(
தரவுகளுக்கிளைடவேயயான சராசரி தூரம்.
கீழ்க்கண்ட எடுத்துக்காட்டில் ந;து தரவுகள், Machine Learning – kmeans Machine Learning – மூலம் முதலில் 2 Machine Learning –
குழுக்க(ாகப் பிரிக்கப்படுகின்றன. Machine Learning – அவ் ாவேற for Machine Learning – loop Machine Learning – மூலம் அடுத்தடுத்து 3,4,5 Machine Learning –
;ற்றும் 8 Machine Learning – குழுக்க(ாகப் பிரிக்கப்படுகின்றன. Machine Learning – இந்த loop-க்குள் குழுக்கள்
வெகாடுக்கப்பட்ட எண்ணிக்ளைகயில் ஒவ்வெ ாரு முளைற அளை;யும்வேபாதும், Machine Learning – அது
தரவுகளை(ப் பிரிக்கும் விதத்ளைத ளைரபட;ாக ளைரந்து காட்டுகிறது ;ற்றும் அதன்
silhouette_coefficient Machine Learning – ;திப்ளைப வெ ளிப்படுத்துகிறது.
https://gist.github.com/nithyadurai87/
f5f043df412b6e3c8291d0080422bd92
import numpy as np
from sklearn.cluster import KMeans
from sklearn import metrics
import matplotlib.pyplot as plt
plt.subplot(3, 2, 1)
188
x1 = [15, 19, 15, 5, 13, 17, 15, 12, 8, 6, 9, 13]
x2 = [13, 16, 17, 6, 17, 14, 15, 13, 7, 6, 10, 12]
plt.scatter(x1, x2)
X = np.array(list(zip(x1, x2)))
p = 1
for i in [2, 3, 4, 5, 8]:
p += 1
plt.subplot(3, 2, p)
model = KMeans(n_clusters=i).fit(X)
print (model.labels_)
for i, j in enumerate(model.labels_):
plt.plot(x1[i], x2[i], color=c[j], marker=m[j],ls='None')
print (metrics.silhouette_score(X, model.labels_ ,metric='euclidean'))
plt.show()
print Machine Learning – (SQL) model.labels_) Machine Learning – என்பது முதல் குழுளை 0 Machine Learning – என்றும் இரண்டா து குழுளை
1 Machine Learning – என்றும் குறிப்பிடுகிறது. Machine Learning – எனவே x1 Machine Learning – ;ற்றும் x2-ல் உள்( 12 Machine Learning – தரவுகளும் எந்வெதந்த
குழுக்களில் வேசர்க்கப்பட்டுள்(ன என்பதும் அதன் coefficient Machine Learning – ;திப்பும்
பின் ரு;ாறு வெ ளிப்படுகிறது.
[1 Machine Learning – 1 Machine Learning – 1 Machine Learning – 0 Machine Learning – 1 Machine Learning – 1 Machine Learning – 1 Machine Learning – 1 Machine Learning – 0 Machine Learning – 0 Machine Learning – 0 Machine Learning – 1]
0.6366488776743281
அவ் ாவேற 3 Machine Learning – குழுக்க(ாகப் பிரிக்கும்வேபாது 0 Machine Learning – முதல் குழுளை யும், Machine Learning – 1 Machine Learning – இரண்டா து
குழுளை யும், Machine Learning – 2 Machine Learning – மூன்றா து குழுளை யும் பின் ரு;ாறு குறிப்பிடுகிறது.
[0 Machine Learning – 0 Machine Learning – 0 Machine Learning – 1 Machine Learning – 0 Machine Learning – 0 Machine Learning – 0 Machine Learning – 2 Machine Learning – 1 Machine Learning – 1 Machine Learning – 1 Machine Learning – 2]
0.38024538066050284
இதுவேபான்வேற 4,5 Machine Learning – ;ற்றும் 8 Machine Learning – அ(வில் குழுக்கா(ாகப் பிரிக்கும்வேபாது தரவுகள்
189
வேசர்ந்துள்( குழுக்களின் ;திப்பும், Machine Learning – அக்குழுவிற்கான வெசயல்திறன் ;திப்பும்
பின் ரு;ாறு வெ ளிப்படுகின்றன. Machine Learning – இளைத ளை த்துப் பார்க்கும்வேபாது 2 Machine Learning – குழுக்க(ாகப்
பிரிக்கும் வேபாது ;ட்டுவே;, Machine Learning – இது அதிக அ(வு வெசயல் திறளைன (SQL) 0.63) Machine Learning –
வெ ளிப்படுத்து ளைதக் காaலாம்.
[2 Machine Learning – 0 Machine Learning – 0 Machine Learning – 1 Machine Learning – 0 Machine Learning – 0 Machine Learning – 0 Machine Learning – 2 Machine Learning – 1 Machine Learning – 1 Machine Learning – 3 Machine Learning – 2]
0.32248773306926665
[2 Machine Learning – 4 Machine Learning – 0 Machine Learning – 1 Machine Learning – 0 Machine Learning – 4 Machine Learning – 0 Machine Learning – 2 Machine Learning – 1 Machine Learning – 1 Machine Learning – 3 Machine Learning – 2]
0.38043265897525885
[6 Machine Learning – 7 Machine Learning – 3 Machine Learning – 4 Machine Learning – 3 Machine Learning – 1 Machine Learning – 6 Machine Learning – 2 Machine Learning – 0 Machine Learning – 4 Machine Learning – 5 Machine Learning – 2]
0.27672998081717154
கீழ்க்கண்ட ளைரப்படத்தில் முதலா தாக உள்(து வெ றும் தரவுகளுக்கான படம். Machine Learning –
இரண்டா தாக உள்(து 2 Machine Learning – குழுக்கா(ாகப் பிரிக்கும்வேபாது வெ ளிப்படும் ளைரபடம். Machine Learning –
அடுத்தடுத்து உள்(து 3,4,5,8 Machine Learning – எண்ணிக்ளைகயில் குழுக்களை( அளை;க்கும்வேபாது
வெ ளிப்படுகின்ற ளைரபடங்கள். Machine Learning – அதிகபட்ச;ாக 8 Machine Learning – குழுக்கள் ளைர தரவுகள்
பிரிக்கப்படுகின்றன. Machine Learning – எனவே ஒவ்வெ ாரு குழுவிலும் உள்( தரவுகளை(
வித்தியாசப்படுத்திக் காட்ட, Machine Learning – 8 Machine Learning – நிற ண்aங்களும் 8 Machine Learning – வெ வ்வே று டி ங்களும்
வெகாண்ட இரண்டு பட்டியல் உரு ாக்கப்படுகிறது. Machine Learning – அளை ஒவ்வெ ான்றாக loop-
க்குள் வெசன்று பின் ரு;ாறு வெ ளிப்படுகின்றன.
190
Machine Learning –
191
20. Support Vector Machine (SVM)
Support Machine Learning – Vector Machine Learning – Machine Machine Learning – (SQL) SVM) Machine Learning – என்பது தரவுகளை( ளைகப்படுத்திப்
பிரிப்பதற்கான ஒரு ழிமுளைற ஆகும். Machine Learning – ஏற்வெகனவே இதற்வெகன logistic Machine Learning –
regression Machine Learning – என்பளைதப் பற்றிப் பார்த்வேதாம். Machine Learning – ஆனால் இந்த SVM Machine Learning – என்பது
ளைகப்படுத்துதல் எனும் வே ளைலளைய logistic-ஐ விட இன்னும் சற்று துல்லிய;ாக
அளை;க்கிறது. Machine Learning – வேநர்வேகாடு மூலம் பிரிக்கப்படும் தரவுகளுக்கு large Machine Learning – margin Machine Learning –
classifier Machine Learning – எவ் ாறு உதவுகிறது என்பளைதயும், Machine Learning – வேநர்வேகாடு முளைறயில் பிரிக்கப்பட
முடியாத தரவுகளுக்கு kernels Machine Learning – எவ் ாறு உதவுகிறது என்பளைதயும் இப்பகுதியில்
காaலாம்.
https://gist.github.com/
nithyadurai87/2de5a6a6f7cc03c2791305f5c33d43d7
import numpy as np
import matplotlib.pyplot as plt
192
from sklearn import svm
from sklearn.linear_model.logistic import LogisticRegression
def classifier():
xx = np.linspace(1,10)
yy = -regressor.coef_[0][0] / regressor.coef_[0][1] * xx -
regressor.intercept_[0] / regressor.coef_[0][1]
plt.plot(xx, yy)
plt.scatter(x1,x2)
plt.show()
x1 = [2,6,3,9,4,10]
x2 = [3,9,3,10,2,13]
X = np.array([[2,3],[6,9],[3,3],[9,10],[4,2],[10,13]])
y = [0,1,0,1,0,1]
regressor = LogisticRegression()
regressor.fit(X,y)
classifier()
logistic Machine Learning – மூலம் தரவுகள் பிரிக்கப்படும்வேபாது அதற்கான வேநர்வேகாடு பின் ரு;ாறு
அளை;கிறது. Machine Learning – அதா து கீவேi உள்( ளைகக்கு மிகவும் வெநருக்க;ாக எவ்வித
இளைடவெ ளியும் இல்லா;ல் வேநர்வேகாடு அளை;க்கப்பட்டுள்(து. Machine Learning – ஆனால் வே;வேல
உள்( ளைகக்கும் வேகாட்டிற்கு;ான இளைடவெ ளிவேயா மிகவும் அதிக;ாக உள்(து.
193
SVM Machine Learning – மூலம் தரவுகள் பிரிக்கப்படும்வேபாது இரண்டு ளைகக்கும் நடுவில் உள்( வேகாடு
அவ்விரண்டு ளைகயிலிருந்தும் ச;;ான அ(வு தூரத்தில் உள்(து. Machine Learning – எனவே தான் இது
equal Machine Learning – margin Machine Learning – / Machine Learning – large Machine Learning – margin Machine Learning – classifier Machine Learning – என்று அளைiக்கப்படுகிறது. Machine Learning – இது
logistic Machine Learning – regression-க்கான ஒரு optimization-ஆகவே கருதப்படுகிறது.
194
20.2 Kernels (non-linear)
Kernel Machine Learning – என்பது வேநர்வேகாடு வேபாட்டு பிரிக்க முடியாத சற்று கடின;ான non-linear Machine Learning –
முளைறயில் அளை;ந்துள்( தரவுகளை( ளைகப்படுத்து தற்குப் பயன்படுகிறது. Machine Learning – இது
வேபான்ற வேநர்வேகாட்டில் வெபாருந்தாத தரவுகளை(ப் வெபாறுத்து தற்கு ஏற்வெகனவே
polynomial Machine Learning – regression Machine Learning – என்ற ஒன்ளைறப் பார்த்வேதாம். Machine Learning – ஆனால் அதில் ஒவ்வெ ாரு
features-வுளைடய higher Machine Learning – order Machine Learning – ;திப்புகள் கaக்கிடப்பட்டு அளை புதிதாக
இளைaந்துள்( அம்சங்க(ாகக் கaக்கில் வெகாள்(ப்படும். Machine Learning – எனவே தரவுகள்
முழுதாகப் வெபாருந்தும் ளைரயிலும் square, Machine Learning – cube Machine Learning – என்று அடுத்தடுத்த order-ல்
features-ஐக் கaக்கிட்டு இளைaத்துக் வெகாண்வேட வெசல்வே ாம். Machine Learning – இவ் ாறு
வெசய்யும்வேபாது பயிற்சி அளிக்கப்படும் தரவில் அதிக அ(வு அம்சங்கள்
வேசர்க்கப்படு தால், Machine Learning – ஒரு algorithm Machine Learning – கற்றுக் வெகாள் தற்கான வேநரமும் கணினி
அளைனத்ளைதயும் அதிக அ(வில் நிளைனவில் ளை த்துக் வெகாள்( வே ண்டிய வேதளை யும்
195
அதிகரிக்கிறது. Machine Learning – இளைதத் தவிர்ப்பதற்காக ந்தவேத kernels Machine Learning – / Machine Learning – similarity Machine Learning –
functions Machine Learning – ஆகும்.
இது புதிது புதிதாக அம்சங்களை( இளைaக்கா;ல், Machine Learning – ஏற்வெகனவே உள்( அம்சங்களில்
இருந்து புதிய அம்சங்களை(க் கaக்கிட்டுப் பயன்படுத்துகிறது. Machine Learning – உதாரaத்துக்கு ந;து
பயிற்சித் தரவில் 5 Machine Learning – அம்சங்களும் 100 Machine Learning – ;ாதிரித் தரவுகளும் உள்(ன என்று
ளை த்துக்வெகாள்வே ாம். Machine Learning – Polynomial Machine Learning – எனும் வேபாது இத்தளைகய 5 Machine Learning – features-க்கும்
square Machine Learning – ;ற்றும் cube Machine Learning – ;திப்புகள் கண்டுபிடிக்கப்பட்டு, Machine Learning – களைடசியில் அளை 20 Machine Learning – -
க்கும் வே;லான features-ஆக ந்து நிற்கும். Machine Learning – அதுவே kernel Machine Learning – மூலம் வெபாறுத்தும்
வேபாது ஒவ்வெ ாரு அம்சங்களிலும் உள்( 100 Machine Learning – ;ாதிரிகளில் இருந்து ஒரு தரவிளைன
வேதர்வு வெசய்து அதளைன landmark-ஆக அளை;க்கிறது. Machine Learning – பின்னர் அதிலிருந்து ;ற்ற
தரவுகள் எவ் (வு தூரத்தில் அளை;ந்துள்(ன என்பது கaக்கிடப்படுகிறது. Machine Learning – அளை
landmark-க்கு அருகில் இருந்தால் 1 Machine Learning – எனவும், Machine Learning – இல்ளைலவெயனில் 0 Machine Learning – எனவும்
ளைகப்படுத்தப்படுகின்றன. Machine Learning – இளைத ளை த்வேத புதிய feature Machine Learning – கaக்கிடப்படுகிறது. Machine Learning –
அதா து பயிற்சித் தரவில் உள்( 5 Machine Learning – அம்சங்களுக்கு வெ றும் 5 Machine Learning – புதிய features Machine Learning –
;ட்டுவே; இம்முளைறயில் கaக்கிடப்படுகின்றன.
இந்த similarity Machine Learning – function-க்கான ச;ன்பாடு பின் ரு;ாறு. Machine Learning – இதுவே kernel Machine Learning –
என்றும் அளைiக்கப்படுகிறது. Machine Learning – இந்த kernel Machine Learning – இக்கaக்கீடுகளை( நிகழ்த்து தற்கு
பல்வே று ாய்ப்பாடுகளை(ப் வெபற்றிருக்கும். Machine Learning – அதில் ஒன்றான exp(SQL) )-க்கான
ச;ன்பாடு கீவேi வெகாடுக்கப்பட்டுள்(து. Machine Learning – இதுவே gaussian Machine Learning – kernel Machine Learning – என்று
அளைiக்கப்படுகிறது. Machine Learning – இவேத வேபான்று polynomial Machine Learning – kernel, Machine Learning – string Machine Learning – kernel, Machine Learning – chi-
squared Machine Learning – kernel, Machine Learning – histogram-intersection Machine Learning – kernel Machine Learning – என்று பல்வே று
ளைகயான ாய்ப்பாடுகள் kernel-ல் உள்(ன.
f1 Machine Learning – = Machine Learning – similarity Machine Learning – (SQL) x Machine Learning – ,l1)
= Machine Learning – exp Machine Learning – (SQL) -(SQL) ||x-l||**2 Machine Learning – / Machine Learning – 2*sigma Machine Learning – squared Machine Learning – ))
196
SVM Machine Learning – without Machine Learning – kernels Machine Learning – என்பது logistic Machine Learning – regression-ஐக் குறிக்கிறது. Machine Learning –
அதா து kernels Machine Learning – மூலம் உரு ாக்கப்பட்ட புதிய features-ஐப் பயன்படுத்தா;ல், Machine Learning –
வேநரடியாக raw Machine Learning – feature-ஐக் வெகாண்டு ;ட்டுவே; ளைகப்படுத்துதல் நிகழ்ந்தால், Machine Learning –
அது logistic Machine Learning – regression-ஐவேய குறிக்கிறது. Machine Learning – எனவே எப்வேபாது kernel-ஐப்
பயன்படுத்தலாம் எப்வேபாது logistic-ஐப் பயன்படுத்தலாம் என்று பார்ப்வேபாம். Machine Learning –
வேதர்ந்வெதடுக்கப்பட்ட அம்சங்களின் எண்ணிக்ளைக(SQL) 100000 Machine Learning – or Machine Learning – 100), Machine Learning – பயிற்சிக்கு
அளிக்கப்பட்ட ;ாதிரித் தரவுகளின் எண்ணிக்ளைகளைய(SQL) 10000) Machine Learning – விட மிகவும்
அதிக;ாக இருந்தாவேலா அல்லது மிகவும் குளைற ாக இருந்தாவேலா svm Machine Learning – without Machine Learning –
kernel-ஐப் பயன்படுத்தலாம். Machine Learning – அதுவே features-ன் எண்ணிக்ளைக(SQL) 1000) Machine Learning – மிகவும்
அதிக;ாக இல்லா;ல் ஓர(வுக்கு சற்று அதிக;ாக இருக்கும்வேபாது svm Machine Learning – with Machine Learning –
kernel-ஐப் பயன்படுத்தலாம்.
கீழ்க்கண்ட எடுத்துக்காட்டில் பல்வே று அம்சங்களை( ளை த்து ஒரு ;லர் ;ல்லியா, Machine Learning –
வேராஜா ா, Machine Learning – தா;ளைரயா என்று ளைகப்படுத்தப்படுகிறது. Machine Learning – இளை svm Machine Learning – without Machine Learning –
kernel Machine Learning – அதா து logistic Machine Learning – மூலம் ளைகப்படுத்தப்படு ளைதவிட kernel Machine Learning – மூலம்
ளைகப்படுத்தப்படும்வேபாது அதன் accuracy Machine Learning – அதிகரிப்பளைதக் காaலாம்.
https://gist.github.com/
nithyadurai87/9d7cc99cc4ae18a3707cc76f8711193b
import numpy as np
import matplotlib.pyplot as plt
from sklearn import svm
import pandas as pd
from sklearn.metrics import accuracy_score
from sklearn.model_selection import train_test_split
from sklearn.svm import SVC
from sklearn.metrics import classification_report, confusion_matrix
from sklearn.linear_model.logistic import LogisticRegression
from matplotlib.colors import ListedColormap
df = pd.read_csv('./flowers.csv')
197
X = df[list(df.columns)[:-1]]
y = df['Flower']
X_train, X_test, y_train, y_test = train_test_split(X, y, random_state = 0)
logistic = LogisticRegression()
logistic.fit(X_train, y_train)
y_pred = logistic.predict(X_test)
print ('Accuracy-logistic:', accuracy_score(y_test, y_pred))
gaussian = SVC(kernel='rbf')
gaussian.fit(X_train, y_train)
y_pred = gaussian.predict(X_test)
print ('Accuracy-svm:', accuracy_score(y_test, y_pred))
வெ ளியீடு:
198
21. PCA - Principle Component Analysis
Principle Machine Learning – Component Machine Learning – Analysis Machine Learning – என்பது அதிக அ(வு பரி;ாaங்கள் வெகாண்ட
தரவுகளை( குளைறந்த அ(வு பரி;ாaங்கள் வெகாண்டதாக ;ாற்று தற்குப்
பயன்படுகிறது. Machine Learning – எடுத்துக்காட்டாக 1000 Machine Learning – அம்சங்களை(க் வெகாண்டு ஒரு விஷயம்
கணிக்கப்படுகிறது என ளை த்துக் வெகாள்வே ாம். Machine Learning – PCA-ஆனது இந்த 1000 Machine Learning – X-ஐ 100 Machine Learning –
X-ஆகவே ா அல்லது இன்னும் குளைறந்த பரி;ாaங்கள் வெகாண்டதாகவே ா ;ாற்றிக்
வெகாடுக்கும். Machine Learning – அதா து Y Machine Learning – எண்ணிக்ளைகளையப் பற்றிக் க ளைலப்படாது. Machine Learning – வெ றும் X Machine Learning –
எண்ணிக்ளைகளைய ;ட்டும் குளைறக்கும். Machine Learning – எனவே தான் PCA Machine Learning – என்பது dimensionality Machine Learning –
reduction-க்கு உதவுகின்ற ஒரு சிறப்பு ளைக ழிமுளைற ஆகும். Machine Learning – இதன்
வெசயல்பாடுகளில் உள்( படிகள் பின் ரு;ாறு.
• அடுத்ததாக PCA Machine Learning – மூலம் பயிற்சித் தரவில் உள்( x Machine Learning – அளைனத்ளைதயும் ந;க்குத்
வேதளை யான அ(வு குளைறந்த எண்ணிக்ளைகயில் ;ாற்றுதல்
வெபாது ாக இந்த PCA Machine Learning – அளைனத்து இடத்திலும் பயன்படாது. Machine Learning – சற்று அரிதாகவே
பயன்படும். Machine Learning – எடுத்துக்காட்டுக்கு ;னித முகங்கள் அல்லது ஊர்திகள் வேபான்ற ற்ளைற
அளைடயா(ப்படுத்தும் algorithm-க்கு பயிற்சி அளிக்கப்படும் தரவுகளில்
குளைறந்தபட்சம் 1 Machine Learning – லட்சம் features-ஆ து இருக்கும். Machine Learning – ஏவெனனில் ஒரு ஊர்தியின்
சக்கரம், Machine Learning – ளைகப்பிடி, Machine Learning – இருக்ளைக, Machine Learning – பக்கக் கண்aாடிகள், Machine Learning – முன் வி(க்குகள் என்று
199
ஒவ்வெ ாரு சின்னச் சின்ன விஷயங்களை(யும் அளைடயா(ப்படுத்த அதிக அ(வில்
features Machine Learning – அளை;ந்திருக்கும். Machine Learning – இதுவேபான்ற இடங்களில் , Machine Learning – அளை அளைனத்ளைதயும்
பயன்படுத்தா;ல் குளைறந்த அ(வில் features-ஐ ;ாற்று தற்கு PCA Machine Learning –
பயன்படுகிறது. Machine Learning – எப்வேபாதும் pca-ஐப் பயன்படுத்து தற்கு முன்பு feature Machine Learning – scaling
என்ற ஒன்று கண்டிப்பாக நளைடவெபற வே ண்டும். Machine Learning – இதுவே data-preprocessing Machine Learning –
என்று அளைiக்கப்படும்.
https://gist.github.com/
nithyadurai87/20d18bbda53e43de19222e24d330a398 Machine Learning –
import numpy as np
import matplotlib.pyplot as plt
import pandas as pd
from sklearn.model_selection import train_test_split
from sklearn.preprocessing import StandardScaler
from sklearn.decomposition import PCA
df = pd.read_csv('./flowers.csv')
X = df[list(df.columns)[:-1]]
y = df['Flower']
X_train, X_test, y_train, y_test = train_test_split(X, y, random_state = 0)
200