下面是StockRanker的源码(基于lightGBM的排序学习):
import numpy as np import pandas as pd from sklearn.model_selection import train_test_split import lightgbm as lgb from lightgbm import log_evaluation, early_stopping callbacks = [log_evaluation(period=100), early_stopping(stopping_rounds=50)] from engine.models.model_base import ModelBase class LGBRanker(ModelBase): def __init__(self, name, load_model, feature_cols=None): super(LGBRanker, self).__init__(name, load_model) self.feature_cols = feature_cols self.label_col = 'label' def _prepare_groups(self, df): df['day'] = df.index group = df.groupby('day')['day'].count() # print(group.values) return group.values def predict(self, data): data = data.copy(deep=True) if self.feature_cols: data = data[self.feature_cols] try: pred = self.ranker.predict(data) except: print('error') pred = [None for _ in range(len(data))] return pred return pred def train(self, df: pd.DataFrame, split_date: str = None): if split_date: df_train = df[df.index < split_date] df_val = df[df.index >= split_date] else: df_train = df df_val = df query_train = self._prepare_groups(df_train.copy(deep=True)) query_val = self._prepare_groups(df_val.copy(deep=True)) ranker = lgb.LGBMRanker() ranker.fit(df_train[self.feature_cols], df_train[self.label_col], group=query_train, eval_set=[(df_val[self.feature_cols], df_val[self.label_col])], eval_group=[query_val], eval_at=[1, 2, 5], callbacks=callbacks) self.ranker = ranker print(ranker.n_features_) print(ranker.feature_importances_) print(ranker.feature_name_) score, names = zip(*sorted(zip(ranker.feature_importances_, ranker.feature_name_), reverse=True)) print(score) print(names)
吾日三省吾身
这两天可能写代码“用力过猛”,导致眼睛有点不舒服。
身体的反应,是一个很好的提醒,也让我“停”下来思考。
看电子书改成听书。听了两本书,都是于心理学,人生与死亡的话题。
当死亡拿出来讨论的时候,人生的格局往往会打开。
第一本书《生命的礼物》,这个礼物,它指的就是死亡。这是每个人的必修课。我们需要面对亲朋好友的离去,直至我们自己也要面对这个课题。
向死而生,人生是一个体验的单程。
另一本书《活出清醒的自我》。让你不再焦虑,愤怒,活出平静和喜乐,专注当下。
人生中,通常有两个情绪困扰,一是恐惧,担心不好的事情发生;二是焦虑,担心想要的迟迟不来。
前者的根源是外界的不确定性,内在的安全感的诉求;后者的根源在于欲望,得不到满足的欲望。
先说恐惧,我们要向内求,让心灵中立,以旁观者的态度,“冷冷”地审视,观察,体验发生的一切。——所谓“允许一切发生”的生活态度。
我们所觉知的,所谓“问题”,可能占不到5%,而且这些问题,99%不会发生。而另外95%我们压根没有意识到,里面有1%,可能会发生。——从概率上讲,你恐惧错了方向。
另外,即便发生了,99%你也能从容应对,就是增加了生命的阅历和谈资罢了。即便像蔡磊遇上的这种不治之症,让他的人生直接180度调头,甚至快要终结,他也留下了《相信》的力量,留下的企业家精神的光辉。
面对未来,不是说躺平,完全放任,无为而治。
就是做好当下能做好的所有事情,然后就不必多想了。像英语考试里的阅读理解,不能过度延伸。
——尽人事,听天命,允许一切发生。
关于第二种焦虑——欲望。一定程度的欲望是好的,这是人类文明向上的最原始的动力。关于欲望,允许想要的可能不发生,或者不那么达到预期(允许想要的东西可能不发生)。
你要如同能得到一样去努力,如同不能得到那般去生活。
做好当下应该做的事情,但行好事,莫问前程。
发布者:股市刺客,转载请注明出处:https://www.95sca.cn/archives/103786
站内所有文章皆来自网络转载或读者投稿,请勿用于商业用途。如有侵权、不妥之处,请联系站长并出示版权证明以便删除。敬请谅解!