楼主: lxy444
1167 2

[程序分享] python 机器学习 生成双曲型数据 [推广有奖]

  • 0关注
  • 7粉丝

已卖:8286份资源

教授

1%

还不是VIP/贵宾

-

威望
0
论坛币
49412 个
通用积分
481.9593
学术水平
24 点
热心指数
27 点
信用等级
19 点
经验
238969 点
帖子
352
精华
0
在线时间
1846 小时
注册时间
2014-2-12
最后登录
2026-2-11

楼主
lxy444 学生认证  发表于 2017-4-14 14:55:15 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
有时机器学习中需要生成不同形状的训练数据来测试算法性能,下面的代码可以生成一个决策边界为双曲线的训练数据,并用 Matplotlib 画图展示出来:
  1. from __future__ import division
  2. import numpy as np
  3. import pandas as pd
  4. import matplotlib.pyplot as plt

  5. np.random.seed(0)

  6. x = np.linspace(1, 6, 200)
  7. t = 4 / x

  8. n = 50
  9. x11 = np.linspace(1, 6, n)
  10. x12 = 4 / x11 + abs(np.random.normal(0.3, 0.1, n))

  11. x21 = np.linspace(1.2, 6, n)
  12. x22 = 4 / x21 - abs(np.random.normal(0.3, 0.1, n))

  13. plt.figure()
  14. plt.plot(x, t, color = "green", linewidth = 2.5, linestyle = "-")
  15. plt.scatter(x11, x12, c = 'blue', marker = 'o')
  16. plt.scatter(x21, x22, c = 'red', marker = 'o')


  17. plt.xlim(0, 7)
  18. plt.ylim(0, 5)
  19. plt.xlabel("$x_{1}[        DISCUZ_CODE_0        ]quot;, fontsize = 20)
  20. plt.ylabel("$x_{2}[        DISCUZ_CODE_0        ]quot;, fontsize = 20)
  21. plt.show()
复制代码


效果图如下:
figure_1.png

然后可以把数据导出来:
  1. x1 = np.vstack((x11, x12)).T
  2. x2 = np.vstack((x21, x22)).T

  3. X = np.vstack((x1, x2))
  4. y = np.zeros(len(X))
  5. y[0:50] = 1
  6. y = y.reshape(len(y), 1)
  7. data = np.hstack((X, y))

  8. np.savetxt("1.txt", data, delimiter = ',', fmt = '%.4f')
复制代码


只是一个自己编写的简单的示例,与大家分享一下!


二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:python 机器学习 决策边界

已有 1 人评分经验 收起 理由
残阳_等待 + 60 精彩帖子

总评分: 经验 + 60   查看全部评分

沙发
lxy444 学生认证  发表于 2017-4-14 20:46:56
自顶一下,欢迎和大家讨论!

藤椅
xuesong_tang 发表于 2017-4-16 14:18:40
看起来很牛逼的样子

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2026-2-13 17:12