মেশিন লার্নিং কোনও তালিকা থেকে সর্বাধিক সন্ধানের মতো কোনও কাজ শিখতে পারে?


26

আমার কাছে একটি ইনপুট রয়েছে যা একটি তালিকা এবং আউটপুটটি ইনপুট-তালিকার উপাদানগুলির সর্বাধিক।

মেশিন লার্নিং এমন কোনও ফাংশন শিখতে পারে যা সর্বদা ইনপুটটিতে উপস্থিত ইনপুট-উপাদানগুলির সর্বাধিক নির্বাচন করে?

এটি একটি চমত্কার বেসিক প্রশ্ন হিসাবে মনে হতে পারে তবে এটি আমাকে মেশিন লার্নিং সাধারণভাবে কী করতে পারে তার একটি ধারণা দিতে পারে। ধন্যবাদ!


1
আমি মনে করি আপনি এটি সিরিজ সমস্যা হিসাবে যেমন পুনরাবৃত্ত নিউরাল নেটওয়ার্ক ব্যবহার করে চেষ্টা করতে পারেন। নেটওয়ার্কে বাছাই করা ডেটা ফিড করুন।
বিপিন বানসাল

2
আরও দেখুন datascience.stackexchange.com/q/22242 , datascience.stackexchange.com/q/29345 ; নিউরাল নেটওয়ার্কগুলি একটি ইনপুট তালিকাকে বাছাই করতে পারে , তাই অবশ্যই সর্বাধিক উত্তোলন করতে পারে।
বেন রেইনিজার

3
@ ট্র্যাভিস ব্ল্যাক: আসলে, এটি অবশ্যই প্রকারের ধরণের যা আপনি স্ট্যান্ডার্ড নিউরাল নেটওয়ার্কগুলি দিয়ে শিখতে পারবেন না । উদাহরণস্বরূপ, ধরুন আপনি অনুধাবন করার জন্য কোনও ভেক্টরকে কেবল প্লাগ ইন করেন যা আপনার প্রশিক্ষণ সংস্থায় আপনার যে কোনও মানের চেয়ে বেশি ছিল। আপনার কি মনে হয় প্রশিক্ষিত নিউরাল নেটওয়ার্ক আপনাকে সেই বৃহত্তম মানটি ফিরিয়ে দেবে?
ক্লিফ এবি

10
নিবন্ধন করুন নিউরাল নেটওয়ার্কগুলি "মূলত কোনও" গাণিতিক ফাংশন শিখতে পারে না। কার্ডিনালিটি-ভিত্তিক, প্রায় সমস্ত ফাংশন প্রায়-সর্বত্র বিচ্ছিন্নগুলি প্যাথলজিকাল। কি আপনি সম্ভবত গড় হল ফাংশন যে একটি mathematicians আসলে প্রচুর আগ্রহী ভালভাবে ভদ্র যথেষ্ট যে স্নায়ুর নেটওয়ার্ক হতে ঘটতে মধ্যে করতে আনুমানিক তাদের ইচ্ছামত ভাল। তবে এটি কোনও ফাংশন শিখতে সক্ষম হওয়ার মতো নয় ।
বাম দিকের বাইরে

6
@ লেফট্রাউন্ডবাউট এবং ক্লিফ: সাম্প্রতিক এমএল / ডিএল হাইপটিতে কেউ মাটিতে রয়েছেন তা দেখে ভাল লাগছে। লোকেরা এনএন ব্যবহার করছে, এবং আপনি যখন একটি স্তর গভীর খনন করেছেন, তখন আপনি খেয়াল করতে পারেন যে তারা আসলে সেখানে কী করছে সে সম্পর্কে তাদের সামান্যতম ধারণা নেই - কিছু কেরাস "হ্যালো ওয়ার্ল্ড" উদাহরণ থেকে অন্ধভাবে টুইট করা প্যারামিটার ছাড়াই তারা কিছু প্যাটার্ন না দেখায় see xkcd এটি ঠিক পেয়েছে: xkcd.com/1838 । আমি আশা করি যে কেউ এখনও একটি উত্তর এখানে যুক্ত করতে পারেন যা বর্তমানের চেয়ে বেশি গভীর prof (কারওর জন্য কোনও অপরাধ নয়, তবে এনএনএসের সাধারণ বোঝার অভাব আমাকে বাধা দেয় ...)
মার্কো 13

