1
0
mirror of https://github.com/newnius/YAO-optimizer.git synced 2025-06-06 06:41:55 +00:00
This commit is contained in:
Newnius 2020-07-01 11:42:52 +08:00
parent 4fe3b29cda
commit 4fcc033267
2 changed files with 40 additions and 40 deletions

View File

@ -1,11 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ChangeListManager">
<list default="true" id="0aedafd8-e57e-462a-beda-65af0b91f3df" name="Default Changelist" comment="">
<change beforePath="$PROJECT_DIR$/compare.sh" beforeDir="false" afterPath="$PROJECT_DIR$/compare.sh" afterDir="false" />
<change beforePath="$PROJECT_DIR$/rf.py" beforeDir="false" afterPath="$PROJECT_DIR$/rf.py" afterDir="false" />
<change beforePath="$PROJECT_DIR$/serve.py" beforeDir="false" afterPath="$PROJECT_DIR$/serve.py" afterDir="false" />
</list>
<list default="true" id="0aedafd8-e57e-462a-beda-65af0b91f3df" name="Default Changelist" comment="" />
<ignored path="$PROJECT_DIR$/out/" />
<option name="EXCLUDED_CONVERTED_TO_IGNORED" value="true" />
<option name="SHOW_DIALOG" value="false" />
@ -96,8 +92,8 @@
<file pinned="false" current-in-tab="true">
<entry file="file://$PROJECT_DIR$/rf.py">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="3495">
<caret line="233" column="15" lean-forward="true" selection-start-line="233" selection-start-column="15" selection-end-line="233" selection-end-column="15" />
<state relative-caret-position="210">
<caret line="14" lean-forward="true" selection-start-line="14" selection-end-line="14" />
<folding>
<element signature="e#21#39#0" expanded="true" />
<marker date="1593568816783" expanded="true" signature="1440:1442" ph="..." />
@ -205,7 +201,7 @@
<component name="PropertiesComponent">
<property name="WebServerToolWindowFactoryState" value="false" />
<property name="aspect.path.notification.shown" value="true" />
<property name="com.android.tools.idea.instantapp.provision.ProvisionBeforeRunTaskProvider.myTimeStamp" value="1593571328554" />
<property name="com.android.tools.idea.instantapp.provision.ProvisionBeforeRunTaskProvider.myTimeStamp" value="1593574536110" />
<property name="go.gopath.indexing.explicitly.defined" value="true" />
<property name="nodejs_interpreter_path.stuck_in_default_project" value="undefined stuck path" />
<property name="nodejs_npm_path_reset_for_default_project" value="true" />
@ -250,25 +246,26 @@
<workItem from="1588319878551" duration="41219000" />
<workItem from="1588426002721" duration="336000" />
<workItem from="1588427782140" duration="326000" />
<workItem from="1592809729651" duration="25279000" />
<workItem from="1592809729651" duration="26246000" />
</task>
<servers />
</component>
<component name="TimeTrackingManager">
<option name="totallyTimeSpent" value="84133000" />
<option name="totallyTimeSpent" value="85100000" />
</component>
<component name="ToolWindowManager">
<frame x="0" y="0" width="1280" height="800" extended-state="0" />
<editor active="true" />
<layout>
<window_info id="Designer" order="0" />
<window_info id="UI Designer" order="1" />
<window_info id="Capture Tool" order="2" />
<window_info id="Favorites" order="3" side_tool="true" />
<window_info id="Image Layers" order="4" />
<window_info active="true" content_ui="combo" id="Project" order="5" sideWeight="0.49898168" visible="true" weight="0.2657512" />
<window_info content_ui="combo" id="Project" order="5" sideWeight="0.49898168" visible="true" weight="0.2657512" />
<window_info id="Structure" order="6" sideWeight="0.50101835" side_tool="true" weight="0.24959612" />
<window_info anchor="bottom" id="Version Control" order="0" />
<window_info anchor="bottom" id="Terminal" order="1" visible="true" weight="0.32739726" />
<window_info active="true" anchor="bottom" id="Terminal" order="1" visible="true" weight="0.32739726" />
<window_info anchor="bottom" id="Event Log" order="2" side_tool="true" />
<window_info anchor="bottom" id="Database Changes" order="3" show_stripe_button="false" />
<window_info anchor="bottom" id="Docker" order="4" show_stripe_button="false" />
@ -435,8 +432,8 @@
</entry>
<entry file="file://$PROJECT_DIR$/rf.py">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="3495">
<caret line="233" column="15" lean-forward="true" selection-start-line="233" selection-start-column="15" selection-end-line="233" selection-end-column="15" />
<state relative-caret-position="210">
<caret line="14" lean-forward="true" selection-start-line="14" selection-end-line="14" />
<folding>
<element signature="e#21#39#0" expanded="true" />
<marker date="1593568816783" expanded="true" signature="1440:1442" ph="..." />

View File

@ -34,35 +34,38 @@ def train_models(job):
if job not in models or 'features' not in models[job]:
return
models[job]['lock'].acquire()
try:
for label in models[job]['labels']:
trainfile = './data/' + job + '_' + label + '.csv'
traindata = pd.read_csv(trainfile)
feature_data = traindata.iloc[:, 1:-1]
label_data = traindata.iloc[:, -1]
for label in models[job]['labels']:
trainfile = './data/' + job + '_' + label + '.csv'
traindata = pd.read_csv(trainfile)
feature_data = traindata.iloc[:, 1:-1]
label_data = traindata.iloc[:, -1]
X_train, X_test, y_train, y_test = train_test_split(feature_data, label_data, test_size=0.01)
params = {
'n_estimators': 70,
'max_depth': 13,
'min_samples_split': 10,
'min_samples_leaf': 5, # 10
'max_features': len(models[job]['features']) - 1 # 7
}
# print(params)
model = RandomForestRegressor(**params)
model.fit(X_train, y_train)
X_train, X_test, y_train, y_test = train_test_split(feature_data, label_data, test_size=0.01)
params = {
'n_estimators': 70,
'max_depth': 13,
'min_samples_split': 10,
'min_samples_leaf': 5, # 10
'max_features': len(models[job]['features']) - 1 # 7
}
# print(params)
model = RandomForestRegressor(**params)
model.fit(X_train, y_train)
# save the model to disk
modelname = './data/' + job + '_' + label + '.sav'
pickle.dump(model, open(modelname, 'wb'))
# save the model to disk
modelname = './data/' + job + '_' + label + '.sav'
pickle.dump(model, open(modelname, 'wb'))
# 对测试集进行预测
y_pred = model.predict(X_test)
# 计算准确率
MSE = mean_squared_error(y_test, y_pred)
RMSE = np.sqrt(MSE)
print('RMSE of {}:{} is {}'.format(job, label, str(RMSE)))
# 对测试集进行预测
y_pred = model.predict(X_test)
# 计算准确率
MSE = mean_squared_error(y_test, y_pred)
RMSE = np.sqrt(MSE)
print('RMSE of {}:{} is {}'.format(job, label, str(RMSE)))
except Exception as e:
print(traceback.format_exc())
print(str(e))
models[job]['lock'].release()