style: main function

This commit is contained in:
Ting-Jun Wang 2023-11-15 15:51:07 +08:00
parent 2e5fcb284f
commit a6b88f3f9b
Signed by: snsd0805
GPG Key ID: D175E969960C4B16

View File

@ -14,7 +14,7 @@ def read_data(filename):
y.append(int(numbers[-1])) y.append(int(numbers[-1]))
return x, y return x, y
def format(features): def form(features):
''' '''
change to LIBSVM format change to LIBSVM format
''' '''
@ -33,13 +33,14 @@ def error(gt, pred):
err = (err+1) if gt[index]!=pred[index] else err err = (err+1) if gt[index]!=pred[index] else err
return err/len(gt) return err/len(gt)
x, y = read_data(FILENAME) if __name__ == '__main__':
x = format(x) x, y = read_data(FILENAME)
prob = problem(y, x) x = form(x)
lambda_powers = [-6, -4, -2, 0, 2] prob = problem(y, x)
lambda_powers = [-6, -4, -2, 0, 2]
results = [] results = []
for lambda_power in lambda_powers: for lambda_power in lambda_powers:
lambda_value = 10 ** lambda_power lambda_value = 10 ** lambda_power
param_C = 1/(2*lambda_value) param_C = 1/(2*lambda_value)
param = parameter('-s 0 -c {} -e 0.000001 -q'.format(param_C)) param = parameter('-s 0 -c {} -e 0.000001 -q'.format(param_C))
@ -50,13 +51,14 @@ for lambda_power in lambda_powers:
print() print()
results.append({'lambda': lambda_power, 'error': err}) results.append({'lambda': lambda_power, 'error': err})
ans, min_err = None, 1 ans, min_err = None, 1
for i in results: for i in results:
print(i['error'])
if i['error'] <= min_err: if i['error'] <= min_err:
min_err = i['error'] min_err = i['error']
ans = i ans = i
print("the largest lambda: {}, log_10(lambda*): {}".format(10**ans['lambda'], ans['lambda'])) print("the largest lambda: {}, log_10(lambda*): {}".format(10**ans['lambda'], ans['lambda']))