উত্তর:


35

হতে পারে , তবে মনে রাখবেন যে এটি মেশিন লার্নিংয়ের উত্তর নয় এমন একটি ক্ষেত্রে । প্রকৃতপক্ষে, বগ স্ট্যান্ডার্ড নিয়ম-ভিত্তিক সমাধানগুলি দ্রুত, সহজ এবং কেবলমাত্র সাধারণভাবে সঠিক পছন্দ: এমন ক্ষেত্রে মেশিন শিখার চেষ্টা করার এবং ঝোঁক দেওয়ার প্রবণতা রয়েছে: পি

আপনি পারছেন বলে কেবল তার মানে নয় should

সম্পাদনা : আমি প্রথমে এটি "হ্যাঁ, তবে এটি মনে রাখবেন ..." হিসাবে লিখেছিলেন তবে তারপরে কখনই এটি দেখা যায়নি বলে নিজেকে সন্দেহ করতে শুরু করেছিলেন। আমি আজ বিকেলে এটি চেষ্টা করেছিলাম এবং এটি অবশ্যই করণীয়:

import numpy as np
from keras.models import Model
from keras.layers import Input, Dense, Dropout
from keras.utils import to_categorical
from sklearn.model_selection import train_test_split
from keras.callbacks import EarlyStopping

# Create an input array of 50,000 samples of 20 random numbers each
x = np.random.randint(0, 100, size=(50000, 20))

# And a one-hot encoded target denoting the index of the maximum of the inputs
y = to_categorical(np.argmax(x, axis=1), num_classes=20)

# Split into training and testing datasets
x_train, x_test, y_train, y_test = train_test_split(x, y)

# Build a network, probaly needlessly complicated since it needs a lot of dropout to
# perform even reasonably well.

i = Input(shape=(20, ))
a = Dense(1024, activation='relu')(i)
b = Dense(512, activation='relu')(a)
ba = Dropout(0.3)(b)
c = Dense(256, activation='relu')(ba)
d = Dense(128, activation='relu')(c)
o = Dense(20, activation='softmax')(d)

model = Model(inputs=i, outputs=o)

es = EarlyStopping(monitor='val_loss', patience=3)

model.compile(optimizer='adam', loss='categorical_crossentropy')

model.fit(x_train, y_train, epochs=15, batch_size=8, validation_data=[x_test, y_test], callbacks=[es])

print(np.where(np.argmax(model.predict(x_test), axis=1) == np.argmax(y_test, axis=1), 1, 0).mean())

আউটপুট 0.74576 হয়, সুতরাং এটি সঠিকভাবে সময় সর্বাধিক 74.5% সন্ধান করছে। এতে কোনও উন্নতি হতে পারে তাতে আমার সন্দেহ নেই, তবে আমি যেমন বলছি এটি ইউসকেস নয় আমি এমএল-এর জন্য প্রস্তাব করব।

সম্পাদনা 2 : আসলে আমি আজ সকালে স্কেলের্নের র‌্যান্ডমফোরেস্টক্ল্যাসিফায়ার ব্যবহার করে আবার দৌড়েছি এবং এটি উল্লেখযোগ্যভাবে আরও ভাল অভিনয় করেছে:

# instantiation of the arrays is identical

rfc = RandomForestClassifier(n_estimators=1000, verbose=1)
rfc.fit(x_train, y_train)

yhat_proba = rfc.predict_proba(x_test)


# We have some annoying transformations to do because this .predict_proba() call returns the data in a weird format of shape (20, 12500, 2).

for i in range(len(yhat_proba)):
    yhat_proba[i] = yhat_proba[i][:, 1]

pyhat = np.reshape(np.ravel(yhat_proba), (12500,20), order='F')

print(np.where(np.argmax(pyhat, axis=1) == np.argmax(y_test, axis=1), 1, 0).mean())

এবং এখানে স্কোরটি 94.4% স্যাম্পলগুলির সর্বাধিক সঠিকভাবে চিহ্নিত হয়েছে, যা সত্যই বেশ ভাল।


