Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in
Toggle navigation
G
gm_strategy_cvr
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
rank
gm_strategy_cvr
Commits
2801c03a
Commit
2801c03a
authored
Jul 30, 2020
by
赵威
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
predict tractate
parent
a57d5bcb
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
24 additions
and
19 deletions
+24
-19
tractate_model.py
src/models/esmm/tractate_model.py
+17
-18
train_tractate.py
src/train_tractate.py
+7
-1
No files found.
src/models/esmm/tractate_model.py
View file @
2801c03a
...
...
@@ -5,38 +5,37 @@ import tensorflow as tf
from
.fe.tractate_fe
import
device_tractate_fe
from
.model
import
_bytes_feature
,
_float_feature
,
_int64_feature
_int_columns
=
[
"active_type"
,
"active_days"
,
"card_id"
,
"is_pure_author"
,
"is_have_reply"
,
"is_have_pure_reply"
,
"content_level"
,
"reply_num"
,
"reply_pure_num"
]
_float_columns
=
[
"one_ctr"
,
"three_ctr"
,
"seven_ctr"
,
"fifteen_ctr"
,
"thirty_ctr"
,
"sixty_ctr"
,
"ninety_ctr"
,
"history_ctr"
]
_categorical_columns
=
[
"device_id"
,
"past_consume_ability_history"
,
"potential_consume_ability_history"
,
"price_sensitive_history"
,
"show_tag_id"
,
"device_fd"
,
"device_sd"
,
"device_fs"
,
"device_ss"
,
"device_fp"
,
"device_sp"
,
"device_p"
,
"content_fd"
,
"content_sd"
,
"content_fs"
,
"content_ss"
,
"content_fp"
,
"content_sp"
,
"content_p"
,
"fd1"
,
"fd2"
,
"fd3"
,
"sd1"
,
"sd2"
,
"sd3"
,
"fs1"
,
"fs2"
,
"fs3"
,
"ss1"
,
"ss2"
,
"ss3"
,
"fp1"
,
"fp2"
,
"fp3"
,
"sp1"
,
"sp2"
,
"sp3"
,
"p1"
,
"p2"
,
"p3"
,
"click_tractate_id1"
,
"click_tractate_id2"
,
"click_tractate_id3"
,
"click_tractate_id4"
,
"click_tractate_id5"
]
PREDICTION_ALL_COLUMNS
=
_int_columns
+
_float_columns
+
_categorical_columns
def
model_predict_tractate
(
device_id
,
tractate_ids
,
device_dict
,
tractate_dict
,
predict_fn
):
try
:
time_1
=
timeit
.
default_timer
()
device_info
,
tractate_lst
,
tractate_ids_res
=
device_tractate_fe
(
device_id
,
tractate_ids
,
device_dict
,
tractate_dict
)
print
(
"predict check: "
+
str
(
len
(
tractate_lst
))
+
" "
+
str
(
len
(
tractate_ids_res
)))
# TODO
int_columns
=
[
"active_type"
,
"active_days"
,
"card_id"
,
"is_pure_author"
,
"is_have_reply"
,
"is_have_pure_reply"
,
"content_level"
,
"reply_num"
,
"reply_pure_num"
]
float_columns
=
[
"one_ctr"
,
"three_ctr"
,
"seven_ctr"
,
"fifteen_ctr"
,
"thirty_ctr"
,
"sixty_ctr"
,
"ninety_ctr"
,
"history_ctr"
]
str_columns
=
[
"device_id"
,
"past_consume_ability_history"
,
"potential_consume_ability_history"
,
"price_sensitive_history"
,
"show_tag_id"
,
"device_fd"
,
"device_sd"
,
"device_fs"
,
"device_ss"
,
"device_fp"
,
"device_sp"
,
"device_p"
,
"content_fd"
,
"content_sd"
,
"content_fs"
,
"content_ss"
,
"content_fp"
,
"content_sp"
,
"content_p"
,
"fd1"
,
"fd2"
,
"fd3"
,
"sd1"
,
"sd2"
,
"sd3"
,
"fs1"
,
"fs2"
,
"fs3"
,
"ss1"
,
"ss2"
,
"ss3"
,
"fp1"
,
"fp2"
,
"fp3"
,
"sp1"
,
"sp2"
,
"sp3"
,
"p1"
,
"p2"
,
"p3"
,
"click_tractate_id1"
,
"click_tractate_id2"
,
"click_tractate_id3"
,
"click_tractate_id4"
,
"click_tractate_id5"
]
examples
=
[]
for
tractate_info
in
tractate_lst
:
tmp
=
{}
tmp
.
update
(
device_info
)
tmp
.
update
(
tractate_info
)
features
=
{}
for
col
in
int_columns
:
for
col
in
_
int_columns
:
features
[
col
]
=
_int64_feature
(
int
(
tmp
[
col
]))
for
col
in
float_columns
:
for
col
in
_
float_columns
:
features
[
col
]
=
_float_feature
(
float
(
tmp
[
col
]))
for
col
in
str
_columns
:
for
col
in
_categorical
_columns
:
features
[
col
]
=
_bytes_feature
(
str
(
tmp
[
col
])
.
encode
(
encoding
=
"utf-8"
))
example
=
tf
.
train
.
Example
(
features
=
tf
.
train
.
Features
(
feature
=
features
))
examples
.
append
(
example
.
SerializeToString
())
...
...
src/train_tractate.py
View file @
2801c03a
...
...
@@ -12,7 +12,7 @@ from sklearn.model_selection import train_test_split
from
models.esmm.fe
import
click_fe
,
device_fe
,
fe
,
tractate_fe
from
models.esmm.input_fn
import
esmm_input_fn
from
models.esmm.model
import
esmm_model_fn
,
model_export
from
models.esmm.tractate_model
import
model_predict_tractate
from
models.esmm.tractate_model
import
(
PREDICTION_ALL_COLUMNS
,
model_predict_tractate
)
def
main
():
...
...
@@ -58,6 +58,12 @@ def main():
# save_path = model_export(model, all_features, model_export_path)
# print("save to: " + save_path)
tractate_train_columns
=
set
(
tractate_fe
.
INT_COLUMNS
+
tractate_fe
.
FLOAT_COLUMNS
+
tractate_fe
.
CATEGORICAL_COLUMNS
)
tractate_predict_columns
=
set
(
PREDICTION_ALL_COLUMNS
)
print
(
tractate_predict_columns
.
difference
(
tractate_train_columns
))
print
(
tractate_train_columns
.
difference
(
tractate_predict_columns
))
assert
tractate_predict_columns
==
tractate_train_columns
print
(
"============================================================"
)
# # save_path = str(Path("~/data/models/tractate/1596089465").expanduser()) # local
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment