YouTube-Like-predictor, 使用机器学习的YouTube计数

分享于 

6分钟阅读

GitHub

  繁體
YouTube Like Count Predictions using Machine Learning
  • 源代码名称:YouTube-Like-predictor
  • 源代码网址:http://www.github.com/ayush1997/YouTube-Like-predictor
  • YouTube-Like-predictor源代码文档
  • YouTube-Like-predictor源代码下载
  • Git URL:
    git://www.github.com/ayush1997/YouTube-Like-predictor.git
    Git Clone代码到本地:
    git clone http://www.github.com/ayush1997/YouTube-Like-predictor
    Subversion代码到本地:
    $ svn co --depth empty http://www.github.com/ayush1997/YouTube-Like-predictor
    Checked out revision 1.
    $ cd repo
    $ svn up trunk
    

    YouTube类似计数预测器

    本文采用了 prediction.A 随机林模型的一种工具,用于大量 ~3,50,000 videos.Feature 工程。数据清理。数据选择和它的他技术。

    报告

    Report.pdf 包含了用于这里任务的不同步骤和技术的详细说明。

    使用的命令行工具

    如何运行:

    repo

    $ git clone https://github.com/ayush1997/YouTube-Like-predictor.git
    $ cd PS17_Ayush_Singh

    创建新虚拟环境

    $ sudo pip install virtualenv
    $ virtualenv venv
    $ source venv/bin/activate
    $ pip install -r requirements.txt
     ```

    预测

    获得预测结果的方法有两种。

    3.1.对模型进行培训并运行预测

    $ cd model
    $ python train_model.py

    这将在同一文件夹中保存一个 model-final 文件,火车需要花费分钟的~18 然后运行

    $ python predict.py <list of video ids>

    例如: $ python predict.py dOyJqGtP-wU ASO_zypdnsQ wEduiMyl0ko

    3.2 从pretrained模型

    已经从链接服务器上上传了一个pretrained模型,该模型来自于 dropbox.Download。

    解压 model 文件夹中的model-final 文件。

    $ cd model
    $ python predict.py <list of video ids>

    例如: $ python predict.py vid1 vid2 vid3]

    注意:列表在运行时最多可以包含个视频 id。

    代码详细信息

    下面是 repo 中代码文件/文件夹的简要说明。

    数据/

    这个文件夹包含了使用收费的Youtube API和populatin来获取数据的脚本。

    $ cd data

    get_IDS.py

    脚本使用Youtube搜索API提取最近收费的7 years(2010-2016)的视频 id。它提供了大约。个视频 IDs。 为每个类别收费 ,000 视频 id,并将它们存储在不同类别的Pickle文件。

    $ python predict.py <list of video ids>

    scrape_video.py

    脚本使用 get_IDS.py 保存的视频 id,并使用 Youtube API进一步提取不同的视频相关属性,并将数据字典保存为pickle格式。

    $ python scrape_video.py

    scrape_channel.py

    脚本用于进一步收集视频 dataset.It 中所有频道的数据,视频利用存储的数据提取channelIds数据。

    $ python scrape_channel.py

    scrape_social.py

    这个脚本用来抓取社交链接。

    $ python scrape_social.py

    注意:对于不同属性提取的数据量很大,提取在不同级别上进行提取是不可行的,因此可以进行数据收集,从而使调试变得稍微混乱。

    笔记本/笔记本

    这个文件夹包含了包含实现不同数据提取和任务的实现的ipython笔记本,以及数据清理和处理。

    $ jupyter notebook

    FeatureEngineering.ipynb

    笔记本具有生成新派生特性的实现。

    DataProcessing.ipynb

    这里笔记本包含数据清理和编码过程的数据处理实现。

    注释: 在所有处理都被上传到 dataset/data.csv 后生成的最终的数据。 dataset/data_final.csv 有用于训练模型的数据。

    模型/

    这里文件夹包含用于训练。调整模型和获取预测结果的脚本。

    model_grid.py

    脚本使用加权网格搜索和交叉验证,为估计器生成调优参数。

    $ python model_grid.py

    train_model.py

    脚本用于训练训练数据的模型,因为在随机森林中,样本的采样量为 ,每个trainig进程的结果都会随。

    $ python train_model.py

    predict.py

    这个脚本返回 prediction和差和错误率

    $ cd model
    $ python predict.py <list of video ids>

    例如: $ python predict.py [vid1,vid2,vid3]

    问题

    在酸洗过程中,经常会出现一个非常常见的问题,有时会导致信息丢失,每次结果不同。

    报告

    12345678


    mac  PRE  learn  MACH  Youtube  机器学习