1
@ ট্র্যাভিস ব্ল্যাক হ্যাঁ আমি প্রথমে এটি "হ্যাঁ, তবে ..." হিসাবে শুরু করেছি তবে তারপরে আমার সন্দেহ হয়েছিল এবং দ্বিখণ্ডিত হয়ে পড়েছে। আমি এখন উত্তর উন্নতি করেছি :)।
ড্যান স্কালি

16
[0,100] এর মান রয়েছে এমন ভেক্টরগুলির সাথে পুরো জিনিসটিকে প্রশিক্ষণ এবং পরীক্ষা করার সময়, তখন স্কোর প্রায় 0.95 হয়। ফাইন। তবে [0,100] এ মান সহ প্রশিক্ষণ দেওয়ার সময় এবং [100,200] এর মানগুলির সাথে এটি পরীক্ষা করার সময়, স্কোরটি কার্যত শূন্য । আপনি ইতিমধ্যে আপনার সম্পাদনা দিয়ে একটি পদক্ষেপ ফিরে নিয়েছেন। তবে যারা এমএলকে অন্ধভাবে অলৌকিক অস্ত্র হিসাবে দেখেন যা সমস্ত সমস্যার সমাধান করতে পারে: তাদের পক্ষে এটি স্পষ্ট করে দেওয়ার জন্য: আপনি সেখানে যা শিখছেন তা: এটি 'সর্বোচ্চ কার্যকারিতা' নয়!
মার্কো 13

2
(একদিকে: অন্যকে তাদের মন্তব্যের প্রতিক্রিয়া সম্পর্কে অবহিত করার জন্য, ব্যবহার @হিসাবে , ব্যবহার করুন @Marco13)। প্রশ্নটি সম্পর্কে: আমি মনে করি যে আপনার বক্তব্য "মেশিন লার্নিং এর উত্তর নয়" এটি পরিষ্কার করে দেয়। আমি মূলত ভয় পাই যে এমএল / ডিএল / এনএন ব্যবহার করার সময় এবং খুব বেশি লোক যথাযথ তদন্তটি প্রয়োগ না করে এবং বিশেষত যখন তারা এমন কিছু মুখের মুখোমুখি হয় যা দেখে মনে হয় এটি কেন তাদের উপস্থিতি বোঝায় না যে এটি "তাদের সমস্যার সমাধান" করতে পারে without , এবং সুতরাং যখন "সমাধান" কেবল তত্ক্ষণাত বোঝা যায় না এমন প্রক্রিয়াটির একটি শৈল্পিক হিসাবে স্বীকৃতি ছাড়াই।
মার্কো 13

2
@ প্রথম নিশ্চিত; শ্রেষ্ঠ সময়ে এই একটি হল পড়তা () সর্বোচ্চ প্রশিক্ষণ ডেটার সুযোগ এটি দেখা হচ্ছে প্রযোজ্য। আমি সমস্যাটির সাথে ঝাঁপিয়ে পড়ছিলাম, তবে আমি আমার উত্তরটির প্রাথমিক অনুভূতি থেকে বিরত রাখতে চাই না যা এই ধরণের সমস্যার জন্য এমএল ব্যবহার করে না
ড্যান স্ক্যালি

1
@ ব্র্যাডি গিলগ ইনপুট ডেটা মানক করে দিচ্ছে ... আহহম ... আপনি সম্ভবত সঠিকভাবেই এই "আরও ভাল" ফলাফল আনতে পারবেন, ফলাফল এখনও ততটা অর্থপূর্ণ হবে না, কারণ এনএন "সর্বোচ্চ কার্যকারিতা শিখছে না" । এবং যুক্তিটি কিছু উপায়ে স্পষ্টতই একা একা একাডেমিক - আমি এমনকি "খুব একাডেমিক "ও বলতে পারি: আপনি কিছু ভেক্টরের সর্বাধিক গণনা / পূর্বাভাস দিতে চান এবং সর্বাধিক গণনা করতে আপনাকে প্রথমে মিনিটের গণনা করতে হবে / সর্বাধিক একটি সাধারণকরণ করতে (বা একটি মানককরণের জন্য মানে / স্টডিডিভ, যা খুব একটা বোধগম্য বলে মনে হয় না)।
মার্কো 13

26

