# NameClassifier **Repository Path**: humiaoli/name-classifier ## Basic Information - **Project Name**: NameClassifier - **Description**: 人名分类器 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 0 - **Created**: 2025-10-29 - **Last Updated**: 2025-10-31 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 人名分类器 ## 项目背景 本项目旨在通过模型对输入的人名进行分类,以预测其最可能所属的国家。这种预测在国际化公司的业务中具有重要意义,例如在用户注册过程中,可以根据用户填写的名字推荐可能的国家或地区选项、国旗,以及限制手机号码位数等。 ## 数据说明 - 数据格式:每一行包含一个人名和一个国家名,两者之间用制表符(tab)分隔。 - 数据集涵盖了18个不同的国家。 ## 模型说明 项目中提供了以下三种模型的训练结果: - RNN 模型 - LSTM 模型 - GRU 模型 训练好的模型参数保存在 `model` 目录中,分别为: - `my_rnn_model.bin` - `my_lstm_model.bin` - `my_gru_model.bin` ## 项目结构 - `data/name_classfication.txt`: 数据集文件。 - `img/`: 包含模型训练过程中的可视化结果(准确率、损失、训练时间等)。 - `main.ipynb`: 主程序文件,用于训练模型和进行预测。 - `model/`: 存放训练好的模型文件。 - `requirements.txt`: 项目依赖文件。 ## 部分结果 ![Accuracy of different models](./img/Accuracy of different models.png) ![Loss of different models](./img/Loss of different models.png) ![Training time of different models](./img/Training time of different models.png) ## 使用方法 1. 安装依赖: ```bash pip install -r requirements.txt ``` 2. 运行主程序: ```bash jupyter notebook main.ipynb ``` 3. 根据需要选择模型进行训练或预测。 ## 项目地址 [https://gitee.com/humiaoli/name-classifier](https://gitee.com/humiaoli/name-classifier)