2023年「達觀杯」覆盤 任務3

2021-09-17 18:26:55 字數 1633 閱讀 8146

二、python實現

skip-gram模型的最大特點是:由當前詞**上下文詞

skip-gram模型的訓練過程如下圖所示:

本文使用gensim庫中的word2vec()函式。

資料預處理請看任務1.

#匯入工具包

import pandas as pd

import gensim

import pickle

import numpy as np

import csv,sys

#定義輔助函式

def sentence2list(sentence):

return sentence.strip().split()

#構造資料集

print("準備資料................ ")

sentences = sentences_train + sentences_test

print("準備資料完成! ")

#訓練模型

#定義初始引數

vector_size = 100

#開始訓練

print("開始訓練................ ")

model = gensim.models.word2vec(sentences=sentences, size=vector_size, window=5, min_count=5, workers=8, sg=0, iter=5)

print("訓練完成! ")

#儲存訓練結果

print(" 儲存訓練結果........... ")

wv = model.wv

vocab_list = wv.index2word

word_idx_dict = {}

for idx, word in enumerate(vocab_list):

word_idx_dict[word] = idx

vectors_arr = wv.vectors

vectors_arr = np.concatenate((np.zeros(vector_size)[np.newaxis, :], vectors_arr), axis=0)#第0位置的vector為'unk'的vector

f_wordidx = open(feature_path + 'word_seg_word_idx_dict.pkl', 'wb')

f_vectors = open(feature_path + 'word_seg_vectors_arr.pkl', 'wb')

pickle.dump(word_idx_dict, f_wordidx)

pickle.dump(vectors_arr, f_vectors)

f_wordidx.close()

f_vectors.close()

print("訓練結果已儲存到該目錄下! ")

1.

2.

2023年, 我的前端面試覆盤

這篇文章簡單總結下2018年內我的一些前端面試經歷,在這簡單分享一下,希望對大家有所啟發。樓主在深圳,畢業兩年。面的主要是深圳的幾家公司。樓主在準備面試前,想著複習一下,但是前端的範圍實在太大,後來決定找兩個肉雞公司試一下水,面試之後,大概心裡有個底。最後樓主也拿到了lazada,shopee 等幾...

達觀杯文字處理任務

達觀杯文字處理任務 達觀杯文字處理小demo如下圖,訓練資料與測試資料有2g多,在pycharm裡執行demo時一直報錯process finished with exit code 1073740940 0xc0000374 解決辦法 配置檔案 邏輯回歸 from sklearn.linear m...

2019 9 21 任務 完成情況 覆盤

是從現在 下午三點左右開始正式學習的。目標 複習完計算機組成原理 未完成 完成一半多 前端那本書看50頁 完成了0頁。練習注意力 半小時番茄鐘式的 沒進行好 只乙個番茄鐘 第乙個番茄鐘還困了。趴下睡了 突然補充 今天突然想起來乙個做事情的問題。我是學生會的,我的部長讓我做一件事情,那麼那個時候我挺累...