হ্যাঁ। খুব গুরুত্বপূর্ণ, আপনি একটি মেশিন লার্নিং সলিউশনটির আর্কিটেকচারটি স্থির করেন। আর্কিটেকচার এবং প্রশিক্ষণের পদ্ধতিগুলি নিজের লেখা হয় না; সেগুলি অবশ্যই ডিজাইন বা টেম্পলেট করা উচিত এবং প্রশিক্ষণটি ডেটিং পয়েন্টগুলির একটি সেটের জন্য আর্কিটেকচারের পরামিতি আবিষ্কারের মাধ্যম হিসাবে অনুসরণ করে।

আপনি একটি খুব সাধারণ আর্কিটেকচার নির্মাণ করতে পারেন যা আসলে সর্বাধিক কার্যকারিতা অন্তর্ভুক্ত:

net(x) = a * max(x) + b * min(x)

যেখানে a এবং b প্যারামিটার শিখেছে।

পর্যাপ্ত প্রশিক্ষণের নমুনা এবং একটি যুক্তিসঙ্গত প্রশিক্ষণের রুটিন দেওয়া, এই খুব সাধারণ স্থাপত্য আপনার কাজটির জন্য একটি 1 এবং বিতে শূন্য সেট করতে খুব শিখবে।

মেশিন লার্নিং প্রায়শই ইনপুট ডেটার পয়েন্টের বৈশিষ্ট্য ও রূপান্তর সম্পর্কে একাধিক হাইপোথিসিগুলি বিনোদনের রূপ নেয় এবং লক্ষ্য ভেরিয়েবলের সাথে সম্পর্কযুক্ত কেবলমাত্র সেই হাইপোথেসিকেই সংরক্ষণ করতে শেখা হয়। অনুমানগুলি আর্কিটেকচারে এবং প্যারামিটারাইজড অ্যালগরিদমে উপ-ফাংশনগুলিতে স্পষ্টভাবে এনকোড করা হয় বা অনুমিতিগুলি "প্যারামিটারলেস" অ্যালগরিদমে এনকোড করা হিসাবে থাকে।

উদাহরণস্বরূপ, ভ্যানিলা নিউরাল নেটওয়ার্ক এমএল হিসাবে সাধারণ হিসাবে ডট পণ্য এবং ননলাইনারিটি ব্যবহার করার পছন্দটি কিছুটা নির্বিচারে; এটি পরিবেষ্টিত অনুমানকে প্রকাশ করে যে লিনিয়ার ট্রান্সফর্মেশন এবং থ্রোসোল্ড ফাংশনগুলির পূর্বনির্ধারিত কম্পোজিশনাল নেটওয়ার্ক কাঠামো ব্যবহার করে একটি ফাংশন তৈরি করা যেতে পারে। সেই নেটওয়ার্কের বিভিন্ন প্যারামিটারাইজেশনগুলি কোন রৈখিক রূপান্তরগুলি ব্যবহার করতে হবে সে সম্পর্কে বিভিন্ন অনুমানকে মূর্ত করে। ফাংশনগুলির যে কোনও টুলবক্স ব্যবহার করা যেতে পারে এবং একটি মেশিন লার্নারের কাজ হ'ল ডিফারেন্সিয়েশন বা ট্রায়াল এবং ত্রুটি বা অন্য কোনও পুনরাবৃত্তিযোগ্য সিগন্যালের মাধ্যমে আবিষ্কার করা যা এর অ্যারেতে ফাংশন বা বৈশিষ্ট্যগুলি একটি ত্রুটি মেট্রিককে সর্বনিম্নভাবে কমিয়ে দেয়। উপরের উদাহরণে উদাহরণস্বরূপ, শিখানো নেটওয়ার্ক কেবলমাত্র সর্বাধিক ফাংশন হ্রাস করে, অন্যদিকে একটি অবিচ্ছিন্ন নেটওয়ার্ক বিকল্পভাবে একটি ন্যূনতম ফাংশন "শিখতে" পারে। এই ফাংশনগুলি অন্য উত্তরের মাধ্যমে লিনিয়ার বা স্নায়বিক নেট রিগ্রেশন ফাংশন হিসাবে, অন্য উপায়ে প্রকাশ করা বা আনুমানিক হিসাবে চিহ্নিত করা যেতে পারে। সংক্ষেপে, এটি আপনার এমএল আর্কিটেকচার টুলবক্সে কোন ফাংশন বা LEGO টুকরোগুলির উপর নির্ভর করে তা নির্ভর করে।


