¼ÐÃD:
VBA Ãþ¯«¸g¹Bºâ ¨D§U
[¥´¦L¥»¶]
§@ªÌ:
qwertyuio111
®É¶¡:
2015-11-20 10:24
¼ÐÃD:
VBA Ãþ¯«¸g¹Bºâ ¨D§U
¥»©«³Ì«á¥Ñ qwertyuio111 ©ó 2015-11-20 10:26 ½s¿è
¦U¦ì °ª¤â ±z¦n
¤p§Ì³Ìªñ¦b¾Ç®Õ¡Aªì¾ÇExcel ¢ä¢Ð¢Ï¨Ï¥Î¦bÃþ¯«¸gªº¹Bºâ¼ÒÀÀ¤W¡C
¦¹Ãþ¯«¸g¼ÒÀÀ¬O¥H ¡u5 x 8 x 5 x 2 ¡vªº¤è¦¡¶i¦æ¡A¿é¤J5Ó¤wª¾È¡A¦A³z¹L¨âÓÁôÂüh¡]8,5¡^¹Bºâ¡A¨D±o2ӥؼÐÈ¿é¥X¡C
³z¹L¤wª¾ªº¼Æ¾Ú¡]¿é¤JÈ¡A¥Ø¼ÐÈ¡^¡A¦]¦¹·|¨D±o 90Ó ¼ÒÀÀ´`Àô²£¥Í¤§·s¢å¡C
¦¹µ{¦¡½X ¹B§@¤@¶}©l¬O¥H ²£¥Í¤@²Õ¶Ã¼Æ¢å ¤§«á©T©w¡A¦A¿é¤JȤΥؼÐÈ«á¡A³z¹L¹Bºâ °j°é¤½¦¡ ¨D±o¼ÒÀÀ«áªº·s¢å¡C
µo²{°j°éµ{¦¡½X¹L»P¤¾ªø¡A¸g¬d¸ê®Æµo²{¨Ï¥Î¡u°}¦C¹Bºâ¡v©Î³\¥i¦æ¡A¦ý©l²×µLªk¥¿½Tªº¼g¥X¨Ó¡C
©|¥B«½Æ©Êªº¦b¸ê®Æªí¤¤¡A¡u¿é¤J¤ÎŪ¨ú Àx¦s®æªºÈ¡v¡A³y¦¨°j°é¹Bºâªº½wºC¡A¤Î¼È¦s°O¾ÐÅ骺¤£¨¬§Î¦¨·í¾÷¡C
¨D§U¦U¦ì°ª¤â ¯à§_À°§U¤Î±Ð¾É¤p§Ì ¸Ñ¨M³o¤è±ªº°ÝÃD¡C
¦b¦¹©^¤W Excel ¸ê®Æªí ¨D§U ÁÂÁ ¡]¦]µLªkª½±µ¤W¶Ç excelÀÉ®× ©Ò¥H§Q¥Î google ¶³ºÝ¡^
Excel Ãþ¯«¸g¹Bºâ¼ÒÀÀÀÉ®×
§@ªÌ:
stillfish00
®É¶¡:
2015-11-20 14:31
¦^´_
1#
qwertyuio111
¬°¤°»ò§AªºWn³]p¦¨9X10ªº°}¦C
¦Ó¤£¬O 5x8¡B8x5¡B5x2¡A¤TÓ°}¦C
§@ªÌ:
qwertyuio111
®É¶¡:
2015-11-20 22:28
¦^´_
2#
stillfish00
°Ú°Ú¡A¬OÀ³¸Ó¨º¼Ë¤l°µ¤~¹ï¶Ü¡H
·íªì¦]¬°·Q¨ì·|³z¹L«e¤@ÓÁôÂühªº¡u»~®tÈ¡v¡A«·s¹Bºâ ·sªº¢å²£¥Í¡C
©Ò¥H¨S¦³¦Ò¼{¨ì§â°}¦C©î¶}¹Bºâªº¹Lµ{¡C
¨º§ÚÀ³¸Ón«ç»ò°µ¤~¥¿½T©O¡H
¬O¤£¬OÀ³¸Ó§â °j°é©î¦¨ ¤TÓ³¡¤À¨Ó¼g ³o¼Ë¤ñ¸û§´·í¡H
§Ú·Q¸Ñ¨M «½Æ Ū¨ú ¤Î ¿é¤J ¦bÀx¦s®æ¤Wªº¨BÆJ¡A¦]¬°·|³y¦¨¹Bºâ¤Wªº½wºC...
¥ý ÁÂÁ¤j¤j «ü¾É
§@ªÌ:
qwertyuio111
®É¶¡:
2015-11-21 19:29
¼ÐÃD:
°j°é¹Bºâµ{¦¡½X °O¾ÐÅéÄÀ©ñ¡]¨D¸Ñ¡^
¥»©«³Ì«á¥Ñ qwertyuio111 ©ó 2015-11-21 19:31 ½s¿è
¤j®a¦n §Ú¦³Ó°j°é¼ÒÀÀ¹Bºâªº°ÝÃD
·|¦³¦Û¦æ¿é¤J¹Bºâ¦¸¼Æ¡]Worksheets("Sheet1").Range("J9")¡^
¦]¬°«½Æ ¡uŪ¨ú¡v¤Î¡u¿é¤J¡v¼ÆÈªº¹Lµ{¡A³y¦¨°O¾ÐÅ餣¨¬¡C
½Ð°Ý n¼W¥[þÓµ{¦¡½X©Î§ï¦¨«ç»ò¼Ëªº¼gªk·|¤ñ¸û¦n©O¡H
¤~¯à°÷¸Ñ¨M °O¾ÐÅ餣¨¬ªº°ÝÃD§r¡H
¥H¤U¬°³¡¤Àµ{¦¡½X
For i = 2 To Worksheets("Sheet1").Range("J9")
intA = Worksheets("Sheet1").Range("B1")
intB = Worksheets("Sheet1").Range("B2")
intc = Worksheets("Sheet1").Range("B3")
intD = Worksheets("Sheet1").Range("B4")
intE = Worksheets("Sheet1").Range("B5")
tarn = Worksheets("Sheet1").Range("L6")
taro = Worksheets("Sheet1").Range("L7")
neww1 = Worksheets("Sheet1").Range("A24")
neww2 = Worksheets("Sheet1").Range("A25")
neww3 = Worksheets("Sheet1").Range("A26")
neww4 = Worksheets("Sheet1").Range("A27")
neww5 = Worksheets("Sheet1").Range("A28")
neww6 = Worksheets("Sheet1").Range("A29")
neww7 = Worksheets("Sheet1").Range("A30")
neww8 = Worksheets("Sheet1").Range("A31")
neww9 = Worksheets("Sheet1").Range("A32")
neww10 = Worksheets("Sheet1").Range("B24")
neww11 = Worksheets("Sheet1").Range("B25")
neww12 = Worksheets("Sheet1").Range("B26")
neww13 = Worksheets("Sheet1").Range("B27")
neww14 = Worksheets("Sheet1").Range("B28")
neww15 = Worksheets("Sheet1").Range("B29")
neww16 = Worksheets("Sheet1").Range("B30")
neww17 = Worksheets("Sheet1").Range("B31")
neww18 = Worksheets("Sheet1").Range("B32")
neww19 = Worksheets("Sheet1").Range("C24")
neww20 = Worksheets("Sheet1").Range("C25")
neww21 = Worksheets("Sheet1").Range("C26")
neww22 = Worksheets("Sheet1").Range("C27")
neww23 = Worksheets("Sheet1").Range("C28")
neww24 = Worksheets("Sheet1").Range("C29")
neww25 = Worksheets("Sheet1").Range("C30")
neww26 = Worksheets("Sheet1").Range("C31")
neww27 = Worksheets("Sheet1").Range("C32")
neww28 = Worksheets("Sheet1").Range("D24")
neww29 = Worksheets("Sheet1").Range("D25")
neww30 = Worksheets("Sheet1").Range("D26")
neww31 = Worksheets("Sheet1").Range("D27")
neww32 = Worksheets("Sheet1").Range("D28")
neww33 = Worksheets("Sheet1").Range("D29")
neww34 = Worksheets("Sheet1").Range("D30")
neww35 = Worksheets("Sheet1").Range("D31")
neww36 = Worksheets("Sheet1").Range("D32")
neww37 = Worksheets("Sheet1").Range("E24")
neww38 = Worksheets("Sheet1").Range("E25")
neww39 = Worksheets("Sheet1").Range("E26")
neww40 = Worksheets("Sheet1").Range("E27")
neww41 = Worksheets("Sheet1").Range("E28")
neww42 = Worksheets("Sheet1").Range("E29")
neww43 = Worksheets("Sheet1").Range("E30")
neww44 = Worksheets("Sheet1").Range("E31")
neww45 = Worksheets("Sheet1").Range("E32")
neww46 = Worksheets("Sheet1").Range("F24")
neww47 = Worksheets("Sheet1").Range("F25")
neww48 = Worksheets("Sheet1").Range("F26")
neww49 = Worksheets("Sheet1").Range("F27")
neww50 = Worksheets("Sheet1").Range("F28")
neww51 = Worksheets("Sheet1").Range("F29")
neww52 = Worksheets("Sheet1").Range("F30")
neww53 = Worksheets("Sheet1").Range("F31")
neww54 = Worksheets("Sheet1").Range("F32")
neww55 = Worksheets("Sheet1").Range("G24")
neww56 = Worksheets("Sheet1").Range("G25")
neww57 = Worksheets("Sheet1").Range("G26")
neww58 = Worksheets("Sheet1").Range("G27")
neww59 = Worksheets("Sheet1").Range("G28")
neww60 = Worksheets("Sheet1").Range("G29")
neww61 = Worksheets("Sheet1").Range("G30")
neww62 = Worksheets("Sheet1").Range("G31")
neww63 = Worksheets("Sheet1").Range("G32")
neww64 = Worksheets("Sheet1").Range("H24")
neww65 = Worksheets("Sheet1").Range("H25")
neww66 = Worksheets("Sheet1").Range("H26")
neww67 = Worksheets("Sheet1").Range("H27")
neww68 = Worksheets("Sheet1").Range("H28")
neww69 = Worksheets("Sheet1").Range("H29")
neww70 = Worksheets("Sheet1").Range("H30")
neww71 = Worksheets("Sheet1").Range("H31")
neww72 = Worksheets("Sheet1").Range("H32")
neww73 = Worksheets("Sheet1").Range("I24")
neww74 = Worksheets("Sheet1").Range("I25")
neww75 = Worksheets("Sheet1").Range("I26")
neww76 = Worksheets("Sheet1").Range("I27")
neww77 = Worksheets("Sheet1").Range("I28")
neww78 = Worksheets("Sheet1").Range("I29")
neww79 = Worksheets("Sheet1").Range("I30")
neww80 = Worksheets("Sheet1").Range("I31")
neww81 = Worksheets("Sheet1").Range("I32")
neww82 = Worksheets("Sheet1").Range("J24")
neww83 = Worksheets("Sheet1").Range("J25")
neww84 = Worksheets("Sheet1").Range("J26")
neww85 = Worksheets("Sheet1").Range("J27")
neww86 = Worksheets("Sheet1").Range("J28")
neww87 = Worksheets("Sheet1").Range("J29")
neww88 = Worksheets("Sheet1").Range("J30")
neww89 = Worksheets("Sheet1").Range("J31")
neww90 = Worksheets("Sheet1").Range("J32")
inta1 = (intA * neww1) + (intB * neww9) + (intc * neww17) + (intD * neww25) + (intE * neww33)
outa1 = 1 / (1 + Exp(-inta1))
intb1 = (intA * neww2) + (intB * neww10) + (intc * neww18) + (intD * neww26) + (intE * neww34)
outb1 = 1 / (1 + Exp(-intb1))
intc1 = (intA * neww3) + (intB * neww11) + (intc * neww19) + (intD * neww27) + (intE * neww35)
outc1 = 1 / (1 + Exp(-intc1))
intd1 = (intA * neww4) + (intB * neww12) + (intc * neww20) + (intD * neww28) + (intE * neww36)
outd1 = 1 / (1 + Exp(-intd1))
inte1 = (intA * neww5) + (intB * neww13) + (intc * neww21) + (intD * neww29) + (intE * neww37)
oute1 = 1 / (1 + Exp(-inte1))
intf1 = (intA * neww6) + (intB * neww14) + (intc * neww22) + (intD * neww30) + (intE * neww38)
outf1 = 1 / (1 + Exp(-intf1))
intg1 = (intA * neww7) + (intB * neww15) + (intc * neww23) + (intD * neww31) + (intE * neww39)
outg1 = 1 / (1 + Exp(-intg1))
inth1 = (intA * neww8) + (intB * neww16) + (intc * neww24) + (intD * neww32) + (intE * neww40)
outh1 = 1 / (1 + Exp(-inth1))
Worksheets("Sheet1").Range("D1") = inta1
Worksheets("Sheet1").Range("F1") = outa1
Worksheets("Sheet1").Range("D2") = intb1
Worksheets("Sheet1").Range("F2") = outb1
Worksheets("Sheet1").Range("D3") = intc1
Worksheets("Sheet1").Range("F3") = outc1
Worksheets("Sheet1").Range("D4") = intd1
Worksheets("Sheet1").Range("F4") = outd1
Worksheets("Sheet1").Range("D5") = inte1
Worksheets("Sheet1").Range("F5") = oute1
Worksheets("Sheet1").Range("D6") = intf1
Worksheets("Sheet1").Range("F6") = outf1
Worksheets("Sheet1").Range("D7") = intg1
Worksheets("Sheet1").Range("F7") = outg1
Worksheets("Sheet1").Range("D8") = inth1
Worksheets("Sheet1").Range("F8") = outh1
inti1 = (outa1 * neww41) + (outb1 * neww46) + (outc1 * neww51) + (outd1 * neww56) + (oute1 * neww61) + (outf1 * neww66) + (outg1 * neww71) + (outh1 * neww76)
outi1 = 1 / (1 + Exp(-inti1))
intj1 = (outa1 * neww42) + (outb1 * neww47) + (outc1 * neww52) + (outd1 * neww57) + (oute1 * neww62) + (outf1 * neww67) + (outg1 * neww72) + (outh1 * neww77)
outj1 = 1 / (1 + Exp(-intj1))
intk1 = (outa1 * neww43) + (outb1 * neww48) + (outc1 * neww53) + (outd1 * neww58) + (oute1 * neww63) + (outf1 * neww68) + (outg1 * neww73) + (outh1 * neww78)
outk1 = 1 / (1 + Exp(-intk1))
intl1 = (outa1 * neww44) + (outb1 * neww49) + (outc1 * neww54) + (outd1 * neww59) + (oute1 * neww64) + (outf1 * neww69) + (outg1 * neww74) + (outh1 * neww79)
outl1 = 1 / (1 + Exp(-intl1))
intm1 = (outa1 * neww45) + (outb1 * neww50) + (outc1 * neww55) + (outd1 * neww60) + (oute1 * neww65) + (outf1 * neww70) + (outg1 * neww75) + (outh1 * neww80)
outm1 = 1 / (1 + Exp(-intm1))
Worksheets("Sheet1").Range("H1") = inti1
Worksheets("Sheet1").Range("J1") = outi1
Worksheets("Sheet1").Range("H2") = intj1
Worksheets("Sheet1").Range("J2") = outj1
Worksheets("Sheet1").Range("H3") = intk1
Worksheets("Sheet1").Range("J3") = outk1
Worksheets("Sheet1").Range("H4") = intl1
Worksheets("Sheet1").Range("J4") = outl1
Worksheets("Sheet1").Range("H5") = intm1
Worksheets("Sheet1").Range("J5") = outm1
intn1 = (outi1 * neww81) + (outj1 * neww83) + (outk1 * neww85) + (outl1 * neww87) + (outm1 * neww89)
outn1 = 1 / (1 + Exp(-intn1))
into1 = (outi1 * neww82) + (outj1 * neww84) + (outk1 * neww86) + (outl1 * neww88) + (outm1 * neww90)
outo1 = 1 / (1 + Exp(-into1))
Worksheets("Sheet1").Range("L1") = intn1
Worksheets("Sheet1").Range("N1") = outn1
Worksheets("Sheet1").Range("L2") = into1
Worksheets("Sheet1").Range("N2") = outo1
errn = outn1 * (1 - outn1) * (tarn - outn1)
erro = outo1 * (1 - outo1) * (taro - outo1)
Worksheets("Sheet1").Range("N5") = errn
Worksheets("Sheet1").Range("N6") = erro
neww81 = neww81 + (errn * outi1)
neww82 = neww82 + (erro * outi1)
neww83 = neww83 + (errn * outj1)
neww84 = neww84 + (erro * outj1)
neww85 = neww85 + (errn * outk1)
neww86 = neww86 + (erro * outk1)
neww87 = neww87 + (errn * outl1)
neww88 = neww88 + (erro * outl1)
neww89 = neww89 + (errn * outm1)
neww90 = neww90 + (erro * outm1)
erri = outi1 * (1 - outi1) * (errn * neww81 + erro * neww82)
errj = outj1 * (1 - outj1) * (errn * neww83 + erro * neww84)
errk = outk1 * (1 - outk1) * (errn * neww85 + erro * neww86)
errl = outl1 * (1 - outl1) * (errn * neww87 + erro * neww88)
errm = outm1 * (1 - outm1) * (errn * neww89 + erro * neww90)
Worksheets("Sheet1").Range("P5") = erri
Worksheets("Sheet1").Range("P6") = errj
Worksheets("Sheet1").Range("P7") = errk
Worksheets("Sheet1").Range("P8") = errl
Worksheets("Sheet1").Range("P9") = errm
neww41 = neww41 + (erri * outa1)
neww42 = neww42 + (errj * outa1)
neww43 = neww43 + (errk * outa1)
neww44 = neww44 + (errl * outa1)
neww45 = neww45 + (errm * outa1)
neww46 = neww46 + (erri * outb1)
neww47 = neww47 + (errj * outb1)
neww48 = neww48 + (errk * outb1)
neww49 = neww49 + (errl * outb1)
½Æ»s¥N½X
§@ªÌ:
qwertyuio111
®É¶¡:
2015-11-22 09:33
¦^´_
4#
qwertyuio111
ª©¥D GBKEE
¤p§Ì §Ú¤wªþ¤WExcel À£ÁYÀÉ®×
¨D¸Ñ ¢ß¢Ï¢ß¡ã¡ãÁÂÁÂ
[attach]22539[/attach]
§@ªÌ:
GBKEE
®É¶¡:
2015-11-23 07:00
¦^´_
5#
qwertyuio111
¥i§_¸Ô»¡, Ãþ¯«¸g¹Bºâ ¤½¦¡ªº³W«ßÅÞ¿è.
§@ªÌ:
qwertyuio111
®É¶¡:
2015-11-23 13:03
¦^´_
6#
GBKEE
Ãþ¯«¸gºô¸ô ¬O¤@ºØ¼ÒÀÀ¹BºâªºÅÞ¿è¡AÂǥѼÒÀÀ¹Bºâ¤Î°V½mªº¹Lµ{§ä¨ì¥i¯à¸Ñªº²£¥Í¡C
¦p¹Ï©Ò¥Ü
[attach]22565[/attach]
µM¦Ó¦b°V½mªº¹Lµ{¡A¥²³z¹L¤wª¾ªº¸ê®Æ(¿é¤J¼hªº¼ÆÈ¥H¤Î¿é¥X¼h¤§¥Ø¼ÐÈ)«ÂйBºâ»~®tÈ¡A¥h¨D¥XÁôÂüh©Ò¦ûªº¤ñ«¡C
[attach]22567[/attach]
¹Bºâ¦¡ªºªøµu·|¦]¬°¼h¼Æ¤Î ¿é¤J¼Æ¥Øªº¤£¦P¦Ó¦³©Ò§ïÅÜ¡C
¥Øªº¬O§ä¥X¸g¹L³\¦h¤wª¾¸ê®Æ©Ò¼ÒÀÀ¥X³Ì¨Îw¡C¦AÀò±o·sªº¸ê®Æ®É¡A¿é¤J«á³z¹L¹Bºâ(w)¨D±o³Ì¨Îªºoutpot¿é¥X
ªþ¤W¹Ï¤ù¨ÒÃDªº¹Bºâexcel
[attach]22568[/attach]
§@ªÌ:
GBKEE
®É¶¡:
2015-11-24 08:34
¦^´_
7#
qwertyuio111
×§ï§Aªºµ{¦¡½X ¸Õ¸Õ¬Ý
Option Explicit '¦b¼Ò²Õ¼h¦¸¤¤±j¢¨CÓ¦b¼Ò²ÕùتºÅܼƳ£¥²¶·©ú½Tªº«Å§i
Sub test()
Dim Sh As Worksheet, w(), i As Integer
Dim out As Single, ina1 As Single, inb1 As Single, ina2 As Single, outa2 As Single
Dim inc As Single, outc As Single, oute As Single, oute1 As Single, oute2 As Single
Dim inb2 As Single, outb2 As Single
Set Sh = Sheets("Sheet1")
out = Sh.Cells(1, 2)
ina1 = Sh.Cells(3, 2)
inb1 = Sh.Cells(5, 2)
w = Application.WorksheetFunction.Transpose(Sh.Range("b7").Resize(6))
ina2 = (ina1 * w(3)) + (inb1 * w(4))
outa2 = 1 / (1 + Exp(-ina2))
inb2 = (ina1 * w(5)) + (inb1 * w(6))
outb2 = 1 / (1 + Exp(-inb2))
inc = (outa2 * w(1)) + (outb2 * w(2))
outc = 1 / (1 + Exp(-inc))
oute = (out - outc) * (1 - outc) * (outc)
w(1) = w(1) + (oute * outa2)
w(2) = w(2) + (oute * outb2)
oute1 = oute * w(1) * (1 - outa2) * outa2
oute2 = oute * w(2) * (1 - outb2) * outb2
w(3) = w(3) + (oute1 * ina1)
w(4) = w(4) + (oute1 * inb1)
w(5) = w(5) + (oute2 * ina1)
w(6) = w(6) + (oute2 * inb1)
'***********************************************
For i = 2 To 300
ina2 = (ina1 * w(3)) + (inb1 * w(4))
outa2 = 1 / (1 + Exp(-ina2))
inb2 = (ina1 * w(5)) + (inb1 * w(6))
outb2 = 1 / (1 + Exp(-inb2))
inc = (outa2 * w(1)) + (outb2 * w(2))
outc = 1 / (1 + Exp(-inc))
oute = (out - outc) * (1 - outc) * (outc)
w(1) = w(1) + (oute * outa2)
w(2) = w(2) + (oute * outb2)
oute1 = oute * w(1) * (1 - outa2) * outa2
oute2 = oute * w(2) * (1 - outb2) * outb2
w(3) = w(3) + (oute1 * ina1)
w(4) = w(4) + (oute1 * inb1)
w(5) = w(5) + (oute2 * ina1)
w(6) = w(6) + (oute2 * inb1)
Next
''''''''''''''''''''''''''''
With Sh
.Cells(14, 2) = ina2
.Cells(15, 2) = outa2
.Cells(17, 2) = inb2
.Cells(18, 2) = outb2
.Cells(20, 2) = inc
.Cells(21, 2) = outc
'''''''''''''''''''''''''''''
.Cells(23, 2) = oute
.Cells(25, 2) = w(1)
.Cells(26, 2) = w(2)
''''''''''''''''''''''''
.Cells(29, 2) = oute1
.Cells(30, 2) = oute2
''''''''''''''''''''
.Cells(32, 2) = w(3)
.Cells(33, 2) = w(4)
.Cells(34, 2) = w(5)
.Cells(35, 2) = w(6)
End With
End Sub
½Æ»s¥N½X
§@ªÌ:
c_c_lai
®É¶¡:
2015-11-24 10:20
¥»©«³Ì«á¥Ñ c_c_lai ©ó 2015-11-24 11:32 ½s¿è
¦^´_
7#
qwertyuio111
¸Õ¸Õ¬Ý (¨Ì¾Ú§Aªºµ{¦¡½X×§ï)¡G
Sub Ãþ¯«¸g¹Bºâ()
Dim lowerRange, upperRange, myRange, myCell As Range, cts As Integer, nxt As Integer
Dim rp5 As Integer, bf1 As Integer
With Sheets("Sheet1")
Set lowerRange = .Range("C11")
Set upperRange = .Range("C10")
lowerRange.Name = "lowerbound"
upperRange.Name = "upperbound"
Set myRange = .Range("A13:J21")
For Each myCell In myRange
myCell.Formula = "=RANDBETWEEN(lowerbound,upperbound)/10"
Next
.[A23] = "´`Àô¢å"
For cts = 0 To 7 ' inta1 = (intA * w1) + (intB * w9) + (intc * w17) + (intD * w25) + (intE * w33)
.[D1].Offset(cts) = (.[B1] * .[A13].Offset(cts)) + (.[B2] * IIf(cts = 0, .[A21], .[B12].Offset(cts))) + (.[B3] * IIf(cts <= 1, .[B20], .[C11].Offset(cts)) + (.[B4] * IIf(cts <= 2, .[C19], .[D10].Offset(cts)))) + (.[B5] * IIf(cts <= 3, .[D18], .[E9].Offset(cts)))
.[F1].Offset(cts) = 1 / (1 + Exp(-.[D1].Offset(cts))) ' outa1 = 1 / (1 + Exp(-inta1))
Next cts
For cts = 0 To 4 ' inti1 = (outa1 * w41) + (outb1 * w46) + (outc1 * w51) + (outd1 * w56) + (oute1 * w61) + (outf1 * w66) + (outg1 * w71) + (outh1 * w76)
.[H1].Offset(cts) = (.[F1] * .[E17].Offset(cts)) + (.[F2] * .[F13].Offset(cts)) + (.[F3] * IIf(cts = 4, .[G13], .[F18].Offset(cts))) + (.[F4] * .[G14].Offset(cts)) + (.[F5] * IIf(cts > 2, .[H10].Offset(cts), .[G19].Offset(cts))) + (.[F6] * .[H15].Offset(cts)) + (.[F7] * IIf(cts > 1, .[I11].Offset(cts), .[H20].Offset(cts))) + (.[F8] * .[I16].Offset(cts))
.[J1].Offset(cts) = 1 / (1 + Exp(-.[H1].Offset(cts))) ' outi1 = 1 / (1 + Exp(-inti1))
Next cts
For cts = 0 To 1 ' intn1 = (outi1 * w81) + (outj1 * w83) + (outk1 * w85) + (outl1 * w87) + (outm1 * w89)
.[L1].Offset(cts) = (.[J1] * IIf(cts = 0, .[I21], .[J13])) + (.[J2] * .[J14].Offset(cts)) + (.[J3] * .[J16].Offset(cts)) + (.[J4] * .[J18].Offset(cts)) + (.[J5] * .[J20].Offset(cts))
.[N1].Offset(cts) = 1 / (1 + Exp(-.[L1].Offset(cts))) ' outn1 = 1 / (1 + Exp(-intn1))
Next cts
For cts = 0 To 1 ' errn = outn1 * (1 - outn1) * (tarn - outn1) , erro = outo1 * (1 - outo1) * (taro - outo1)
.[N5].Offset(cts) = .[N1].Offset(cts) * (1 - .[N1].Offset(cts)) * (.[L6].Offset(cts) - .[N1].Offset(cts))
Next cts
For cts = 0 To 4 ' erri = outi1 * (1 - outi1) * (errn * w81 + erro * w82) ~ errm = outm1 * (1 - outm1) * (errn * w89 + erro * w90)
.[P5].Offset(cts) = .[J1].Offset(cts) * (1 - .[J1].Offset(cts)) * (.[N5] * IIf(cts = 0, .[I21], .[J9].Offset(cts * 2 + 1))) + (.[N6] * .[J11].Offset(cts * 2 + 2))
Next cts
For cts = 0 To 7 ' erra = outa1 * (1 - outa1) * (erri * w41 + errj * w42 + errk * w43 + errl * w44 + errm * w45)
.Range("Z1:Z5").Clear ' ²M°£¶Ç¦s¹Bºâ¸ê®ÆÄ椧¤º®eÈ
If (cts = 7) Then ' 7
.[Z1] = .[I16]
.[Z2] = .[I17]
ElseIf (cts > 4) Then ' 5,6
.[Z1] = .[H15].Offset((cts - 5) * 5)
.[Z2] = .[H16].Offset((cts - 5) * 5)
ElseIf (cts > 2) Then ' 3,4
.[Z1] = .[G14].Offset((cts - 3) * 5)
.[Z2] = .[G15].Offset((cts - 3) * 5)
ElseIf (cts = 0) Then ' 0
.[Z1] = .[E17]
.[Z2] = .[E18]
.[Z3] = .[E19]
Else ' 1,2
.[Z1] = .[F13].Offset((cts - 1) * 5)
.[Z2] = .[F14].Offset((cts - 1) * 5)
End If
If (cts > 5) Then ' 6,7
.[Z3] = .[I13].Offset((cts - 6) * 5)
.[Z4] = .[I14].Offset((cts - 6) * 5)
.[Z5] = .[I15].Offset((cts - 6) * 5)
ElseIf (cts = 5) Then ' 5
.[Z3] = .[H17]
.[Z4] = .[H13].Offset((cts - 5) * 5)
.[Z5] = .[H14].Offset((cts - 5) * 5)
ElseIf (cts > 3) Then ' 4
.[Z3] = .[G16].Offset((cts - 4) * 5)
.[Z4] = .[H13].Offset((cts - 4) * 5)
.[Z5] = .[H14].Offset((cts - 4) * 5)
ElseIf (cts = 3) Then ' 3
.[Z3] = .[G16].Offset((cts - 3) * 5)
.[Z4] = .[G15]
.[Z5] = .[H14].Offset((cts - 3) * 5)
ElseIf (cts > 1) Then ' 2
.[Z3] = .[F15].Offset((cts - 2) * 5)
.[Z4] = .[F16].Offset((cts - 2) * 5)
.[Z5] = .[G13].Offset((cts - 2) * 5)
ElseIf (cts = 0) Then ' 0
.[Z3] = .[E19]
.[Z4] = .[E20]
.[Z5] = .[E21]
Else ' 1
.[Z3] = .[F15].Offset((cts - 1) * 5)
.[Z4] = .[F16].Offset((cts - 1) * 5)
.[Z5] = .[F17]
End If
.[R5].Offset(cts) = .[F1].Offset(cts) * (1 - .[F1].Offset(cts)) * (.[P5] * .[Z1] + .[P6] * .[Z2] + .[P7] * .[Z3] + .[P8] * .[Z4] + .[P9] * .[Z5])
' ÀËÅç´ú¸Õµ²ªG
' .[V10].Offset(cts) = .[Z1]
' .[V10].Offset(cts, 1) = .[Z2]
' .[V10].Offset(cts, 2) = .[Z3]
' .[V10].Offset(cts, 3) = .[Z4]
' .[V10].Offset(cts, 4) = .[Z5]
Next cts
.Range("Z1:Z5").Clear ' ²M°£¶Ç¦s¹Bºâ¸ê®ÆÄ椧¤º®eÈ
' .Range("V10:Z17").Clear ' ²M°£¶Ç¦s¹Bºâ¸ê®ÆÄ椧¤º®eÈ
rp5 = -1: bf1 = 0
For nxt = 0 To 9 ' neww1 = w1 + (erra * intA) ~ neww54 = w54 + (errl * outc1)
For cts = 0 To 8
rp5 = rp5 + 1
If ((nxt * 9 + cts + 1) > 80) Then ' neww81 = w81 + (errn * outi1) ~ neww90 = w90 + (erro * outm1)
If ((nxt * 9 + cts + 1) = 81) Then
rp5 = 0
bf1 = 0
End If
.[A24].Offset(cts, nxt) = .[A13].Offset(cts) + (.[N5].Offset(rp5) * .[J1].Offset(bf1))
If (rp5 = 1) Then
rp5 = -1
bf1 = bf1 + 1
End If
ElseIf ((nxt * 9 + cts + 1) > 40) Then ' neww41 = w41 + (erri * outa1) ~ neww80 = w80 + (errm * outh1)
If ((nxt * 9 + cts + 1) = 41) Then
rp5 = 0
bf1 = 0
End If
.[A24].Offset(cts, nxt) = .[A13].Offset(cts) + (.[P5].Offset(rp5) * .[F1].Offset(bf1))
If (rp5 = 4) Then
rp5 = -1
bf1 = bf1 + 1
End If
Else ' neww1 = w1 + (erra * intA) ~ neww40 = w40 + (errh * intE)
.[A24].Offset(cts, nxt) = .[A13].Offset(cts) + (.[R5].Offset(rp5) * .[B1].Offset(bf1))
If (rp5 = 7) Then
rp5 = -1
bf1 = bf1 + 1
End If
End If
Next cts
Next nxt
End With
Ãþ¯«¸gÂX¥R°j°é¹Bºâ
End Sub
½Æ»s¥N½X
§@ªÌ:
c_c_lai
®É¶¡:
2015-11-24 11:03
¦^´_
7#
qwertyuio111
Sub Ãþ¯«¸gÂX¥R°j°é¹Bºâ()
Dim cts As Integer, nxt As Integer
Dim rp5 As Integer, bf1 As Integer, i As Integer
With Sheets("Sheet1")
For i = 2 To 150 ' 1500
.[A23] = "´`Àô¢å (" & i & ")"
For cts = 0 To 7 ' inta1 = (intA * neww1) + (intB * neww9) + (intc * neww17) + (intD * neww25) + (intE * neww33)
.[D1].Offset(cts) = (.[B1] * .[A24].Offset(cts)) + (.[B2] * IIf(cts = 0, .[A32], .[B23].Offset(cts))) + (.[B3] * IIf(cts <= 1, .[B31], .[C22].Offset(cts)) + (.[B4] * IIf(cts <= 2, .[C30], .[D21].Offset(cts)))) + (.[B5] * IIf(cts <= 3, .[D29], .[E20].Offset(cts)))
.[F1].Offset(cts) = 1 / (1 + Exp(-.[D1].Offset(cts))) ' outa1 = 1 / (1 + Exp(-inta1))
Next cts
For cts = 0 To 4 ' inti1 = (outa1 * neww41) + (outb1 * neww46) + (outc1 * neww51) + (outd1 * neww56) + (oute1 * neww61) + (outf1 * neww66) + (outg1 * neww71) + (outh1 * neww76)
.[H1].Offset(cts) = (.[F1] * .[E28].Offset(cts)) + (.[F2] * .[F24].Offset(cts)) + (.[F3] * IIf(cts = 4, .[G24], .[F29].Offset(cts))) + (.[F4] * .[G25].Offset(cts)) + (.[F5] * IIf(cts > 2, .[H21].Offset(cts), .[G30].Offset(cts))) + (.[F6] * .[H26].Offset(cts)) + (.[F7] * IIf(cts > 1, .[I22].Offset(cts), .[H31].Offset(cts))) + (.[F8] * .[I27].Offset(cts))
.[J1].Offset(cts) = 1 / (1 + Exp(-.[H1].Offset(cts))) ' outi1 = 1 / (1 + Exp(-inti1))
Next cts
For cts = 0 To 1 ' intn1 = (outi1 * neww81) + (outj1 * neww83) + (outk1 * neww85) + (outl1 * neww87) + (outm1 * neww89)
.[L1].Offset(cts) = (.[J1] * IIf(cts = 0, .[I32], .[J24])) + (.[J2] * .[J25].Offset(cts)) + (.[J3] * .[J27].Offset(cts)) + (.[J4] * .[J29].Offset(cts)) + (.[J5] * .[J31].Offset(cts))
.[N1].Offset(cts) = 1 / (1 + Exp(-.[L1].Offset(cts))) ' outn1 = 1 / (1 + Exp(-intn1))
Next cts
For cts = 0 To 1 ' errn = outn1 * (1 - outn1) * (tarn - outn1) , erro = outo1 * (1 - outo1) * (taro - outo1)
.[N5].Offset(cts) = .[N1].Offset(cts) * (1 - .[N1].Offset(cts)) * (.[L6].Offset(cts) - .[N1].Offset(cts))
Next cts
For cts = 0 To 4 ' erri = outi1 * (1 - outi1) * (errn * neww81 + erro * neww82) ~ errm = outm1 * (1 - outm1) * (errn * neww89 + erro * neww90)
.[P5].Offset(cts) = .[J1].Offset(cts) * (1 - .[J1].Offset(cts)) * (.[N5] * IIf(cts = 0, .[I32], .[J20].Offset(cts * 2 + 1))) + (.[N6] * .[J22].Offset(cts * 2 + 2))
Next cts
For cts = 0 To 7 ' erra = outa1 * (1 - outa1) * (erri * w41 + errj * w42 + errk * w43 + errl * w44 + errm * w45)
.Range("Z1:Z5").Clear ' ²M°£¶Ç¦s¹Bºâ¸ê®ÆÄ椧¤º®eÈ
If (cts = 7) Then ' 7
.[Z1] = .[I27]
.[Z2] = .[I28]
ElseIf (cts > 4) Then ' 5,6
.[Z1] = .[H26].Offset((cts - 5) * 5)
.[Z2] = .[H27].Offset((cts - 5) * 5)
ElseIf (cts > 2) Then ' 3,4
.[Z1] = .[G25].Offset((cts - 3) * 5)
.[Z2] = .[G26].Offset((cts - 3) * 5)
ElseIf (cts = 0) Then ' 0
.[Z1] = .[E28]
.[Z2] = .[E29]
.[Z3] = .[E30]
Else ' 1,2
.[Z1] = .[F24].Offset((cts - 1) * 5)
.[Z2] = .[F25].Offset((cts - 1) * 5)
End If
If (cts > 5) Then ' 6,7
.[Z3] = .[I24].Offset((cts - 6) * 5)
.[Z4] = .[I25].Offset((cts - 6) * 5)
.[Z5] = .[I26].Offset((cts - 6) * 5)
ElseIf (cts = 5) Then ' 5
.[Z3] = .[H28]
.[Z4] = .[H24].Offset((cts - 5) * 5)
.[Z5] = .[H25].Offset((cts - 5) * 5)
ElseIf (cts > 3) Then ' 4
.[Z3] = .[G27].Offset((cts - 4) * 5)
.[Z4] = .[H24].Offset((cts - 4) * 5)
.[Z5] = .[H25].Offset((cts - 4) * 5)
ElseIf (cts = 3) Then ' 3
.[Z3] = .[G27].Offset((cts - 3) * 5)
.[Z4] = .[G26]
.[Z5] = .[H25].Offset((cts - 3) * 5)
ElseIf (cts > 1) Then ' 2
.[Z3] = .[F26].Offset((cts - 2) * 5)
.[Z4] = .[F27].Offset((cts - 2) * 5)
.[Z5] = .[G24].Offset((cts - 2) * 5)
ElseIf (cts = 0) Then ' 0
.[Z3] = .[E30]
.[Z4] = .[E31]
.[Z5] = .[E32]
Else ' 1
.[Z3] = .[F26].Offset((cts - 1) * 5)
.[Z4] = .[F27].Offset((cts - 1) * 5)
.[Z5] = .[F28]
End If
.[R5].Offset(cts) = .[F1].Offset(cts) * (1 - .[F1].Offset(cts)) * (.[P5] * .[Z1] + .[P6] * .[Z2] + .[P7] * .[Z3] + .[P8] * .[Z4] + .[P9] * .[Z5])
' ÀËÅç´ú¸Õµ²ªG
' .[V10].Offset(cts) = .[Z1]
' .[V10].Offset(cts, 1) = .[Z2]
' .[V10].Offset(cts, 2) = .[Z3]
' .[V10].Offset(cts, 3) = .[Z4]
' .[V10].Offset(cts, 4) = .[Z5]
Next cts
.Range("Z1:Z5").Clear ' ²M°£¶Ç¦s¹Bºâ¸ê®ÆÄ椧¤º®eÈ
' .Range("V10:Z17").Clear ' ²M°£¶Ç¦s¹Bºâ¸ê®ÆÄ椧¤º®eÈ
rp5 = -1: bf1 = 0
For nxt = 0 To 9 ' neww1 = neww1 + (erra * intA) ~ neww54 = neww54 + (errl * outc1)
For cts = 0 To 8
rp5 = rp5 + 1
If ((nxt * 9 + cts + 1) > 80) Then ' neww81 = neww81 + (errn * outi1) ~ neww90 = neww90 + (erro * outm1)
If ((nxt * 9 + cts + 1) = 81) Then
rp5 = 0
bf1 = 0
End If
.[A24].Offset(cts, nxt) = .[A24].Offset(cts, nxt) + (.[N5].Offset(rp5) * .[J1].Offset(bf1))
If (rp5 = 1) Then
rp5 = -1
bf1 = bf1 + 1
End If
ElseIf ((nxt * 9 + cts + 1) > 40) Then ' neww41 = neww41 + (erri * outa1) ~ neww80 = neww80 + (errm * outh1)
If ((nxt * 9 + cts + 1) = 41) Then
rp5 = 0
bf1 = 0
End If
.[A24].Offset(cts, nxt) = .[A24].Offset(cts, nxt) + (.[P5].Offset(rp5) * .[F1].Offset(bf1))
If (rp5 = 4) Then
rp5 = -1
bf1 = bf1 + 1
End If
Else ' neww1 = neww1 + (erra * intA) ~ neww40 = neww40 + (errh * intE)
.[A24].Offset(cts, nxt) = .[A24].Offset(cts, nxt) + (.[R5].Offset(rp5) * .[B1].Offset(bf1))
If (rp5 = 7) Then
rp5 = -1
bf1 = bf1 + 1
End If
End If
Next cts
Next nxt
Next i
End With
End Sub
½Æ»s¥N½X
§@ªÌ:
qwertyuio111
®É¶¡:
2015-11-24 15:41
¦^´_
8#
GBKEE
ÁÂÁª©¥D
À°¤p§Ì¸Ñµª¨ÒÃDªº¼gªk¤Î¤è¦¡¡C
Åý§Ú¦³Ó°ò¥»ªº¬[ºc ÁÂÁÂ:)
§Ú·|¸ÕµÛ¸Ñ¨M¤@¶}©l©Ò´£¥Xªº°ÝÃD¡C
5x8x8x2 ¦h¼h¬[ºcªº§Î¦¡ ÁÂÁ¡C:)
§@ªÌ:
qwertyuio111
®É¶¡:
2015-11-24 15:47
¦^´_
10#
c_c_lai
ÁÂÁ¤j¤j
À°§Ú¸Ñ¨M¤@¶}©lªº°ÝÃD¡C
§Ú·|¦n¦n¬ã¨s¾Ç²ß³oºØ¼gªk¤Î´ú¸Õ¡C:)
ÁÂÁ¡I¡I¡I¡I¡I
¦p«áÄòÁÙ¦³¬ÛÃö°ÝÃD¡AÁٽФj¤j¤£§[«ü±Ð¡AÁÂÁ¡C:)
§@ªÌ:
qwertyuio111
®É¶¡:
2015-11-30 12:40
¥»©«³Ì«á¥Ñ qwertyuio111 ©ó 2015-11-30 12:42 ½s¿è
¦^´_
10#
c_c_lai
¤£¦n·N«ä¡A³o¦¸´ú¸Õ³o»ò¤[¡A¤~¤W¨Ó¦A¦¸¸ß°Ý¡C
ì¦]¬O ¦b¦Û¦æ¾Ç²ß×§ï¸Ñ¨M¡uì©lW¡v²£¥Í¤@¦¸«á¡A´N¡u¤£Åܰʡvªºµ{¦¡½X¡C
(¦¹³¡¤À)
[attach]22668[/attach]
¥H¤Î¦b¼g¤J³]©w ¥Ø¼ÐÈ(Target n¡ATarget o) »P ¿é¥XÈ(Out n¡AOut o)¡A¬Ûµ¥«á·|°±¤î¡A¸õ¥X°j°épºâªº°ÝÃD¡C(¤£¥²pºâ¨ì³]©w¦¸¼Æ)
¦ý©l²×§ï¼g¨ì¤@¥b²£¥Í¿ù»~¡A·|¦Û¦æ¸õ¥Xpºâ¡A©Î²£¥Í·í¾÷¡C
(¦¹³¡¤À)
[attach]22669[/attach]
[attach]22671[/attach]
¦A¦¸Àµ¨D¨ó§U×§ïµ{¦¡½X ÁÂÁÂ!!!!!!!!!!!
·sªºEXCEL
[attach]22670[/attach]
§@ªÌ:
stillfish00
®É¶¡:
2015-11-30 14:19
¥»©«³Ì«á¥Ñ stillfish00 ©ó 2015-11-30 14:25 ½s¿è
¦^´_
13#
qwertyuio111
¯BÂI¼Æn¦¬ÀĨ짹¥þ¬Ûµ¥¬O¤£¥i¯àªº¡A§AÀ³¸Ó³]©w©M¥Ø¼Ð¤p©ó¦h¤Ö»~®t¤º´N°±¤î¡C
¥t¥~µ¹§A¥t¤@ºØ§@ªk¡A°Ñ¦Ò¬Ý¬Ý¡CweightªºÅv«µ²ªG¬Û·í©ó¯x°}¼ªk¡A¨C¤@¼hÅv«¤À¶}·|²M·¡±o¦h¡C
[attach]22672[/attach]
§@ªÌ:
stillfish00
®É¶¡:
2015-11-30 15:20
¦^´_
15#
qwertyuio111
§KªÅ
https://srv01.bitsend.jp/download/552e7563394363d1d8ee204233bef9d8.html?setLang=zh-tw
§@ªÌ:
c_c_lai
®É¶¡:
2015-11-30 20:07
¥»©«³Ì«á¥Ñ c_c_lai ©ó 2015-11-30 20:09 ½s¿è
¦^´_
13#
qwertyuio111
¦b¼g¤J³]©w ¥Ø¼ÐÈ(Target n¡ATarget o) »P ¿é¥XÈ(Out n¡AOut o)¡A¬Ûµ¥«á·|°±¤î¡A¸õ¥X°j°épºâªº°ÝÃD¡C
¬O«ü Target n = Out n ©ÎªÌ¬O Target o = Out o ¶Ü¡H
¯uªº·|¬Ûµ¥¶Ü¡H©ÎµM²v¦³¦h°ª¡H
§@ªÌ:
qwertyuio111
®É¶¡:
2015-11-30 21:36
¦^´_
16#
stillfish00
ÁÂÁ¤j¤j«ü¾É
¤p§Ì §Ú³s°ò¥»ªº¡u¯BÂI¼Æ¡v¦¬ÀÄ·§©À³£¤£²M·¡¡C
§Ú·|¥ý¥h¦h½´X¥»®Ñ¥[±j·§©Àªº¡C
¤µ¤Ñ¾Ç¨ì«nªº¤@½Ò¡C ÁÂÁ¡I¡I
§@ªÌ:
qwertyuio111
®É¶¡:
2015-11-30 21:39
¥»©«³Ì«á¥Ñ qwertyuio111 ©ó 2015-11-30 21:41 ½s¿è
¦^´_
17#
c_c_lai
¤£¦n·N«ä¡A§Ú¹ï¯BÂI¼Æn¦¬ÀĨì¡u§¹¥þ¬Ûµ¥¬O¤£¥i¯àªº¡v¡C
³oÓ·§©À§Ú¨ìè¤~¤~¤F¸Ñ¨ì¡A§ÚÀ³¸Ón³]©w¬°®tȦh¤Ö´N¸õ¥X°j°éªº¤è¦¡¤~¹ï¡C
¡u³]©w©M¥Ø¼Ð¤p©ó¦h¤Ö»~®t¤º´N°±¤î¡C¡v
¥u¯à¹Gªñ ¤£¯à§¹¥þ¬Ûµ¥ ¡]¦]¬°¦³¡]«ü¼Æ¡^¦b¸Ì±¡^
§Ú·|¥h¦h½´X¥»°ò¥»·§©Àªº®Ñªº....
§@ªÌ:
qwertyuio111
®É¶¡:
2015-12-10 22:40
¦^´_
15#
stillfish00
¤£¦n·N«ä ¤j¤j §Ú¤S¨Ó¨D§U¤F...
³o¦¸¬O n¶i¤J´ú¸Õ°V½m³¡¤À¡A¦Û¦æ¼g¤Jµ{¦¡½X¤S§Î¦¨³\¦h§xÃø¡C
¦]¬°n¤@¦¸±q¡u°V½m¸ê®Æ¡vªº¸ê®Æªí¤¤¡A¦Û°Ê¿é¤J°V½m¦hµ§¸ê®Æ(150²Õ)¡C
±N°V½mªº³Ì²×Ó§OW²Õ¹ïÀ³È°µ¥[Á`¥§¡¡A¦Ó²£¥Í¥X³Ì²×¤@²Õ¢å¡C
¡]·§©À¡^
[attach]22784[/attach]
¦ý©l²×¥d¦b±q¥t¥~¤@Ó¸ê®Æªí¥s¸ê®Æ¿é¤J°V½m¡]150²Õ¡^¡A¥H¤Î°V½m§¹«á¡A
¯x°}¹ïÀ³Èªº¥[Á`¤§«á¥§¡¡]°£°V½m²Õ¼Æ¡^¡A³Ì«á²£¥ÍÅã¥Ü¥X¤@²Õ¢å¡]¯x°} 5x8 8x5 5x2)¡A¥Î¥HÅçÃÒ¸ê®Æ¡C
ªÖ¨D ¤j¤jÀ°¦£¤p§Ì ÁÂÁÂ...
[attach]22785[/attach]
Åwªï¥úÁ{ ³Â»¶®a±Ú°Q½×ª©ª© (http://forum.twbts.com/)