4
+1 এমএল অভিনব রিগ্রেশন সমীকরণ ছাড়া আর কিছুই নয় এবং সমীকরণগুলির সঠিক পছন্দের দাবি করে।
aidan.plenert.macdonald

4
@ सहायता.প্লেনার্ট.ম্যাকডোনাল্ড এমএলের প্রভাব এবং আবেদন, যদিও সমীকরণের সঠিক পছন্দ নেই। আপনার নির্বাচিত সমীকরণগুলি উপযুক্ত সমীকরণের সেটের একটি সদস্য হতে হবে, তবে এটি দেখা যাচ্ছে যে বিস্তৃত সমস্যার জন্য যে সমীকরণগুলি রয়েছে সেগুলি সাবধানতার সাথে ডিজাইন করা সমাধানের চেয়ে আরও সাধারণীকরণযুক্ত হতে পারে তবে ফলন পরামিতি যা সমাধান করে অতিরিক্ত নকশার প্রচেষ্টা চালিয়ে যাওয়ার চেয়ে সমস্যা আরও দ্রুত। এটি কীভাবে মডেল ডিজাইনের বিবেচনাগুলি পুরোপুরি বাদ দেয় না তার একটি উত্তম উদাহরণ।
উইল

এটি কখনও প্রশ্ন ছিল না। ওপিতে জিজ্ঞাসা করা হয়েছিল যে এমএল max()(লেবেলযুক্ত ডেটা থেকে) এর মতো কোনও ফাংশন (/ শিখতে / অনুমান) খুঁজে পাবে কিনা । তারা বলে না যে " আপনি ইতিমধ্যে max()একটি বিল্ডিং-ব্লক হিসাবে
পেয়েছেন

@smci মেশিন লার্নিং আর্কিটেকচার বা ফাংশনগুলির আগে কোনও "সার্বজনীন" নেই। আমার উত্তরে যেমন উল্লেখ করা হয়েছে, আপনি টুকরোজ লিনিয়ার ফাংশনগুলি অরৈখিকতার সাথে বিচ্ছিন্নভাবে ব্যবহার করে সর্বাধিক ফাংশন আনুমানিক করতে পারেন - তবে এমন কোনও সার্বজনীন নিয়ম নেই যা বলে যে সমস্ত এমএলকে তার সরঞ্জামবক্সে সেই নির্দিষ্ট সেট রূপান্তর ব্যবহার করতে হবে use নিউরাল নেটওয়ার্কগুলি প্রায়শই (তবে সর্বদা নয়) ম্যাক্স পুলিং বা রিলু ননলাইনারিটির মাধ্যমে তাদের নিয়ন্ত্রণে সর্বাধিক কার্যকারিতা থাকে। সম্ভাব্য বৈশিষ্ট্য কার্যকারিতা সংখ্যা সীমাহীন, এ কারণেই আমি এমএল আর্কিটেকচারে পছন্দ এবং পূর্বনির্ধারিত পক্ষপাতিত্বের ভূমিকাটি হাইলাইট করি।
পাইগসেসেল

7

হ্যাঁ - মেশিন লার্নিং সংখ্যার তালিকায় সর্বাধিক সন্ধান করতে পারে।

সর্বাধিকের সূচকটি খুঁজে পেতে শেখার একটি সাধারণ উদাহরণ এখানে:

import numpy as np
from sklearn.tree import DecisionTreeClassifier

# Create training pairs where the input is a list of numbers and the output is the argmax
training_data = np.random.rand(10_000, 5) # Each list is 5 elements; 10K examples
training_targets = np.argmax(input_data, axis=1)

# Train a descision tree with scikit-learn
clf = DecisionTreeClassifier()
clf.fit(input_data, targets)

# Let's see if the trained model can correctly predict the argmax for new data
test_data = np.random.rand(1, 5)
prediction = clf.predict(test_data)
assert prediction == np.argmax(test_data) # The test passes - The model has learned argmax

এটি কি সত্যিই "সর্বোচ্চ" ফাংশন শিখছে? 10,000 টি পাঁচ-উপাদান তালিকাগুলির একটি প্রশিক্ষণ সেট সম্পূর্ণ ইনপুট স্পেসের সাথে যুক্তিসঙ্গত x
চিহ্নিত করুন

2
দাবি অস্বীকার: আমি কোনও এমএল / ডিএল বিশেষজ্ঞ নই। তবে আমি নিশ্চিত যে এটির কোনও অর্থ হয় না। আমি বলতে চাইছি: না, কিছু না। আমি এটি দেখতে হিসাবে, আপনি সর্বাধিক ফাংশন শিখছেন না। আপনি প্রশিক্ষণ সেটের সর্বাধিক উপাদানগুলির সূচকগুলি শিখছেন। যদি আপনি এমন কোনও ভেক্টরকে ইনপুট করেন যাতে দুটি সংখ্যা থাকে যা উভয়ই প্রশিক্ষণের সেটের চেয়ে বড় হয় তবে এটি ব্যর্থ হতে পারে। আপনার যেখানে 5D নেই - 10 ডি-ভেক্টর রয়েছে তার ক্ষেত্রে উল্লেখ না করে। একটি লাইব্রেরিতে এমন কিছু ডেটা ছোঁড়া যা কোনওটি বেঁধে না দেয় এবং একটি নির্দিষ্ট ফলাফল দেখে বোঝা যায় না যে এটি "কাজ করে"।
মার্কো 13

আমি বলতে চাইছি, এটি "এটি কাজ করে" বোঝানোর অর্থ কী তার উপর নির্ভর করে। বিশেষত একটি সিদ্ধান্তের গাছটি কেবল কোনও পিসওয়ালা-ধ্রুবক ফাংশন তৈরি করতে চলেছে, টুকরো অক্ষযুক্ত সারিবদ্ধ আয়তক্ষেত্রাকার বাক্স being সর্বাধিক উদাহরণে, একটি শক্ত হাইপারকিউবে প্রশিক্ষণ, আসল সর্বাধিক ক্রিয়াটি কিছু ত্রিভুজাকার ধরণের অঞ্চলে ধীরে ধীরে ধীরে ধীরে থাকে। পর্যাপ্ত প্রশিক্ষণের উদাহরণ এবং গভীরতা দেওয়া, গাছ এই ত্রিভুজাকৃতির অঞ্চলগুলি স্বেচ্ছাসেবী নির্ভুলতার সাথে আনুমানিক করবে। তবে, অনেকগুলি (সর্বাধিক?) অন্যান্য মডেলের মতো, প্রশিক্ষণের নমুনার সীমার বাইরে যে কোনও পরীক্ষার নমুনাগুলি বেশ হতাশ।
বেন রেইনিগার

এটি কিছুই প্রমাণ করে না। ওপিতে "সংখ্যার তালিকায় সর্বাধিক" জিজ্ঞাসা করা হয়েছে । আপনি ধরে নিয়েছেন সেগুলি অবশ্যই ০.১ এর পরিসরে ভাসমান হতে হবে। একটি 2 (বা -1, বা 1.5) ইনপুট করার চেষ্টা করুন এবং এটি ব্যর্থ হবে।
স্মি

4

অ্যালগরিদম শিখছে

ফিড-ফরোয়ার্ড নিউরাল নেটওয়ার্ক দ্বারা গণনা হিসাবে একটি ফাংশন শেখার পরিবর্তে, নমুনা তথ্য থেকে অ্যালগোরিদম শেখার বিষয়ে একটি সম্পূর্ণ গবেষণা ডোমেন রয়েছে । উদাহরণস্বরূপ, কেউ নিউরাল ট্যুরিং মেশিনের মতো বা অন্য কোনও পদ্ধতি ব্যবহার করতে পারে যেখানে সিদ্ধান্ত গ্রহণের স্থানে মেশিন লার্নিং দ্বারা অ্যালগরিদম কার্যকর করা নিয়ন্ত্রণ করা হয়। সর্বাধিক সন্ধান, বা একটি তালিকা বাছাই করা, বা একটি তালিকা বিপরীত করা, বা একটি তালিকা ফিল্টারিংয়ের মতো খেলনা অ্যালগরিদমগুলি সাধারণত অ্যালগরিদম শেখার গবেষণার উদাহরণ হিসাবে ব্যবহৃত হয়।


2

আমি আমার উত্তর থেকে শিক্ষিত নকশাগুলি বাদ দেব। না, স্বেচ্ছাসেবী যথাযথতার সাথে স্বেচ্ছাসেবীর তালিকাগুলির সর্বাধিক কার্যকারিতা সম্পূর্ণরূপে উপস্থাপন করার জন্য বক্স মেশিন লার্নিং (এমএল) পদ্ধতির বাইরে কোনও উপায় ব্যবহার করা সম্ভব নয় । এমএল একটি ডেটা-ভিত্তিক পদ্ধতি এবং এটি স্পষ্ট যে আপনি যে অঞ্চলে কোনও ডেটা পয়েন্ট নেই সেগুলিতে আপনি কোনও ফাংশন অনুমান করতে সক্ষম হবেন না। সুতরাং, সম্ভাব্য পর্যবেক্ষণের স্থান (যা অসীম) সীমাবদ্ধ পর্যবেক্ষণ দ্বারা আচ্ছাদন করা যায় না।

আমার বিবৃতিতে নিউরাল নেটওয়ার্কগুলির জন্য সাইবেকোর ইউনিভার্সাল অ্যাক্সিমেশনেশন প্রপঞ্চের একটি তাত্ত্বিক ভিত্তি রয়েছে। আমি উইকিপিডিয়া থেকে উপপাদ্যটি উদ্ধৃত করব:

Rn

RnxR

আপনার পর্যবেক্ষণের স্থানটি যদি কমপ্যাক্ট হয় তবে আপনি সীমাবদ্ধ ডেটা সেট দিয়ে সর্বাধিক ফাংশনটি আনুমানিক করতে সক্ষম হতে পারেন। শীর্ষস্থানীয় ভোট দেওয়া উত্তরটি পরিষ্কার হয়ে গেছে যে আপনি চাকাটি পুনরায় উদ্ভাবন করবেন না!


1

এখানে আমার মন্তব্যের একটি সম্প্রসারণ। উপস্থাপনের জন্য, একেবারে @ ড্যানস্ক্লাই সঠিক যে সর্বাধিক তালিকার সন্ধানের জন্য এমএল ব্যবহার করার কোনও কারণ নেই। তবে আমি মনে করি আপনার "এটি আমাকে মেশিন লার্নিং সাধারণভাবে কী করতে পারে তার একটি বোঝাপড়া দিতে পারে" এ বিষয়টি অনুধাবন করার পক্ষে যথেষ্ট কারণ।

maxmax


maxmaxmax

n n

argmaxn(n2)δij=1(xi<xj)i<jxjxinxij<iδji+j>i(1δij)jxi>xjxi
ii


শেষ পর্যন্ত পরবর্তী প্রশ্নের জন্য: আমরা কি কোনও এনএনকে এই রাজ্যে প্রশিক্ষণ দিতে পারি? @ ড্যানস্ক্লাই আমাদের শুরু করেছে; সম্ভবত তাত্ত্বিক আর্কিটেকচার জানা আমাদের সমাধানের সাথে প্রতারণা করতে সহায়তা করতে পারে? (মনে রাখবেন যে আমরা যদি উপরে ওজনের নির্দিষ্ট সেটগুলি আনুমানিক জানতে / শিখতে পারি তবে নেট প্রকৃতপক্ষে প্রশিক্ষণের নমুনাগুলির সীমার বাইরে ভাল পারফর্ম করবে))

গিথুব / কোলাবে নোটবুক

[1,1]০.7561৮-এর সীমার বাইরে স্কোর সহ ০.৯61১ পর্যন্ত পরীক্ষার স্কোর পায়। তবে, আমি @ ড্যানস্ক্লির মতো একই পদ্ধতিতে স্কোর করছি, যা কিছুটা অসাধু বলে মনে হচ্ছে: পরিচয় ফাংশনটি এই মেট্রিকটিতে পুরোপুরি স্কোর করবে। উপরোক্ত বর্ণিত সঠিক ফিটের কাছাকাছি কিছু উপস্থিত রয়েছে কিনা তা দেখতে আমি কয়েক সহগকে ছাপিয়েছি (সত্যই নয়); এবং কয়েকটি কাঁচা আউটপুট, যা প্রস্তাব দেয় যে মডেলটি সর্বাধিক পূর্বাভাস দেওয়ার ক্ষেত্রে খুব সাহসী, অনুমানের দিক থেকে ভুল করে যে ইনপুটগুলির মধ্যে কোনওটিই সর্বোচ্চ নয়। হয়তো উদ্দেশ্যটি সংশোধন করা সাহায্য করতে পারে তবে এই মুহূর্তে আমি ইতিমধ্যে অনেক বেশি সময় দিয়েছি; যদি কেউ এই পদ্ধতির উন্নতি করতে আগ্রহী হয় তবে নির্দ্বিধায় খেলতে (যদি আপনি চান কলাব) এবং আমাকে জানান।


আমি এখনও কাগজের চারপাশে আমার মাথাটি আবৃত করি নি (যা গণিত-ভারী ... এবং আশ্চর্যজনকভাবে পুরানো ...), তবে এটি কেবল অস্পষ্ট শব্দ "নেটওয়ার্ক" হতে পারে যা এই মেলবন্ধনটি আমার মনে এনেছিল, আমি কেউ ভাবছেন যে কোনও নিউরাল নেটওয়ার্ক ডিজাইন করতে পারে যা মূলত একটি বাছাই করা নেটওয়ার্ক "
এমুলেট করে

@ মার্কো 13, নিশ্চিত, আমি মনে করি যে এই কাগজটি তুলনামূলক হিসাবে এনএন তৈরি করার জন্য বাছাই করা নেটওয়ার্কের এনএন অনুকরণ তৈরি করতে পারে। এটি কাগজের চেয়ে অনেক গভীর হবে, তবে প্রস্থটি রৈখিক আকারে সঙ্কুচিত হতে পারে?
বেন রেইনিজার

স্বীকার করা, আমি এনএন তে প্রায় গভীরভাবে জড়িত নই যেহেতু গভীর কিছু বলার দরকার ছিল। তবে you "আপনি দুটি স্তর দিয়ে সমস্ত কিছু অনুকরণ করতে পারেন" এর মতো জিনিসগুলি নিম্ন স্তরের সার্কিট ডিজাইনের ফলাফলগুলির মতো কিছুটা শোনাচ্ছে যেখানে আপনি বলে থাকেন যে আপনি "এনএএনডি গেটের দুটি স্তর সহ প্রতিটি ফাংশন বাস্তবায়ন করতে পারবেন" বা হোয়াট নোট। আমি মনে করি যে কিছু এনএন সম্প্রতি পরীক্ষা করা হয়েছে সেগুলি হ'ল 50 বছর আগে লোকেরা ইতিমধ্যে আবিষ্কার করা জিনিসগুলির অভিনব সংস্করণ, তবে সম্ভবত এটি একটি ভুল ধারণা ...
Marco13

0

হ্যাঁ, সাধারণ লিনিয়ার ন্যূনতম স্কোয়ারগুলির মতো সাধারণ মেশিন লার্নিংও এটি করতে পারে যদি আপনি কিছু প্রয়োগিত চৌর্যতা ব্যবহার করেন।

(তবে বেশিরভাগই এটি বেশ ভয়ঙ্কর ওভারকিল বিবেচনা করবেন)।

(আমি ধরে নেব যে আমরা ইনপুট ভেক্টরের সর্বাধিক অ্যাবস সন্ধান করতে চাই):

  1. f(x)=1x2
  2. f(r)Cr
  3. পূর্ণ ভেক্টর তৈরি করুনএস
  4. সমীকরণ সিস্টেম তৈরি এবং সমাধান করুন (εআমি+ +103এসটিএস+ +সিR)-1(103এসটি)
  5. আসুন রেজাল্ট ভেক্টর বলি পি, এটি একটি সম্ভাব্যতা পরিমাপ (যোগফল 1 থেকে 1) হবে, উদাহরণস্বরূপ, আমরা এটিকে অবৈধভাবে বাড়িয়ে তুলতে পারি
    পিআমি=পিআমিΣ|পিআমি|
  6. সূচক ভেক্টর এবং রাউন্ডের সাহায্যে কেবল স্কেলার পণ্য গণনা করুন।
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.